ZGlmZiAtLWdpdCBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9NQU5JRkVTVC5qc29uIGIvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV9jbGVhcndhdGVyL01BTklGRVNULmpzb24KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYyYmVkYTkuLjAwMDAwMDAKLS0tIGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV9jbGVhcndhdGVyL01BTklGRVNULmpzb24KKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi17Ci0gICAgIm5hbWUiOiAiUHJvamVjdCBDbGVhcndhdGVyIiwKLSAgICAiZGVzY3JpcHRpb24iOiAiUHJvamVjdCBDbGVhcndhdGVyIElNUyIsCi0gICAgImRhdGEiOiBbCi0gICAgICAgIHsKLSAgICAgICAgICAgICJmaWxlIjogImJhc2VfY2xlYXJ3YXRlci55YW1sIiwKLSAgICAgICAgICAgICJ0eXBlIjogIkhFQVQiLAotICAgICAgICAgICAgImlzQmFzZSI6ICJ0cnVlIiwKLSAgICAgICAgICAgICJkYXRhIjogWwotICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgImZpbGUiOiAiYmFzZV9jbGVhcndhdGVyLmVudiIsCi0gICAgICAgICAgICAgICAgICAgICJ0eXBlIjogIkhFQVRfRU5WIgotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIF0KLSAgICAgICAgfSwKLSAgICAgICAgewotICAgICAgICAgICAgImZpbGUiOiAiYm9uby55YW1sIiwKLSAgICAgICAgICAgICJ0eXBlIjogIkhFQVQiLAotICAgICAgICAgICAgImlzQmFzZSI6ICJmYWxzZSIKLSAgICAgICAgfSwKLSAgICAgICAgewotICAgICAgICAgICAgImZpbGUiOiAiZG5zLnlhbWwiLAotICAgICAgICAgICAgInR5cGUiOiAiSEVBVCIsCi0gICAgICAgICAgICAiaXNCYXNlIjogImZhbHNlIgotICAgICAgICB9LAotICAgICAgICB7Ci0gICAgICAgICAgICAiZmlsZSI6ICJlbGxpcy55YW1sIiwKLSAgICAgICAgICAgICJ0eXBlIjogIkhFQVQiLAotICAgICAgICAgICAgImlzQmFzZSI6ICJmYWxzZSIKLSAgICAgICAgfSwKLSAgICAgICAgewotICAgICAgICAgICAgImZpbGUiOiAiaG9tZXIueWFtbCIsCi0gICAgICAgICAgICAidHlwZSI6ICJIRUFUIiwKLSAgICAgICAgICAgICJpc0Jhc2UiOiAiZmFsc2UiCi0gICAgICAgIH0sCi0gICAgICAgIHsKLSAgICAgICAgICAgICJmaWxlIjogImhvbWVzdGVhZC55YW1sIiwKLSAgICAgICAgICAgICJ0eXBlIjogIkhFQVQiLAotICAgICAgICAgICAgImlzQmFzZSI6ICJmYWxzZSIKLSAgICAgICAgfSwKLSAgICAgICAgewotICAgICAgICAgICAgImZpbGUiOiAicmFsZi55YW1sIiwKLSAgICAgICAgICAgICJ0eXBlIjogIkhFQVQiLAotICAgICAgICAgICAgImlzQmFzZSI6ICJmYWxzZSIKLSAgICAgICAgfSwKLSAgICAgICAgewotICAgICAgICAgICAgImZpbGUiOiAic3Byb3V0LnlhbWwiLAotICAgICAgICAgICAgInR5cGUiOiAiSEVBVCIsCi0gICAgICAgICAgICAiaXNCYXNlIjogImZhbHNlIgotICAgICAgICB9Ci0gICAgXQotfQpkaWZmIC0tZ2l0IGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV9jbGVhcndhdGVyL2Jhc2VfY2xlYXJ3YXRlci5lbnYgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvYmFzZV9jbGVhcndhdGVyLmVudgpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDRhNzdlNC4uMDAwMDAwMAotLS0gYS9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvYmFzZV9jbGVhcndhdGVyLmVudgorKysgL2Rldi9udWxsCkBAIC0xLDIxICswLDAgQEAKLXBhcmFtZXRlcnM6Ci0gIHB1YmxpY19uZXRfaWQ6IDAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMAotICBib25vX2ZsYXZvcl9uYW1lOiA0IEdCIEdlbmVyYWwgUHVycG9zZSB2MQotICBzcHJvdXRfZmxhdm9yX25hbWU6IDQgR0IgR2VuZXJhbCBQdXJwb3NlIHYxCi0gIGhvbWVyX2ZsYXZvcl9uYW1lOiA0IEdCIEdlbmVyYWwgUHVycG9zZSB2MQotICBob21lc3RlYWRfZmxhdm9yX25hbWU6IDQgR0IgR2VuZXJhbCBQdXJwb3NlIHYxCi0gIHJhbGZfZmxhdm9yX25hbWU6IDQgR0IgR2VuZXJhbCBQdXJwb3NlIHYxCi0gIGVsbGlzX2ZsYXZvcl9uYW1lOiA0IEdCIEdlbmVyYWwgUHVycG9zZSB2MQotICBkbnNfZmxhdm9yX25hbWU6IDQgR0IgR2VuZXJhbCBQdXJwb3NlIHYxCi0gIGJvbm9faW1hZ2VfbmFtZTogVWJ1bnR1IDE0LjA0IExUUyAoVHJ1c3R5IFRhaHIpIChQVkhWTSkKLSAgc3Byb3V0X2ltYWdlX25hbWU6IFVidW50dSAxNC4wNCBMVFMgKFRydXN0eSBUYWhyKSAoUFZIVk0pCi0gIGhvbWVyX2ltYWdlX25hbWU6IFVidW50dSAxNC4wNCBMVFMgKFRydXN0eSBUYWhyKSAoUFZIVk0pCi0gIGhvbWVzdGVhZF9pbWFnZV9uYW1lOiBVYnVudHUgMTQuMDQgTFRTIChUcnVzdHkgVGFocikgKFBWSFZNKQotICByYWxmX2ltYWdlX25hbWU6IFVidW50dSAxNC4wNCBMVFMgKFRydXN0eSBUYWhyKSAoUFZIVk0pCi0gIGVsbGlzX2ltYWdlX25hbWU6IFVidW50dSAxNC4wNCBMVFMgKFRydXN0eSBUYWhyKSAoUFZIVk0pCi0gIGRuc19pbWFnZV9uYW1lOiBVYnVudHUgMTQuMDQgTFRTIChUcnVzdHkgVGFocikgKFBWSFZNKQotICByZXBvX3VybDogaHR0cDovL3JlcG8uY3ctbmd2LmNvbS9zdGFibGUKLSAgem9uZTogbWUuY3ctbmd2LmNvbQotICBkbl9yYW5nZV9zdGFydDogIjI0MjU1NTAwMDAiCi0gIGRuX3JhbmdlX2xlbmd0aDogIjEwMDAwIgotICBkbnNzZWNfa2V5OiA5RlBkWVRXaGs1K0xiaHJxdFRQUUt3PT0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvYmFzZV9jbGVhcndhdGVyLnlhbWwgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvYmFzZV9jbGVhcndhdGVyLnlhbWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM0MWIwNTAuLjAwMDAwMDAKLS0tIGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV9jbGVhcndhdGVyL2Jhc2VfY2xlYXJ3YXRlci55YW1sCisrKyAvZGV2L251bGwKQEAgLTEsMzIyICswLDAgQEAKLSMgUHJvamVjdCBDbGVhcndhdGVyIC0gSU1TIGluIHRoZSBDbG91ZAotIyBDb3B5cmlnaHQgKEMpIDIwMTUgIE1ldGFzd2l0Y2ggTmV0d29ya3MgTHRkCi0jCi0jIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0Ci0jIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZQotIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyCi0jIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24sIGFsb25nIHdpdGggdGhlICJTcGVjaWFsIEV4Y2VwdGlvbiIgZm9yIHVzZSBvZgotIyB0aGUgcHJvZ3JhbSBhbG9uZyB3aXRoIFNTTCwgc2V0IGZvcnRoIGJlbG93LiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQKLSMgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOwotIyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SCi0jIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZQotIyBkZXRhaWxzLiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKLSMgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlCi0jIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KLSMKLSMgVGhlIGF1dGhvciBjYW4gYmUgcmVhY2hlZCBieSBlbWFpbCBhdCBjbGVhcndhdGVyQG1ldGFzd2l0Y2guY29tIG9yIGJ5Ci0jIHBvc3QgYXQgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQsIDEwMCBDaHVyY2ggU3QsIEVuZmllbGQgRU4yIDZCUSwgVUsKLSMKLSMgU3BlY2lhbCBFeGNlcHRpb24KLSMgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQgIGdyYW50cyB5b3UgcGVybWlzc2lvbiB0byBjb3B5LCBtb2RpZnksCi0jIHByb3BhZ2F0ZSwgYW5kIGRpc3RyaWJ1dGUgYSB3b3JrIGZvcm1lZCBieSBjb21iaW5pbmcgT3BlblNTTCB3aXRoIFRoZQotIyBTb2Z0d2FyZSwgb3IgYSB3b3JrIGRlcml2YXRpdmUgb2Ygc3VjaCBhIGNvbWJpbmF0aW9uLCBldmVuIGlmIHN1Y2gKLSMgY29weWluZywgbW9kaWZpY2F0aW9uLCBwcm9wYWdhdGlvbiwgb3IgZGlzdHJpYnV0aW9uIHdvdWxkIG90aGVyd2lzZQotIyB2aW9sYXRlIHRoZSB0ZXJtcyBvZiB0aGUgR1BMLiBZb3UgbXVzdCBjb21wbHkgd2l0aCB0aGUgR1BMIGluIGFsbAotIyByZXNwZWN0cyBmb3IgYWxsIG9mIHRoZSBjb2RlIHVzZWQgb3RoZXIgdGhhbiBPcGVuU1NMLgotIyAiT3BlblNTTCIgbWVhbnMgT3BlblNTTCB0b29sa2l0IHNvZnR3YXJlIGRpc3RyaWJ1dGVkIGJ5IHRoZSBPcGVuU1NMCi0jIFByb2plY3QgYW5kIGxpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIExpY2Vuc2VzLCBvciBhIHdvcmsgYmFzZWQgb24gc3VjaAotIyBzb2Z0d2FyZSBhbmQgbGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgTGljZW5zZXMuCi0jICJPcGVuU1NMIExpY2Vuc2VzIiBtZWFucyB0aGUgT3BlblNTTCBMaWNlbnNlIGFuZCBPcmlnaW5hbCBTU0xlYXkgTGljZW5zZQotIyB1bmRlciB3aGljaCB0aGUgT3BlblNTTCBQcm9qZWN0IGRpc3RyaWJ1dGVzIHRoZSBPcGVuU1NMIHRvb2xraXQgc29mdHdhcmUsCi0jIGFzIHRob3NlIGxpY2Vuc2VzIGFwcGVhciBpbiB0aGUgZmlsZSBMSUNFTlNFLU9QRU5TU0wuCi0KLWhlYXRfdGVtcGxhdGVfdmVyc2lvbjogMjAxMy0wNS0yMwotCi1kZXNjcmlwdGlvbjogPgotICBCYXNlIFByb2plY3QgQ2xlYXJ3YXRlciBkZXBsb3ltZW50IG9uIE9OQVAgKE9wZW4gTmV0d29yayBBdXRvbWF0aW9uIFBsYXRmb3JtKQotCi1wYXJhbWV0ZXJzOgotICB2bmZfaWQ6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IFZORiBJRAotICAgIGRlc2NyaXB0aW9uOiBUaGUgVk5GIElEIHByb3ZpZGVkIGJ5IE9OQVAKLSAgdmZfbW9kdWxlX2lkOgotICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiBWTkYgbW9kdWxlIElECi0gICAgZGVzY3JpcHRpb246IFRoZSBWTkYgbW9kdWxlIElEIHByb3ZpZGVkIGJ5IE9OQVAKLSAgcHVibGljX25ldF9pZDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogSUQgb2YgcHVibGljIG5ldHdvcmsKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5ldXRyb24ubmV0d29yawotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIG5ldHdvcmsgSUQKLSAgYm9ub19mbGF2b3JfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogVk0gZmxhdm9yIGZvciBib25vIFZNcwotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbm92YS5mbGF2b3IKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBmbGF2b3IgbmFtZQotICBzcHJvdXRfZmxhdm9yX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IFZNIGZsYXZvciBmb3Igc3Byb3V0IFZNcwotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbm92YS5mbGF2b3IKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBmbGF2b3IgbmFtZQotICBob21lc3RlYWRfZmxhdm9yX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IFZNIGZsYXZvciBmb3IgaG9tZXN0ZWFkIFZNcwotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbm92YS5mbGF2b3IKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBmbGF2b3IgbmFtZQotICBob21lcl9mbGF2b3JfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogVk0gZmxhdm9yIGZvciBob21lciBWTXMKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEuZmxhdm9yCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIGEgdmFsaWQgZmxhdm9yIG5hbWUKLSAgcmFsZl9mbGF2b3JfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogVk0gZmxhdm9yIGZvciByYWxmIFZNcwotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbm92YS5mbGF2b3IKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBmbGF2b3IgbmFtZQotICBlbGxpc19mbGF2b3JfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogVk0gZmxhdm9yIGZvciBlbGxpcyBWTQotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbm92YS5mbGF2b3IKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBmbGF2b3IgbmFtZQotICBkbnNfZmxhdm9yX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IFZNIGZsYXZvciBmb3IgZG5zIFZNCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBub3ZhLmZsYXZvcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGZsYXZvciBuYW1lCi0gIGJvbm9faW1hZ2VfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBpbWFnZSBmb3IgYm9ubyBWTXMKLSAgc3Byb3V0X2ltYWdlX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2YgaW1hZ2UgZm9yIHNwcm91dCBWTXMKLSAgaG9tZXN0ZWFkX2ltYWdlX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2YgaW1hZ2UgZm9yIGhvbWVzdGVhZCBWTXMKLSAgaG9tZXJfaW1hZ2VfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBpbWFnZSBmb3IgaG9tZXIgVk1zCi0gIHJhbGZfaW1hZ2VfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBpbWFnZSBmb3IgcmFsZiBWTXMKLSAgZWxsaXNfaW1hZ2VfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBpbWFnZSBmb3IgZWxsaXMgVk0KLSAgZG5zX2ltYWdlX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2YgaW1hZ2UgZm9yIGRucyBWTXMKLSAga2V5X25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2Yga2V5cGFpciB0byBjcmVhdGUKLSAgcHViX2tleToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogUHVibGljIGtleQotICAgIGRlc2NyaXB0aW9uOiBQdWJsaWMga2V5IHRvIGJlIGluc3RhbGxlZCBvbiBhbGwgY29tcHV0ZSBpbnN0YW5jZXMKLSAgcmVwb191cmw6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IFVSTCBmb3IgQ2xlYXJ3YXRlciByZXBvc2l0b3J5Ci0gICAgZGVmYXVsdDogaHR0cDovL3JlcG8uY3ctbmd2LmNvbS9zdGFibGUKLSAgem9uZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRE5TIHpvbmUKLSAgICBkZWZhdWx0OiBleGFtcGxlLmNvbQotICBkbl9yYW5nZV9zdGFydDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRmlyc3QgZGlyZWN0b3J5IG51bWJlciBpbiBwb29sCi0gICAgZGVmYXVsdDogIjY1MDU1NTAwMDAiCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGFsbG93ZWRfcGF0dGVybjogIlswLTldKyIKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgbnVtZXJpYwotICBkbl9yYW5nZV9sZW5ndGg6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE51bWJlciBvZiBkaXJlY3RvcnkgbnVtYmVycyB0byBhZGQgdG8gcG9vbAotICAgIGRlZmF1bHQ6ICIxMDAwIgotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbMC05XSsiCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIG51bWVyaWMKLSAgZG5zc2VjX2tleToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRE5TU0VDIHByaXZhdGUga2V5IChCYXNlNjQtZW5jb2RlZCkKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gYWxsb3dlZF9wYXR0ZXJuOiAiWzAtOUEtWmEteisvPV0rIgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBCYXNlNjQtZW5jb2RlZAotCi1yZXNvdXJjZXM6Ci0gIGN3X2tleXBhaXI6Ci0gICAgdHlwZTogT1M6Ok5vdmE6OktleVBhaXIKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgbmFtZTogeyBnZXRfcGFyYW06IGtleV9uYW1lIH0KLSAgICAgIHB1YmxpY19rZXk6IHsgZ2V0X3BhcmFtOiBwdWJfa2V5IH0KLSAgICAgIHNhdmVfcHJpdmF0ZV9rZXk6IGZhbHNlCi0KLSMgc2VjdXJpdHlfZ3JvdXBzOgotIyAgIHR5cGU6IHNlY3VyaXR5LWdyb3Vwcy55YW1sCi0jICAgcHJvcGVydGllczoKLSMgICAgIG5hbWVfcHJlZml4OiB7IGdldF9wYXJhbTogIk9TOjpzdGFja19uYW1lIiB9Ci0KLSAgZG5zOgotICAgIHR5cGU6IGRucy55YW1sCi0gICAgcHJvcGVydGllczoKLSAgICAgIHZuZl9pZDogeyBnZXRfcGFyYW06IHZuZl9pZCB9Ci0gICAgICB2Zl9tb2R1bGVfaWQ6IHsgZ2V0X3BhcmFtOiB2Zl9tb2R1bGVfaWQgfQotICAgICAgcHVibGljX25ldF9pZDogeyBnZXRfcGFyYW06IHB1YmxpY19uZXRfaWQgfQotICAgICAgZG5zX2ZsYXZvcl9uYW1lOiB7IGdldF9wYXJhbTogZG5zX2ZsYXZvcl9uYW1lIH0KLSAgICAgIGRuc19pbWFnZV9uYW1lOiB7IGdldF9wYXJhbTogZG5zX2ltYWdlX25hbWUgfQotICAgICAga2V5X25hbWU6IHsgZ2V0X3Jlc291cmNlOiBjd19rZXlwYWlyIH0KLSMgICAgIGRuc19zZWN1cml0eV9ncm91cDogeyBnZXRfYXR0cjogWyBzZWN1cml0eV9ncm91cHMsIGRucyBdIH0KLSAgICAgIHpvbmU6IHsgZ2V0X3BhcmFtOiB6b25lIH0KLSAgICAgIGRuc3NlY19rZXk6IHsgZ2V0X3BhcmFtOiBkbnNzZWNfa2V5IH0KLQotCi0gIGVsbGlzOgotICAgIHR5cGU6IGVsbGlzLnlhbWwKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgdm5mX2lkOiB7IGdldF9wYXJhbTogdm5mX2lkIH0KLSAgICAgIHZmX21vZHVsZV9pZDogeyBnZXRfcGFyYW06IHZmX21vZHVsZV9pZCB9Ci0gICAgICBwdWJsaWNfbmV0X2lkOiB7IGdldF9wYXJhbTogcHVibGljX25ldF9pZCB9Ci0gICAgICBlbGxpc19mbGF2b3JfbmFtZTogeyBnZXRfcGFyYW06IGVsbGlzX2ZsYXZvcl9uYW1lIH0KLSAgICAgIGVsbGlzX2ltYWdlX25hbWU6IHsgZ2V0X3BhcmFtOiBlbGxpc19pbWFnZV9uYW1lIH0KLSAgICAgIGtleV9uYW1lOiB7IGdldF9yZXNvdXJjZTogY3dfa2V5cGFpciB9Ci0jICAgICBiYXNlX21nbXRfc2VjdXJpdHlfZ3JvdXA6IHsgZ2V0X2F0dHI6IFsgc2VjdXJpdHlfZ3JvdXBzLCBiYXNlX21nbXQgXSB9Ci0jICAgICBlbGxpc19tZ210X3NlY3VyaXR5X2dyb3VwOiB7IGdldF9hdHRyOiBbIHNlY3VyaXR5X2dyb3VwcywgZWxsaXNfbWdtdCBdIH0KLSAgICAgIHJlcG9fdXJsOiB7IGdldF9wYXJhbTogcmVwb191cmwgfQotICAgICAgem9uZTogeyBnZXRfcGFyYW06IHpvbmUgfQotICAgICAgZG5fcmFuZ2Vfc3RhcnQ6IHsgZ2V0X3BhcmFtOiBkbl9yYW5nZV9zdGFydCB9Ci0gICAgICBkbl9yYW5nZV9sZW5ndGg6IHsgZ2V0X3BhcmFtOiBkbl9yYW5nZV9sZW5ndGggfQotICAgICAgZG5zX2lwOiB7IGdldF9hdHRyOiBbIGRucywgZG5zX2lwIF0gfQotICAgICAgZG5zc2VjX2tleTogeyBnZXRfcGFyYW06IGRuc3NlY19rZXkgfQotCi0gIGJvbm86Ci0gICAgdHlwZTogT1M6OkhlYXQ6OlJlc291cmNlR3JvdXAKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgY291bnQ6IDIKLSAgICAgIGluZGV4X3ZhcjogIl9faW5kZXhfXyIKLSAgICAgIHJlc291cmNlX2RlZjoKLSAgICAgICAgdHlwZTogYm9uby55YW1sCi0gICAgICAgIHByb3BlcnRpZXM6Ci0gICAgICAgICAgdm5mX2lkOiB7IGdldF9wYXJhbTogdm5mX2lkIH0KLSAgICAgICAgICB2Zl9tb2R1bGVfaWQ6IHsgZ2V0X3BhcmFtOiB2Zl9tb2R1bGVfaWQgfQotICAgICAgICAgIHB1YmxpY19uZXRfaWQ6IHsgZ2V0X3BhcmFtOiBwdWJsaWNfbmV0X2lkIH0KLSAgICAgICAgICBib25vX2ZsYXZvcl9uYW1lOiB7IGdldF9wYXJhbTogYm9ub19mbGF2b3JfbmFtZSB9Ci0gICAgICAgICAgYm9ub19pbWFnZV9uYW1lOiB7IGdldF9wYXJhbTogYm9ub19pbWFnZV9uYW1lIH0KLSAgICAgICAgICBrZXlfbmFtZTogeyBnZXRfcmVzb3VyY2U6IGN3X2tleXBhaXIgfQotIyAgICAgICAgIGJhc2VfbWdtdF9zZWN1cml0eV9ncm91cDogeyBnZXRfYXR0cjogWyBzZWN1cml0eV9ncm91cHMsIGJhc2VfbWdtdCBdIH0KLSMgICAgICAgICBib25vX3NpZ19zZWN1cml0eV9ncm91cDogeyBnZXRfYXR0cjogWyBzZWN1cml0eV9ncm91cHMsIGJvbm9fc2lnIF0gfQotICAgICAgICAgIHJlcG9fdXJsOiB7IGdldF9wYXJhbTogcmVwb191cmwgfQotICAgICAgICAgIHpvbmU6IHsgZ2V0X3BhcmFtOiB6b25lIH0KLSAgICAgICAgICBkbnNfaXA6IHsgZ2V0X2F0dHI6IFsgZG5zLCBkbnNfaXAgXSB9Ci0gICAgICAgICAgZG5zc2VjX2tleTogeyBnZXRfcGFyYW06IGRuc3NlY19rZXkgfQotICAgICAgICAgIGV0Y2RfaXA6IHsgZ2V0X2F0dHI6IFsgZWxsaXMsIHB1YmxpY19pcCBdIH0KLSAgICAgICAgICBpbmRleDogX19pbmRleF9fCi0KLSAgc3Byb3V0OgotICAgIHR5cGU6IE9TOjpIZWF0OjpSZXNvdXJjZUdyb3VwCi0gICAgcHJvcGVydGllczoKLSAgICAgIGNvdW50OiAyCi0gICAgICBpbmRleF92YXI6IF9faW5kZXhfXwotICAgICAgcmVzb3VyY2VfZGVmOgotICAgICAgICB0eXBlOiBzcHJvdXQueWFtbAotICAgICAgICBwcm9wZXJ0aWVzOgotICAgICAgICAgIHZuZl9pZDogeyBnZXRfcGFyYW06IHZuZl9pZCB9Ci0gICAgICAgICAgdmZfbW9kdWxlX2lkOiB7IGdldF9wYXJhbTogdmZfbW9kdWxlX2lkIH0KLSAgICAgICAgICBwdWJsaWNfbmV0X2lkOiB7IGdldF9wYXJhbTogcHVibGljX25ldF9pZCB9Ci0gICAgICAgICAgc3Byb3V0X2ZsYXZvcl9uYW1lOiB7IGdldF9wYXJhbTogc3Byb3V0X2ZsYXZvcl9uYW1lIH0KLSAgICAgICAgICBzcHJvdXRfaW1hZ2VfbmFtZTogeyBnZXRfcGFyYW06IHNwcm91dF9pbWFnZV9uYW1lIH0KLSAgICAgICAgICBrZXlfbmFtZTogeyBnZXRfcmVzb3VyY2U6IGN3X2tleXBhaXIgfQotIyAgICAgICAgIGJhc2VfbWdtdF9zZWN1cml0eV9ncm91cDogeyBnZXRfYXR0cjogWyBzZWN1cml0eV9ncm91cHMsIGJhc2VfbWdtdCBdIH0KLSMgICAgICAgICBzcHJvdXRfc2lnX3NlY3VyaXR5X2dyb3VwOiB7IGdldF9hdHRyOiBbIHNlY3VyaXR5X2dyb3Vwcywgc3Byb3V0X3NpZyBdIH0KLSMgICAgICAgICBzcHJvdXRfc2lnMl9zZWN1cml0eV9ncm91cDogeyBnZXRfYXR0cjogWyBzZWN1cml0eV9ncm91cHMsIHNwcm91dF9zaWcyIF0gfQotICAgICAgICAgIHJlcG9fdXJsOiB7IGdldF9wYXJhbTogcmVwb191cmwgfQotICAgICAgICAgIHpvbmU6IHsgZ2V0X3BhcmFtOiB6b25lIH0KLSAgICAgICAgICBkbnNfaXA6IHsgZ2V0X2F0dHI6IFsgZG5zLCBkbnNfaXAgXSB9Ci0gICAgICAgICAgZG5zc2VjX2tleTogeyBnZXRfcGFyYW06IGRuc3NlY19rZXkgfQotICAgICAgICAgIGV0Y2RfaXA6IHsgZ2V0X2F0dHI6IFsgZWxsaXMsIHB1YmxpY19pcCBdIH0KLSAgICAgICAgICBpbmRleDogX19pbmRleF9fCi0KLSAgaG9tZXI6Ci0gICAgdHlwZTogT1M6OkhlYXQ6OlJlc291cmNlR3JvdXAKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgY291bnQ6IDIKLSAgICAgIGluZGV4X3ZhcjogX19pbmRleF9fCi0gICAgICByZXNvdXJjZV9kZWY6Ci0gICAgICAgIHR5cGU6IGhvbWVyLnlhbWwKLSAgICAgICAgcHJvcGVydGllczoKLSAgICAgICAgICB2bmZfaWQ6IHsgZ2V0X3BhcmFtOiB2bmZfaWQgfQotICAgICAgICAgIHZmX21vZHVsZV9pZDogeyBnZXRfcGFyYW06IHZmX21vZHVsZV9pZCB9Ci0gICAgICAgICAgcHVibGljX25ldF9pZDogeyBnZXRfcGFyYW06IHB1YmxpY19uZXRfaWQgfQotICAgICAgICAgIGhvbWVyX2ZsYXZvcl9uYW1lOiB7IGdldF9wYXJhbTogaG9tZXJfZmxhdm9yX25hbWUgfQotICAgICAgICAgIGhvbWVyX2ltYWdlX25hbWU6IHsgZ2V0X3BhcmFtOiBob21lcl9pbWFnZV9uYW1lIH0KLSAgICAgICAgICBrZXlfbmFtZTogeyBnZXRfcmVzb3VyY2U6IGN3X2tleXBhaXIgfQotIyAgICAgICAgIGJhc2VfbWdtdF9zZWN1cml0eV9ncm91cDogeyBnZXRfYXR0cjogWyBzZWN1cml0eV9ncm91cHMsIGJhc2VfbWdtdCBdIH0KLSMgICAgICAgICBob21lcl9tZ210X3NlY3VyaXR5X2dyb3VwOiB7IGdldF9hdHRyOiBbIHNlY3VyaXR5X2dyb3VwcywgaG9tZXJfbWdtdCBdIH0KLSMgICAgICAgICBob21lcl9zaWdfc2VjdXJpdHlfZ3JvdXA6IHsgZ2V0X2F0dHI6IFsgc2VjdXJpdHlfZ3JvdXBzLCBob21lcl9zaWcgXSB9Ci0gICAgICAgICAgcmVwb191cmw6IHsgZ2V0X3BhcmFtOiByZXBvX3VybCB9Ci0gICAgICAgICAgem9uZTogeyBnZXRfcGFyYW06IHpvbmUgfQotICAgICAgICAgIGRuc19pcDogeyBnZXRfYXR0cjogWyBkbnMsIGRuc19pcCBdIH0KLSAgICAgICAgICBkbnNzZWNfa2V5OiB7IGdldF9wYXJhbTogZG5zc2VjX2tleSB9Ci0gICAgICAgICAgZXRjZF9pcDogeyBnZXRfYXR0cjogWyBlbGxpcywgcHVibGljX2lwIF0gfQotICAgICAgICAgIGluZGV4OiBfX2luZGV4X18KLQotICBob21lc3RlYWQ6Ci0gICAgdHlwZTogT1M6OkhlYXQ6OlJlc291cmNlR3JvdXAKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgY291bnQ6IDIKLSAgICAgIGluZGV4X3ZhcjogX19pbmRleF9fCi0gICAgICByZXNvdXJjZV9kZWY6Ci0gICAgICAgIHR5cGU6IGhvbWVzdGVhZC55YW1sCi0gICAgICAgIHByb3BlcnRpZXM6Ci0gICAgICAgICAgdm5mX2lkOiB7IGdldF9wYXJhbTogdm5mX2lkIH0KLSAgICAgICAgICB2Zl9tb2R1bGVfaWQ6IHsgZ2V0X3BhcmFtOiB2Zl9tb2R1bGVfaWQgfQotICAgICAgICAgIHB1YmxpY19uZXRfaWQ6IHsgZ2V0X3BhcmFtOiBwdWJsaWNfbmV0X2lkIH0KLSAgICAgICAgICBob21lc3RlYWRfZmxhdm9yX25hbWU6IHsgZ2V0X3BhcmFtOiBob21lc3RlYWRfZmxhdm9yX25hbWUgfQotICAgICAgICAgIGhvbWVzdGVhZF9pbWFnZV9uYW1lOiB7IGdldF9wYXJhbTogaG9tZXN0ZWFkX2ltYWdlX25hbWUgfQotICAgICAgICAgIGtleV9uYW1lOiB7IGdldF9yZXNvdXJjZTogY3dfa2V5cGFpciB9Ci0jICAgICAgICAgYmFzZV9tZ210X3NlY3VyaXR5X2dyb3VwOiB7IGdldF9hdHRyOiBbIHNlY3VyaXR5X2dyb3VwcywgYmFzZV9tZ210IF0gfQotIyAgICAgICAgIGhvbWVzdGVhZF9tZ210X3NlY3VyaXR5X2dyb3VwOiB7IGdldF9hdHRyOiBbIHNlY3VyaXR5X2dyb3VwcywgaG9tZXN0ZWFkX21nbXQgXSB9Ci0jICAgICAgICAgaG9tZXN0ZWFkX3NpZ19zZWN1cml0eV9ncm91cDogeyBnZXRfYXR0cjogWyBzZWN1cml0eV9ncm91cHMsIGhvbWVzdGVhZF9zaWcgXSB9Ci0gICAgICAgICAgcmVwb191cmw6IHsgZ2V0X3BhcmFtOiByZXBvX3VybCB9Ci0gICAgICAgICAgem9uZTogeyBnZXRfcGFyYW06IHpvbmUgfQotICAgICAgICAgIGRuc19pcDogeyBnZXRfYXR0cjogWyBkbnMsIGRuc19pcCBdIH0KLSAgICAgICAgICBkbnNzZWNfa2V5OiB7IGdldF9wYXJhbTogZG5zc2VjX2tleSB9Ci0gICAgICAgICAgZXRjZF9pcDogeyBnZXRfYXR0cjogWyBlbGxpcywgcHVibGljX2lwIF0gfQotICAgICAgICAgIGluZGV4OiBfX2luZGV4X18KLQotICByYWxmOgotICAgIHR5cGU6IE9TOjpIZWF0OjpSZXNvdXJjZUdyb3VwCi0gICAgcHJvcGVydGllczoKLSAgICAgIGNvdW50OiAyCi0gICAgICBpbmRleF92YXI6IF9faW5kZXhfXwotICAgICAgcmVzb3VyY2VfZGVmOgotICAgICAgICB0eXBlOiByYWxmLnlhbWwKLSAgICAgICAgcHJvcGVydGllczoKLSAgICAgICAgICB2bmZfaWQ6IHsgZ2V0X3BhcmFtOiB2bmZfaWQgfQotICAgICAgICAgIHZmX21vZHVsZV9pZDogeyBnZXRfcGFyYW06IHZmX21vZHVsZV9pZCB9Ci0gICAgICAgICAgcHVibGljX25ldF9pZDogeyBnZXRfcGFyYW06IHB1YmxpY19uZXRfaWQgfQotICAgICAgICAgIHJhbGZfZmxhdm9yX25hbWU6IHsgZ2V0X3BhcmFtOiByYWxmX2ZsYXZvcl9uYW1lIH0KLSAgICAgICAgICByYWxmX2ltYWdlX25hbWU6IHsgZ2V0X3BhcmFtOiByYWxmX2ltYWdlX25hbWUgfQotICAgICAgICAgIGtleV9uYW1lOiB7IGdldF9yZXNvdXJjZTogY3dfa2V5cGFpciB9Ci0jICAgICAgICAgYmFzZV9tZ210X3NlY3VyaXR5X2dyb3VwOiB7IGdldF9hdHRyOiBbIHNlY3VyaXR5X2dyb3VwcywgYmFzZV9tZ210IF0gfQotIyAgICAgICAgIHJhbGZfc2lnX3NlY3VyaXR5X2dyb3VwOiB7IGdldF9hdHRyOiBbIHNlY3VyaXR5X2dyb3VwcywgcmFsZl9zaWcgXSB9Ci0gICAgICAgICAgcmVwb191cmw6IHsgZ2V0X3BhcmFtOiByZXBvX3VybCB9Ci0gICAgICAgICAgem9uZTogeyBnZXRfcGFyYW06IHpvbmUgfQotICAgICAgICAgIGRuc19pcDogeyBnZXRfYXR0cjogWyBkbnMsIGRuc19pcCBdIH0KLSAgICAgICAgICBkbnNzZWNfa2V5OiB7IGdldF9wYXJhbTogZG5zc2VjX2tleSB9Ci0gICAgICAgICAgZXRjZF9pcDogeyBnZXRfYXR0cjogWyBlbGxpcywgcHVibGljX2lwIF0gfQotICAgICAgICAgIGluZGV4OiBfX2luZGV4X18KLQotb3V0cHV0czoKLSAgem9uZToKLSAgICBkZXNjcmlwdGlvbjogRE5TIHpvbmUKLSAgICB2YWx1ZTogeyBnZXRfcGFyYW06IHpvbmUgfQotICBkbnNfaXA6Ci0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3Mgb2YgRE5TCi0gICAgdmFsdWU6IHsgZ2V0X2F0dHI6IFsgZG5zLCBkbnNfaXAgXSB9Ci0KZGlmZiAtLWdpdCBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9ib25vLnlhbWwgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvYm9uby55YW1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NzVkYmI5Li4wMDAwMDAwCi0tLSBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9ib25vLnlhbWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOTEgKzAsMCBAQAotIyBQcm9qZWN0IENsZWFyd2F0ZXIgLSBJTVMgaW4gdGhlIENsb3VkCi0jIENvcHlyaWdodCAoQykgMjAxNSAgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQKLSMKLSMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKLSMgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlCi0jIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIKLSMgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbiwgYWxvbmcgd2l0aCB0aGUgIlNwZWNpYWwgRXhjZXB0aW9uIiBmb3IgdXNlIG9mCi0jIHRoZSBwcm9ncmFtIGFsb25nIHdpdGggU1NMLCBzZXQgZm9ydGggYmVsb3cuIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZAotIyBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7Ci0jIHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlCi0jIGRldGFpbHMuIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYwotIyBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUKLSMgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotIwotIyBUaGUgYXV0aG9yIGNhbiBiZSByZWFjaGVkIGJ5IGVtYWlsIGF0IGNsZWFyd2F0ZXJAbWV0YXN3aXRjaC5jb20gb3IgYnkKLSMgcG9zdCBhdCBNZXRhc3dpdGNoIE5ldHdvcmtzIEx0ZCwgMTAwIENodXJjaCBTdCwgRW5maWVsZCBFTjIgNkJRLCBVSwotIwotIyBTcGVjaWFsIEV4Y2VwdGlvbgotIyBNZXRhc3dpdGNoIE5ldHdvcmtzIEx0ZCAgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIGNvcHksIG1vZGlmeSwKLSMgcHJvcGFnYXRlLCBhbmQgZGlzdHJpYnV0ZSBhIHdvcmsgZm9ybWVkIGJ5IGNvbWJpbmluZyBPcGVuU1NMIHdpdGggVGhlCi0jIFNvZnR3YXJlLCBvciBhIHdvcmsgZGVyaXZhdGl2ZSBvZiBzdWNoIGEgY29tYmluYXRpb24sIGV2ZW4gaWYgc3VjaAotIyBjb3B5aW5nLCBtb2RpZmljYXRpb24sIHByb3BhZ2F0aW9uLCBvciBkaXN0cmlidXRpb24gd291bGQgb3RoZXJ3aXNlCi0jIHZpb2xhdGUgdGhlIHRlcm1zIG9mIHRoZSBHUEwuIFlvdSBtdXN0IGNvbXBseSB3aXRoIHRoZSBHUEwgaW4gYWxsCi0jIHJlc3BlY3RzIGZvciBhbGwgb2YgdGhlIGNvZGUgdXNlZCBvdGhlciB0aGFuIE9wZW5TU0wuCi0jICJPcGVuU1NMIiBtZWFucyBPcGVuU1NMIHRvb2xraXQgc29mdHdhcmUgZGlzdHJpYnV0ZWQgYnkgdGhlIE9wZW5TU0wKLSMgUHJvamVjdCBhbmQgbGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgTGljZW5zZXMsIG9yIGEgd29yayBiYXNlZCBvbiBzdWNoCi0jIHNvZnR3YXJlIGFuZCBsaWNlbnNlZCB1bmRlciB0aGUgT3BlblNTTCBMaWNlbnNlcy4KLSMgIk9wZW5TU0wgTGljZW5zZXMiIG1lYW5zIHRoZSBPcGVuU1NMIExpY2Vuc2UgYW5kIE9yaWdpbmFsIFNTTGVheSBMaWNlbnNlCi0jIHVuZGVyIHdoaWNoIHRoZSBPcGVuU1NMIFByb2plY3QgZGlzdHJpYnV0ZXMgdGhlIE9wZW5TU0wgdG9vbGtpdCBzb2Z0d2FyZSwKLSMgYXMgdGhvc2UgbGljZW5zZXMgYXBwZWFyIGluIHRoZSBmaWxlIExJQ0VOU0UtT1BFTlNTTC4KLQotaGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzCi0KLWRlc2NyaXB0aW9uOiA+Ci0gIENsZWFyd2F0ZXIgQm9ubyBub2RlCi0KLXBhcmFtZXRlcnM6Ci0gIHZuZl9pZDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogVk5GIElECi0gICAgZGVzY3JpcHRpb246IFRoZSBWTkYgSUQgcHJvdmlkZWQgYnkgT05BUAotICB2Zl9tb2R1bGVfaWQ6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IFZORiBtb2R1bGUgSUQKLSAgICBkZXNjcmlwdGlvbjogVGhlIFZORiBtb2R1bGUgSUQgcHJvdmlkZWQgYnkgT05BUAotICBwdWJsaWNfbmV0X2lkOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBJRCBvZiBwdWJsaWMgbmV0d29yawotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbmV1dHJvbi5uZXR3b3JrCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIGEgdmFsaWQgbmV0d29yayBJRAotICBib25vX2ZsYXZvcl9uYW1lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBGbGF2b3IgdG8gdXNlCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBub3ZhLmZsYXZvcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGZsYXZvciBuYW1lCi0gIGJvbm9faW1hZ2VfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBpbWFnZSB0byB1c2UKLSAga2V5X25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2Yga2V5cGFpciB0byBhc3NpZ24KLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEua2V5cGFpcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGtleXBhaXIgbmFtZQotIyBiYXNlX21nbXRfc2VjdXJpdHlfZ3JvdXA6Ci0jICAgdHlwZTogc3RyaW5nCi0jICAgZGVzY3JpcHRpb246IElEIG9mIGJhc2Ugc2VjdXJpdHkgZ3JvdXAgZm9yIGFsbCBDbGVhcndhdGVyIG5vZGVzIChtYW5hZ21lbnQpCi0jIGJvbm9fc2lnX3NlY3VyaXR5X2dyb3VwOgotIyAgIHR5cGU6IHN0cmluZwotIyAgIGRlc2NyaXB0aW9uOiBJRCBvZiBzZWN1cml0eSBncm91cCBmb3IgQm9ubyBub2RlcyAoc2lnbmFsaW5nKQotICByZXBvX3VybDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogVVJMIGZvciBDbGVhcndhdGVyIHJlcG9zaXRvcnkKLSAgICBkZWZhdWx0OiBodHRwOi8vcmVwby5jdy1uZ3YuY29tL3N0YWJsZQotICB6b25lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBETlMgem9uZQotICAgIGRlZmF1bHQ6IGV4YW1wbGUuY29tCi0gIGRuc19pcDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogSVAgYWRkcmVzcyBmb3IgRE5TIHNlcnZlciBvbiBtYW5hZ2VtZW50IG5ldHdvcmsKLSAgZG5zc2VjX2tleToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRE5TU0VDIHByaXZhdGUga2V5IChCYXNlNjQtZW5jb2RlZCkKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gYWxsb3dlZF9wYXR0ZXJuOiAiWzAtOUEtWmEteisvPV0rIgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBCYXNlNjQtZW5jb2RlZAotICBldGNkX2lwOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBJUCBhZGRyZXNzIG9mIGFuIGV4aXN0aW5nIG1lbWJlciBvZiB0aGUgZXRjZCBjbHVzdGVyCi0gICAgZGVmYXVsdDogIiIKLSAgaW5kZXg6Ci0gICAgdHlwZTogbnVtYmVyCi0gICAgZGVzY3JpcHRpb246IEluZGV4IG9mIHRoaXMgQm9ubyBub2RlIGluIHRoZSBCb25vIGNsdXN0ZXIKLSAgICBkZWZhdWx0OiAwCi0KLXJlc291cmNlczoKLSAgc2VydmVyOgotICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXIKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgbmFtZTogeyBzdHJfcmVwbGFjZTogeyBwYXJhbXM6IHsgX19pbmRleF9fOiB7IGdldF9wYXJhbTogaW5kZXggfSwgX196b25lX186IHsgZ2V0X3BhcmFtOiB6b25lIH0gfSwgdGVtcGxhdGU6IGJvbm8tX19pbmRleF9fLl9fem9uZV9fIH0gfQotICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiBib25vX2ltYWdlX25hbWUgfQotICAgICAgZmxhdm9yOiB7IGdldF9wYXJhbTogYm9ub19mbGF2b3JfbmFtZSB9Ci0gICAgICBrZXlfbmFtZTogeyBnZXRfcGFyYW06IGtleV9uYW1lIH0KLSAgICAgIG5ldHdvcmtzOgotICAgICAgICAtIG5ldHdvcms6IHsgZ2V0X3BhcmFtOiBwdWJsaWNfbmV0X2lkIH0KLSAgICAgIG1ldGFkYXRhOiB7dm5mX2lkOiB7IGdldF9wYXJhbTogdm5mX2lkIH0sIHZmX21vZHVsZV9pZDogeyBnZXRfcGFyYW06IHZmX21vZHVsZV9pZCB9fQotICAgICAgdXNlcl9kYXRhX2Zvcm1hdDogUkFXCi0gICAgICB1c2VyX2RhdGE6Ci0gICAgICAgIHN0cl9yZXBsYWNlOgotICAgICAgICAgIHBhcmFtczoKLSAgICAgICAgICAgIF9fcmVwb191cmxfXzogeyBnZXRfcGFyYW06IHJlcG9fdXJsIH0KLSAgICAgICAgICAgIF9fem9uZV9fOiB7IGdldF9wYXJhbTogem9uZSB9Ci0gICAgICAgICAgICBfX2Ruc19pcF9fOiB7IGdldF9wYXJhbTogZG5zX2lwIH0KLSAgICAgICAgICAgIF9fZG5zc2VjX2tleV9fOiB7IGdldF9wYXJhbTogZG5zc2VjX2tleSB9Ci0gICAgICAgICAgICBfX2V0Y2RfaXBfXyA6IHsgZ2V0X3BhcmFtOiBldGNkX2lwIH0KLSAgICAgICAgICAgIF9faW5kZXhfXyA6IHsgZ2V0X3BhcmFtOiBpbmRleCB9Ci0gICAgICAgICAgdGVtcGxhdGU6IHwKLSAgICAgICAgICAgICMhL2Jpbi9iYXNoCi0KLSAgICAgICAgICAgICMgTG9nIGFsbCBvdXRwdXQgdG8gZmlsZS4KLSAgICAgICAgICAgIGV4ZWMgPiA+KHRlZSAtYSAvdmFyL2xvZy9jbGVhcndhdGVyLWhlYXQtYm9uby5sb2cpIDI+JjEKLSAgICAgICAgICAgIHNldCAteAotCi0gICAgICAgICAgICAjIENvbmZpZ3VyZSB0aGUgQVBUIHNvZnR3YXJlIHNvdXJjZS4KLSAgICAgICAgICAgIGVjaG8gJ2RlYiBfX3JlcG9fdXJsX18gYmluYXJ5LycgPiAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC9jbGVhcndhdGVyLmxpc3QKLSAgICAgICAgICAgIGN1cmwgLUwgaHR0cDovL3JlcG8uY3ctbmd2LmNvbS9yZXBvX2tleSB8IGFwdC1rZXkgYWRkIC0KLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0KLSAgICAgICAgICAgICMgR2V0IHRoZSBwdWJsaWMgSVAgYWRkcmVzcyBmcm9tIGV0aDAKLSAgICAgICAgICAgIHN1ZG8gYXB0LWdldCBpbnN0YWxsIGlwY2FsYwotICAgICAgICAgICAgQUREUj1gaXAgYWRkciBzaG93IGV0aDAgfCBhd2sgJy9pbmV0IC97cHJpbnQgJDJ9J2AKLSAgICAgICAgICAgIFBVQkxJQ19BRERSPWBpcGNhbGMgLW4gLWIgJEFERFIgfCBhd2sgJy9BZGRyZXNzOi97cHJpbnQgJDJ9J2AKLQotICAgICAgICAgICAgIyBDb25maWd1cmUgL2V0Yy9jbGVhcndhdGVyL2xvY2FsX2NvbmZpZy4KLSAgICAgICAgICAgIG1rZGlyIC1wIC9ldGMvY2xlYXJ3YXRlcgotICAgICAgICAgICAgZXRjZF9pcD1fX2V0Y2RfaXBfXwotICAgICAgICAgICAgWyAtbiAiJGV0Y2RfaXAiIF0gfHwgZXRjZF9pcD0kUFVCTElDX0FERFIKLSAgICAgICAgICAgIGNhdCA+IC9ldGMvY2xlYXJ3YXRlci9sb2NhbF9jb25maWcgPDwgRU9GCi0gICAgICAgICAgICBtYW5hZ2VtZW50X2xvY2FsX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgbG9jYWxfaXA9JFBVQkxJQ19BRERSCi0gICAgICAgICAgICBwdWJsaWNfaXA9JFBVQkxJQ19BRERSCi0gICAgICAgICAgICBwdWJsaWNfaG9zdG5hbWU9X19pbmRleF9fLmJvbm8uX196b25lX18KLSAgICAgICAgICAgIGV0Y2RfY2x1c3Rlcj0kZXRjZF9pcAotICAgICAgICAgICAgRU9GCi0KLSAgICAgICAgICAgICMgTm93IGluc3RhbGwgdGhlIHNvZnR3YXJlLgotICAgICAgICAgICAgREVCSUFOX0ZST05URU5EPW5vbmludGVyYWN0aXZlIGFwdC1nZXQgaW5zdGFsbCBib25vLW5vZGUgLS15ZXMgLS1mb3JjZS15ZXMKLSAgICAgICAgICAgIERFQklBTl9GUk9OVEVORD1ub25pbnRlcmFjdGl2ZSBhcHQtZ2V0IGluc3RhbGwgY2xlYXJ3YXRlci1tYW5hZ2VtZW50IC0teWVzIC0tZm9yY2UteWVzCi0KLSAgICAgICAgICAgICMgRnVuY3Rpb24gdG8gZ2l2ZSBETlMgcmVjb3JkIHR5cGUgYW5kIElQIGFkZHJlc3MgZm9yIHNwZWNpZmllZCBJUCBhZGRyZXNzCi0gICAgICAgICAgICBpcDJycigpIHsKLSAgICAgICAgICAgICAgaWYgZWNobyAkMSB8IGdyZXAgLXEgLWUgJ1teMC05Ll0nIDsgdGhlbgotICAgICAgICAgICAgICAgIGVjaG8gQUFBQSAkMQotICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgZWNobyBBICQxCi0gICAgICAgICAgICAgIGZpCi0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICMgVXBkYXRlIEROUwotICAgICAgICAgICAgcmV0cmllcz0wCi0gICAgICAgICAgICB3aGlsZSAhIHsgbnN1cGRhdGUgLXkgIl9fem9uZV9fOl9fZG5zc2VjX2tleV9fIiAtdiA8PCBFT0YKLSAgICAgICAgICAgIHNlcnZlciBfX2Ruc19pcF9fCi0gICAgICAgICAgICB1cGRhdGUgYWRkIGJvbm8tX19pbmRleF9fLl9fem9uZV9fLiAzMCAkKGlwMnJyICRQVUJMSUNfQUREUikKLSAgICAgICAgICAgIHVwZGF0ZSBhZGQgX19pbmRleF9fLmJvbm8uX196b25lX18uIDMwICQoaXAycnIgJFBVQkxJQ19BRERSKQotICAgICAgICAgICAgdXBkYXRlIGFkZCBfX3pvbmVfXy4gMzAgJChpcDJyciAkUFVCTElDX0FERFIpCi0gICAgICAgICAgICB1cGRhdGUgYWRkIF9fem9uZV9fLiAzMCBOQVBUUiAwIDAgInMiICJTSVArRDJUIiAiIiBfc2lwLl90Y3AuX196b25lX18uCi0gICAgICAgICAgICB1cGRhdGUgYWRkIF9fem9uZV9fLiAzMCBOQVBUUiAwIDAgInMiICJTSVArRDJVIiAiIiBfc2lwLl91ZHAuX196b25lX18uCi0gICAgICAgICAgICB1cGRhdGUgYWRkIF9zaXAuX3RjcC5fX3pvbmVfXy4gMzAgU1JWIDAgMCA1MDYwIF9faW5kZXhfXy5ib25vLl9fem9uZV9fLgotICAgICAgICAgICAgdXBkYXRlIGFkZCBfc2lwLl91ZHAuX196b25lX18uIDMwIFNSViAwIDAgNTA2MCBfX2luZGV4X18uYm9uby5fX3pvbmVfXy4KLSAgICAgICAgICAgIHNlbmQKLSAgICAgICAgICAgIEVPRgotICAgICAgICAgICAgfSAmJiBbICRyZXRyaWVzIC1sdCAxMCBdCi0gICAgICAgICAgICBkbwotICAgICAgICAgICAgICByZXRyaWVzPSQoKHJldHJpZXMgKyAxKSkKLSAgICAgICAgICAgICAgZWNobyAnbnN1cGRhdGUgZmFpbGVkIC0gcmV0cnlpbmcgKHJldHJ5ICckcmV0cmllcycpLi4uJwotICAgICAgICAgICAgICBzbGVlcCA1Ci0gICAgICAgICAgICBkb25lCi0KLSAgICAgICAgICAgICMgVXNlIHRoZSBETlMgc2VydmVyLgotICAgICAgICAgICAgZWNobyAnbmFtZXNlcnZlciBfX2Ruc19pcF9fJyA+IC9ldGMvZG5zbWFzcS5yZXNvbHYuY29uZgotICAgICAgICAgICAgZWNobyAnUkVTT0xWX0NPTkY9L2V0Yy9kbnNtYXNxLnJlc29sdi5jb25mJyA+PiAvZXRjL2RlZmF1bHQvZG5zbWFzcQotICAgICAgICAgICAgc2VydmljZSBkbnNtYXNxIGZvcmNlLXJlbG9hZAotCi1vdXRwdXRzOgotICBwdWJsaWNfaXA6Ci0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3MgaW4gcHVibGljIG5ldHdvcmsKLSAgICB2YWx1ZTogeyBnZXRfYXR0cjogWyBzZXJ2ZXIsIGFjY2Vzc0lQdjQgXSB9CmRpZmYgLS1naXQgYS9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvZG5zLnlhbWwgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvZG5zLnlhbWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYyNTdkMjQuLjAwMDAwMDAKLS0tIGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV9jbGVhcndhdGVyL2Rucy55YW1sCisrKyAvZGV2L251bGwKQEAgLTEsMTU5ICswLDAgQEAKLSMgUHJvamVjdCBDbGVhcndhdGVyIC0gSU1TIGluIHRoZSBDbG91ZAotIyBDb3B5cmlnaHQgKEMpIDIwMTUgIE1ldGFzd2l0Y2ggTmV0d29ya3MgTHRkCi0jCi0jIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0Ci0jIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZQotIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyCi0jIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24sIGFsb25nIHdpdGggdGhlICJTcGVjaWFsIEV4Y2VwdGlvbiIgZm9yIHVzZSBvZgotIyB0aGUgcHJvZ3JhbSBhbG9uZyB3aXRoIFNTTCwgc2V0IGZvcnRoIGJlbG93LiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQKLSMgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOwotIyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SCi0jIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZQotIyBkZXRhaWxzLiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKLSMgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlCi0jIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KLSMKLSMgVGhlIGF1dGhvciBjYW4gYmUgcmVhY2hlZCBieSBlbWFpbCBhdCBjbGVhcndhdGVyQG1ldGFzd2l0Y2guY29tIG9yIGJ5Ci0jIHBvc3QgYXQgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQsIDEwMCBDaHVyY2ggU3QsIEVuZmllbGQgRU4yIDZCUSwgVUsKLSMKLSMgU3BlY2lhbCBFeGNlcHRpb24KLSMgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQgIGdyYW50cyB5b3UgcGVybWlzc2lvbiB0byBjb3B5LCBtb2RpZnksCi0jIHByb3BhZ2F0ZSwgYW5kIGRpc3RyaWJ1dGUgYSB3b3JrIGZvcm1lZCBieSBjb21iaW5pbmcgT3BlblNTTCB3aXRoIFRoZQotIyBTb2Z0d2FyZSwgb3IgYSB3b3JrIGRlcml2YXRpdmUgb2Ygc3VjaCBhIGNvbWJpbmF0aW9uLCBldmVuIGlmIHN1Y2gKLSMgY29weWluZywgbW9kaWZpY2F0aW9uLCBwcm9wYWdhdGlvbiwgb3IgZGlzdHJpYnV0aW9uIHdvdWxkIG90aGVyd2lzZQotIyB2aW9sYXRlIHRoZSB0ZXJtcyBvZiB0aGUgR1BMLiBZb3UgbXVzdCBjb21wbHkgd2l0aCB0aGUgR1BMIGluIGFsbAotIyByZXNwZWN0cyBmb3IgYWxsIG9mIHRoZSBjb2RlIHVzZWQgb3RoZXIgdGhhbiBPcGVuU1NMLgotIyAiT3BlblNTTCIgbWVhbnMgT3BlblNTTCB0b29sa2l0IHNvZnR3YXJlIGRpc3RyaWJ1dGVkIGJ5IHRoZSBPcGVuU1NMCi0jIFByb2plY3QgYW5kIGxpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIExpY2Vuc2VzLCBvciBhIHdvcmsgYmFzZWQgb24gc3VjaAotIyBzb2Z0d2FyZSBhbmQgbGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgTGljZW5zZXMuCi0jICJPcGVuU1NMIExpY2Vuc2VzIiBtZWFucyB0aGUgT3BlblNTTCBMaWNlbnNlIGFuZCBPcmlnaW5hbCBTU0xlYXkgTGljZW5zZQotIyB1bmRlciB3aGljaCB0aGUgT3BlblNTTCBQcm9qZWN0IGRpc3RyaWJ1dGVzIHRoZSBPcGVuU1NMIHRvb2xraXQgc29mdHdhcmUsCi0jIGFzIHRob3NlIGxpY2Vuc2VzIGFwcGVhciBpbiB0aGUgZmlsZSBMSUNFTlNFLU9QRU5TU0wuCi0KLWhlYXRfdGVtcGxhdGVfdmVyc2lvbjogMjAxMy0wNS0yMwotCi1kZXNjcmlwdGlvbjogPgotICBETlMgc2VydmVyIGV4cG9zaW5nIGR5bmFtaWMgRE5TIHVzaW5nIEROU1NFQwotCi1wYXJhbWV0ZXJzOgotICB2bmZfaWQ6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IFZORiBJRAotICAgIGRlc2NyaXB0aW9uOiBUaGUgVk5GIElEIHByb3ZpZGVkIGJ5IE9OQVAKLSAgdmZfbW9kdWxlX2lkOgotICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiBWTkYgbW9kdWxlIElECi0gICAgZGVzY3JpcHRpb246IFRoZSBWTkYgbW9kdWxlIElEIHByb3ZpZGVkIGJ5IE9OQVAKLSAgcHVibGljX25ldF9pZDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogSUQgb2YgcHVibGljIG5ldHdvcmsKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5ldXRyb24ubmV0d29yawotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIG5ldHdvcmsgSUQKLSAgZG5zX2ZsYXZvcl9uYW1lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBGbGF2b3IgdG8gdXNlCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBub3ZhLmZsYXZvcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGZsYXZvciBuYW1lCi0gIGRuc19pbWFnZV9uYW1lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBOYW1lIG9mIGltYWdlIHRvIHVzZQotICBrZXlfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBrZXlwYWlyIHRvIGFzc2lnbgotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbm92YS5rZXlwYWlyCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIGEgdmFsaWQga2V5cGFpciBuYW1lCi0jIGRuc19zZWN1cml0eV9ncm91cDoKLSMgICB0eXBlOiBzdHJpbmcKLSMgICBkZXNjcmlwdGlvbjogSUQgb2Ygc2VjdXJpdHkgZ3JvdXAgZm9yIEROUyBub2RlcwotICB6b25lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBETlMgem9uZQotICAgIGRlZmF1bHQ6IGV4YW1wbGUuY29tCi0gIGRuc3NlY19rZXk6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IEROU1NFQyBwcml2YXRlIGtleSAoQmFzZTY0LWVuY29kZWQpCi0KLXJlc291cmNlczoKLSAgc2VydmVyOgotICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXIKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgbmFtZTogeyBzdHJfcmVwbGFjZTogeyBwYXJhbXM6IHsgX196b25lX186IHsgZ2V0X3BhcmFtOiB6b25lIH0gfSwgdGVtcGxhdGU6IG5zLl9fem9uZV9fIH0gfQotICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiBkbnNfaW1hZ2VfbmFtZSB9Ci0gICAgICBmbGF2b3I6IHsgZ2V0X3BhcmFtOiBkbnNfZmxhdm9yX25hbWUgfQotICAgICAga2V5X25hbWU6IHsgZ2V0X3BhcmFtOiBrZXlfbmFtZSB9Ci0gICAgICBuZXR3b3JrczoKLSAgICAgICAgLSBuZXR3b3JrOiB7IGdldF9wYXJhbTogcHVibGljX25ldF9pZCB9Ci0gICAgICBtZXRhZGF0YToge3ZuZl9pZDogeyBnZXRfcGFyYW06IHZuZl9pZCB9LCB2Zl9tb2R1bGVfaWQ6IHsgZ2V0X3BhcmFtOiB2Zl9tb2R1bGVfaWQgfX0KLSAgICAgIHVzZXJfZGF0YV9mb3JtYXQ6IFJBVwotICAgICAgdXNlcl9kYXRhOgotICAgICAgICBzdHJfcmVwbGFjZToKLSAgICAgICAgICBwYXJhbXM6Ci0gICAgICAgICAgICBfX3pvbmVfXzogeyBnZXRfcGFyYW06IHpvbmUgfQotICAgICAgICAgICAgX19kbnNzZWNfa2V5X186IHsgZ2V0X3BhcmFtOiBkbnNzZWNfa2V5IH0KLSAgICAgICAgICB0ZW1wbGF0ZTogfAotICAgICAgICAgICAgIyEvYmluL2Jhc2gKLQotICAgICAgICAgICAgIyBMb2cgYWxsIG91dHB1dCB0byBmaWxlLgotICAgICAgICAgICAgZXhlYyA+ID4odGVlIC1hIC92YXIvbG9nL2NsZWFyd2F0ZXItaGVhdC1kbnMubG9nKSAyPiYxCi0gICAgICAgICAgICBzZXQgLXgKLQotICAgICAgICAgICAgIyBJbnN0YWxsIEJJTkQuCi0gICAgICAgICAgICBhcHQtZ2V0IHVwZGF0ZQotICAgICAgICAgICAgREVCSUFOX0ZST05URU5EPW5vbmludGVyYWN0aXZlIGFwdC1nZXQgaW5zdGFsbCBiaW5kOSAtLXllcwotCi0gICAgICAgICAgICAjIEdldCB0aGUgcHVibGljIElQIGFkZHJlc3MgZnJvbSBldGgwCi0gICAgICAgICAgICBzdWRvIGFwdC1nZXQgaW5zdGFsbCBpcGNhbGMKLSAgICAgICAgICAgIEFERFI9YGlwIGFkZHIgc2hvdyBldGgwIHwgYXdrICcvaW5ldCAve3ByaW50ICQyfSdgCi0gICAgICAgICAgICBQVUJMSUNfQUREUj1gaXBjYWxjIC1uIC1iICRBRERSIHwgYXdrICcvQWRkcmVzczove3ByaW50ICQyfSdgCi0KLSAgICAgICAgICAgICMgVXBkYXRlIEJJTkQgY29uZmlndXJhdGlvbiB3aXRoIHRoZSBzcGVjaWZpZWQgem9uZSBhbmQga2V5LgotICAgICAgICAgICAgY2F0ID4+IC9ldGMvYmluZC9uYW1lZC5jb25mLmxvY2FsIDw8IEVPRgotICAgICAgICAgICAga2V5IF9fem9uZV9fLiB7Ci0gICAgICAgICAgICAgIGFsZ29yaXRobSAiSE1BQy1NRDUiOwotICAgICAgICAgICAgICBzZWNyZXQgIl9fZG5zc2VjX2tleV9fIjsKLSAgICAgICAgICAgIH07Ci0KLSAgICAgICAgICAgIHpvbmUgIl9fem9uZV9fIiBJTiB7Ci0gICAgICAgICAgICAgIHR5cGUgbWFzdGVyOwotICAgICAgICAgICAgICBmaWxlICIvdmFyL2xpYi9iaW5kL2RiLl9fem9uZV9fIjsKLSAgICAgICAgICAgICAgYWxsb3ctdXBkYXRlIHsKLSAgICAgICAgICAgICAgICBrZXkgX196b25lX18uOwotICAgICAgICAgICAgICB9OwotICAgICAgICAgICAgfTsKLSAgICAgICAgICAgIEVPRgotCi0gICAgICAgICAgICAjIEZ1bmN0aW9uIHRvIGdpdmUgRE5TIHJlY29yZCB0eXBlIGFuZCBJUCBhZGRyZXNzIGZvciBzcGVjaWZpZWQgSVAgYWRkcmVzcwotICAgICAgICAgICAgaXAycnIoKSB7Ci0gICAgICAgICAgICAgIGlmIGVjaG8gJDEgfCBncmVwIC1xIC1lICdbXjAtOS5dJyA7IHRoZW4KLSAgICAgICAgICAgICAgICBlY2hvIEFBQUEgJDEKLSAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIGVjaG8gQSAkMQotICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjIENyZWF0ZSBiYXNpYyB6b25lIGNvbmZpZ3VyYXRpb24uCi0gICAgICAgICAgICBjYXQgPiAvdmFyL2xpYi9iaW5kL2RiLl9fem9uZV9fIDw8IEVPRgotICAgICAgICAgICAgXCRPUklHSU4gX196b25lX18uCi0gICAgICAgICAgICBcJFRUTCAxaAotICAgICAgICAgICAgQCBJTiBTT0EgbnMgYWRtaW5cQF9fem9uZV9fLiAoICQoZGF0ZSArJVklbSVkJUgpIDFkIDJoIDF3IDMwcyApCi0gICAgICAgICAgICBAIE5TIG5zCi0gICAgICAgICAgICBucyAkKGlwMnJyICRQVUJMSUNfQUREUikKLSAgICAgICAgICAgIEVPRgotICAgICAgICAgICAgY2hvd24gcm9vdDpiaW5kIC92YXIvbGliL2JpbmQvZGIuX196b25lX18KLQotICAgICAgICAgICAgIyBOb3cgdGhhdCBCSU5EIGNvbmZpZ3VyYXRpb24gaXMgY29ycmVjdCwga2ljayBpdCB0byByZWxvYWQuCi0gICAgICAgICAgICBzZXJ2aWNlIGJpbmQ5IHJlbG9hZAotCi1vdXRwdXRzOgotICBkbnNfaXA6Ci0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3Mgb2YgRE5TIHNlcnZlcgotICAgIHZhbHVlOiB7IGdldF9hdHRyOiBbIHNlcnZlciwgYWNjZXNzSVB2NCBdIH0KLSAgem9uZToKLSAgICBkZXNjcmlwdGlvbjogRE5TIHpvbmUKLSAgICB2YWx1ZTogeyBnZXRfcGFyYW06IHpvbmUgfQotICBkbnNzZWNfa2V5OgotICAgIGRlc2NyaXB0aW9uOiBETlNTRUMgcHJpdmF0ZSBrZXkgKEJhc2U2NC1lbmNvZGVkKQotICAgIHZhbHVlOiB7IGdldF9wYXJhbTogZG5zc2VjX2tleSB9CmRpZmYgLS1naXQgYS9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvZWxsaXMueWFtbCBiL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9lbGxpcy55YW1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3NmU2OGIwLi4wMDAwMDAwCi0tLSBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9lbGxpcy55YW1sCisrKyAvZGV2L251bGwKQEAgLTEsMjQyICswLDAgQEAKLSMgUHJvamVjdCBDbGVhcndhdGVyIC0gSU1TIGluIHRoZSBDbG91ZAotIyBDb3B5cmlnaHQgKEMpIDIwMTUgIE1ldGFzd2l0Y2ggTmV0d29ya3MgTHRkCi0jCi0jIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0Ci0jIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZQotIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyCi0jIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24sIGFsb25nIHdpdGggdGhlICJTcGVjaWFsIEV4Y2VwdGlvbiIgZm9yIHVzZSBvZgotIyB0aGUgcHJvZ3JhbSBhbG9uZyB3aXRoIFNTTCwgc2V0IGZvcnRoIGJlbG93LiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQKLSMgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOwotIyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SCi0jIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZQotIyBkZXRhaWxzLiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKLSMgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlCi0jIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KLSMKLSMgVGhlIGF1dGhvciBjYW4gYmUgcmVhY2hlZCBieSBlbWFpbCBhdCBjbGVhcndhdGVyQG1ldGFzd2l0Y2guY29tIG9yIGJ5Ci0jIHBvc3QgYXQgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQsIDEwMCBDaHVyY2ggU3QsIEVuZmllbGQgRU4yIDZCUSwgVUsKLSMKLSMgU3BlY2lhbCBFeGNlcHRpb24KLSMgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQgIGdyYW50cyB5b3UgcGVybWlzc2lvbiB0byBjb3B5LCBtb2RpZnksCi0jIHByb3BhZ2F0ZSwgYW5kIGRpc3RyaWJ1dGUgYSB3b3JrIGZvcm1lZCBieSBjb21iaW5pbmcgT3BlblNTTCB3aXRoIFRoZQotIyBTb2Z0d2FyZSwgb3IgYSB3b3JrIGRlcml2YXRpdmUgb2Ygc3VjaCBhIGNvbWJpbmF0aW9uLCBldmVuIGlmIHN1Y2gKLSMgY29weWluZywgbW9kaWZpY2F0aW9uLCBwcm9wYWdhdGlvbiwgb3IgZGlzdHJpYnV0aW9uIHdvdWxkIG90aGVyd2lzZQotIyB2aW9sYXRlIHRoZSB0ZXJtcyBvZiB0aGUgR1BMLiBZb3UgbXVzdCBjb21wbHkgd2l0aCB0aGUgR1BMIGluIGFsbAotIyByZXNwZWN0cyBmb3IgYWxsIG9mIHRoZSBjb2RlIHVzZWQgb3RoZXIgdGhhbiBPcGVuU1NMLgotIyAiT3BlblNTTCIgbWVhbnMgT3BlblNTTCB0b29sa2l0IHNvZnR3YXJlIGRpc3RyaWJ1dGVkIGJ5IHRoZSBPcGVuU1NMCi0jIFByb2plY3QgYW5kIGxpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIExpY2Vuc2VzLCBvciBhIHdvcmsgYmFzZWQgb24gc3VjaAotIyBzb2Z0d2FyZSBhbmQgbGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgTGljZW5zZXMuCi0jICJPcGVuU1NMIExpY2Vuc2VzIiBtZWFucyB0aGUgT3BlblNTTCBMaWNlbnNlIGFuZCBPcmlnaW5hbCBTU0xlYXkgTGljZW5zZQotIyB1bmRlciB3aGljaCB0aGUgT3BlblNTTCBQcm9qZWN0IGRpc3RyaWJ1dGVzIHRoZSBPcGVuU1NMIHRvb2xraXQgc29mdHdhcmUsCi0jIGFzIHRob3NlIGxpY2Vuc2VzIGFwcGVhciBpbiB0aGUgZmlsZSBMSUNFTlNFLU9QRU5TU0wuCi0KLWhlYXRfdGVtcGxhdGVfdmVyc2lvbjogMjAxMy0wNS0yMwotCi1kZXNjcmlwdGlvbjogPgotICBDbGVhcndhdGVyIEVsbGlzIG5vZGUKLQotcGFyYW1ldGVyczoKLSAgdm5mX2lkOgotICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiBWTkYgSUQKLSAgICBkZXNjcmlwdGlvbjogVGhlIFZORiBJRCBwcm92aWRlZCBieSBPTkFQCi0gIHZmX21vZHVsZV9pZDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogVk5GIG1vZHVsZSBJRAotICAgIGRlc2NyaXB0aW9uOiBUaGUgVk5GIG1vZHVsZSBJRCBwcm92aWRlZCBieSBPTkFQCi0gIHB1YmxpY19uZXRfaWQ6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IElEIG9mIHB1YmxpYyBuZXR3b3JrCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBuZXV0cm9uLm5ldHdvcmsKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBuZXR3b3JrIElECi0gIGVsbGlzX2ZsYXZvcl9uYW1lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBGbGF2b3IgdG8gdXNlCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBub3ZhLmZsYXZvcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGZsYXZvciBuYW1lCi0gIGVsbGlzX2ltYWdlX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2YgaW1hZ2UgdG8gdXNlCi0gIGtleV9uYW1lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBOYW1lIG9mIGtleXBhaXIgdG8gYXNzaWduCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBub3ZhLmtleXBhaXIKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBrZXlwYWlyIG5hbWUKLSMgYmFzZV9tZ210X3NlY3VyaXR5X2dyb3VwOgotIyAgIHR5cGU6IHN0cmluZwotIyAgIGRlc2NyaXB0aW9uOiBJRCBvZiBiYXNlIHNlY3VyaXR5IGdyb3VwIGZvciBhbGwgQ2xlYXJ3YXRlciBub2RlcyAobWFuYWdlbWVudCkKLSMgZWxsaXNfbWdtdF9zZWN1cml0eV9ncm91cDoKLSMgICB0eXBlOiBzdHJpbmcKLSMgICBkZXNjcmlwdGlvbjogSUQgb2Ygc2VjdXJpdHkgZ3JvdXAgZm9yIEVsbGlzIG5vZGVzIChtYW5hZ2VtZW50KQotICByZXBvX3VybDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogVVJMIGZvciBDbGVhcndhdGVyIHJlcG9zaXRvcnkKLSAgICBkZWZhdWx0OiBodHRwOi8vcmVwby5jdy1uZ3YuY29tL3N0YWJsZQotICB6b25lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBETlMgem9uZQotICAgIGRlZmF1bHQ6IGV4YW1wbGUuY29tCi0gIGRuX3JhbmdlX3N0YXJ0OgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBGaXJzdCBkaXJlY3RvcnkgbnVtYmVyIGluIHBvb2wKLSAgICBkZWZhdWx0OiAiNjUwNTU1MDAwMCIKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gYWxsb3dlZF9wYXR0ZXJuOiAiWzAtOV0rIgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBudW1lcmljCi0gIGRuX3JhbmdlX2xlbmd0aDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTnVtYmVyIG9mIGRpcmVjdG9yeSBudW1iZXJzIHRvIGFkZCB0byBwb29sCi0gICAgZGVmYXVsdDogIjEwMDAiCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGFsbG93ZWRfcGF0dGVybjogIlswLTldKyIKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgbnVtZXJpYwotICBkbnNfaXA6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3MgZm9yIEROUyBzZXJ2ZXIKLSAgZG5zc2VjX2tleToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRE5TU0VDIHByaXZhdGUga2V5IChCYXNlNjQtZW5jb2RlZCkKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gYWxsb3dlZF9wYXR0ZXJuOiAiWzAtOUEtWmEteisvPV0rIgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBCYXNlNjQtZW5jb2RlZAotICBldGNkX2lwOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBJUCBhZGRyZXNzIG9mIGFuIGV4aXN0aW5nIG1lbWJlciBvZiB0aGUgZXRjZCBjbHVzdGVyCi0gICAgZGVmYXVsdDogIiIKLSAgaW5kZXg6Ci0gICAgdHlwZTogbnVtYmVyCi0gICAgZGVzY3JpcHRpb246IEluZGV4IG9mIHRoaXMgRWxsaXMgbm9kZSBpbiB0aGUgRWxsaXMgY2x1c3RlcgotICAgIGRlZmF1bHQ6IDAKLQotcmVzb3VyY2VzOgotICBzZXJ2ZXI6Ci0gICAgdHlwZTogT1M6Ok5vdmE6OlNlcnZlcgotICAgIHByb3BlcnRpZXM6Ci0gICAgICBuYW1lOiB7IHN0cl9yZXBsYWNlOiB7IHBhcmFtczogeyBfX2luZGV4X186IHsgZ2V0X3BhcmFtOiBpbmRleCB9LCBfX3pvbmVfXzogeyBnZXRfcGFyYW06IHpvbmUgfSB9LCB0ZW1wbGF0ZTogZWxsaXMtX19pbmRleF9fLl9fem9uZV9fIH0gfQotICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiBlbGxpc19pbWFnZV9uYW1lIH0KLSAgICAgIGZsYXZvcjogeyBnZXRfcGFyYW06IGVsbGlzX2ZsYXZvcl9uYW1lIH0KLSAgICAgIGtleV9uYW1lOiB7IGdldF9wYXJhbToga2V5X25hbWUgfQotICAgICAgbmV0d29ya3M6Ci0gICAgICAgIC0gbmV0d29yazogeyBnZXRfcGFyYW06IHB1YmxpY19uZXRfaWQgfQotICAgICAgbWV0YWRhdGE6IHt2bmZfaWQ6IHsgZ2V0X3BhcmFtOiB2bmZfaWQgfSwgdmZfbW9kdWxlX2lkOiB7IGdldF9wYXJhbTogdmZfbW9kdWxlX2lkIH19Ci0gICAgICB1c2VyX2RhdGFfZm9ybWF0OiBSQVcKLSAgICAgIHVzZXJfZGF0YToKLSAgICAgICAgc3RyX3JlcGxhY2U6Ci0gICAgICAgICAgcGFyYW1zOgotICAgICAgICAgICAgX19yZXBvX3VybF9fOiB7IGdldF9wYXJhbTogcmVwb191cmwgfQotICAgICAgICAgICAgX196b25lX186IHsgZ2V0X3BhcmFtOiB6b25lIH0KLSAgICAgICAgICAgIF9fZG5fcmFuZ2Vfc3RhcnRfXzogeyBnZXRfcGFyYW06IGRuX3JhbmdlX3N0YXJ0IH0KLSAgICAgICAgICAgIF9fZG5fcmFuZ2VfbGVuZ3RoX186IHsgZ2V0X3BhcmFtOiBkbl9yYW5nZV9sZW5ndGggfQotICAgICAgICAgICAgX19kbnNfaXBfXzogeyBnZXRfcGFyYW06IGRuc19pcCB9Ci0gICAgICAgICAgICBfX2Ruc3NlY19rZXlfXzogeyBnZXRfcGFyYW06IGRuc3NlY19rZXkgfQotICAgICAgICAgICAgX19ldGNkX2lwX18gOiB7IGdldF9wYXJhbTogZXRjZF9pcCB9Ci0gICAgICAgICAgICBfX2luZGV4X18gOiB7IGdldF9wYXJhbTogaW5kZXggfQotICAgICAgICAgIHRlbXBsYXRlOiB8Ci0gICAgICAgICAgICAjIS9iaW4vYmFzaAotCi0gICAgICAgICAgICAjIExvZyBhbGwgb3V0cHV0IHRvIGZpbGUuCi0gICAgICAgICAgICBleGVjID4gPih0ZWUgLWEgL3Zhci9sb2cvY2xlYXJ3YXRlci1oZWF0LWVsbGlzLmxvZykgMj4mMQotICAgICAgICAgICAgc2V0IC14Ci0KLSAgICAgICAgICAgICMgQ29uZmlndXJlIHRoZSBBUFQgc29mdHdhcmUgc291cmNlLgotICAgICAgICAgICAgZWNobyAnZGViIF9fcmVwb191cmxfXyBiaW5hcnkvJyA+IC9ldGMvYXB0L3NvdXJjZXMubGlzdC5kL2NsZWFyd2F0ZXIubGlzdAotICAgICAgICAgICAgY3VybCAtTCBodHRwOi8vcmVwby5jdy1uZ3YuY29tL3JlcG9fa2V5IHwgYXB0LWtleSBhZGQgLQotICAgICAgICAgICAgYXB0LWdldCB1cGRhdGUKLQotICAgICAgICAgICAgIyBHZXQgdGhlIHB1YmxpYyBJUCBhZGRyZXNzIGZyb20gZXRoMAotICAgICAgICAgICAgc3VkbyBhcHQtZ2V0IGluc3RhbGwgaXBjYWxjCi0gICAgICAgICAgICBBRERSPWBpcCBhZGRyIHNob3cgZXRoMCB8IGF3ayAnL2luZXQgL3twcmludCAkMn0nYAotICAgICAgICAgICAgUFVCTElDX0FERFI9YGlwY2FsYyAtbiAtYiAkQUREUiB8IGF3ayAnL0FkZHJlc3M6L3twcmludCAkMn0nYAotCi0gICAgICAgICAgICAjIENvbmZpZ3VyZSAvZXRjL2NsZWFyd2F0ZXIvbG9jYWxfY29uZmlnLiAgQWRkIHhkbXNfaG9zdG5hbWUgaGVyZSB0byB1c2UgSG9tZXIncyBtYW5hZ2VtZW50Ci0gICAgICAgICAgICAjIGhvc3RuYW1lIGluc3RlYWQgb2Ygc2lnbmFsaW5nLiAgVGhpcyB3aWxsIG92ZXJyaWRlIHNoYXJlZF9jb25maWcuICBUaGlzIHdvcmtzIGFyb3VuZAotICAgICAgICAgICAgIyBodHRwczovL2dpdGh1Yi5jb20vTWV0YXN3aXRjaC9lbGxpcy9pc3N1ZXMvMTUzLgotICAgICAgICAgICAgbWtkaXIgLXAgL2V0Yy9jbGVhcndhdGVyCi0gICAgICAgICAgICBldGNkX2lwPV9fZXRjZF9pcF9fCi0gICAgICAgICAgICBbIC1uICIkZXRjZF9pcCIgXSB8fCBldGNkX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgY2F0ID4gL2V0Yy9jbGVhcndhdGVyL2xvY2FsX2NvbmZpZyA8PCBFT0YKLSAgICAgICAgICAgIGxvY2FsX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgcHVibGljX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgcHVibGljX2hvc3RuYW1lPWVsbGlzLV9faW5kZXhfXy5fX3pvbmVfXwotICAgICAgICAgICAgZXRjZF9jbHVzdGVyPSRldGNkX2lwCi0gICAgICAgICAgICB4ZG1zX2hvc3RuYW1lPWhvbWVyLTAuX196b25lX186Nzg4OAotICAgICAgICAgICAgRU9GCi0KLSAgICAgICAgICAgICMgTm93IGluc3RhbGwgdGhlIHNvZnR3YXJlLgotICAgICAgICAgICAgREVCSUFOX0ZST05URU5EPW5vbmludGVyYWN0aXZlIGFwdC1nZXQgaW5zdGFsbCBlbGxpcy1ub2RlIC0teWVzIC0tZm9yY2UteWVzCi0gICAgICAgICAgICBERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCBpbnN0YWxsIGNsZWFyd2F0ZXItbWFuYWdlbWVudCAtLXllcyAtLWZvcmNlLXllcwotCi0gICAgICAgICAgICAjIFdhaXQgdW50aWwgZXRjZCBpcyB1cCBhbmQgcnVubmluZyBiZWZvcmUgdXBsb2FkaW5nIHRoZSBzaGFyZWRfY29uZmlnCi0gICAgICAgICAgICAvdXNyL3NoYXJlL2NsZWFyd2F0ZXIvY2xlYXJ3YXRlci1ldGNkL3NjcmlwdHMvd2FpdF9mb3JfZXRjZAotCi0gICAgICAgICAgICAjIENvbmZpZ3VyZSBhbmQgdXBsb2FkIC9ldGMvY2xlYXJ3YXRlci9zaGFyZWRfY29uZmlnLgotICAgICAgICAgICAgY2F0ID4gL2V0Yy9jbGVhcndhdGVyL3NoYXJlZF9jb25maWcgPDwgRU9GCi0gICAgICAgICAgICAjIERlcGxveW1lbnQgZGVmaW5pdGlvbnMKLSAgICAgICAgICAgIGhvbWVfZG9tYWluPV9fem9uZV9fCi0gICAgICAgICAgICBzcHJvdXRfaG9zdG5hbWU9c3Byb3V0Ll9fem9uZV9fCi0gICAgICAgICAgICBoc19ob3N0bmFtZT1ocy5fX3pvbmVfXzo4ODg4Ci0gICAgICAgICAgICBoc19wcm92aXNpb25pbmdfaG9zdG5hbWU9aHMtcHJvdi5fX3pvbmVfXzo4ODg5Ci0gICAgICAgICAgICByYWxmX2hvc3RuYW1lPXJhbGYuX196b25lX186MTA4ODgKLSAgICAgICAgICAgIHhkbXNfaG9zdG5hbWU9aG9tZXIuX196b25lX186Nzg4OAotICAgICAgICAgICAgc3Byb3V0X3JlZ2lzdHJhdGlvbl9zdG9yZT1zcHJvdXQuX196b25lX18KLSAgICAgICAgICAgIHJhbGZfc2Vzc2lvbl9zdG9yZT1yYWxmLl9fem9uZV9fCi0KLSAgICAgICAgICAgIHVwc3RyZWFtX3BvcnQ9MAotCi0gICAgICAgICAgICAjIEVtYWlsIHNlcnZlciBjb25maWd1cmF0aW9uCi0gICAgICAgICAgICBzbXRwX3NtYXJ0aG9zdD1sb2NhbGhvc3QKLSAgICAgICAgICAgIHNtdHBfdXNlcm5hbWU9dXNlcm5hbWUKLSAgICAgICAgICAgIHNtdHBfcGFzc3dvcmQ9cGFzc3dvcmQKLSAgICAgICAgICAgIGVtYWlsX3JlY292ZXJ5X3NlbmRlcj1jbGVhcndhdGVyQGV4YW1wbGUub3JnCi0KLSAgICAgICAgICAgICMgS2V5cwotICAgICAgICAgICAgc2lnbnVwX2tleT1zZWNyZXQKLSAgICAgICAgICAgIHR1cm5fd29ya2Fyb3VuZD1zZWNyZXQKLSAgICAgICAgICAgIGVsbGlzX2FwaV9rZXk9c2VjcmV0Ci0gICAgICAgICAgICBlbGxpc19jb29raWVfa2V5PXNlY3JldAotICAgICAgICAgICAgRU9GCi0gICAgICAgICAgICBzdWRvIC91c3Ivc2hhcmUvY2xlYXJ3YXRlci9jbGVhcndhdGVyLWNvbmZpZy1tYW5hZ2VyL3NjcmlwdHMvdXBsb2FkX3NoYXJlZF9jb25maWcKLQotICAgICAgICAgICAgIyBBbGxvY2F0ZSBhIHBvb2wgb2YgbnVtYmVycyB0byBhc3NpZ24gdG8gdXNlcnMuICBCZWZvcmUgd2UgZG8gdGhpcywKLSAgICAgICAgICAgICMgcmVzdGFydCBjbGVhcndhdGVyLWluZnJhc3RydWN0dXJlIHRvIG1ha2Ugc3VyZSB0aGF0Ci0gICAgICAgICAgICAjIGxvY2FsX3NldHRpbmdzLnB5IHJ1bnMgdG8gcGljayB1cCB0aGUgY29uZmlndXJhdGlvbiBjaGFuZ2VzLgotICAgICAgICAgICAgc2VydmljZSBjbGVhcndhdGVyLWluZnJhc3RydWN0dXJlIHJlc3RhcnQKLSAgICAgICAgICAgIHNlcnZpY2UgZWxsaXMgc3RvcAotICAgICAgICAgICAgL3Vzci9zaGFyZS9jbGVhcndhdGVyL2VsbGlzL2Vudi9iaW4vcHl0aG9uIC91c3Ivc2hhcmUvY2xlYXJ3YXRlci9lbGxpcy9zcmMvbWV0YXN3aXRjaC9lbGxpcy90b29scy9jcmVhdGVfbnVtYmVycy5weSAtLXN0YXJ0IF9fZG5fcmFuZ2Vfc3RhcnRfXyAtLWNvdW50IF9fZG5fcmFuZ2VfbGVuZ3RoX18KLQotICAgICAgICAgICAgIyBGdW5jdGlvbiB0byBnaXZlIEROUyByZWNvcmQgdHlwZSBhbmQgSVAgYWRkcmVzcyBmb3Igc3BlY2lmaWVkIElQIGFkZHJlc3MKLSAgICAgICAgICAgIGlwMnJyKCkgewotICAgICAgICAgICAgICBpZiBlY2hvICQxIHwgZ3JlcCAtcSAtZSAnW14wLTkuXScgOyB0aGVuCi0gICAgICAgICAgICAgICAgZWNobyBBQUFBICQxCi0gICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBlY2hvIEEgJDEKLSAgICAgICAgICAgICAgZmkKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgIyBVcGRhdGUgRE5TCi0gICAgICAgICAgICByZXRyaWVzPTAKLSAgICAgICAgICAgIHdoaWxlICEgeyBuc3VwZGF0ZSAteSAiX196b25lX186X19kbnNzZWNfa2V5X18iIC12IDw8IEVPRgotICAgICAgICAgICAgc2VydmVyIF9fZG5zX2lwX18KLSAgICAgICAgICAgIHVwZGF0ZSBhZGQgZWxsaXMtX19pbmRleF9fLl9fem9uZV9fLiAzMCAkKGlwMnJyICRQVUJMSUNfQUREUikKLSAgICAgICAgICAgIHVwZGF0ZSBhZGQgZWxsaXMuX196b25lX18uIDMwICQoaXAycnIgJFBVQkxJQ19BRERSKQotICAgICAgICAgICAgc2VuZAotICAgICAgICAgICAgRU9GCi0gICAgICAgICAgICB9ICYmIFsgJHJldHJpZXMgLWx0IDEwIF0KLSAgICAgICAgICAgIGRvCi0gICAgICAgICAgICAgIHJldHJpZXM9JCgocmV0cmllcyArIDEpKQotICAgICAgICAgICAgICBlY2hvICduc3VwZGF0ZSBmYWlsZWQgLSByZXRyeWluZyAocmV0cnkgJyRyZXRyaWVzJykuLi4nCi0gICAgICAgICAgICAgIHNsZWVwIDUKLSAgICAgICAgICAgIGRvbmUKLQotICAgICAgICAgICAgIyBVc2UgdGhlIEROUyBzZXJ2ZXIuCi0gICAgICAgICAgICBlY2hvICduYW1lc2VydmVyIF9fZG5zX2lwX18nID4gL2V0Yy9kbnNtYXNxLnJlc29sdi5jb25mCi0gICAgICAgICAgICBlY2hvICdSRVNPTFZfQ09ORj0vZXRjL2Ruc21hc3EucmVzb2x2LmNvbmYnID4+IC9ldGMvZGVmYXVsdC9kbnNtYXNxCi0gICAgICAgICAgICBzZXJ2aWNlIGRuc21hc3EgZm9yY2UtcmVsb2FkCi0KLW91dHB1dHM6Ci0gIHB1YmxpY19pcDoKLSAgICBkZXNjcmlwdGlvbjogSVAgYWRkcmVzcyBpbiBwdWJsaWMgbmV0d29yawotICAgIHZhbHVlOiB7IGdldF9hdHRyOiBbIHNlcnZlciwgYWNjZXNzSVB2NCBdIH0KZGlmZiAtLWdpdCBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9ob21lci55YW1sIGIvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV9jbGVhcndhdGVyL2hvbWVyLnlhbWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNiZjk3MzMuLjAwMDAwMDAKLS0tIGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV9jbGVhcndhdGVyL2hvbWVyLnlhbWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOTAgKzAsMCBAQAotIyBQcm9qZWN0IENsZWFyd2F0ZXIgLSBJTVMgaW4gdGhlIENsb3VkCi0jIENvcHlyaWdodCAoQykgMjAxNSAgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQKLSMKLSMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKLSMgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlCi0jIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIKLSMgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbiwgYWxvbmcgd2l0aCB0aGUgIlNwZWNpYWwgRXhjZXB0aW9uIiBmb3IgdXNlIG9mCi0jIHRoZSBwcm9ncmFtIGFsb25nIHdpdGggU1NMLCBzZXQgZm9ydGggYmVsb3cuIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZAotIyBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7Ci0jIHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlCi0jIGRldGFpbHMuIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYwotIyBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUKLSMgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotIwotIyBUaGUgYXV0aG9yIGNhbiBiZSByZWFjaGVkIGJ5IGVtYWlsIGF0IGNsZWFyd2F0ZXJAbWV0YXN3aXRjaC5jb20gb3IgYnkKLSMgcG9zdCBhdCBNZXRhc3dpdGNoIE5ldHdvcmtzIEx0ZCwgMTAwIENodXJjaCBTdCwgRW5maWVsZCBFTjIgNkJRLCBVSwotIwotIyBTcGVjaWFsIEV4Y2VwdGlvbgotIyBNZXRhc3dpdGNoIE5ldHdvcmtzIEx0ZCAgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIGNvcHksIG1vZGlmeSwKLSMgcHJvcGFnYXRlLCBhbmQgZGlzdHJpYnV0ZSBhIHdvcmsgZm9ybWVkIGJ5IGNvbWJpbmluZyBPcGVuU1NMIHdpdGggVGhlCi0jIFNvZnR3YXJlLCBvciBhIHdvcmsgZGVyaXZhdGl2ZSBvZiBzdWNoIGEgY29tYmluYXRpb24sIGV2ZW4gaWYgc3VjaAotIyBjb3B5aW5nLCBtb2RpZmljYXRpb24sIHByb3BhZ2F0aW9uLCBvciBkaXN0cmlidXRpb24gd291bGQgb3RoZXJ3aXNlCi0jIHZpb2xhdGUgdGhlIHRlcm1zIG9mIHRoZSBHUEwuIFlvdSBtdXN0IGNvbXBseSB3aXRoIHRoZSBHUEwgaW4gYWxsCi0jIHJlc3BlY3RzIGZvciBhbGwgb2YgdGhlIGNvZGUgdXNlZCBvdGhlciB0aGFuIE9wZW5TU0wuCi0jICJPcGVuU1NMIiBtZWFucyBPcGVuU1NMIHRvb2xraXQgc29mdHdhcmUgZGlzdHJpYnV0ZWQgYnkgdGhlIE9wZW5TU0wKLSMgUHJvamVjdCBhbmQgbGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgTGljZW5zZXMsIG9yIGEgd29yayBiYXNlZCBvbiBzdWNoCi0jIHNvZnR3YXJlIGFuZCBsaWNlbnNlZCB1bmRlciB0aGUgT3BlblNTTCBMaWNlbnNlcy4KLSMgIk9wZW5TU0wgTGljZW5zZXMiIG1lYW5zIHRoZSBPcGVuU1NMIExpY2Vuc2UgYW5kIE9yaWdpbmFsIFNTTGVheSBMaWNlbnNlCi0jIHVuZGVyIHdoaWNoIHRoZSBPcGVuU1NMIFByb2plY3QgZGlzdHJpYnV0ZXMgdGhlIE9wZW5TU0wgdG9vbGtpdCBzb2Z0d2FyZSwKLSMgYXMgdGhvc2UgbGljZW5zZXMgYXBwZWFyIGluIHRoZSBmaWxlIExJQ0VOU0UtT1BFTlNTTC4KLQotaGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzCi0KLWRlc2NyaXB0aW9uOiA+Ci0gIENsZWFyd2F0ZXIgSG9tZXIgbm9kZQotCi1wYXJhbWV0ZXJzOgotICB2bmZfaWQ6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IFZORiBJRAotICAgIGRlc2NyaXB0aW9uOiBUaGUgVk5GIElEIHByb3ZpZGVkIGJ5IE9OQVAKLSAgdmZfbW9kdWxlX2lkOgotICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiBWTkYgbW9kdWxlIElECi0gICAgZGVzY3JpcHRpb246IFRoZSBWTkYgbW9kdWxlIElEIHByb3ZpZGVkIGJ5IE9OQVAKLSAgcHVibGljX25ldF9pZDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogSUQgb2YgcHVibGljIG5ldHdvcmsKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5ldXRyb24ubmV0d29yawotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIG5ldHdvcmsgSUQKLSAgaG9tZXJfZmxhdm9yX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IEZsYXZvciB0byB1c2UKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEuZmxhdm9yCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIGEgdmFsaWQgZmxhdm9yIG5hbWUKLSAgaG9tZXJfaW1hZ2VfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBpbWFnZSB0byB1c2UKLSAga2V5X25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2Yga2V5cGFpciB0byBhc3NpZ24KLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEua2V5cGFpcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGtleXBhaXIgbmFtZQotIyBiYXNlX21nbXRfc2VjdXJpdHlfZ3JvdXA6Ci0jICAgdHlwZTogc3RyaW5nCi0jICAgZGVzY3JpcHRpb246IElEIG9mIGJhc2Ugc2VjdXJpdHkgZ3JvdXAgZm9yIGFsbCBDbGVhcndhdGVyIG5vZGVzIChtYW5hZ2VtZW50KQotIyBob21lcl9tZ210X3NlY3VyaXR5X2dyb3VwOgotIyAgIHR5cGU6IHN0cmluZwotIyAgIGRlc2NyaXB0aW9uOiBJRCBvZiBzZWN1cml0eSBncm91cCBmb3IgSG9tZXIgbm9kZXMgKG1hYW5nZW1lbnQpCi0jIGhvbWVyX3NpZ19zZWN1cml0eV9ncm91cDoKLSMgICB0eXBlOiBzdHJpbmcKLSMgICBkZXNjcmlwdGlvbjogSUQgb2Ygc2VjdXJpdHkgZ3JvdXAgZm9yIEhvbWVyIG5vZGVzIChzaWduYWxpbmcpCi0gIHJlcG9fdXJsOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBVUkwgZm9yIENsZWFyd2F0ZXIgcmVwb3NpdG9yeQotICAgIGRlZmF1bHQ6IGh0dHA6Ly9yZXBvLmN3LW5ndi5jb20vc3RhYmxlCi0gIHpvbmU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IEROUyB6b25lCi0gICAgZGVmYXVsdDogZXhhbXBsZS5jb20KLSAgZG5zX2lwOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBJUCBhZGRyZXNzIGZvciBETlMgc2VydmVyIG9uIG1hbmFnZW1lbnQgbmV0d29yawotICBkbnNzZWNfa2V5OgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBETlNTRUMgcHJpdmF0ZSBrZXkgKEJhc2U2NC1lbmNvZGVkKQotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbMC05QS1aYS16Ky89XSsiCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIEJhc2U2NC1lbmNvZGVkCi0gIGV0Y2RfaXA6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3Mgb2YgYW4gZXhpc3RpbmcgbWVtYmVyIG9mIHRoZSBldGNkIGNsdXN0ZXIKLSAgICBkZWZhdWx0OiAiIgotICBpbmRleDoKLSAgICB0eXBlOiBudW1iZXIKLSAgICBkZXNjcmlwdGlvbjogSW5kZXggb2YgdGhpcyBIb21lciBub2RlIGluIHRoZSBIb21lciBjbHVzdGVyCi0gICAgZGVmYXVsdDogMAotCi1yZXNvdXJjZXM6Ci0gIHNlcnZlcjoKLSAgICB0eXBlOiBPUzo6Tm92YTo6U2VydmVyCi0gICAgcHJvcGVydGllczoKLSAgICAgIG5hbWU6IHsgc3RyX3JlcGxhY2U6IHsgcGFyYW1zOiB7IF9faW5kZXhfXzogeyBnZXRfcGFyYW06IGluZGV4IH0sIF9fem9uZV9fOiB7IGdldF9wYXJhbTogem9uZSB9IH0sIHRlbXBsYXRlOiBob21lci1fX2luZGV4X18uX196b25lX18gfSB9Ci0gICAgICBpbWFnZTogeyBnZXRfcGFyYW06IGhvbWVyX2ltYWdlX25hbWUgfQotICAgICAgZmxhdm9yOiB7IGdldF9wYXJhbTogaG9tZXJfZmxhdm9yX25hbWUgfQotICAgICAga2V5X25hbWU6IHsgZ2V0X3BhcmFtOiBrZXlfbmFtZSB9Ci0gICAgICBuZXR3b3JrczoKLSAgICAgICAgLSBuZXR3b3JrOiB7IGdldF9wYXJhbTogcHVibGljX25ldF9pZCB9Ci0gICAgICBtZXRhZGF0YToge3ZuZl9pZDogeyBnZXRfcGFyYW06IHZuZl9pZCB9LCB2Zl9tb2R1bGVfaWQ6IHsgZ2V0X3BhcmFtOiB2Zl9tb2R1bGVfaWQgfX0KLSAgICAgIHVzZXJfZGF0YV9mb3JtYXQ6IFJBVwotICAgICAgdXNlcl9kYXRhOgotICAgICAgICBzdHJfcmVwbGFjZToKLSAgICAgICAgICBwYXJhbXM6Ci0gICAgICAgICAgICBfX3JlcG9fdXJsX186IHsgZ2V0X3BhcmFtOiByZXBvX3VybCB9Ci0gICAgICAgICAgICBfX3pvbmVfXzogeyBnZXRfcGFyYW06IHpvbmUgfQotICAgICAgICAgICAgX19kbnNfaXBfXzogeyBnZXRfcGFyYW06IGRuc19pcCB9Ci0gICAgICAgICAgICBfX2Ruc3NlY19rZXlfXzogeyBnZXRfcGFyYW06IGRuc3NlY19rZXkgfQotICAgICAgICAgICAgX19ldGNkX2lwX18gOiB7IGdldF9wYXJhbTogZXRjZF9pcCB9Ci0gICAgICAgICAgICBfX2luZGV4X18gOiB7IGdldF9wYXJhbTogaW5kZXggfQotICAgICAgICAgIHRlbXBsYXRlOiB8Ci0gICAgICAgICAgICAjIS9iaW4vYmFzaAotCi0gICAgICAgICAgICAjIExvZyBhbGwgb3V0cHV0IHRvIGZpbGUuCi0gICAgICAgICAgICBleGVjID4gPih0ZWUgLWEgL3Zhci9sb2cvY2xlYXJ3YXRlci1oZWF0LWhvbWVyLmxvZykgMj4mMQotICAgICAgICAgICAgc2V0IC14Ci0KLSAgICAgICAgICAgICMgQ29uZmlndXJlIHRoZSBBUFQgc29mdHdhcmUgc291cmNlLgotICAgICAgICAgICAgZWNobyAnZGViIF9fcmVwb191cmxfXyBiaW5hcnkvJyA+IC9ldGMvYXB0L3NvdXJjZXMubGlzdC5kL2NsZWFyd2F0ZXIubGlzdAotICAgICAgICAgICAgY3VybCAtTCBodHRwOi8vcmVwby5jdy1uZ3YuY29tL3JlcG9fa2V5IHwgYXB0LWtleSBhZGQgLQotICAgICAgICAgICAgYXB0LWdldCB1cGRhdGUKLQotICAgICAgICAgICAgIyBHZXQgdGhlIHB1YmxpYyBJUCBhZGRyZXNzIGZyb20gZXRoMAotICAgICAgICAgICAgc3VkbyBhcHQtZ2V0IGluc3RhbGwgaXBjYWxjCi0gICAgICAgICAgICBBRERSPWBpcCBhZGRyIHNob3cgZXRoMCB8IGF3ayAnL2luZXQgL3twcmludCAkMn0nYAotICAgICAgICAgICAgUFVCTElDX0FERFI9YGlwY2FsYyAtbiAtYiAkQUREUiB8IGF3ayAnL0FkZHJlc3M6L3twcmludCAkMn0nYAotCi0gICAgICAgICAgICAjIENvbmZpZ3VyZSAvZXRjL2NsZWFyd2F0ZXIvbG9jYWxfY29uZmlnLgotICAgICAgICAgICAgbWtkaXIgLXAgL2V0Yy9jbGVhcndhdGVyCi0gICAgICAgICAgICBldGNkX2lwPV9fZXRjZF9pcF9fCi0gICAgICAgICAgICBbIC1uICIkZXRjZF9pcCIgXSB8fCBldGNkX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgY2F0ID4gL2V0Yy9jbGVhcndhdGVyL2xvY2FsX2NvbmZpZyA8PCBFT0YKLSAgICAgICAgICAgIG1hbmFnZW1lbnRfbG9jYWxfaXA9JFBVQkxJQ19BRERSCi0gICAgICAgICAgICBsb2NhbF9pcD0kUFVCTElDX0FERFIKLSAgICAgICAgICAgIHB1YmxpY19pcD0kUFVCTElDX0FERFIKLSAgICAgICAgICAgIHB1YmxpY19ob3N0bmFtZT1ob21lci1fX2luZGV4X18uX196b25lX18KLSAgICAgICAgICAgIGV0Y2RfY2x1c3Rlcj0kZXRjZF9pcAotICAgICAgICAgICAgRU9GCi0KLSAgICAgICAgICAgICMgTm93IGluc3RhbGwgdGhlIHNvZnR3YXJlLgotICAgICAgICAgICAgREVCSUFOX0ZST05URU5EPW5vbmludGVyYWN0aXZlIGFwdC1nZXQgaW5zdGFsbCBob21lci1ub2RlIC0teWVzIC0tZm9yY2UteWVzCi0gICAgICAgICAgICBERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCBpbnN0YWxsIGNsZWFyd2F0ZXItbWFuYWdlbWVudCAtLXllcyAtLWZvcmNlLXllcwotCi0gICAgICAgICAgICAjIEZ1bmN0aW9uIHRvIGdpdmUgRE5TIHJlY29yZCB0eXBlIGFuZCBJUCBhZGRyZXNzIGZvciBzcGVjaWZpZWQgSVAgYWRkcmVzcwotICAgICAgICAgICAgaXAycnIoKSB7Ci0gICAgICAgICAgICAgIGlmIGVjaG8gJDEgfCBncmVwIC1xIC1lICdbXjAtOS5dJyA7IHRoZW4KLSAgICAgICAgICAgICAgICBlY2hvIEFBQUEgJDEKLSAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIGVjaG8gQSAkMQotICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjIFVwZGF0ZSBETlMKLSAgICAgICAgICAgIHJldHJpZXM9MAotICAgICAgICAgICAgd2hpbGUgISB7IG5zdXBkYXRlIC15ICJfX3pvbmVfXzpfX2Ruc3NlY19rZXlfXyIgLXYgPDwgRU9GCi0gICAgICAgICAgICBzZXJ2ZXIgX19kbnNfaXBfXwotICAgICAgICAgICAgdXBkYXRlIGFkZCBob21lci1fX2luZGV4X18uX196b25lX18uIDMwICQoaXAycnIgJFBVQkxJQ19BRERSKQotICAgICAgICAgICAgdXBkYXRlIGFkZCBob21lci5fX3pvbmVfXy4gMzAgJChpcDJyciAkUFVCTElDX0FERFIpCi0gICAgICAgICAgICBzZW5kCi0gICAgICAgICAgICBFT0YKLSAgICAgICAgICAgIH0gJiYgWyAkcmV0cmllcyAtbHQgMTAgXQotICAgICAgICAgICAgZG8KLSAgICAgICAgICAgICAgcmV0cmllcz0kKChyZXRyaWVzICsgMSkpCi0gICAgICAgICAgICAgIGVjaG8gJ25zdXBkYXRlIGZhaWxlZCAtIHJldHJ5aW5nIChyZXRyeSAnJHJldHJpZXMnKS4uLicKLSAgICAgICAgICAgICAgc2xlZXAgNQotICAgICAgICAgICAgZG9uZQotCi0gICAgICAgICAgICAjIFVzZSB0aGUgRE5TIHNlcnZlci4KLSAgICAgICAgICAgICMgVXNlIHRoZSBETlMgc2VydmVyLgotICAgICAgICAgICAgZWNobyAnbmFtZXNlcnZlciBfX2Ruc19pcF9fJyA+IC9ldGMvZG5zbWFzcS5yZXNvbHYuY29uZgotICAgICAgICAgICAgZWNobyAnUkVTT0xWX0NPTkY9L2V0Yy9kbnNtYXNxLnJlc29sdi5jb25mJyA+PiAvZXRjL2RlZmF1bHQvZG5zbWFzcQotICAgICAgICAgICAgc2VydmljZSBkbnNtYXNxIGZvcmNlLXJlbG9hZAotCi1vdXRwdXRzOgotICBwdWJsaWNfaXA6Ci0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3MgaW4gcHVibGljIG5ldHdvcmsKLSAgICB2YWx1ZTogeyBnZXRfYXR0cjogWyBzZXJ2ZXIsIGFjY2Vzc0lQdjQgXSB9CmRpZmYgLS1naXQgYS9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvaG9tZXN0ZWFkLnlhbWwgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvaG9tZXN0ZWFkLnlhbWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYzNTE5YmIuLjAwMDAwMDAKLS0tIGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV9jbGVhcndhdGVyL2hvbWVzdGVhZC55YW1sCisrKyAvZGV2L251bGwKQEAgLTEsMTkwICswLDAgQEAKLSMgUHJvamVjdCBDbGVhcndhdGVyIC0gSU1TIGluIHRoZSBDbG91ZAotIyBDb3B5cmlnaHQgKEMpIDIwMTUgIE1ldGFzd2l0Y2ggTmV0d29ya3MgTHRkCi0jCi0jIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0Ci0jIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZQotIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyCi0jIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24sIGFsb25nIHdpdGggdGhlICJTcGVjaWFsIEV4Y2VwdGlvbiIgZm9yIHVzZSBvZgotIyB0aGUgcHJvZ3JhbSBhbG9uZyB3aXRoIFNTTCwgc2V0IGZvcnRoIGJlbG93LiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQKLSMgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOwotIyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SCi0jIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZQotIyBkZXRhaWxzLiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKLSMgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlCi0jIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KLSMKLSMgVGhlIGF1dGhvciBjYW4gYmUgcmVhY2hlZCBieSBlbWFpbCBhdCBjbGVhcndhdGVyQG1ldGFzd2l0Y2guY29tIG9yIGJ5Ci0jIHBvc3QgYXQgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQsIDEwMCBDaHVyY2ggU3QsIEVuZmllbGQgRU4yIDZCUSwgVUsKLSMKLSMgU3BlY2lhbCBFeGNlcHRpb24KLSMgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQgIGdyYW50cyB5b3UgcGVybWlzc2lvbiB0byBjb3B5LCBtb2RpZnksCi0jIHByb3BhZ2F0ZSwgYW5kIGRpc3RyaWJ1dGUgYSB3b3JrIGZvcm1lZCBieSBjb21iaW5pbmcgT3BlblNTTCB3aXRoIFRoZQotIyBTb2Z0d2FyZSwgb3IgYSB3b3JrIGRlcml2YXRpdmUgb2Ygc3VjaCBhIGNvbWJpbmF0aW9uLCBldmVuIGlmIHN1Y2gKLSMgY29weWluZywgbW9kaWZpY2F0aW9uLCBwcm9wYWdhdGlvbiwgb3IgZGlzdHJpYnV0aW9uIHdvdWxkIG90aGVyd2lzZQotIyB2aW9sYXRlIHRoZSB0ZXJtcyBvZiB0aGUgR1BMLiBZb3UgbXVzdCBjb21wbHkgd2l0aCB0aGUgR1BMIGluIGFsbAotIyByZXNwZWN0cyBmb3IgYWxsIG9mIHRoZSBjb2RlIHVzZWQgb3RoZXIgdGhhbiBPcGVuU1NMLgotIyAiT3BlblNTTCIgbWVhbnMgT3BlblNTTCB0b29sa2l0IHNvZnR3YXJlIGRpc3RyaWJ1dGVkIGJ5IHRoZSBPcGVuU1NMCi0jIFByb2plY3QgYW5kIGxpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIExpY2Vuc2VzLCBvciBhIHdvcmsgYmFzZWQgb24gc3VjaAotIyBzb2Z0d2FyZSBhbmQgbGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgTGljZW5zZXMuCi0jICJPcGVuU1NMIExpY2Vuc2VzIiBtZWFucyB0aGUgT3BlblNTTCBMaWNlbnNlIGFuZCBPcmlnaW5hbCBTU0xlYXkgTGljZW5zZQotIyB1bmRlciB3aGljaCB0aGUgT3BlblNTTCBQcm9qZWN0IGRpc3RyaWJ1dGVzIHRoZSBPcGVuU1NMIHRvb2xraXQgc29mdHdhcmUsCi0jIGFzIHRob3NlIGxpY2Vuc2VzIGFwcGVhciBpbiB0aGUgZmlsZSBMSUNFTlNFLU9QRU5TU0wuCi0KLWhlYXRfdGVtcGxhdGVfdmVyc2lvbjogMjAxMy0wNS0yMwotCi1kZXNjcmlwdGlvbjogPgotICBDbGVhcndhdGVyIEhvbWVzdGVhZCBub2RlCi0KLXBhcmFtZXRlcnM6Ci0gIHZuZl9pZDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogVk5GIElECi0gICAgZGVzY3JpcHRpb246IFRoZSBWTkYgSUQgcHJvdmlkZWQgYnkgT05BUAotICB2Zl9tb2R1bGVfaWQ6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IFZORiBtb2R1bGUgSUQKLSAgICBkZXNjcmlwdGlvbjogVGhlIFZORiBtb2R1bGUgSUQgcHJvdmlkZWQgYnkgT05BUAotICBwdWJsaWNfbmV0X2lkOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBJRCBvZiBwdWJsaWMgbmV0d29yawotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbmV1dHJvbi5uZXR3b3JrCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIGEgdmFsaWQgbmV0d29yayBJRAotICBob21lc3RlYWRfZmxhdm9yX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IEZsYXZvciB0byB1c2UKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEuZmxhdm9yCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIGEgdmFsaWQgZmxhdm9yIG5hbWUKLSAgaG9tZXN0ZWFkX2ltYWdlX25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2YgaW1hZ2UgdG8gdXNlCi0gIGtleV9uYW1lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBOYW1lIG9mIGtleXBhaXIgdG8gYXNzaWduCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBub3ZhLmtleXBhaXIKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBrZXlwYWlyIG5hbWUKLSMgYmFzZV9tZ210X3NlY3VyaXR5X2dyb3VwOgotIyAgIHR5cGU6IHN0cmluZwotIyAgIGRlc2NyaXB0aW9uOiBJRCBvZiBiYXNlIHNlY3VyaXR5IGdyb3VwIGZvciBhbGwgQ2xlYXJ3YXRlciBub2RlcyAobWFuYWdlbWVudCkKLSMgaG9tZXN0ZWFkX21nbXRfc2VjdXJpdHlfZ3JvdXA6Ci0jICAgdHlwZTogc3RyaW5nCi0jICAgZGVzY3JpcHRpb246IElEIG9mIHNlY3VyaXR5IGdyb3VwIGZvciBIb21lc3RlYWQgbm9kZXMgKG1hbmFnZW1lbnQpCi0jIGhvbWVzdGVhZF9zaWdfc2VjdXJpdHlfZ3JvdXA6Ci0jICAgdHlwZTogc3RyaW5nCi0jICAgZGVzY3JpcHRpb246IElEIG9mIHNlY3VyaXR5IGdyb3VwIGZvciBIb21lc3RlYWQgbm9kZXMgKHNpZ25hbGluZykKLSAgcmVwb191cmw6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IFVSTCBmb3IgQ2xlYXJ3YXRlciByZXBvc2l0b3J5Ci0gICAgZGVmYXVsdDogaHR0cDovL3JlcG8uY3ctbmd2LmNvbS9zdGFibGUKLSAgem9uZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRE5TIHpvbmUKLSAgICBkZWZhdWx0OiBleGFtcGxlLmNvbQotICBkbnNfaXA6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3MgZm9yIEROUyBzZXJ2ZXIgb24gbWFuYWdlbWVudCBuZXR3b3JrCi0gIGRuc3NlY19rZXk6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IEROU1NFQyBwcml2YXRlIGtleSAoQmFzZTY0LWVuY29kZWQpCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGFsbG93ZWRfcGF0dGVybjogIlswLTlBLVphLXorLz1dKyIKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgQmFzZTY0LWVuY29kZWQKLSAgZXRjZF9pcDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogSVAgYWRkcmVzcyBvZiBhbiBleGlzdGluZyBtZW1iZXIgb2YgdGhlIGV0Y2QgY2x1c3RlcgotICAgIGRlZmF1bHQ6ICIiCi0gIGluZGV4OgotICAgIHR5cGU6IG51bWJlcgotICAgIGRlc2NyaXB0aW9uOiBJbmRleCBvZiB0aGlzIEhvbWVzdGVhZCBub2RlIGluIHRoZSBIb21lc3RlYWQgY2x1c3RlcgotICAgIGRlZmF1bHQ6IDAKLQotcmVzb3VyY2VzOgotICBzZXJ2ZXI6Ci0gICAgdHlwZTogT1M6Ok5vdmE6OlNlcnZlcgotICAgIHByb3BlcnRpZXM6Ci0gICAgICBuYW1lOiB7IHN0cl9yZXBsYWNlOiB7IHBhcmFtczogeyBfX2luZGV4X186IHsgZ2V0X3BhcmFtOiBpbmRleCB9LCBfX3pvbmVfXzogeyBnZXRfcGFyYW06IHpvbmUgfSB9LCB0ZW1wbGF0ZTogaG9tZXN0ZWFkLV9faW5kZXhfXy5fX3pvbmVfXyB9IH0KLSAgICAgIGltYWdlOiB7IGdldF9wYXJhbTogaG9tZXN0ZWFkX2ltYWdlX25hbWUgfQotICAgICAgZmxhdm9yOiB7IGdldF9wYXJhbTogaG9tZXN0ZWFkX2ZsYXZvcl9uYW1lIH0KLSAgICAgIGtleV9uYW1lOiB7IGdldF9wYXJhbToga2V5X25hbWUgfQotICAgICAgbmV0d29ya3M6Ci0gICAgICAgIC0gbmV0d29yazogeyBnZXRfcGFyYW06IHB1YmxpY19uZXRfaWQgfQotICAgICAgbWV0YWRhdGE6IHt2bmZfaWQ6IHsgZ2V0X3BhcmFtOiB2bmZfaWQgfSwgdmZfbW9kdWxlX2lkOiB7IGdldF9wYXJhbTogdmZfbW9kdWxlX2lkIH19Ci0gICAgICB1c2VyX2RhdGFfZm9ybWF0OiBSQVcKLSAgICAgIHVzZXJfZGF0YToKLSAgICAgICAgc3RyX3JlcGxhY2U6Ci0gICAgICAgICAgcGFyYW1zOgotICAgICAgICAgICAgX19yZXBvX3VybF9fOiB7IGdldF9wYXJhbTogcmVwb191cmwgfQotICAgICAgICAgICAgX196b25lX186IHsgZ2V0X3BhcmFtOiB6b25lIH0KLSAgICAgICAgICAgIF9fZG5zX2lwX186IHsgZ2V0X3BhcmFtOiBkbnNfaXAgfQotICAgICAgICAgICAgX19kbnNzZWNfa2V5X186IHsgZ2V0X3BhcmFtOiBkbnNzZWNfa2V5IH0KLSAgICAgICAgICAgIF9fZXRjZF9pcF9fIDogeyBnZXRfcGFyYW06IGV0Y2RfaXAgfQotICAgICAgICAgICAgX19pbmRleF9fIDogeyBnZXRfcGFyYW06IGluZGV4IH0KLSAgICAgICAgICB0ZW1wbGF0ZTogfAotICAgICAgICAgICAgIyEvYmluL2Jhc2gKLQotICAgICAgICAgICAgIyBMb2cgYWxsIG91dHB1dCB0byBmaWxlLgotICAgICAgICAgICAgZXhlYyA+ID4odGVlIC1hIC92YXIvbG9nL2NsZWFyd2F0ZXItaGVhdC1ob21lc3RlYWQubG9nKSAyPiYxCi0gICAgICAgICAgICBzZXQgLXgKLQotICAgICAgICAgICAgIyBDb25maWd1cmUgdGhlIEFQVCBzb2Z0d2FyZSBzb3VyY2UuCi0gICAgICAgICAgICBlY2hvICdkZWIgX19yZXBvX3VybF9fIGJpbmFyeS8nID4gL2V0Yy9hcHQvc291cmNlcy5saXN0LmQvY2xlYXJ3YXRlci5saXN0Ci0gICAgICAgICAgICBjdXJsIC1MIGh0dHA6Ly9yZXBvLmN3LW5ndi5jb20vcmVwb19rZXkgfCBhcHQta2V5IGFkZCAtCi0gICAgICAgICAgICBhcHQtZ2V0IHVwZGF0ZQotCi0gICAgICAgICAgICAjIEdldCB0aGUgcHVibGljIElQIGFkZHJlc3MgZnJvbSBldGgwCi0gICAgICAgICAgICBzdWRvIGFwdC1nZXQgaW5zdGFsbCBpcGNhbGMKLSAgICAgICAgICAgIEFERFI9YGlwIGFkZHIgc2hvdyBldGgwIHwgYXdrICcvaW5ldCAve3ByaW50ICQyfSdgCi0gICAgICAgICAgICBQVUJMSUNfQUREUj1gaXBjYWxjIC1uIC1iICRBRERSIHwgYXdrICcvQWRkcmVzczove3ByaW50ICQyfSdgCi0KLSAgICAgICAgICAgICMgQ29uZmlndXJlIC9ldGMvY2xlYXJ3YXRlci9sb2NhbF9jb25maWcuCi0gICAgICAgICAgICBta2RpciAtcCAvZXRjL2NsZWFyd2F0ZXIKLSAgICAgICAgICAgIGV0Y2RfaXA9X19ldGNkX2lwX18KLSAgICAgICAgICAgIFsgLW4gIiRldGNkX2lwIiBdIHx8IGV0Y2RfaXA9JFBVQkxJQ19BRERSCi0gICAgICAgICAgICBjYXQgPiAvZXRjL2NsZWFyd2F0ZXIvbG9jYWxfY29uZmlnIDw8IEVPRgotICAgICAgICAgICAgbWFuYWdlbWVudF9sb2NhbF9pcD0kUFVCTElDX0FERFIKLSAgICAgICAgICAgIGxvY2FsX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgcHVibGljX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgcHVibGljX2hvc3RuYW1lPWhvbWVzdGVhZC1fX2luZGV4X18uX196b25lX18KLSAgICAgICAgICAgIGV0Y2RfY2x1c3Rlcj0kZXRjZF9pcAotICAgICAgICAgICAgRU9GCi0KLSAgICAgICAgICAgICMgTm93IGluc3RhbGwgdGhlIHNvZnR3YXJlLgotICAgICAgICAgICAgREVCSUFOX0ZST05URU5EPW5vbmludGVyYWN0aXZlIGFwdC1nZXQgaW5zdGFsbCBob21lc3RlYWQtbm9kZSBjbGVhcndhdGVyLXByb3YtdG9vbHMgLS15ZXMgLS1mb3JjZS15ZXMKLSAgICAgICAgICAgIERFQklBTl9GUk9OVEVORD1ub25pbnRlcmFjdGl2ZSBhcHQtZ2V0IGluc3RhbGwgY2xlYXJ3YXRlci1tYW5hZ2VtZW50IC0teWVzIC0tZm9yY2UteWVzCi0KLSAgICAgICAgICAgICMgRnVuY3Rpb24gdG8gZ2l2ZSBETlMgcmVjb3JkIHR5cGUgYW5kIElQIGFkZHJlc3MgZm9yIHNwZWNpZmllZCBJUCBhZGRyZXNzCi0gICAgICAgICAgICBpcDJycigpIHsKLSAgICAgICAgICAgICAgaWYgZWNobyAkMSB8IGdyZXAgLXEgLWUgJ1teMC05Ll0nIDsgdGhlbgotICAgICAgICAgICAgICAgIGVjaG8gQUFBQSAkMQotICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgZWNobyBBICQxCi0gICAgICAgICAgICAgIGZpCi0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICMgVXBkYXRlIEROUwotICAgICAgICAgICAgcmV0cmllcz0wCi0gICAgICAgICAgICB3aGlsZSAhIHsgbnN1cGRhdGUgLXkgIl9fem9uZV9fOl9fZG5zc2VjX2tleV9fIiAtdiA8PCBFT0YKLSAgICAgICAgICAgIHNlcnZlciBfX2Ruc19pcF9fCi0gICAgICAgICAgICB1cGRhdGUgYWRkIGhvbWVzdGVhZC1fX2luZGV4X18uX196b25lX18uIDMwICQoaXAycnIgJFBVQkxJQ19BRERSKQotICAgICAgICAgICAgdXBkYXRlIGFkZCBocy1wcm92Ll9fem9uZV9fLiAzMCAkKGlwMnJyICRQVUJMSUNfQUREUikKLSAgICAgICAgICAgIHVwZGF0ZSBhZGQgaHMuX196b25lX18uIDMwICQoaXAycnIgJFBVQkxJQ19BRERSKQotICAgICAgICAgICAgc2VuZAotICAgICAgICAgICAgRU9GCi0gICAgICAgICAgICB9ICYmIFsgJHJldHJpZXMgLWx0IDEwIF0KLSAgICAgICAgICAgIGRvCi0gICAgICAgICAgICAgIHJldHJpZXM9JCgocmV0cmllcyArIDEpKQotICAgICAgICAgICAgICBlY2hvICduc3VwZGF0ZSBmYWlsZWQgLSByZXRyeWluZyAocmV0cnkgJyRyZXRyaWVzJykuLi4nCi0gICAgICAgICAgICAgIHNsZWVwIDUKLSAgICAgICAgICAgIGRvbmUKLQotICAgICAgICAgICAgIyBVc2UgdGhlIEROUyBzZXJ2ZXIuCi0gICAgICAgICAgICBlY2hvICduYW1lc2VydmVyIF9fZG5zX2lwX18nID4gL2V0Yy9kbnNtYXNxLnJlc29sdi5jb25mCi0gICAgICAgICAgICBlY2hvICdSRVNPTFZfQ09ORj0vZXRjL2Ruc21hc3EucmVzb2x2LmNvbmYnID4+IC9ldGMvZGVmYXVsdC9kbnNtYXNxCi0gICAgICAgICAgICBzZXJ2aWNlIGRuc21hc3EgZm9yY2UtcmVsb2FkCi0KLW91dHB1dHM6Ci0gIHB1YmxpY19pcDoKLSAgICBkZXNjcmlwdGlvbjogSVAgYWRkcmVzcyBpbiBwdWJsaWMgbmV0d29yawotICAgIHZhbHVlOiB7IGdldF9hdHRyOiBbIHNlcnZlciwgYWNjZXNzSVB2NCBdIH0KZGlmZiAtLWdpdCBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9yYWxmLnlhbWwgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvcmFsZi55YW1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMDFhNTYxLi4wMDAwMDAwCi0tLSBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9yYWxmLnlhbWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMDUgKzAsMCBAQAotIyBQcm9qZWN0IENsZWFyd2F0ZXIgLSBJTVMgaW4gdGhlIENsb3VkCi0jIENvcHlyaWdodCAoQykgMjAxNSAgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQKLSMKLSMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKLSMgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlCi0jIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIKLSMgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbiwgYWxvbmcgd2l0aCB0aGUgIlNwZWNpYWwgRXhjZXB0aW9uIiBmb3IgdXNlIG9mCi0jIHRoZSBwcm9ncmFtIGFsb25nIHdpdGggU1NMLCBzZXQgZm9ydGggYmVsb3cuIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZAotIyBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7Ci0jIHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlCi0jIGRldGFpbHMuIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYwotIyBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUKLSMgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotIwotIyBUaGUgYXV0aG9yIGNhbiBiZSByZWFjaGVkIGJ5IGVtYWlsIGF0IGNsZWFyd2F0ZXJAbWV0YXN3aXRjaC5jb20gb3IgYnkKLSMgcG9zdCBhdCBNZXRhc3dpdGNoIE5ldHdvcmtzIEx0ZCwgMTAwIENodXJjaCBTdCwgRW5maWVsZCBFTjIgNkJRLCBVSwotIwotIyBTcGVjaWFsIEV4Y2VwdGlvbgotIyBNZXRhc3dpdGNoIE5ldHdvcmtzIEx0ZCAgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIGNvcHksIG1vZGlmeSwKLSMgcHJvcGFnYXRlLCBhbmQgZGlzdHJpYnV0ZSBhIHdvcmsgZm9ybWVkIGJ5IGNvbWJpbmluZyBPcGVuU1NMIHdpdGggVGhlCi0jIFNvZnR3YXJlLCBvciBhIHdvcmsgZGVyaXZhdGl2ZSBvZiBzdWNoIGEgY29tYmluYXRpb24sIGV2ZW4gaWYgc3VjaAotIyBjb3B5aW5nLCBtb2RpZmljYXRpb24sIHByb3BhZ2F0aW9uLCBvciBkaXN0cmlidXRpb24gd291bGQgb3RoZXJ3aXNlCi0jIHZpb2xhdGUgdGhlIHRlcm1zIG9mIHRoZSBHUEwuIFlvdSBtdXN0IGNvbXBseSB3aXRoIHRoZSBHUEwgaW4gYWxsCi0jIHJlc3BlY3RzIGZvciBhbGwgb2YgdGhlIGNvZGUgdXNlZCBvdGhlciB0aGFuIE9wZW5TU0wuCi0jICJPcGVuU1NMIiBtZWFucyBPcGVuU1NMIHRvb2xraXQgc29mdHdhcmUgZGlzdHJpYnV0ZWQgYnkgdGhlIE9wZW5TU0wKLSMgUHJvamVjdCBhbmQgbGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgTGljZW5zZXMsIG9yIGEgd29yayBiYXNlZCBvbiBzdWNoCi0jIHNvZnR3YXJlIGFuZCBsaWNlbnNlZCB1bmRlciB0aGUgT3BlblNTTCBMaWNlbnNlcy4KLSMgIk9wZW5TU0wgTGljZW5zZXMiIG1lYW5zIHRoZSBPcGVuU1NMIExpY2Vuc2UgYW5kIE9yaWdpbmFsIFNTTGVheSBMaWNlbnNlCi0jIHVuZGVyIHdoaWNoIHRoZSBPcGVuU1NMIFByb2plY3QgZGlzdHJpYnV0ZXMgdGhlIE9wZW5TU0wgdG9vbGtpdCBzb2Z0d2FyZSwKLSMgYXMgdGhvc2UgbGljZW5zZXMgYXBwZWFyIGluIHRoZSBmaWxlIExJQ0VOU0UtT1BFTlNTTC4KLQotaGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzCi0KLWRlc2NyaXB0aW9uOiA+Ci0gIENsZWFyd2F0ZXIgUmFsZiBub2RlCi0KLXBhcmFtZXRlcnM6Ci0gIHZuZl9pZDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogVk5GIElECi0gICAgZGVzY3JpcHRpb246IFRoZSBWTkYgSUQgcHJvdmlkZWQgYnkgT05BUAotICB2Zl9tb2R1bGVfaWQ6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IFZORiBtb2R1bGUgSUQKLSAgICBkZXNjcmlwdGlvbjogVGhlIFZORiBtb2R1bGUgSUQgcHJvdmlkZWQgYnkgT05BUAotICBwdWJsaWNfbmV0X2lkOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBJRCBvZiBwdWJsaWMgbmV0d29yawotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbmV1dHJvbi5uZXR3b3JrCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIGEgdmFsaWQgbmV0d29yayBJRAotICByYWxmX2ZsYXZvcl9uYW1lOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBGbGF2b3IgdG8gdXNlCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBub3ZhLmZsYXZvcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGZsYXZvciBuYW1lCi0gIHJhbGZfaW1hZ2VfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBpbWFnZSB0byB1c2UKLSAga2V5X25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2Yga2V5cGFpciB0byBhc3NpZ24KLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEua2V5cGFpcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGtleXBhaXIgbmFtZQotIyBiYXNlX21nbXRfc2VjdXJpdHlfZ3JvdXA6Ci0jICAgdHlwZTogc3RyaW5nCi0jICAgZGVzY3JpcHRpb246IElEIG9mIGJhc2Ugc2VjdXJpdHkgZ3JvdXAgZm9yIGFsbCBDbGVhcndhdGVyIG5vZGVzIChtYW5hZ2VtZW50KQotIyByYWxmX3NpZ19zZWN1cml0eV9ncm91cDoKLSMgICB0eXBlOiBzdHJpbmcKLSMgICBkZXNjcmlwdGlvbjogSUQgb2Ygc2VjdXJpdHkgZ3JvdXAgZm9yIFJhbGYgbm9kZXMgKHNpZ25hbGluZykKLSAgcmVwb191cmw6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IFVSTCBmb3IgQ2xlYXJ3YXRlciByZXBvc2l0b3J5Ci0gICAgZGVmYXVsdDogaHR0cDovL3JlcG8uY3ctbmd2LmNvbS9zdGFibGUKLSAgem9uZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRE5TIHpvbmUKLSAgICBkZWZhdWx0OiBleGFtcGxlLmNvbQotICBkbnNfaXA6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3MgZm9yIEROUyBzZXJ2ZXIKLSAgZG5zc2VjX2tleToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRE5TU0VDIHByaXZhdGUga2V5IChCYXNlNjQtZW5jb2RlZCkKLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gYWxsb3dlZF9wYXR0ZXJuOiAiWzAtOUEtWmEteisvPV0rIgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBCYXNlNjQtZW5jb2RlZAotICBldGNkX2lwOgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBJUCBhZGRyZXNzIG9mIGFuIGV4aXN0aW5nIG1lbWJlciBvZiB0aGUgZXRjZCBjbHVzdGVyCi0gICAgZGVmYXVsdDogIiIKLSAgaW5kZXg6Ci0gICAgdHlwZTogbnVtYmVyCi0gICAgZGVzY3JpcHRpb246IEluZGV4IG9mIHRoaXMgUmFsZiBub2RlIGluIHRoZSBSYWxmIGNsdXN0ZXIKLSAgICBkZWZhdWx0OiAwCi0KLXJlc291cmNlczoKLSAgc2VydmVyOgotICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXIKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgbmFtZTogeyBzdHJfcmVwbGFjZTogeyBwYXJhbXM6IHsgX19pbmRleF9fOiB7IGdldF9wYXJhbTogaW5kZXggfSwgX196b25lX186IHsgZ2V0X3BhcmFtOiB6b25lIH0gfSwgdGVtcGxhdGU6IHJhbGYtX19pbmRleF9fLl9fem9uZV9fIH0gfQotICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiByYWxmX2ltYWdlX25hbWUgfQotICAgICAgZmxhdm9yOiB7IGdldF9wYXJhbTogcmFsZl9mbGF2b3JfbmFtZSB9Ci0gICAgICBrZXlfbmFtZTogeyBnZXRfcGFyYW06IGtleV9uYW1lIH0KLSAgICAgIG5ldHdvcmtzOgotICAgICAgICAtIG5ldHdvcms6IHsgZ2V0X3BhcmFtOiBwdWJsaWNfbmV0X2lkIH0KLSAgICAgIG1ldGFkYXRhOiB7dm5mX2lkOiB7IGdldF9wYXJhbTogdm5mX2lkIH0sIHZmX21vZHVsZV9pZDogeyBnZXRfcGFyYW06IHZmX21vZHVsZV9pZCB9fQotICAgICAgdXNlcl9kYXRhX2Zvcm1hdDogUkFXCi0gICAgICB1c2VyX2RhdGE6Ci0gICAgICAgIHN0cl9yZXBsYWNlOgotICAgICAgICAgIHBhcmFtczoKLSAgICAgICAgICAgIF9fcmVwb191cmxfXzogeyBnZXRfcGFyYW06IHJlcG9fdXJsIH0KLSAgICAgICAgICAgIF9fem9uZV9fOiB7IGdldF9wYXJhbTogem9uZSB9Ci0gICAgICAgICAgICBfX2Ruc19pcF9fOiB7IGdldF9wYXJhbTogZG5zX2lwIH0KLSAgICAgICAgICAgIF9fZG5zc2VjX2tleV9fOiB7IGdldF9wYXJhbTogZG5zc2VjX2tleSB9Ci0gICAgICAgICAgICBfX2V0Y2RfaXBfXyA6IHsgZ2V0X3BhcmFtOiBldGNkX2lwIH0KLSAgICAgICAgICAgIF9faW5kZXhfXyA6IHsgZ2V0X3BhcmFtOiBpbmRleCB9Ci0gICAgICAgICAgdGVtcGxhdGU6IHwKLSAgICAgICAgICAgICMhL2Jpbi9iYXNoCi0KLSAgICAgICAgICAgICMgTG9nIGFsbCBvdXRwdXQgdG8gZmlsZS4KLSAgICAgICAgICAgIGV4ZWMgPiA+KHRlZSAtYSAvdmFyL2xvZy9jbGVhcndhdGVyLWhlYXQtcmFsZi5sb2cpIDI+JjEKLSAgICAgICAgICAgIHNldCAteAotCi0gICAgICAgICAgICAjIENvbmZpZ3VyZSB0aGUgQVBUIHNvZnR3YXJlIHNvdXJjZS4KLSAgICAgICAgICAgIGVjaG8gJ2RlYiBfX3JlcG9fdXJsX18gYmluYXJ5LycgPiAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC9jbGVhcndhdGVyLmxpc3QKLSAgICAgICAgICAgIGN1cmwgLUwgaHR0cDovL3JlcG8uY3ctbmd2LmNvbS9yZXBvX2tleSB8IGFwdC1rZXkgYWRkIC0KLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0KLSAgICAgICAgICAgICMgR2V0IHRoZSBwdWJsaWMgSVAgYWRkcmVzcyBmcm9tIGV0aDAKLSAgICAgICAgICAgIHN1ZG8gYXB0LWdldCBpbnN0YWxsIGlwY2FsYwotICAgICAgICAgICAgQUREUj1gaXAgYWRkciBzaG93IGV0aDAgfCBhd2sgJy9pbmV0IC97cHJpbnQgJDJ9J2AKLSAgICAgICAgICAgIFBVQkxJQ19BRERSPWBpcGNhbGMgLW4gLWIgJEFERFIgfCBhd2sgJy9BZGRyZXNzOi97cHJpbnQgJDJ9J2AKLQotICAgICAgICAgICAgIyBDb25maWd1cmUgL2V0Yy9jbGVhcndhdGVyL2xvY2FsX2NvbmZpZy4KLSAgICAgICAgICAgIG1rZGlyIC1wIC9ldGMvY2xlYXJ3YXRlcgotICAgICAgICAgICAgZXRjZF9pcD1fX2V0Y2RfaXBfXwotICAgICAgICAgICAgWyAtbiAiJGV0Y2RfaXAiIF0gfHwgZXRjZF9pcD0kUFVCTElDX0FERFIKLSAgICAgICAgICAgIGNhdCA+IC9ldGMvY2xlYXJ3YXRlci9sb2NhbF9jb25maWcgPDwgRU9GCi0gICAgICAgICAgICBtYW5hZ2VtZW50X2xvY2FsX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgbG9jYWxfaXA9JFBVQkxJQ19BRERSCi0gICAgICAgICAgICBwdWJsaWNfaXA9JFBVQkxJQ19BRERSCi0gICAgICAgICAgICBwdWJsaWNfaG9zdG5hbWU9cmFsZi1fX2luZGV4X18uX196b25lX18KLSAgICAgICAgICAgIGV0Y2RfY2x1c3Rlcj0kZXRjZF9pcAotICAgICAgICAgICAgRU9GCi0KLSAgICAgICAgICAgICMgQ3JlYXRlIC9ldGMvY2hyb25vcy9jaHJvbm9zLmNvbmYuCi0gICAgICAgICAgICBta2RpciAtcCAvZXRjL2Nocm9ub3MKLSAgICAgICAgICAgIGNhdCA+IC9ldGMvY2hyb25vcy9jaHJvbm9zLmNvbmYgPDwgRU9GCi0gICAgICAgICAgICBbaHR0cF0KLSAgICAgICAgICAgIGJpbmQtYWRkcmVzcyA9ICRQVUJMSUNfQUREUgotICAgICAgICAgICAgYmluZC1wb3J0ID0gNzI1MwotICAgICAgICAgICAgdGhyZWFkcyA9IDUwCi0KLSAgICAgICAgICAgIFtsb2dnaW5nXQotICAgICAgICAgICAgZm9sZGVyID0gL3Zhci9sb2cvY2hyb25vcwotICAgICAgICAgICAgbGV2ZWwgPSAyCi0KLSAgICAgICAgICAgIFthbGFybXNdCi0gICAgICAgICAgICBlbmFibGVkID0gdHJ1ZQotCi0gICAgICAgICAgICBbZXhjZXB0aW9uc10KLSAgICAgICAgICAgIG1heF90dGwgPSA2MDAKLSAgICAgICAgICAgIEVPRgotCi0gICAgICAgICAgICAjIE5vdyBpbnN0YWxsIHRoZSBzb2Z0d2FyZS4KLSAgICAgICAgICAgIERFQklBTl9GUk9OVEVORD1ub25pbnRlcmFjdGl2ZSBhcHQtZ2V0IGluc3RhbGwgcmFsZi1ub2RlIC0teWVzIC0tZm9yY2UteWVzCi0gICAgICAgICAgICBERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCBpbnN0YWxsIGNsZWFyd2F0ZXItbWFuYWdlbWVudCAtLXllcyAtLWZvcmNlLXllcwotCi0gICAgICAgICAgICAjIEZ1bmN0aW9uIHRvIGdpdmUgRE5TIHJlY29yZCB0eXBlIGFuZCBJUCBhZGRyZXNzIGZvciBzcGVjaWZpZWQgSVAgYWRkcmVzcwotICAgICAgICAgICAgaXAycnIoKSB7Ci0gICAgICAgICAgICAgIGlmIGVjaG8gJDEgfCBncmVwIC1xIC1lICdbXjAtOS5dJyA7IHRoZW4KLSAgICAgICAgICAgICAgICBlY2hvIEFBQUEgJDEKLSAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIGVjaG8gQSAkMQotICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjIFVwZGF0ZSBETlMKLSAgICAgICAgICAgIHJldHJpZXM9MAotICAgICAgICAgICAgd2hpbGUgISB7IG5zdXBkYXRlIC15ICJfX3pvbmVfXzpfX2Ruc3NlY19rZXlfXyIgLXYgPDwgRU9GCi0gICAgICAgICAgICBzZXJ2ZXIgX19kbnNfaXBfXwotICAgICAgICAgICAgdXBkYXRlIGFkZCByYWxmLV9faW5kZXhfXy5fX3pvbmVfXy4gMzAgJChpcDJyciAkUFVCTElDX0FERFIpCi0gICAgICAgICAgICB1cGRhdGUgYWRkIHJhbGYuX196b25lX18uIDMwICQoaXAycnIgJFBVQkxJQ19BRERSKQotICAgICAgICAgICAgc2VuZAotICAgICAgICAgICAgRU9GCi0gICAgICAgICAgICB9ICYmIFsgJHJldHJpZXMgLWx0IDEwIF0KLSAgICAgICAgICAgIGRvCi0gICAgICAgICAgICAgIHJldHJpZXM9JCgocmV0cmllcyArIDEpKQotICAgICAgICAgICAgICBlY2hvICduc3VwZGF0ZSBmYWlsZWQgLSByZXRyeWluZyAocmV0cnkgJyRyZXRyaWVzJykuLi4nCi0gICAgICAgICAgICAgIHNsZWVwIDUKLSAgICAgICAgICAgIGRvbmUKLQotICAgICAgICAgICAgIyBVc2UgdGhlIEROUyBzZXJ2ZXIuCi0gICAgICAgICAgICBlY2hvICduYW1lc2VydmVyIF9fZG5zX2lwX18nID4gL2V0Yy9kbnNtYXNxLnJlc29sdi5jb25mCi0gICAgICAgICAgICBlY2hvICdSRVNPTFZfQ09ORj0vZXRjL2Ruc21hc3EucmVzb2x2LmNvbmYnID4+IC9ldGMvZGVmYXVsdC9kbnNtYXNxCi0gICAgICAgICAgICBzZXJ2aWNlIGRuc21hc3EgZm9yY2UtcmVsb2FkCi0KLW91dHB1dHM6Ci0gIHB1YmxpY19pcDoKLSAgICBkZXNjcmlwdGlvbjogSVAgYWRkcmVzcyBpbiBwdWJsaWMgbmV0d29yawotICAgIHZhbHVlOiB7IGdldF9hdHRyOiBbIHNlcnZlciwgYWNjZXNzSVB2NCBdIH0KZGlmZiAtLWdpdCBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9zcHJvdXQueWFtbCBiL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfY2xlYXJ3YXRlci9zcHJvdXQueWFtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2ZiOWRkOC4uMDAwMDAwMAotLS0gYS9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX2NsZWFyd2F0ZXIvc3Byb3V0LnlhbWwKKysrIC9kZXYvbnVsbApAQCAtMSwyMTcgKzAsMCBAQAotIyBQcm9qZWN0IENsZWFyd2F0ZXIgLSBJTVMgaW4gdGhlIENsb3VkCi0jIENvcHlyaWdodCAoQykgMjAxNSAgTWV0YXN3aXRjaCBOZXR3b3JrcyBMdGQKLSMKLSMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKLSMgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlCi0jIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIKLSMgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbiwgYWxvbmcgd2l0aCB0aGUgIlNwZWNpYWwgRXhjZXB0aW9uIiBmb3IgdXNlIG9mCi0jIHRoZSBwcm9ncmFtIGFsb25nIHdpdGggU1NMLCBzZXQgZm9ydGggYmVsb3cuIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZAotIyBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7Ci0jIHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlCi0jIGRldGFpbHMuIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYwotIyBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUKLSMgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotIwotIyBUaGUgYXV0aG9yIGNhbiBiZSByZWFjaGVkIGJ5IGVtYWlsIGF0IGNsZWFyd2F0ZXJAbWV0YXN3aXRjaC5jb20gb3IgYnkKLSMgcG9zdCBhdCBNZXRhc3dpdGNoIE5ldHdvcmtzIEx0ZCwgMTAwIENodXJjaCBTdCwgRW5maWVsZCBFTjIgNkJRLCBVSwotIwotIyBTcGVjaWFsIEV4Y2VwdGlvbgotIyBNZXRhc3dpdGNoIE5ldHdvcmtzIEx0ZCAgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIGNvcHksIG1vZGlmeSwKLSMgcHJvcGFnYXRlLCBhbmQgZGlzdHJpYnV0ZSBhIHdvcmsgZm9ybWVkIGJ5IGNvbWJpbmluZyBPcGVuU1NMIHdpdGggVGhlCi0jIFNvZnR3YXJlLCBvciBhIHdvcmsgZGVyaXZhdGl2ZSBvZiBzdWNoIGEgY29tYmluYXRpb24sIGV2ZW4gaWYgc3VjaAotIyBjb3B5aW5nLCBtb2RpZmljYXRpb24sIHByb3BhZ2F0aW9uLCBvciBkaXN0cmlidXRpb24gd291bGQgb3RoZXJ3aXNlCi0jIHZpb2xhdGUgdGhlIHRlcm1zIG9mIHRoZSBHUEwuIFlvdSBtdXN0IGNvbXBseSB3aXRoIHRoZSBHUEwgaW4gYWxsCi0jIHJlc3BlY3RzIGZvciBhbGwgb2YgdGhlIGNvZGUgdXNlZCBvdGhlciB0aGFuIE9wZW5TU0wuCi0jICJPcGVuU1NMIiBtZWFucyBPcGVuU1NMIHRvb2xraXQgc29mdHdhcmUgZGlzdHJpYnV0ZWQgYnkgdGhlIE9wZW5TU0wKLSMgUHJvamVjdCBhbmQgbGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgTGljZW5zZXMsIG9yIGEgd29yayBiYXNlZCBvbiBzdWNoCi0jIHNvZnR3YXJlIGFuZCBsaWNlbnNlZCB1bmRlciB0aGUgT3BlblNTTCBMaWNlbnNlcy4KLSMgIk9wZW5TU0wgTGljZW5zZXMiIG1lYW5zIHRoZSBPcGVuU1NMIExpY2Vuc2UgYW5kIE9yaWdpbmFsIFNTTGVheSBMaWNlbnNlCi0jIHVuZGVyIHdoaWNoIHRoZSBPcGVuU1NMIFByb2plY3QgZGlzdHJpYnV0ZXMgdGhlIE9wZW5TU0wgdG9vbGtpdCBzb2Z0d2FyZSwKLSMgYXMgdGhvc2UgbGljZW5zZXMgYXBwZWFyIGluIHRoZSBmaWxlIExJQ0VOU0UtT1BFTlNTTC4KLQotaGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzCi0KLWRlc2NyaXB0aW9uOiA+Ci0gIENsZWFyd2F0ZXIgU3Byb3V0IG5vZGUKLQotcGFyYW1ldGVyczoKLSAgdm5mX2lkOgotICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiBWTkYgSUQKLSAgICBkZXNjcmlwdGlvbjogVGhlIFZORiBJRCBwcm92aWRlZCBieSBPTkFQCi0gIHZmX21vZHVsZV9pZDoKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogVk5GIG1vZHVsZSBJRAotICAgIGRlc2NyaXB0aW9uOiBUaGUgVk5GIG1vZHVsZSBJRCBwcm92aWRlZCBieSBPTkFQCi0gIHB1YmxpY19uZXRfaWQ6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IElEIG9mIHB1YmxpYyBuZXR3b3JrCi0gICAgY29uc3RyYWludHM6Ci0gICAgICAtIGN1c3RvbV9jb25zdHJhaW50OiBuZXV0cm9uLm5ldHdvcmsKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBuZXR3b3JrIElECi0gIHNwcm91dF9mbGF2b3JfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRmxhdm9yIHRvIHVzZQotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBjdXN0b21fY29uc3RyYWludDogbm92YS5mbGF2b3IKLSAgICAgICAgZGVzY3JpcHRpb246IE11c3QgYmUgYSB2YWxpZCBmbGF2b3IgbmFtZQotICBzcHJvdXRfaW1hZ2VfbmFtZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogTmFtZSBvZiBpbWFnZSB0byB1c2UKLSAga2V5X25hbWU6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IE5hbWUgb2Yga2V5cGFpciB0byBhc3NpZ24KLSAgICBjb25zdHJhaW50czoKLSAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEua2V5cGFpcgotICAgICAgICBkZXNjcmlwdGlvbjogTXVzdCBiZSBhIHZhbGlkIGtleXBhaXIgbmFtZQotIyBiYXNlX21nbXRfc2VjdXJpdHlfZ3JvdXA6Ci0jICAgdHlwZTogc3RyaW5nCi0jICAgZGVzY3JpcHRpb246IElEIG9mIGJhc2Ugc2VjdXJpdHkgZ3JvdXAgZm9yIGFsbCBDbGVhcndhdGVyIG5vZGVzIChtYW5hZ2VtZW50KQotIyBzcHJvdXRfc2lnX3NlY3VyaXR5X2dyb3VwOgotIyAgIHR5cGU6IHN0cmluZwotIyAgIGRlc2NyaXB0aW9uOiBJRCBvZiBzZWN1cml0eSBncm91cCBmb3IgU3Byb3V0IG5vZGVzIChzaWduYWxpbmcpCi0jIHNwcm91dF9zaWcyX3NlY3VyaXR5X2dyb3VwOgotIyAgIHR5cGU6IHN0cmluZwotIyAgIGRlc2NyaXB0aW9uOiBJRCBvZiBhZGRpdGlvbmFsIHNlY3VyaXR5IGdyb3VwIGZvciBTcHJvdXQgbm9kZXMgKHNpZ25hbGluZykKLSAgcmVwb191cmw6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IFVSTCBmb3IgQ2xlYXJ3YXRlciByZXBvc2l0b3J5Ci0gICAgZGVmYXVsdDogaHR0cDovL3JlcG8uY3ctbmd2LmNvbS9zdGFibGUKLSAgem9uZToKLSAgICB0eXBlOiBzdHJpbmcKLSAgICBkZXNjcmlwdGlvbjogRE5TIHpvbmUKLSAgICBkZWZhdWx0OiBleGFtcGxlLmNvbQotICBkbnNfaXA6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3MgZm9yIEROUyBzZXJ2ZXIgb24gbmV0d29yawotICBkbnNzZWNfa2V5OgotICAgIHR5cGU6IHN0cmluZwotICAgIGRlc2NyaXB0aW9uOiBETlNTRUMgcHJpdmF0ZSBrZXkgKEJhc2U2NC1lbmNvZGVkKQotICAgIGNvbnN0cmFpbnRzOgotICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbMC05QS1aYS16Ky89XSsiCi0gICAgICAgIGRlc2NyaXB0aW9uOiBNdXN0IGJlIEJhc2U2NC1lbmNvZGVkCi0gIGV0Y2RfaXA6Ci0gICAgdHlwZTogc3RyaW5nCi0gICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3Mgb2YgYW4gZXhpc3RpbmcgbWVtYmVyIG9mIHRoZSBldGNkIGNsdXN0ZXIKLSAgICBkZWZhdWx0OiAiIgotICBpbmRleDoKLSAgICB0eXBlOiBudW1iZXIKLSAgICBkZXNjcmlwdGlvbjogSW5kZXggb2YgdGhpcyBTcHJvdXQgbm9kZSBpbiB0aGUgU3Byb3V0IGNsdXN0ZXIKLSAgICBkZWZhdWx0OiAwCi0KLXJlc291cmNlczoKLSAgc2VydmVyOgotICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXIKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgbmFtZTogeyBzdHJfcmVwbGFjZTogeyBwYXJhbXM6IHsgX19pbmRleF9fOiB7IGdldF9wYXJhbTogaW5kZXggfSwgX196b25lX186IHsgZ2V0X3BhcmFtOiB6b25lIH0gfSwgdGVtcGxhdGU6IHNwcm91dC1fX2luZGV4X18uX196b25lX18gfSB9Ci0gICAgICBpbWFnZTogeyBnZXRfcGFyYW06IHNwcm91dF9pbWFnZV9uYW1lIH0KLSAgICAgIGZsYXZvcjogeyBnZXRfcGFyYW06IHNwcm91dF9mbGF2b3JfbmFtZSB9Ci0gICAgICBrZXlfbmFtZTogeyBnZXRfcGFyYW06IGtleV9uYW1lIH0KLSAgICAgIG5ldHdvcmtzOgotICAgICAgICAtIG5ldHdvcms6IHsgZ2V0X3BhcmFtOiBwdWJsaWNfbmV0X2lkIH0KLSAgICAgIG1ldGFkYXRhOiB7dm5mX2lkOiB7IGdldF9wYXJhbTogdm5mX2lkIH0sIHZmX21vZHVsZV9pZDogeyBnZXRfcGFyYW06IHZmX21vZHVsZV9pZCB9fQotICAgICAgdXNlcl9kYXRhX2Zvcm1hdDogUkFXCi0gICAgICB1c2VyX2RhdGE6Ci0gICAgICAgIHN0cl9yZXBsYWNlOgotICAgICAgICAgIHBhcmFtczoKLSAgICAgICAgICAgIF9fcmVwb191cmxfXzogeyBnZXRfcGFyYW06IHJlcG9fdXJsIH0KLSAgICAgICAgICAgIF9fem9uZV9fOiB7IGdldF9wYXJhbTogem9uZSB9Ci0gICAgICAgICAgICBfX2Ruc19pcF9fOiB7IGdldF9wYXJhbTogZG5zX2lwIH0KLSAgICAgICAgICAgIF9fZG5zc2VjX2tleV9fOiB7IGdldF9wYXJhbTogZG5zc2VjX2tleSB9Ci0gICAgICAgICAgICBfX2V0Y2RfaXBfXyA6IHsgZ2V0X3BhcmFtOiBldGNkX2lwIH0KLSAgICAgICAgICAgIF9faW5kZXhfXyA6IHsgZ2V0X3BhcmFtOiBpbmRleCB9Ci0gICAgICAgICAgdGVtcGxhdGU6IHwKLSAgICAgICAgICAgICMhL2Jpbi9iYXNoCi0KLSAgICAgICAgICAgICMgTG9nIGFsbCBvdXRwdXQgdG8gZmlsZS4KLSAgICAgICAgICAgIGV4ZWMgPiA+KHRlZSAtYSAvdmFyL2xvZy9jbGVhcndhdGVyLWhlYXQtc3Byb3V0LmxvZykgMj4mMQotICAgICAgICAgICAgc2V0IC14Ci0KLSAgICAgICAgICAgICMgQ29uZmlndXJlIHRoZSBBUFQgc29mdHdhcmUgc291cmNlLgotICAgICAgICAgICAgZWNobyAnZGViIF9fcmVwb191cmxfXyBiaW5hcnkvJyA+IC9ldGMvYXB0L3NvdXJjZXMubGlzdC5kL2NsZWFyd2F0ZXIubGlzdAotICAgICAgICAgICAgY3VybCAtTCBodHRwOi8vcmVwby5jdy1uZ3YuY29tL3JlcG9fa2V5IHwgYXB0LWtleSBhZGQgLQotICAgICAgICAgICAgYXB0LWdldCB1cGRhdGUKLQotICAgICAgICAgICAgIyBHZXQgdGhlIHB1YmxpYyBJUCBhZGRyZXNzIGZyb20gZXRoMAotICAgICAgICAgICAgc3VkbyBhcHQtZ2V0IGluc3RhbGwgaXBjYWxjCi0gICAgICAgICAgICBBRERSPWBpcCBhZGRyIHNob3cgZXRoMCB8IGF3ayAnL2luZXQgL3twcmludCAkMn0nYAotICAgICAgICAgICAgUFVCTElDX0FERFI9YGlwY2FsYyAtbiAtYiAkQUREUiB8IGF3ayAnL0FkZHJlc3M6L3twcmludCAkMn0nYAotCi0gICAgICAgICAgICAjIENvbmZpZ3VyZSAvZXRjL2NsZWFyd2F0ZXIvbG9jYWxfY29uZmlnLgotICAgICAgICAgICAgbWtkaXIgLXAgL2V0Yy9jbGVhcndhdGVyCi0gICAgICAgICAgICBldGNkX2lwPV9fZXRjZF9pcF9fCi0gICAgICAgICAgICBbIC1uICIkZXRjZF9pcCIgXSB8fCBldGNkX2lwPSRQVUJMSUNfQUREUgotICAgICAgICAgICAgY2F0ID4gL2V0Yy9jbGVhcndhdGVyL2xvY2FsX2NvbmZpZyA8PCBFT0YKLSAgICAgICAgICAgIG1hbmFnZW1lbnRfbG9jYWxfaXA9JFBVQkxJQ19BRERSCi0gICAgICAgICAgICBsb2NhbF9pcD0kUFVCTElDX0FERFIKLSAgICAgICAgICAgIHB1YmxpY19pcD0kUFVCTElDX0FERFIKLSAgICAgICAgICAgIHB1YmxpY19ob3N0bmFtZT1fX2luZGV4X18uc3Byb3V0Ll9fem9uZV9fCi0gICAgICAgICAgICBldGNkX2NsdXN0ZXI9JGV0Y2RfaXAKLSAgICAgICAgICAgIEVPRgotCi0gICAgICAgICAgICAjIENyZWF0ZSAvZXRjL2Nocm9ub3MvY2hyb25vcy5jb25mLgotICAgICAgICAgICAgbWtkaXIgLXAgL2V0Yy9jaHJvbm9zCi0gICAgICAgICAgICBjYXQgPiAvZXRjL2Nocm9ub3MvY2hyb25vcy5jb25mIDw8IEVPRgotICAgICAgICAgICAgW2h0dHBdCi0gICAgICAgICAgICBiaW5kLWFkZHJlc3MgPSAkUFVCTElDX0FERFIKLSAgICAgICAgICAgIGJpbmQtcG9ydCA9IDcyNTMKLSAgICAgICAgICAgIHRocmVhZHMgPSA1MAotCi0gICAgICAgICAgICBbbG9nZ2luZ10KLSAgICAgICAgICAgIGZvbGRlciA9IC92YXIvbG9nL2Nocm9ub3MKLSAgICAgICAgICAgIGxldmVsID0gMgotCi0gICAgICAgICAgICBbYWxhcm1zXQotICAgICAgICAgICAgZW5hYmxlZCA9IHRydWUKLQotICAgICAgICAgICAgW2V4Y2VwdGlvbnNdCi0gICAgICAgICAgICBtYXhfdHRsID0gNjAwCi0gICAgICAgICAgICBFT0YKLQotICAgICAgICAgICAgIyBOb3cgaW5zdGFsbCB0aGUgc29mdHdhcmUuCi0gICAgICAgICAgICBERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCBpbnN0YWxsIHNwcm91dC1ub2RlIC0teWVzIC0tZm9yY2UteWVzCi0gICAgICAgICAgICBERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCBpbnN0YWxsIGNsZWFyd2F0ZXItbWFuYWdlbWVudCAtLXllcyAtLWZvcmNlLXllcwotCi0gICAgICAgICAgICAjIEZ1bmN0aW9uIHRvIGdpdmUgRE5TIHJlY29yZCB0eXBlIGFuZCBJUCBhZGRyZXNzIGZvciBzcGVjaWZpZWQgSVAgYWRkcmVzcwotICAgICAgICAgICAgaXAycnIoKSB7Ci0gICAgICAgICAgICAgIGlmIGVjaG8gJDEgfCBncmVwIC1xIC1lICdbXjAtOS5dJyA7IHRoZW4KLSAgICAgICAgICAgICAgICBlY2hvIEFBQUEgJDEKLSAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIGVjaG8gQSAkMQotICAgICAgICAgICAgICBmaQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjIFVwZGF0ZSBETlMKLSAgICAgICAgICAgIHJldHJpZXM9MAotICAgICAgICAgICAgd2hpbGUgISB7IG5zdXBkYXRlIC15ICJfX3pvbmVfXzpfX2Ruc3NlY19rZXlfXyIgLXYgPDwgRU9GCi0gICAgICAgICAgICBzZXJ2ZXIgX19kbnNfaXBfXwotICAgICAgICAgICAgdXBkYXRlIGFkZCBzcHJvdXQtX19pbmRleF9fLl9fem9uZV9fLiAzMCAkKGlwMnJyICRQVUJMSUNfQUREUikKLSAgICAgICAgICAgIHVwZGF0ZSBhZGQgX19pbmRleF9fLnNwcm91dC5fX3pvbmVfXy4gMzAgJChpcDJyciAkUFVCTElDX0FERFIpCi0gICAgICAgICAgICB1cGRhdGUgYWRkIHNwcm91dC5fX3pvbmVfXy4gMzAgJChpcDJyciAkUFVCTElDX0FERFIpCi0gICAgICAgICAgICB1cGRhdGUgYWRkIHNjc2NmLnNwcm91dC5fX3pvbmVfXy4gMzAgJChpcDJyciAkUFVCTElDX0FERFIpCi0gICAgICAgICAgICB1cGRhdGUgYWRkIGljc2NmLnNwcm91dC5fX3pvbmVfXy4gMzAgJChpcDJyciAkUFVCTElDX0FERFIpCi0gICAgICAgICAgICB1cGRhdGUgYWRkIHNwcm91dC5fX3pvbmVfXy4gMzAgTkFQVFIgMCAwICJzIiAiU0lQK0QyVCIgIiIgX3NpcC5fdGNwLnNwcm91dC5fX3pvbmVfXy4KLSAgICAgICAgICAgIHVwZGF0ZSBhZGQgX3NpcC5fdGNwLnNwcm91dC5fX3pvbmVfXy4gMzAgU1JWIDAgMCA1MDU0IF9faW5kZXhfXy5zcHJvdXQuX196b25lX18uCi0gICAgICAgICAgICB1cGRhdGUgYWRkIGljc2NmLnNwcm91dC5fX3pvbmVfXy4gMzAgTkFQVFIgMCAwICJzIiAiU0lQK0QyVCIgIiIgX3NpcC5fdGNwLmljc2NmLnNwcm91dC5fX3pvbmVfXy4KLSAgICAgICAgICAgIHVwZGF0ZSBhZGQgX3NpcC5fdGNwLmljc2NmLnNwcm91dC5fX3pvbmVfXy4gMzAgU1JWIDAgMCA1MDUyIF9faW5kZXhfXy5zcHJvdXQuX196b25lX18uCi0gICAgICAgICAgICB1cGRhdGUgYWRkIHNjc2NmLnNwcm91dC5fX3pvbmVfXy4gMzAgTkFQVFIgMCAwICJzIiAiU0lQK0QyVCIgIiIgX3NpcC5fdGNwLnNjc2NmLnNwcm91dC5fX3pvbmVfXy4KLSAgICAgICAgICAgIHVwZGF0ZSBhZGQgX3NpcC5fdGNwLnNjc2NmLnNwcm91dC5fX3pvbmVfXy4gMzAgU1JWIDAgMCA1MDU0IF9faW5kZXhfXy5zcHJvdXQuX196b25lX18uCi0gICAgICAgICAgICBzZW5kCi0gICAgICAgICAgICBFT0YKLSAgICAgICAgICAgIH0gJiYgWyAkcmV0cmllcyAtbHQgMTAgXQotICAgICAgICAgICAgZG8KLSAgICAgICAgICAgICAgcmV0cmllcz0kKChyZXRyaWVzICsgMSkpCi0gICAgICAgICAgICAgIGVjaG8gJ25zdXBkYXRlIGZhaWxlZCAtIHJldHJ5aW5nIChyZXRyeSAnJHJldHJpZXMnKS4uLicKLSAgICAgICAgICAgICAgc2xlZXAgNQotICAgICAgICAgICAgZG9uZQotCi0gICAgICAgICAgICAjIFVzZSB0aGUgRE5TIHNlcnZlci4KLSAgICAgICAgICAgIGVjaG8gJ25hbWVzZXJ2ZXIgX19kbnNfaXBfXycgPiAvZXRjL2Ruc21hc3EucmVzb2x2LmNvbmYKLSAgICAgICAgICAgIGVjaG8gJ1JFU09MVl9DT05GPS9ldGMvZG5zbWFzcS5yZXNvbHYuY29uZicgPj4gL2V0Yy9kZWZhdWx0L2Ruc21hc3EKLSAgICAgICAgICAgIHNlcnZpY2UgZG5zbWFzcSBmb3JjZS1yZWxvYWQKLQotb3V0cHV0czoKLSAgcHVibGljX2lwOgotICAgIGRlc2NyaXB0aW9uOiBJUCBhZGRyZXNzIGluIHB1YmxpYyBuZXR3b3JrCi0gICAgdmFsdWU6IHsgZ2V0X2F0dHI6IFsgc2VydmVyLCBhY2Nlc3NJUHY0IF0gfQpkaWZmIC0tZ2l0IGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV92Y3BlX3ZnbXV4L2Jhc2VfdmNwZV92Z211eC5lbnYgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX3ZjcGVfdmdtdXgvYmFzZV92Y3BlX3ZnbXV4LmVudgppbmRleCBhYWQ0Nzg0Li5lODFhZmE3IDEwMDY0NAotLS0gYS9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX3ZjcGVfdmdtdXgvYmFzZV92Y3BlX3ZnbXV4LmVudgorKysgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX3ZjcGVfdmdtdXgvYmFzZV92Y3BlX3ZnbXV4LmVudgpAQCAtMzIsMyArMzIsNCBAQAogICBoYzJ2cHBfc291cmNlX3JlcG9fYnJhbmNoOiBzdGFibGUvMTcwNAogICB2cHBfcGF0Y2hfdXJsOiBodHRwczovL2dpdC5vbmFwLm9yZy9kZW1vL3BsYWluL3ZuZnMvdkNQRS92cHAtdmVzLWFnZW50LWZvci12Z211eC9zcmMvcGF0Y2hlcy9WcHAtQWRkLVZFUy1hZ2VudC1mb3ItdkctTVVYLnBhdGNoCiAgIGhjMnZwcF9wYXRjaF91cmw6IGh0dHBzOi8vZ2l0Lm9uYXAub3JnL2RlbW8vcGxhaW4vdm5mcy92Q1BFL3ZwcC12ZXMtYWdlbnQtZm9yLXZnbXV4L3NyYy9wYXRjaGVzL0hjMnZwcC1BZGQtVkVTLWFnZW50LWZvci12Ry1NVVgucGF0Y2gKKyAgbGliZXZlbF9wYXRjaF91cmw6IGh0dHBzOi8vZ2l0Lm9uYXAub3JnL2RlbW8vcGxhaW4vdm5mcy92Q1BFL3ZwcC12ZXMtYWdlbnQtZm9yLXZnbXV4L3NyYy9wYXRjaGVzL3ZDUEUtdkctTVVYLWxpYmV2ZWwtZml4dXAucGF0Y2gKZGlmZiAtLWdpdCBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfdmNwZV92Z211eC9iYXNlX3ZjcGVfdmdtdXgueWFtbCBiL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfdmNwZV92Z211eC9iYXNlX3ZjcGVfdmdtdXgueWFtbAppbmRleCA0ZjEyYzY0Li5lY2RiMWIxIDEwMDY0NAotLS0gYS9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX3ZjcGVfdmdtdXgvYmFzZV92Y3BlX3ZnbXV4LnlhbWwKKysrIGIvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV92Y3BlX3ZnbXV4L2Jhc2VfdmNwZV92Z211eC55YW1sCkBAIC0xNjUsNiArMTY1LDEwIEBACiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IEhvbmV5Y29tYiBQYXRjaCBVUkwKICAgICBkZXNjcmlwdGlvbjogVVJMIGZvciBIb25leWNvbWIgcGF0Y2ggZm9yIHZHLU1VWAorICBsaWJldmVsX3BhdGNoX3VybDoKKyAgICB0eXBlOiBzdHJpbmcKKyAgICBsYWJlbDogbGliZXZlbCBQYXRjaCBVUkwKKyAgICBkZXNjcmlwdGlvbjogVVJMIGZvciBsaWJldmVsIHBhdGNoIGZvciB2Ry1NVVgKIAogIyMjIyMjIyMjIyMjIwogIyAgICAgICAgICAgIwpAQCAtMjQ1LDYgKzI0OSw3IEBACiAgICAgICAgICAgICBfX2hjMnZwcF9zb3VyY2VfcmVwb19icmFuY2hfXyA6IHsgZ2V0X3BhcmFtOiBoYzJ2cHBfc291cmNlX3JlcG9fYnJhbmNoIH0KICAgICAgICAgICAgIF9fdnBwX3BhdGNoX3VybF9fIDogeyBnZXRfcGFyYW06IHZwcF9wYXRjaF91cmwgfQogICAgICAgICAgICAgX19oYzJ2cHBfcGF0Y2hfdXJsX18gOiB7IGdldF9wYXJhbTogaGMydnBwX3BhdGNoX3VybCB9CisgICAgICAgICAgICBfX2xpYmV2ZWxfcGF0Y2hfdXJsX18gOiB7IGdldF9wYXJhbTogbGliZXZlbF9wYXRjaF91cmwgfQogICAgICAgICAgIHRlbXBsYXRlOiB8CiAgICAgICAgICAgICAjIS9iaW4vYmFzaAogCkBAIC0yNjcsNiArMjcyLDcgQEAKICAgICAgICAgICAgIGVjaG8gIl9faGMydnBwX3NvdXJjZV9yZXBvX3VybF9fIiA+IC9vcHQvY29uZmlnL2hjMnZwcF9zb3VyY2VfcmVwb191cmwudHh0CiAgICAgICAgICAgICBlY2hvICJfX2hjMnZwcF9zb3VyY2VfcmVwb19icmFuY2hfXyIgPiAvb3B0L2NvbmZpZy9oYzJ2cHBfc291cmNlX3JlcG9fYnJhbmNoLnR4dAogICAgICAgICAgICAgZWNobyAiX19oYzJ2cHBfcGF0Y2hfdXJsX18iID4gL29wdC9jb25maWcvaGMydnBwX3BhdGNoX3VybC50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fbGliZXZlbF9wYXRjaF91cmxfXyIgPiAvb3B0L2NvbmZpZy9saWJldmVsX3BhdGNoX3VybC50eHQKIAogICAgICAgICAgICAgIyBEb3dubG9hZCBhbmQgcnVuIGluc3RhbGwgc2NyaXB0CiAgICAgICAgICAgICBjdXJsIC1rIF9fcmVwb191cmxfYmxvYl9fL29yZy5vbmFwLmRlbW8vdm5mcy92Y3BlL19faW5zdGFsbF9zY3JpcHRfdmVyc2lvbl9fL3ZfZ211eF9pbnN0YWxsLnNoIC1vIC9vcHQvdl9nbXV4X2luc3RhbGwuc2gKZGlmZiAtLWdpdCBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfdmZ3L2Jhc2VfdmZ3LnlhbWwgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX3Zmdy9iYXNlX3Zmdy55YW1sCmluZGV4IGE3ZGY4NTQuLjFjMjJjOWIgMTAwNjQ0Ci0tLSBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfdmZ3L2Jhc2VfdmZ3LnlhbWwKKysrIGIvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV92ZncvYmFzZV92ZncueWFtbApAQCAtMSw2ICsxLDM2IEBACisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIworIz09PT09PT09PT09PT09PT09PUxJQ0VOU0VfU1RBUlQ9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyMKKyMKKyMgQ29weXJpZ2h0IMKpIDIwMTcgQVQmVCBJbnRlbGxlY3R1YWwgUHJvcGVydHkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworIyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisjIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorIyAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCisjPT09PT09PT09PT09PT09PT09TElDRU5TRV9FTkQ9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIworIyBFQ09NUCBpcyBhIHRyYWRlbWFyayBhbmQgc2VydmljZSBtYXJrIG9mIEFUJlQgSW50ZWxsZWN0dWFsIFByb3BlcnR5LgorIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKwogaGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzCiAKLWRlc2NyaXB0aW9uOiBIZWF0IHRlbXBsYXRlIHRvIGRlcGxveSB2RmlyZXdhbGwgZGVtbyBhcHAgZm9yIE9wZW5FQ09NUAorZGVzY3JpcHRpb246IEhlYXQgdGVtcGxhdGUgdGhhdCBkZXBsb3lzIHZGaXJld2FsbCBkZW1vIGFwcCBmb3IgT05BUAorCisjIyMjIyMjIyMjIyMjIworIyAgICAgICAgICAgICMKKyMgUEFSQU1FVEVSUyAjCisjICAgICAgICAgICAgIworIyMjIyMjIyMjIyMjIyMKIAogcGFyYW1ldGVyczoKICAgdmZ3X2ltYWdlX25hbWU6CkBAIC0yMywxNCArNTMsMTQgQEAKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogUHJvdGVjdGVkIHByaXZhdGUgbmV0d29yayBuYW1lIG9yIElECiAgICAgZGVzY3JpcHRpb246IFByaXZhdGUgbmV0d29yayB0aGF0IGNvbm5lY3RzIHZGaXJld2FsbCB3aXRoIHZTaW5rCi0gIGVjb21wX3ByaXZhdGVfbmV0X2lkOgorICBvbmFwX3ByaXZhdGVfbmV0X2lkOgogICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiBFQ09NUCBtYW5hZ2VtZW50IG5ldHdvcmsgbmFtZSBvciBJRAotICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIG5ldHdvcmsgdGhhdCBjb25uZWN0cyBFQ09NUCBjb21wb25lbnQgYW5kIHRoZSBWTkYKLSAgZWNvbXBfcHJpdmF0ZV9zdWJuZXRfaWQ6CisgICAgbGFiZWw6IE9OQVAgbWFuYWdlbWVudCBuZXR3b3JrIG5hbWUgb3IgSUQKKyAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBuZXR3b3JrIHRoYXQgY29ubmVjdHMgT05BUCBjb21wb25lbnRzIGFuZCB0aGUgVk5GCisgIG9uYXBfcHJpdmF0ZV9zdWJuZXRfaWQ6CiAgICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IEVDT01QIG1hbmFnZW1lbnQgc3ViLW5ldHdvcmsgbmFtZSBvciBJRAotICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIHN1Yi1uZXR3b3JrIHRoYXQgY29ubmVjdHMgRUNPTVAgY29tcG9uZW50IGFuZCB0aGUgVk5GCisgICAgbGFiZWw6IE9OQVAgbWFuYWdlbWVudCBzdWItbmV0d29yayBuYW1lIG9yIElECisgICAgZGVzY3JpcHRpb246IFByaXZhdGUgc3ViLW5ldHdvcmsgdGhhdCBjb25uZWN0cyBPTkFQIGNvbXBvbmVudHMgYW5kIHRoZSBWTkYKICAgdW5wcm90ZWN0ZWRfcHJpdmF0ZV9uZXRfY2lkcjoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogVW5wcm90ZWN0ZWQgcHJpdmF0ZSBuZXR3b3JrIENJRFIKQEAgLTM5LDkgKzY5LDkgQEAKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogUHJvdGVjdGVkIHByaXZhdGUgbmV0d29yayBDSURSCiAgICAgZGVzY3JpcHRpb246IFRoZSBDSURSIG9mIHRoZSBwcm90ZWN0ZWQgcHJpdmF0ZSBuZXR3b3JrCi0gIGVjb21wX3ByaXZhdGVfbmV0X2NpZHI6CisgIG9uYXBfcHJpdmF0ZV9uZXRfY2lkcjoKICAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogRUNPTVAgcHJpdmF0ZSBuZXR3b3JrIENJRFIKKyAgICBsYWJlbDogT05BUCBwcml2YXRlIG5ldHdvcmsgQ0lEUgogICAgIGRlc2NyaXB0aW9uOiBUaGUgQ0lEUiBvZiB0aGUgcHJvdGVjdGVkIHByaXZhdGUgbmV0d29yawogICB2ZndfcHJpdmF0ZV9pcF8wOgogICAgIHR5cGU6IHN0cmluZwpAQCAtNTMsMjQgKzgzLDI0IEBACiAgICAgZGVzY3JpcHRpb246IFByaXZhdGUgSVAgYWRkcmVzcyB0aGF0IGlzIGFzc2lnbmVkIHRvIHRoZSB2RmlyZXdhbGwgdG8gY29tbXVuaWNhdGUgd2l0aCB0aGUgdlNpbmsKICAgdmZ3X3ByaXZhdGVfaXBfMjoKICAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogdkZpcmV3YWxsIHByaXZhdGUgSVAgYWRkcmVzcyB0b3dhcmRzIHRoZSBFQ09NUCBtYW5hZ2VtZW50IG5ldHdvcmsKLSAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBJUCBhZGRyZXNzIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZGaXJld2FsbCB0byBjb21tdW5pY2F0ZSB3aXRoIEVDT01QIGNvbXBvbmVudHMKKyAgICBsYWJlbDogdkZpcmV3YWxsIHByaXZhdGUgSVAgYWRkcmVzcyB0b3dhcmRzIHRoZSBPTkFQIG1hbmFnZW1lbnQgbmV0d29yaworICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdkZpcmV3YWxsIHRvIGNvbW11bmljYXRlIHdpdGggT05BUCBjb21wb25lbnRzCiAgIHZwZ19wcml2YXRlX2lwXzA6CiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IHZQYWNrZXRHZW5lcmF0b3IgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIHVucHJvdGVjdGVkIG5ldHdvcmsKICAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBJUCBhZGRyZXNzIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZQYWNrZXRHZW5lcmF0b3IgdG8gY29tbXVuaWNhdGUgd2l0aCB0aGUgdkZpcmV3YWxsCiAgIHZwZ19wcml2YXRlX2lwXzE6CiAgICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IHZQYWNrZXRHZW5lcmF0b3IgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIEVDT01QIG1hbmFnZW1lbnQgbmV0d29yawotICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdlBhY2tldEdlbmVyYXRvciB0byBjb21tdW5pY2F0ZSB3aXRoIEVDT01QIGNvbXBvbmVudHMKKyAgICBsYWJlbDogdlBhY2tldEdlbmVyYXRvciBwcml2YXRlIElQIGFkZHJlc3MgdG93YXJkcyB0aGUgT05BUCBtYW5hZ2VtZW50IG5ldHdvcmsKKyAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBJUCBhZGRyZXNzIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZQYWNrZXRHZW5lcmF0b3IgdG8gY29tbXVuaWNhdGUgd2l0aCBPTkFQIGNvbXBvbmVudHMKICAgdnNuX3ByaXZhdGVfaXBfMDoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogdlNpbmsgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIHByb3RlY3RlZCBuZXR3b3JrCiAgICAgZGVzY3JpcHRpb246IFByaXZhdGUgSVAgYWRkcmVzcyB0aGF0IGlzIGFzc2lnbmVkIHRvIHRoZSB2U2luayB0byBjb21tdW5pY2F0ZSB3aXRoIHRoZSB2RmlyZXdhbGwKICAgdnNuX3ByaXZhdGVfaXBfMToKICAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogdlNpbmsgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIEVDT01QIG1hbmFnZW1lbnQgbmV0d29yawotICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdlNpbmsgdG8gY29tbXVuaWNhdGUgd2l0aCBFQ09NUCBjb21wb25lbnRzCisgICAgbGFiZWw6IHZTaW5rIHByaXZhdGUgSVAgYWRkcmVzcyB0b3dhcmRzIHRoZSBPTkFQIG1hbmFnZW1lbnQgbmV0d29yaworICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdlNpbmsgdG8gY29tbXVuaWNhdGUgd2l0aCBPTkFQIGNvbXBvbmVudHMKICAgdmZ3X25hbWVfMDoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogdkZpcmV3YWxsIG5hbWUKQEAgLTg2LDExICsxMTYsMTEgQEAKICAgdm5mX2lkOgogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiBWTkYgSUQKLSAgICBkZXNjcmlwdGlvbjogVGhlIFZORiBJRCBpcyBwcm92aWRlZCBieSBFQ09NUAorICAgIGRlc2NyaXB0aW9uOiBUaGUgVk5GIElEIGlzIHByb3ZpZGVkIGJ5IE9OQVAKICAgdmZfbW9kdWxlX2lkOgogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiB2RmlyZXdhbGwgbW9kdWxlIElECi0gICAgZGVzY3JpcHRpb246IFRoZSB2RmlyZXdhbGwgTW9kdWxlIElEIGlzIHByb3ZpZGVkIGJ5IEVDT01QCisgICAgZGVzY3JpcHRpb246IFRoZSB2RmlyZXdhbGwgTW9kdWxlIElEIGlzIHByb3ZpZGVkIGJ5IE9OQVAKICAgZGNhZV9jb2xsZWN0b3JfaXA6CiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IERDQUUgY29sbGVjdG9yIElQIGFkZHJlc3MKQEAgLTExNSwxMyArMTQ1LDI2IEBACiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IFJlcG9zaXRvcnkgVVJMCiAgICAgZGVzY3JpcHRpb246IFVSTCBvZiB0aGUgcmVwb3NpdG9yeSB0aGF0IGhvc3RzIHRoZSBkZW1vIHBhY2thZ2VzCisgIGluc3RhbGxfc2NyaXB0X3ZlcnNpb246CisgICAgdHlwZTogc3RyaW5nCisgICAgbGFiZWw6IEluc3RhbGxhdGlvbiBzY3JpcHQgdmVyc2lvbiBudW1iZXIKKyAgICBkZXNjcmlwdGlvbjogVmVyc2lvbiBudW1iZXIgb2YgdGhlIHNjcmlwdHMgdGhhdCBpbnN0YWxsIHRoZSB2RlcgZGVtbyBhcHAKICAgZGVtb19hcnRpZmFjdHNfdmVyc2lvbjoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogQXJ0aWZhY3RzIHZlcnNpb24gdXNlZCBpbiBkZW1vIHZuZnMKICAgICBkZXNjcmlwdGlvbjogQXJ0aWZhY3RzIChqYXIsIHRhci5neikgdmVyc2lvbiB1c2VkIGluIGRlbW8gdm5mcworICBjbG91ZF9lbnY6CisgICAgdHlwZTogc3RyaW5nCisgICAgbGFiZWw6IENsb3VkIGVudmlyb25tZW50CisgICAgZGVzY3JpcHRpb246IENsb3VkIGVudmlyb25tZW50IChlLmcuLCBvcGVuc3RhY2ssIHJhY2tzcGFjZSkKKworIyMjIyMjIyMjIyMjIworIyAgICAgICAgICAgIworIyBSRVNPVVJDRVMgIworIyAgICAgICAgICAgIworIyMjIyMjIyMjIyMjIwogCiByZXNvdXJjZXM6Ci0gIAogICByYW5kb20tc3RyOgogICAgIHR5cGU6IE9TOjpIZWF0OjpSYW5kb21TdHJpbmcKICAgICBwcm9wZXJ0aWVzOgpAQCAtMTMwLDEyICsxNzMsMTIgQEAKICAgbXlfa2V5cGFpcjoKICAgICB0eXBlOiBPUzo6Tm92YTo6S2V5UGFpcgogICAgIHByb3BlcnRpZXM6Ci0gICAgICBuYW1lOiAKKyAgICAgIG5hbWU6CiAgICAgICAgIHN0cl9yZXBsYWNlOgogICAgICAgICAgIHRlbXBsYXRlOiBiYXNlX3JhbmQKICAgICAgICAgICBwYXJhbXM6CiAgICAgICAgICAgICBiYXNlOiB7IGdldF9wYXJhbToga2V5X25hbWUgfQotICAgICAgICAgICAgcmFuZDogeyBnZXRfcmVzb3VyY2U6IHJhbmRvbS1zdHIgfSAgCisgICAgICAgICAgICByYW5kOiB7IGdldF9yZXNvdXJjZTogcmFuZG9tLXN0ciB9CiAgICAgICBwdWJsaWNfa2V5OiB7IGdldF9wYXJhbTogcHViX2tleSB9CiAgICAgICBzYXZlX3ByaXZhdGVfa2V5OiBmYWxzZQogCkBAIC0xNjEsNiArMjA0LDI2IEBACiAgICAgICBuZXR3b3JrX2lkOiB7IGdldF9yZXNvdXJjZTogcHJvdGVjdGVkX3ByaXZhdGVfbmV0d29yayB9CiAgICAgICBjaWRyOiB7IGdldF9wYXJhbTogcHJvdGVjdGVkX3ByaXZhdGVfbmV0X2NpZHIgfQogCisgICMgVmlydHVhbCBGaXJld2FsbCBpbnN0YW50aWF0aW9uCisgIHZmd19wcml2YXRlXzBfcG9ydDoKKyAgICB0eXBlOiBPUzo6TmV1dHJvbjo6UG9ydAorICAgIHByb3BlcnRpZXM6CisgICAgICBuZXR3b3JrOiB7IGdldF9yZXNvdXJjZTogdW5wcm90ZWN0ZWRfcHJpdmF0ZV9uZXR3b3JrIH0KKyAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcmVzb3VyY2U6IHVucHJvdGVjdGVkX3ByaXZhdGVfc3VibmV0IH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZmd19wcml2YXRlX2lwXzAgfX1dCisKKyAgdmZ3X3ByaXZhdGVfMV9wb3J0OgorICAgIHR5cGU6IE9TOjpOZXV0cm9uOjpQb3J0CisgICAgcHJvcGVydGllczoKKyAgICAgIGFsbG93ZWRfYWRkcmVzc19wYWlyczogW3sgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdnBnX3ByaXZhdGVfaXBfMCB9fV0KKyAgICAgIG5ldHdvcms6IHsgZ2V0X3Jlc291cmNlOiBwcm90ZWN0ZWRfcHJpdmF0ZV9uZXR3b3JrIH0KKyAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcmVzb3VyY2U6IHByb3RlY3RlZF9wcml2YXRlX3N1Ym5ldCB9LCAiaXBfYWRkcmVzcyI6IHsgZ2V0X3BhcmFtOiB2ZndfcHJpdmF0ZV9pcF8xIH19XQorCisgIHZmd19wcml2YXRlXzJfcG9ydDoKKyAgICB0eXBlOiBPUzo6TmV1dHJvbjo6UG9ydAorICAgIHByb3BlcnRpZXM6CisgICAgICBuZXR3b3JrOiB7IGdldF9wYXJhbTogb25hcF9wcml2YXRlX25ldF9pZCB9CisgICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3BhcmFtOiBvbmFwX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZmd19wcml2YXRlX2lwXzIgfX1dCisKICAgdmZ3XzA6CiAgICAgdHlwZTogT1M6Ok5vdmE6OlNlcnZlcgogICAgIHByb3BlcnRpZXM6CkBAIC0xODMsODcgKzI0Niw1MiBAQAogICAgICAgICAgICAgX19yZXBvX3VybF9ibG9iX18gOiB7IGdldF9wYXJhbTogcmVwb191cmxfYmxvYiB9CiAgICAgICAgICAgICBfX3JlcG9fdXJsX2FydGlmYWN0c19fIDogeyBnZXRfcGFyYW06IHJlcG9fdXJsX2FydGlmYWN0cyB9CiAgICAgICAgICAgICBfX2RlbW9fYXJ0aWZhY3RzX3ZlcnNpb25fXyA6IHsgZ2V0X3BhcmFtOiBkZW1vX2FydGlmYWN0c192ZXJzaW9uIH0KKyAgICAgICAgICAgIF9faW5zdGFsbF9zY3JpcHRfdmVyc2lvbl9fIDogeyBnZXRfcGFyYW06IGluc3RhbGxfc2NyaXB0X3ZlcnNpb24gfQorICAgICAgICAgICAgX192ZndfcHJpdmF0ZV9pcF8wX18gOiB7IGdldF9wYXJhbTogdmZ3X3ByaXZhdGVfaXBfMCB9CisgICAgICAgICAgICBfX3Zmd19wcml2YXRlX2lwXzFfXyA6IHsgZ2V0X3BhcmFtOiB2ZndfcHJpdmF0ZV9pcF8xIH0KKyAgICAgICAgICAgIF9fdmZ3X3ByaXZhdGVfaXBfMl9fIDogeyBnZXRfcGFyYW06IHZmd19wcml2YXRlX2lwXzIgfQorICAgICAgICAgICAgX191bnByb3RlY3RlZF9wcml2YXRlX25ldF9jaWRyX18gOiB7IGdldF9wYXJhbTogdW5wcm90ZWN0ZWRfcHJpdmF0ZV9uZXRfY2lkciB9CisgICAgICAgICAgICBfX3Byb3RlY3RlZF9wcml2YXRlX25ldF9jaWRyX18gOiB7IGdldF9wYXJhbTogcHJvdGVjdGVkX3ByaXZhdGVfbmV0X2NpZHIgfQorICAgICAgICAgICAgX19vbmFwX3ByaXZhdGVfbmV0X2NpZHJfXyA6IHsgZ2V0X3BhcmFtOiBvbmFwX3ByaXZhdGVfbmV0X2NpZHIgfQorICAgICAgICAgICAgX19jbG91ZF9lbnZfXyA6IHsgZ2V0X3BhcmFtOiBjbG91ZF9lbnYgfQogICAgICAgICAgIHRlbXBsYXRlOiB8CiAgICAgICAgICAgICAjIS9iaW4vYmFzaAogCi0gICAgICAgICAgICBEQ0FFX0NPTExFQ1RPUl9JUD1fX2RjYWVfY29sbGVjdG9yX2lwX18KLSAgICAgICAgICAgIERDQUVfQ09MTEVDVE9SX1BPUlQ9X19kY2FlX2NvbGxlY3Rvcl9wb3J0X18KLSAgICAgICAgICAgIFJFUE9fVVJMX0JMT0I9X19yZXBvX3VybF9ibG9iX18KLSAgICAgICAgICAgIFJFUE9fVVJMX0FSVElGQUNUUz1fX3JlcG9fdXJsX2FydGlmYWN0c19fCi0gICAgICAgICAgICBERU1PX0FSVElGQUNUU19WRVJTSU9OPV9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fCi0KLSAgICAgICAgICAgICMgRG93bmxvYWQgcmVxdWlyZWQgZGVwZW5kZW5jaWVzCi0gICAgICAgICAgICBhZGQtYXB0LXJlcG9zaXRvcnkgLXkgcHBhOm9wZW5qZGstci9wcGEKLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgbWFrZSB3Z2V0IG9wZW5qZGstOC1qZGsgZ2NjIGxpYmN1cmw0LW9wZW5zc2wtZGV2IHB5dGhvbi1waXAgYnJpZGdlLXV0aWxzIGFwdC10cmFuc3BvcnQtaHR0cHMgY2EtY2VydGlmaWNhdGVzCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgbWF2ZW4KLSAgICAgICAgICAgIHBpcCBpbnN0YWxsIGpzb25zY2hlbWEKLQotICAgICAgICAgICAgIyBEb3dubG9hZCB2RmlyZXdhbGwgY29kZSBmb3IgdmlydHVhbCBmaXJld2FsbAorICAgICAgICAgICAgIyBDcmVhdGUgY29uZmlndXJhdGlvbiBmaWxlcwogICAgICAgICAgICAgbWtkaXIgL29wdC9jb25maWcKLSAgICAgICAgICAgIG1rZGlyIC9vcHQvaG9uZXljb21iCisgICAgICAgICAgICBlY2hvICJfX2RjYWVfY29sbGVjdG9yX2lwX18iID4gL29wdC9jb25maWcvZGNhZV9jb2xsZWN0b3JfaXAudHh0CisgICAgICAgICAgICBlY2hvICJfX2RjYWVfY29sbGVjdG9yX3BvcnRfXyIgPiAvb3B0L2NvbmZpZy9kY2FlX2NvbGxlY3Rvcl9wb3J0LnR4dAorICAgICAgICAgICAgZWNobyAiX19yZXBvX3VybF9ibG9iX18iID4gL29wdC9jb25maWcvcmVwb191cmxfYmxvYi50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fcmVwb191cmxfYXJ0aWZhY3RzX18iID4gL29wdC9jb25maWcvcmVwb191cmxfYXJ0aWZhY3RzLnR4dAorICAgICAgICAgICAgZWNobyAiX19kZW1vX2FydGlmYWN0c192ZXJzaW9uX18iID4gL29wdC9jb25maWcvZGVtb19hcnRpZmFjdHNfdmVyc2lvbi50eHQKKyAgICAgICAgICAgIGVjaG8gIl9faW5zdGFsbF9zY3JpcHRfdmVyc2lvbl9fIiA+IC9vcHQvY29uZmlnL2luc3RhbGxfc2NyaXB0X3ZlcnNpb24udHh0CisgICAgICAgICAgICBlY2hvICJfX3Zmd19wcml2YXRlX2lwXzBfXyIgPiAvb3B0L2NvbmZpZy92ZndfcHJpdmF0ZV9pcF8wLnR4dAorICAgICAgICAgICAgZWNobyAiX192ZndfcHJpdmF0ZV9pcF8xX18iID4gL29wdC9jb25maWcvdmZ3X3ByaXZhdGVfaXBfMS50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fdmZ3X3ByaXZhdGVfaXBfMl9fIiA+IC9vcHQvY29uZmlnL3Zmd19wcml2YXRlX2lwXzIudHh0CisgICAgICAgICAgICBlY2hvICJfX3VucHJvdGVjdGVkX3ByaXZhdGVfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy91bnByb3RlY3RlZF9wcml2YXRlX25ldF9jaWRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19wcm90ZWN0ZWRfcHJpdmF0ZV9uZXRfY2lkcl9fIiA+IC9vcHQvY29uZmlnL3Byb3RlY3RlZF9wcml2YXRlX25ldF9jaWRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19vbmFwX3ByaXZhdGVfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy9vbmFwX3ByaXZhdGVfbmV0X2NpZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX2Nsb3VkX2Vudl9fIiA+IC9vcHQvY29uZmlnL2Nsb3VkX2Vudi50eHQKKworICAgICAgICAgICAgIyBEb3dubG9hZCBhbmQgcnVuIGluc3RhbGwgc2NyaXB0CisgICAgICAgICAgICBjdXJsIC1rIF9fcmVwb191cmxfYmxvYl9fL29yZy5vbmFwLmRlbW8vdm5mcy92ZncvX19pbnN0YWxsX3NjcmlwdF92ZXJzaW9uX18vdl9maXJld2FsbF9pbnN0YWxsLnNoIC1vIC9vcHQvdl9maXJld2FsbF9pbnN0YWxsLnNoCiAgICAgICAgICAgICBjZCAvb3B0Ci0gICAgICAgICAgICB3Z2V0ICRSRVBPX1VSTF9CTE9CL29yZy5vcGVuZWNvbXAuZGVtby92bmZzL3Zmdy8kREVNT19BUlRJRkFDVFNfVkVSU0lPTi92X2ZpcmV3YWxsX2luaXQuc2gKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmZ3LyRERU1PX0FSVElGQUNUU19WRVJTSU9OL3ZmaXJld2FsbC5zaAorICAgICAgICAgICAgY2htb2QgK3ggdl9maXJld2FsbF9pbnN0YWxsLnNoCisgICAgICAgICAgICAuL3ZfZmlyZXdhbGxfaW5zdGFsbC5zaAogCi0gICAgICAgICAgICBtdm4gb3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zOm1hdmVuLWRlcGVuZGVuY3ktcGx1Z2luOjIuMTA6Z2V0IC1EcmVtb3RlUmVwb3NpdG9yaWVzPSRSRVBPX1VSTF9BUlRJRkFDVFMgLURhcnRpZmFjdD1vcmcub3BlbmVjb21wLmRlbW8udm5mOnNhbXBsZS1kaXN0cmlidXRpb246JERFTU9fQVJUSUZBQ1RTX1ZFUlNJT046dGFyLmd6OmhjIC1EdHJhbnNpdGl2ZT1mYWxzZSAtRGRlc3Q9LgotICAgICAgICAgICAgbXZuIG9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczptYXZlbi1kZXBlbmRlbmN5LXBsdWdpbjoyLjEwOmdldCAtRHJlbW90ZVJlcG9zaXRvcmllcz0kUkVQT19VUkxfQVJUSUZBQ1RTIC1EYXJ0aWZhY3Q9b3JnLm9wZW5lY29tcC5kZW1vLnZuZi52ZXM6dmVzOiRERU1PX0FSVElGQUNUU19WRVJTSU9OOnRhci5nejpkZW1vIC1EdHJhbnNpdGl2ZT1mYWxzZSAtRGRlc3Q9LgotICAgICAgICAgICAgbXZuIG9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczptYXZlbi1kZXBlbmRlbmN5LXBsdWdpbjoyLjEwOmdldCAtRHJlbW90ZVJlcG9zaXRvcmllcz0kUkVQT19VUkxfQVJUSUZBQ1RTIC1EYXJ0aWZhY3Q9b3JnLm9wZW5lY29tcC5kZW1vLnZuZi52ZXM6dmVzX3Zmd19yZXBvcnRpbmc6JERFTU9fQVJUSUZBQ1RTX1ZFUlNJT046dGFyLmd6OmRlbW8gLUR0cmFuc2l0aXZlPWZhbHNlIC1EZGVzdD0uCiAKLSAgICAgICAgICAgIAotICAgICAgICAgICAgdGFyIC16eHZmIHZlcy0kREVNT19BUlRJRkFDVFNfVkVSU0lPTi1kZW1vLnRhci5negotICAgICAgICAgICAgbXYgdmVzLSRERU1PX0FSVElGQUNUU19WRVJTSU9OIFZFUwotICAgICAgICAgICAgdGFyIC16eHZmIHZlc192ZndfcmVwb3J0aW5nLSRERU1PX0FSVElGQUNUU19WRVJTSU9OLWRlbW8udGFyLmd6Ci0gICAgICAgICAgICBtdiB2ZXNfdmZ3X3JlcG9ydGluZy0kREVNT19BUlRJRkFDVFNfVkVSU0lPTiBWRVNyZXBvcnRpbmdfdkZXCi0gICAgICAgICAgICB0YXIgLXp4dmYgc2FtcGxlLWRpc3RyaWJ1dGlvbi0kREVNT19BUlRJRkFDVFNfVkVSU0lPTi1oYy50YXIuZ3oKLSAgICAgICAgICAgIG12IHNhbXBsZS1kaXN0cmlidXRpb24tJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04gaG9uZXljb21iCi0gICAgICAgICAgICBzZWQgLWkgJ3MvInJlc3Rjb25mLWJpbmRpbmctYWRkcmVzcyI6ICIxMjcuMC4wLjEiLC8icmVzdGNvbmYtYmluZGluZy1hZGRyZXNzIjogIjAuMC4wLjAiLC9nJyBob25leWNvbWIvc2FtcGxlLWRpc3RyaWJ1dGlvbi0kREVNT19BUlRJRkFDVFNfVkVSU0lPTi9jb25maWcvaG9uZXljb21iLmpzb24KLSAgICAgICAgICAgIG12IFZFU3JlcG9ydGluZ192RlcgL29wdC9WRVMvY29kZS9ldmVsX3RyYWluaW5nL1ZFU3JlcG9ydGluZwotICAgICAgICAgICAgcm0gKi50YXIuZ3oKLSAgICAgICAgICAgIGNobW9kICt4IHZfZmlyZXdhbGxfaW5pdC5zaAotICAgICAgICAgICAgY2htb2QgK3ggdmZpcmV3YWxsLnNoCi0gICAgICAgICAgICBlY2hvICREQ0FFX0NPTExFQ1RPUl9JUCA+IGNvbmZpZy9kY2FlX2NvbGxlY3Rvcl9pcC50eHQKLSAgICAgICAgICAgIGVjaG8gJERDQUVfQ09MTEVDVE9SX1BPUlQgPiBjb25maWcvZGNhZV9jb2xsZWN0b3JfcG9ydC50eHQKLSAgICAgICAgICAgIGVjaG8gJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04gPiBjb25maWcvYXJ0aWZhY3RzX3ZlcnNpb24udHh0Ci0KLSAgICAgICAgICAgICMgSW5zdGFsbCBWUFAKLSAgICAgICAgICAgIGV4cG9ydCBVQlVOVFU9InRydXN0eSIKLSAgICAgICAgICAgIGV4cG9ydCBSRUxFQVNFPSIuc3RhYmxlLjE2MDkiCi0gICAgICAgICAgICBybSAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC85OWZkLmlvLmxpc3QKLSAgICAgICAgICAgIGVjaG8gImRlYiBbdHJ1c3RlZD15ZXNdIGh0dHBzOi8vbmV4dXMuZmQuaW8vY29udGVudC9yZXBvc2l0b3JpZXMvZmQuaW8kUkVMRUFTRS51YnVudHUuJFVCVU5UVS5tYWluLyAuLyIgfCBzdWRvIHRlZSAtYSAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC85OWZkLmlvLmxpc3QKLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgdnBwIHZwcC1kcGRrLWRrbXMgdnBwLWxpYiB2cHAtZGJnIHZwcC1wbHVnaW5zIHZwcC1kZXYKLSAgICAgICAgICAgIHNsZWVwIDEKLQotICAgICAgICAgICAgIyBJbnN0YWxsIFZFUwotICAgICAgICAgICAgY2QgL29wdC9WRVMvYmxkam9icy8KLSAgICAgICAgICAgIG1ha2UgY2xlYW4KLSAgICAgICAgICAgIG1ha2UKLSAgICAgICAgICAgIHNsZWVwIDEKLQotICAgICAgICAgICAgIyBSdW4gaW5zdGFudGlhdGlvbiBzY3JpcHQKLSAgICAgICAgICAgIGNkIC9vcHQKLSAgICAgICAgICAgIG12IHZmaXJld2FsbC5zaCAvZXRjL2luaXQuZAotICAgICAgICAgICAgdXBkYXRlLXJjLmQgdmZpcmV3YWxsLnNoIGRlZmF1bHRzCi0gICAgICAgICAgICAuL3ZfZmlyZXdhbGxfaW5pdC5zaAotCi0gIHZmd19wcml2YXRlXzBfcG9ydDoKKyAgIyBWaXJ0dWFsIFBhY2tldCBHZW5lcmF0b3IgaW5zdGFudGlhdGlvbgorICB2cGdfcHJpdmF0ZV8wX3BvcnQ6CiAgICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKICAgICBwcm9wZXJ0aWVzOgogICAgICAgbmV0d29yazogeyBnZXRfcmVzb3VyY2U6IHVucHJvdGVjdGVkX3ByaXZhdGVfbmV0d29yayB9Ci0gICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3Jlc291cmNlOiB1bnByb3RlY3RlZF9wcml2YXRlX3N1Ym5ldCB9LCAiaXBfYWRkcmVzcyI6IHsgZ2V0X3BhcmFtOiB2ZndfcHJpdmF0ZV9pcF8wIH19XQorICAgICAgZml4ZWRfaXBzOiBbeyJzdWJuZXQiOiB7IGdldF9yZXNvdXJjZTogdW5wcm90ZWN0ZWRfcHJpdmF0ZV9zdWJuZXQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdnBnX3ByaXZhdGVfaXBfMCB9fV0KIAotICB2ZndfcHJpdmF0ZV8xX3BvcnQ6CisgIHZwZ19wcml2YXRlXzFfcG9ydDoKICAgICB0eXBlOiBPUzo6TmV1dHJvbjo6UG9ydAogICAgIHByb3BlcnRpZXM6Ci0gICAgICBuZXR3b3JrOiB7IGdldF9yZXNvdXJjZTogcHJvdGVjdGVkX3ByaXZhdGVfbmV0d29yayB9Ci0gICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3Jlc291cmNlOiBwcm90ZWN0ZWRfcHJpdmF0ZV9zdWJuZXQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdmZ3X3ByaXZhdGVfaXBfMSB9fV0KLQotICB2ZndfcHJpdmF0ZV8yX3BvcnQ6Ci0gICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgbmV0d29yazogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfbmV0X2lkIH0KLSAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZmd19wcml2YXRlX2lwXzIgfX1dCisgICAgICBuZXR3b3JrOiB7IGdldF9wYXJhbTogb25hcF9wcml2YXRlX25ldF9pZCB9CisgICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3BhcmFtOiBvbmFwX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZwZ19wcml2YXRlX2lwXzEgfX1dCiAKICAgdnBnXzA6CiAgICAgdHlwZTogT1M6Ok5vdmE6OlNlcnZlcgpAQCAtMjg3LDc1ICszMTUsNDkgQEAKICAgICAgICAgICAgIF9fcmVwb191cmxfYmxvYl9fIDogeyBnZXRfcGFyYW06IHJlcG9fdXJsX2Jsb2IgfQogICAgICAgICAgICAgX19yZXBvX3VybF9hcnRpZmFjdHNfXyA6IHsgZ2V0X3BhcmFtOiByZXBvX3VybF9hcnRpZmFjdHMgfQogICAgICAgICAgICAgX19kZW1vX2FydGlmYWN0c192ZXJzaW9uX18gOiB7IGdldF9wYXJhbTogZGVtb19hcnRpZmFjdHNfdmVyc2lvbiB9CisgICAgICAgICAgICBfX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXyA6IHsgZ2V0X3BhcmFtOiBpbnN0YWxsX3NjcmlwdF92ZXJzaW9uIH0KKyAgICAgICAgICAgIF9fdnBnX3ByaXZhdGVfaXBfMF9fIDogeyBnZXRfcGFyYW06IHZwZ19wcml2YXRlX2lwXzAgfQorICAgICAgICAgICAgX192cGdfcHJpdmF0ZV9pcF8xX18gOiB7IGdldF9wYXJhbTogdnBnX3ByaXZhdGVfaXBfMSB9CisgICAgICAgICAgICBfX3VucHJvdGVjdGVkX3ByaXZhdGVfbmV0X2NpZHJfXyA6IHsgZ2V0X3BhcmFtOiB1bnByb3RlY3RlZF9wcml2YXRlX25ldF9jaWRyIH0KKyAgICAgICAgICAgIF9fb25hcF9wcml2YXRlX25ldF9jaWRyX18gOiB7IGdldF9wYXJhbTogb25hcF9wcml2YXRlX25ldF9jaWRyIH0KKyAgICAgICAgICAgIF9fY2xvdWRfZW52X18gOiB7IGdldF9wYXJhbTogY2xvdWRfZW52IH0KICAgICAgICAgICB0ZW1wbGF0ZTogfAogICAgICAgICAgICAgIyEvYmluL2Jhc2gKIAotICAgICAgICAgICAgRldfSVBBRERSPV9fZndfaXBhZGRyX18KLSAgICAgICAgICAgIFBST1RFQ1RFRF9ORVRfQ0lEUj1fX3Byb3RlY3RlZF9uZXRfY2lkcl9fCi0gICAgICAgICAgICBTSU5LX0lQQUREUj1fX3NpbmtfaXBhZGRyX18KLSAgICAgICAgICAgIFJFUE9fVVJMX0JMT0I9X19yZXBvX3VybF9ibG9iX18KLSAgICAgICAgICAgIFJFUE9fVVJMX0FSVElGQUNUUz1fX3JlcG9fdXJsX2FydGlmYWN0c19fCi0gICAgICAgICAgICBERU1PX0FSVElGQUNUU19WRVJTSU9OPV9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fCi0KLSAgICAgICAgICAgICMgRG93bmxvYWQgcmVxdWlyZWQgZGVwZW5kZW5jaWVzCi0gICAgICAgICAgICBhZGQtYXB0LXJlcG9zaXRvcnkgLXkgcHBhOm9wZW5qZGstci9wcGEKLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgbWFrZSB3Z2V0IG9wZW5qZGstOC1qZGsgZ2NjIGxpYmN1cmw0LW9wZW5zc2wtZGV2IHB5dGhvbi1waXAgYnJpZGdlLXV0aWxzIGFwdC10cmFuc3BvcnQtaHR0cHMgY2EtY2VydGlmaWNhdGVzCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgbWF2ZW4KLSAgICAgICAgICAgIHBpcCBpbnN0YWxsIGpzb25zY2hlbWEKLQotICAgICAgICAgICAgIyBEb3dubG9hZCB2RmlyZXdhbGwgZGVtbyBjb2RlIGZvciBwYWNrZXQgZ2VuZXJhdG9yCisgICAgICAgICAgICAjIENyZWF0ZSBjb25maWd1cmF0aW9uIGZpbGVzCiAgICAgICAgICAgICBta2RpciAvb3B0L2NvbmZpZwotICAgICAgICAgICAgbWtkaXIgL29wdC9ob25leWNvbWIKKyAgICAgICAgICAgIGVjaG8gIl9fZndfaXBhZGRyX18iID4gL29wdC9jb25maWcvZndfaXBhZGRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19wcm90ZWN0ZWRfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy9wcm90ZWN0ZWRfbmV0X2NpZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX3NpbmtfaXBhZGRyX18iID4gL29wdC9jb25maWcvc2lua19pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX3JlcG9fdXJsX2Jsb2JfXyIgPiAvb3B0L2NvbmZpZy9yZXBvX3VybF9ibG9iLnR4dAorICAgICAgICAgICAgZWNobyAiX19yZXBvX3VybF9hcnRpZmFjdHNfXyIgPiAvb3B0L2NvbmZpZy9yZXBvX3VybF9hcnRpZmFjdHMudHh0CisgICAgICAgICAgICBlY2hvICJfX2RlbW9fYXJ0aWZhY3RzX3ZlcnNpb25fXyIgPiAvb3B0L2NvbmZpZy9kZW1vX2FydGlmYWN0c192ZXJzaW9uLnR4dAorICAgICAgICAgICAgZWNobyAiX19pbnN0YWxsX3NjcmlwdF92ZXJzaW9uX18iID4gL29wdC9jb25maWcvaW5zdGFsbF9zY3JpcHRfdmVyc2lvbi50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fdnBnX3ByaXZhdGVfaXBfMF9fIiA+IC9vcHQvY29uZmlnL3ZwZ19wcml2YXRlX2lwXzAudHh0CisgICAgICAgICAgICBlY2hvICJfX3ZwZ19wcml2YXRlX2lwXzFfXyIgPiAvb3B0L2NvbmZpZy92cGdfcHJpdmF0ZV9pcF8xLnR4dAorICAgICAgICAgICAgZWNobyAiX191bnByb3RlY3RlZF9wcml2YXRlX25ldF9jaWRyX18iID4gL29wdC9jb25maWcvdW5wcm90ZWN0ZWRfcHJpdmF0ZV9uZXRfY2lkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fb25hcF9wcml2YXRlX25ldF9jaWRyX18iID4gL29wdC9jb25maWcvb25hcF9wcml2YXRlX25ldF9jaWRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19jbG91ZF9lbnZfXyIgPiAvb3B0L2NvbmZpZy9jbG91ZF9lbnYudHh0CisKKyAgICAgICAgICAgICMgRG93bmxvYWQgYW5kIHJ1biBpbnN0YWxsIHNjcmlwdAorICAgICAgICAgICAgY3VybCAtayBfX3JlcG9fdXJsX2Jsb2JfXy9vcmcub25hcC5kZW1vL3ZuZnMvdmZ3L19faW5zdGFsbF9zY3JpcHRfdmVyc2lvbl9fL3ZfcGFja2V0Z2VuX2luc3RhbGwuc2ggLW8gL29wdC92X3BhY2tldGdlbl9pbnN0YWxsLnNoCiAgICAgICAgICAgICBjZCAvb3B0Ci0KLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmZ3LyRERU1PX0FSVElGQUNUU19WRVJTSU9OL3ZfcGFja2V0Z2VuX2luaXQuc2gKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmZ3LyRERU1PX0FSVElGQUNUU19WRVJTSU9OL3ZwYWNrZXRnZW4uc2gKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmZ3LyRERU1PX0FSVElGQUNUU19WRVJTSU9OL3J1bl90cmFmZmljX2Z3X2RlbW8uc2gKLQotICAgICAgICAgICAgbXZuIG9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczptYXZlbi1kZXBlbmRlbmN5LXBsdWdpbjoyLjEwOmdldCAtRHJlbW90ZVJlcG9zaXRvcmllcz0kUkVQT19VUkxfQVJUSUZBQ1RTIC1EYXJ0aWZhY3Q9b3JnLm9wZW5lY29tcC5kZW1vLnZuZjpzYW1wbGUtZGlzdHJpYnV0aW9uOiRERU1PX0FSVElGQUNUU19WRVJTSU9OOnRhci5nejpoYyAtRHRyYW5zaXRpdmU9ZmFsc2UgLURkZXN0PS4KLSAgICAgICAgICAgIG12biBvcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM6bWF2ZW4tZGVwZW5kZW5jeS1wbHVnaW46Mi4xMDpnZXQgLURyZW1vdGVSZXBvc2l0b3JpZXM9JFJFUE9fVVJMX0FSVElGQUNUUyAtRGFydGlmYWN0PW9yZy5vcGVuZWNvbXAuZGVtby52bmYudmZ3OnZmd19wZ19zdHJlYW1zOiRERU1PX0FSVElGQUNUU19WRVJTSU9OOnRhci5nejpkZW1vIC1EdHJhbnNpdGl2ZT1mYWxzZSAtRGRlc3Q9LgorICAgICAgICAgICAgY2htb2QgK3ggdl9wYWNrZXRnZW5faW5zdGFsbC5zaAorICAgICAgICAgICAgLi92X3BhY2tldGdlbl9pbnN0YWxsLnNoCiAKIAotICAgICAgICAgICAgdGFyIC16eHZmIHNhbXBsZS1kaXN0cmlidXRpb24tJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04taGMudGFyLmd6Ci0gICAgICAgICAgICB0YXIgLXp4dmYgdmZ3X3BnX3N0cmVhbXMtJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04tZGVtby50YXIuZ3ogCi0gICAgICAgICAgICBtdiB2ZndfcGdfc3RyZWFtcy0kREVNT19BUlRJRkFDVFNfVkVSU0lPTiBwZ19zdHJlYW1zCi0gICAgICAgICAgICBtdiBzYW1wbGUtZGlzdHJpYnV0aW9uLSRERU1PX0FSVElGQUNUU19WRVJTSU9OIGhvbmV5Y29tYgotICAgICAgICAgICAgc2VkIC1pICdzLyJyZXN0Y29uZi1iaW5kaW5nLWFkZHJlc3MiOiAiMTI3LjAuMC4xIiwvInJlc3Rjb25mLWJpbmRpbmctYWRkcmVzcyI6ICIwLjAuMC4wIiwvZycgaG9uZXljb21iL3NhbXBsZS1kaXN0cmlidXRpb24tJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vY29uZmlnL2hvbmV5Y29tYi5qc29uCi0gICAgICAgICAgICBybSAqLnRhci5negotICAgICAgICAgICAgY2htb2QgK3ggdl9wYWNrZXRnZW5faW5pdC5zaAotICAgICAgICAgICAgY2htb2QgK3ggdnBhY2tldGdlbi5zaAotICAgICAgICAgICAgZWNobyAkRldfSVBBRERSID4gY29uZmlnL2Z3X2lwYWRkci50eHQKLSAgICAgICAgICAgIGVjaG8gJFBST1RFQ1RFRF9ORVRfQ0lEUiA+IGNvbmZpZy9wcm90ZWN0ZWRfbmV0X2NpZHIudHh0Ci0gICAgICAgICAgICBlY2hvICRTSU5LX0lQQUREUiA+IGNvbmZpZy9zaW5rX2lwYWRkci50eHQKLSAgICAgICAgICAgIGVjaG8gJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04gPiBjb25maWcvYXJ0aWZhY3RzX3ZlcnNpb24udHh0Ci0KLSAgICAgICAgICAgICMgSW5zdGFsbCBWUFAKLSAgICAgICAgICAgIGV4cG9ydCBVQlVOVFU9InRydXN0eSIKLSAgICAgICAgICAgIGV4cG9ydCBSRUxFQVNFPSIuc3RhYmxlLjE2MDkiCi0gICAgICAgICAgICBybSAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC85OWZkLmlvLmxpc3QKLSAgICAgICAgICAgIGVjaG8gImRlYiBbdHJ1c3RlZD15ZXNdIGh0dHBzOi8vbmV4dXMuZmQuaW8vY29udGVudC9yZXBvc2l0b3JpZXMvZmQuaW8kUkVMRUFTRS51YnVudHUuJFVCVU5UVS5tYWluLyAuLyIgfCBzdWRvIHRlZSAtYSAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC85OWZkLmlvLmxpc3QKLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgdnBwIHZwcC1kcGRrLWRrbXMgdnBwLWxpYiB2cHAtZGJnIHZwcC1wbHVnaW5zIHZwcC1kZXYKLSAgICAgICAgICAgIHNsZWVwIDEKLQotICAgICAgICAgICAgIyBSdW4gaW5zdGFudGlhdGlvbiBzY3JpcHQKLSAgICAgICAgICAgIGNkIC9vcHQKLSAgICAgICAgICAgIG12IHZwYWNrZXRnZW4uc2ggL2V0Yy9pbml0LmQKLSAgICAgICAgICAgIHVwZGF0ZS1yYy5kIHZwYWNrZXRnZW4uc2ggZGVmYXVsdHMKLSAgICAgICAgICAgIC4vdl9wYWNrZXRnZW5faW5pdC5zaAotCi0gIHZwZ19wcml2YXRlXzBfcG9ydDoKKyAgIyBWaXJ0dWFsIFNpbmsgaW5zdGFudGlhdGlvbgorICB2c25fcHJpdmF0ZV8wX3BvcnQ6CiAgICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKICAgICBwcm9wZXJ0aWVzOgotICAgICAgbmV0d29yazogeyBnZXRfcmVzb3VyY2U6IHVucHJvdGVjdGVkX3ByaXZhdGVfbmV0d29yayB9Ci0gICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3Jlc291cmNlOiB1bnByb3RlY3RlZF9wcml2YXRlX3N1Ym5ldCB9LCAiaXBfYWRkcmVzcyI6IHsgZ2V0X3BhcmFtOiB2cGdfcHJpdmF0ZV9pcF8wIH19XQorICAgICAgbmV0d29yazogeyBnZXRfcmVzb3VyY2U6IHByb3RlY3RlZF9wcml2YXRlX25ldHdvcmsgfQorICAgICAgZml4ZWRfaXBzOiBbeyJzdWJuZXQiOiB7IGdldF9yZXNvdXJjZTogcHJvdGVjdGVkX3ByaXZhdGVfc3VibmV0IH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZzbl9wcml2YXRlX2lwXzAgfX1dCiAKLSAgdnBnX3ByaXZhdGVfMV9wb3J0OgorICB2c25fcHJpdmF0ZV8xX3BvcnQ6CiAgICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKICAgICBwcm9wZXJ0aWVzOgotICAgICAgbmV0d29yazogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfbmV0X2lkIH0KLSAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZwZ19wcml2YXRlX2lwXzEgfX1dCisgICAgICBuZXR3b3JrOiB7IGdldF9wYXJhbTogb25hcF9wcml2YXRlX25ldF9pZCB9CisgICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3BhcmFtOiBvbmFwX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZzbl9wcml2YXRlX2lwXzEgfX1dCiAKICAgdnNuXzA6CiAgICAgdHlwZTogT1M6Ok5vdmE6OlNlcnZlcgpAQCAtMzc3LDQ3ICszNzksMjkgQEAKICAgICAgICAgICAgIF9fdW5wcm90ZWN0ZWRfbmV0X186IHsgZ2V0X3BhcmFtOiB1bnByb3RlY3RlZF9wcml2YXRlX25ldF9jaWRyIH0KICAgICAgICAgICAgIF9fcmVwb191cmxfYmxvYl9fIDogeyBnZXRfcGFyYW06IHJlcG9fdXJsX2Jsb2IgfQogICAgICAgICAgICAgX19yZXBvX3VybF9hcnRpZmFjdHNfXyA6IHsgZ2V0X3BhcmFtOiByZXBvX3VybF9hcnRpZmFjdHMgfQotICAgICAgICAgICAgX19kZW1vX2FydGlmYWN0c192ZXJzaW9uX18gOiB7IGdldF9wYXJhbTogZGVtb19hcnRpZmFjdHNfdmVyc2lvbiB9CisgICAgICAgICAgICBfX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXyA6IHsgZ2V0X3BhcmFtOiBpbnN0YWxsX3NjcmlwdF92ZXJzaW9uIH0KKyAgICAgICAgICAgIF9fdnNuX3ByaXZhdGVfaXBfMF9fIDogeyBnZXRfcGFyYW06IHZzbl9wcml2YXRlX2lwXzAgfQorICAgICAgICAgICAgX192c25fcHJpdmF0ZV9pcF8xX18gOiB7IGdldF9wYXJhbTogdnNuX3ByaXZhdGVfaXBfMSB9CisgICAgICAgICAgICBfX3Byb3RlY3RlZF9wcml2YXRlX25ldF9jaWRyX18gOiB7IGdldF9wYXJhbTogcHJvdGVjdGVkX3ByaXZhdGVfbmV0X2NpZHIgfQorICAgICAgICAgICAgX19vbmFwX3ByaXZhdGVfbmV0X2NpZHJfXyA6IHsgZ2V0X3BhcmFtOiBvbmFwX3ByaXZhdGVfbmV0X2NpZHIgfQorICAgICAgICAgICAgX19jbG91ZF9lbnZfXyA6IHsgZ2V0X3BhcmFtOiBjbG91ZF9lbnYgfQogICAgICAgICAgIHRlbXBsYXRlOiB8CiAgICAgICAgICAgICAjIS9iaW4vYmFzaAogCi0gICAgICAgICAgICBQUk9URUNURURfTkVUX0dXPV9fcHJvdGVjdGVkX25ldF9nd19fCi0gICAgICAgICAgICBVTlBST1RFQ1RFRF9ORVQ9X191bnByb3RlY3RlZF9uZXRfXwotICAgICAgICAgICAgVU5QUk9URUNURURfTkVUPSQoZWNobyAkVU5QUk9URUNURURfTkVUIHwgY3V0IC1kJy8nIC1mMSkKLSAgICAgICAgICAgIFJFUE9fVVJMX0JMT0I9X19yZXBvX3VybF9ibG9iX18KLSAgICAgICAgICAgIFJFUE9fVVJMX0FSVElGQUNUUz1fX3JlcG9fdXJsX2FydGlmYWN0c19fCi0gICAgICAgICAgICBERU1PX0FSVElGQUNUU19WRVJTSU9OPV9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fCi0KLSAgICAgICAgICAgICMgRG93bmxvYWQgcmVxdWlyZWQgZGVwZW5kZW5jaWVzCi0gICAgICAgICAgICBhZGQtYXB0LXJlcG9zaXRvcnkgLXkgcHBhOm9wZW5qZGstci9wcGEKLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgbWFrZSB3Z2V0IG9wZW5qZGstOC1qZGsgYXB0LXRyYW5zcG9ydC1odHRwcyBjYS1jZXJ0aWZpY2F0ZXMgZGFya3N0YXQKLQotICAgICAgICAgICAgIyBDb25maWd1cmUgYW5kIHJ1biBkYXJrc3RhdAotICAgICAgICAgICAgc2VkIC1pICJzL1NUQVJUX0RBUktTVEFUPS4qL1NUQVJUX0RBUktTVEFUPXllcy9nIiAvZXRjL2RhcmtzdGF0L2luaXQuY2ZnCi0gICAgICAgICAgICBzZWQgLWkgInMvSU5URVJGQUNFPS4qL0lOVEVSRkFDRT1cIi1pIGV0aDFcIi9nIiAvZXRjL2RhcmtzdGF0L2luaXQuY2ZnCi0gICAgICAgICAgICAvZXRjL2luaXQuZC9kYXJrc3RhdCBzdGFydAotCisgICAgICAgICAgICAjIENyZWF0ZSBjb25maWd1cmF0aW9uIGZpbGVzCiAgICAgICAgICAgICBta2RpciAvb3B0L2NvbmZpZworICAgICAgICAgICAgZWNobyAiX19wcm90ZWN0ZWRfbmV0X2d3X18iID4gL29wdC9jb25maWcvcHJvdGVjdGVkX25ldF9ndy50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fdW5wcm90ZWN0ZWRfbmV0X18iID4gL29wdC9jb25maWcvdW5wcm90ZWN0ZWRfbmV0LnR4dAorICAgICAgICAgICAgZWNobyAiX19yZXBvX3VybF9ibG9iX18iID4gL29wdC9jb25maWcvcmVwb191cmxfYmxvYi50eHQKKyAgICAgICAgICAgIGVjaG8gIl9faW5zdGFsbF9zY3JpcHRfdmVyc2lvbl9fIiA+IC9vcHQvY29uZmlnL2luc3RhbGxfc2NyaXB0X3ZlcnNpb24udHh0CisgICAgICAgICAgICBlY2hvICJfX3Zzbl9wcml2YXRlX2lwXzBfXyIgPiAvb3B0L2NvbmZpZy92c25fcHJpdmF0ZV9pcF8wLnR4dAorICAgICAgICAgICAgZWNobyAiX192c25fcHJpdmF0ZV9pcF8xX18iID4gL29wdC9jb25maWcvdnNuX3ByaXZhdGVfaXBfMS50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fcHJvdGVjdGVkX3ByaXZhdGVfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy9wcm90ZWN0ZWRfcHJpdmF0ZV9uZXRfY2lkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fb25hcF9wcml2YXRlX25ldF9jaWRyX18iID4gL29wdC9jb25maWcvb25hcF9wcml2YXRlX25ldF9jaWRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19jbG91ZF9lbnZfXyIgPiAvb3B0L2NvbmZpZy9jbG91ZF9lbnYudHh0CisKKyAgICAgICAgICAgICMgRG93bmxvYWQgYW5kIHJ1biBpbnN0YWxsIHNjcmlwdAorICAgICAgICAgICAgY3VybCAtayBfX3JlcG9fdXJsX2Jsb2JfXy9vcmcub25hcC5kZW1vL3ZuZnMvdmZ3L19faW5zdGFsbF9zY3JpcHRfdmVyc2lvbl9fL3Zfc2lua19pbnN0YWxsLnNoIC1vIC9vcHQvdl9zaW5rX2luc3RhbGwuc2gKICAgICAgICAgICAgIGNkIC9vcHQKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmZ3LyRERU1PX0FSVElGQUNUU19WRVJTSU9OL3Zfc2lua19pbml0LnNoCi0gICAgICAgICAgICB3Z2V0ICRSRVBPX1VSTF9CTE9CL29yZy5vcGVuZWNvbXAuZGVtby92bmZzL3Zmdy8kREVNT19BUlRJRkFDVFNfVkVSU0lPTi92c2luay5zaAotICAgICAgICAgICAgY2htb2QgK3ggdl9zaW5rX2luaXQuc2gKLSAgICAgICAgICAgIGNobW9kICt4IHZzaW5rLnNoCi0gICAgICAgICAgICBlY2hvICRQUk9URUNURURfTkVUX0dXID4gY29uZmlnL3Byb3RlY3RlZF9uZXRfZ3cudHh0Ci0gICAgICAgICAgICBlY2hvICRVTlBST1RFQ1RFRF9ORVQgPiBjb25maWcvdW5wcm90ZWN0ZWRfbmV0LnR4dAotICAgICAgICAgICAgbXYgdnNpbmsuc2ggL2V0Yy9pbml0LmQKLSAgICAgICAgICAgIHVwZGF0ZS1yYy5kIHZzaW5rLnNoIGRlZmF1bHRzCi0gICAgICAgICAgICAuL3Zfc2lua19pbml0LnNoCi0KLSAgdnNuX3ByaXZhdGVfMF9wb3J0OgotICAgIHR5cGU6IE9TOjpOZXV0cm9uOjpQb3J0Ci0gICAgcHJvcGVydGllczoKLSAgICAgIG5ldHdvcms6IHsgZ2V0X3Jlc291cmNlOiBwcm90ZWN0ZWRfcHJpdmF0ZV9uZXR3b3JrIH0KLSAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcmVzb3VyY2U6IHByb3RlY3RlZF9wcml2YXRlX3N1Ym5ldCB9LCAiaXBfYWRkcmVzcyI6IHsgZ2V0X3BhcmFtOiB2c25fcHJpdmF0ZV9pcF8wIH19XQotCi0gIHZzbl9wcml2YXRlXzFfcG9ydDoKLSAgICB0eXBlOiBPUzo6TmV1dHJvbjo6UG9ydAotICAgIHByb3BlcnRpZXM6Ci0gICAgICBuZXR3b3JrOiB7IGdldF9wYXJhbTogZWNvbXBfcHJpdmF0ZV9uZXRfaWQgfQotICAgICAgZml4ZWRfaXBzOiBbeyJzdWJuZXQiOiB7IGdldF9wYXJhbTogZWNvbXBfcHJpdmF0ZV9zdWJuZXRfaWQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdnNuX3ByaXZhdGVfaXBfMSB9fV0KKyAgICAgICAgICAgIGNobW9kICt4IHZfc2lua19pbnN0YWxsLnNoCisgICAgICAgICAgICAuL3Zfc2lua19pbnN0YWxsLnNoClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV92bGIvYmFzZV92bGIueWFtbCBiL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfdmxiL2Jhc2VfdmxiLnlhbWwKaW5kZXggYzI5MmYyOS4uNGE5NGIyMSAxMDA2NDQKLS0tIGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV92bGIvYmFzZV92bGIueWFtbAorKysgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX3ZsYi9iYXNlX3ZsYi55YW1sCkBAIC0xLDYgKzEsMzYgQEAKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjCisjPT09PT09PT09PT09PT09PT09TElDRU5TRV9TVEFSVD09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIworIworIyBDb3B5cmlnaHQgqSAyMDE3IEFUJlQgSW50ZWxsZWN0dWFsIFByb3BlcnR5LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorIworIyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisjIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisjIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorIyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisjIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorIworIz09PT09PT09PT09PT09PT09PUxJQ0VOU0VfRU5EPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyMKKyMgRUNPTVAgaXMgYSB0cmFkZW1hcmsgYW5kIHNlcnZpY2UgbWFyayBvZiBBVCZUIEludGVsbGVjdHVhbCBQcm9wZXJ0eS4KKyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKIGhlYXRfdGVtcGxhdGVfdmVyc2lvbjogMjAxMy0wNS0yMwogCi1kZXNjcmlwdGlvbjogSGVhdCB0ZW1wbGF0ZSB0byBkZXBsb3kgdkxvYWRCYWxhbmNlci92RE5TIGRlbW8gYXBwIGZvciBPcGVuRUNPTVAKK2Rlc2NyaXB0aW9uOiBIZWF0IHRlbXBsYXRlIHRvIGRlcGxveSB2TG9hZEJhbGFuY2VyL3ZETlMgZGVtbyBhcHAgZm9yIE9OQVAKKworIyMjIyMjIyMjIyMjIyMKKyMgICAgICAgICAgICAjCisjIFBBUkFNRVRFUlMgIworIyAgICAgICAgICAgICMKKyMjIyMjIyMjIyMjIyMjCiAKIHBhcmFtZXRlcnM6CiAgIHZsYl9pbWFnZV9uYW1lOgpAQCAtMTksMjEgKzQ5LDI5IEBACiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IHZMb2FkQmFsYW5jZXIgcHJpdmF0ZSBuZXR3b3JrIG5hbWUgb3IgSUQKICAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBuZXR3b3JrIHRoYXQgY29ubmVjdHMgdkxvYWRCYWxhbmNlciB3aXRoIHZETlNzCi0gIGVjb21wX3ByaXZhdGVfbmV0X2lkOgorICBwa3RnZW5fcHJpdmF0ZV9uZXRfaWQ6CisgICAgdHlwZTogc3RyaW5nCisgICAgbGFiZWw6IHZQYWNrZXRHZW4gcHJpdmF0ZSBuZXR3b3JrIG5hbWUgb3IgSUQKKyAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBuZXR3b3JrIHRoYXQgY29ubmVjdHMgdkxvYWRCYWxhbmNlciB3aXRoIHZQYWNrZXRHZW4KKyAgb25hcF9wcml2YXRlX25ldF9pZDoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogRUNPTVAgbWFuYWdlbWVudCBuZXR3b3JrIG5hbWUgb3IgSUQKLSAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBuZXR3b3JrIHRoYXQgY29ubmVjdHMgRUNPTVAgY29tcG9uZW50IGFuZCB0aGUgVk5GCi0gIGVjb21wX3ByaXZhdGVfc3VibmV0X2lkOgorICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIG5ldHdvcmsgdGhhdCBjb25uZWN0cyBPTkFQIGNvbXBvbmVudCBhbmQgdGhlIFZORgorICBvbmFwX3ByaXZhdGVfc3VibmV0X2lkOgogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiBFQ09NUCBtYW5hZ2VtZW50IHN1Yi1uZXR3b3JrIG5hbWUgb3IgSUQKLSAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBzdWItbmV0d29yayB0aGF0IGNvbm5lY3RzIEVDT01QIGNvbXBvbmVudCBhbmQgdGhlIFZORgorICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIHN1Yi1uZXR3b3JrIHRoYXQgY29ubmVjdHMgT05BUCBjb21wb25lbnQgYW5kIHRoZSBWTkYKICAgdmxiX3ByaXZhdGVfbmV0X2NpZHI6CiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IHZMb2FkQmFsYW5jZXIgcHJpdmF0ZSBuZXR3b3JrIENJRFIKICAgICBkZXNjcmlwdGlvbjogVGhlIENJRFIgb2YgdGhlIHZMb2FkQmFsYW5jZXIgcHJpdmF0ZSBuZXR3b3JrCi0gIGVjb21wX3ByaXZhdGVfbmV0X2NpZHI6CisgIHBrdGdlbl9wcml2YXRlX25ldF9jaWRyOgogICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiBFQ09NUCBwcml2YXRlIG5ldHdvcmsgQ0lEUgorICAgIGxhYmVsOiB2UGFja2V0R2VuIHByaXZhdGUgbmV0d29yayBDSURSCisgICAgZGVzY3JpcHRpb246IFRoZSBDSURSIG9mIHRoZSB2UGFja2V0R2VuIHByaXZhdGUgbmV0d29yaworICBvbmFwX3ByaXZhdGVfbmV0X2NpZHI6CisgICAgdHlwZTogc3RyaW5nCisgICAgbGFiZWw6IE9OQVAgcHJpdmF0ZSBuZXR3b3JrIENJRFIKICAgICBkZXNjcmlwdGlvbjogVGhlIENJRFIgb2YgdGhlIHByb3RlY3RlZCBwcml2YXRlIG5ldHdvcmsKICAgdmxiX3ByaXZhdGVfaXBfMDoKICAgICB0eXBlOiBzdHJpbmcKQEAgLTQxLDE2ICs3OSw0MCBAQAogICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdkxvYWRCYWxhbmNlciB0byBjb21tdW5pY2F0ZSB3aXRoIHRoZSB2RE5TcwogICB2bGJfcHJpdmF0ZV9pcF8xOgogICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiB2TG9hZEJhbGFuY2VyIHByaXZhdGUgSVAgYWRkcmVzcyB0b3dhcmRzIHRoZSBFQ09NUCBtYW5hZ2VtZW50IG5ldHdvcmsKLSAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBJUCBhZGRyZXNzIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZMb2FkQmFsYW5jZXIgdG8gY29tbXVuaWNhdGUgd2l0aCBFQ09NUCBjb21wb25lbnRzCisgICAgbGFiZWw6IHZMb2FkQmFsYW5jZXIgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIE9OQVAgbWFuYWdlbWVudCBuZXR3b3JrCisgICAgZGVzY3JpcHRpb246IFByaXZhdGUgSVAgYWRkcmVzcyB0aGF0IGlzIGFzc2lnbmVkIHRvIHRoZSB2TG9hZEJhbGFuY2VyIHRvIGNvbW11bmljYXRlIHdpdGggT05BUCBjb21wb25lbnRzCisgIHZsYl9wcml2YXRlX2lwXzI6CisgICAgdHlwZTogc3RyaW5nCisgICAgbGFiZWw6IHZMb2FkQmFsYW5jZXIgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIHZQYWNrZXRHZW4gbmV0d29yaworICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdkxvYWRCYWxhbmNlciB0byBjb21tdW5pY2F0ZSB3aXRoIHZQYWNrZXRHZW4KICAgdmRuc19wcml2YXRlX2lwXzA6CiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IHZETlMgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIHByaXZhdGUgbmV0d29yawogICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdkROUyB0byBjb21tdW5pY2F0ZSB3aXRoIHRoZSB2TG9hZEJhbGFuY2VyCiAgIHZkbnNfcHJpdmF0ZV9pcF8xOgogICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiB2RE5TIHByaXZhdGUgSVAgYWRkcmVzcyB0b3dhcmRzIHRoZSBFQ09NUCBtYW5hZ2VtZW50IG5ldHdvcmsKLSAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBJUCBhZGRyZXNzIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZETlMgdG8gY29tbXVuaWNhdGUgd2l0aCBFQ09NUCBjb21wb25lbnRzCisgICAgbGFiZWw6IHZETlMgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIE9OQVAgbWFuYWdlbWVudCBuZXR3b3JrCisgICAgZGVzY3JpcHRpb246IFByaXZhdGUgSVAgYWRkcmVzcyB0aGF0IGlzIGFzc2lnbmVkIHRvIHRoZSB2RE5TIHRvIGNvbW11bmljYXRlIHdpdGggT05BUCBjb21wb25lbnRzCisgIHZwZ19wcml2YXRlX2lwXzA6CisgICAgdHlwZTogc3RyaW5nCisgICAgbGFiZWw6IHZQYWNrZXRHZW4gcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIHZQYWNrZXRHZW4gcHJpdmF0ZSBuZXR3b3JrCisgICAgZGVzY3JpcHRpb246IFByaXZhdGUgSVAgYWRkcmVzcyB0aGF0IGlzIGFzc2lnbmVkIHRvIHRoZSB2UGFja2V0R2VuIHRvIGNvbW11bmljYXRlIHdpdGggdGhlIHZMb2FkQmFsYW5jZXIKKyAgdnBnX3ByaXZhdGVfaXBfMToKKyAgICB0eXBlOiBzdHJpbmcKKyAgICBsYWJlbDogdlBhY2tldEdlbiBwcml2YXRlIElQIGFkZHJlc3MgdG93YXJkcyB0aGUgT05BUCBtYW5hZ2VtZW50IG5ldHdvcmsKKyAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBJUCBhZGRyZXNzIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZQYWNrZXRHZW4gdG8gY29tbXVuaWNhdGUgd2l0aCBPTkFQIGNvbXBvbmVudHMKKyAgdmlwOgorICAgIHR5cGU6IHN0cmluZworICAgIGxhYmVsOiBWaXJ0dWFsIFByaXZhdGUgSVAgb2YgdGhlIHZMb2FkQmFsYW5jZXIKKyAgICBkZXNjcmlwdGlvbjogVmlydHVhbCBQcml2YXRlIElQIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZMb2FkQmFsYW5jZXIncyBWUFAgbGF5ZXIKKyAgZ3JlX2lwYWRkcjoKKyAgICB0eXBlOiBzdHJpbmcKKyAgICBsYWJlbDogSVAgQWRkcmVzcyBvZiB0aGUgR1JFIHR1bm5lbAorICAgIGRlc2NyaXB0aW9uOiBJUCBhZGRyZXNzIGFzc2lnbmVkIHRvIHRoZSBHUkUgdHVubmVsIG9uIHRoZSB2TG9hZEJhbGFuY2VyCisgIHBnX2ludDoKKyAgICB0eXBlOiBzdHJpbmcKKyAgICBsYWJlbDogSVAgQWRkcmVzcyBvZiB0aGUgb3V0cHV0IHZQYWNrZXRHZW4gaW50ZXJmYWNlCisgICAgZGVzY3JpcHRpb246IElQIGFkZHJlc3MgYXNzaWduZWQgdG8gdGhlIG91dHB1dCBpbnRlcmZhY2Ugb2YgdGhlIHZQYWNrZXRHZW4ncyBWUFAgbGF5ZXIKICAgdmxiX25hbWVfMDoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogdkxvYWRCYWxhbmNlciBuYW1lCkBAIC01OSwxNCArMTIxLDE4IEBACiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IHZETlMgbmFtZQogICAgIGRlc2NyaXB0aW9uOiBOYW1lIG9mIHRoZSB2RE5TCisgIHZwZ19uYW1lXzA6CisgICAgdHlwZTogc3RyaW5nCisgICAgbGFiZWw6IHZQS1RHRU4gbmFtZQorICAgIGRlc2NyaXB0aW9uOiBOYW1lIG9mIHRoZSB2UEtUR0VOCiAgIHZuZl9pZDoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogVk5GIElECi0gICAgZGVzY3JpcHRpb246IFRoZSBWTkYgSUQgaXMgcHJvdmlkZWQgYnkgRUNPTVAKKyAgICBkZXNjcmlwdGlvbjogVGhlIFZORiBJRCBpcyBwcm92aWRlZCBieSBPTkFQCiAgIHZmX21vZHVsZV9pZDoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogdkZpcmV3YWxsIG1vZHVsZSBJRAotICAgIGRlc2NyaXB0aW9uOiBUaGUgdkxvYWRCYWxhbmNlciBNb2R1bGUgSUQgaXMgcHJvdmlkZWQgYnkgRUNPTVAKKyAgICBkZXNjcmlwdGlvbjogVGhlIHZMb2FkQmFsYW5jZXIgTW9kdWxlIElEIGlzIHByb3ZpZGVkIGJ5IE9OQVAKICAgZGNhZV9jb2xsZWN0b3JfaXA6CiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IERDQUUgY29sbGVjdG9yIElQIGFkZHJlc3MKQEAgLTk1LDYgKzE2MSwyMCBAQAogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiBBcnRpZmFjdHMgdmVyc2lvbiB1c2VkIGluIGRlbW8gdm5mcwogICAgIGRlc2NyaXB0aW9uOiBBcnRpZmFjdHMgKGphciwgdGFyLmd6KSB2ZXJzaW9uIHVzZWQgaW4gZGVtbyB2bmZzCisgIGluc3RhbGxfc2NyaXB0X3ZlcnNpb246CisgICAgdHlwZTogc3RyaW5nCisgICAgbGFiZWw6IEluc3RhbGxhdGlvbiBzY3JpcHQgdmVyc2lvbiBudW1iZXIKKyAgICBkZXNjcmlwdGlvbjogVmVyc2lvbiBudW1iZXIgb2YgdGhlIHNjcmlwdHMgdGhhdCBpbnN0YWxsIHRoZSB2RlcgZGVtbyBhcHAKKyAgY2xvdWRfZW52OgorICAgIHR5cGU6IHN0cmluZworICAgIGxhYmVsOiBDbG91ZCBlbnZpcm9ubWVudAorICAgIGRlc2NyaXB0aW9uOiBDbG91ZCBlbnZpcm9ubWVudCAoZS5nLiwgb3BlbnN0YWNrLCByYWNrc3BhY2UpCisKKyMjIyMjIyMjIyMjIyMKKyMgICAgICAgICAgICMKKyMgUkVTT1VSQ0VTICMKKyMgICAgICAgICAgICMKKyMjIyMjIyMjIyMjIyMKIAogcmVzb3VyY2VzOgogCkBAIC0xMDIsMTYgKzE4MiwxNiBAQAogICAgIHR5cGU6IE9TOjpIZWF0OjpSYW5kb21TdHJpbmcKICAgICBwcm9wZXJ0aWVzOgogICAgICAgbGVuZ3RoOiA0Ci0gIAorCiAgIG15X2tleXBhaXI6CiAgICAgdHlwZTogT1M6Ok5vdmE6OktleVBhaXIKICAgICBwcm9wZXJ0aWVzOgotICAgICAgbmFtZTogCisgICAgICBuYW1lOgogICAgICAgICBzdHJfcmVwbGFjZToKICAgICAgICAgICB0ZW1wbGF0ZTogYmFzZV9yYW5kCiAgICAgICAgICAgcGFyYW1zOgogICAgICAgICAgICAgYmFzZTogeyBnZXRfcGFyYW06IGtleV9uYW1lIH0KLSAgICAgICAgICAgIHJhbmQ6IHsgZ2V0X3Jlc291cmNlOiByYW5kb20tc3RyIH0gIAorICAgICAgICAgICAgcmFuZDogeyBnZXRfcmVzb3VyY2U6IHJhbmRvbS1zdHIgfQogICAgICAgcHVibGljX2tleTogeyBnZXRfcGFyYW06IHB1Yl9rZXkgfQogICAgICAgc2F2ZV9wcml2YXRlX2tleTogZmFsc2UKIApAQCAtMTI3LDYgKzIwNywzNiBAQAogICAgICAgbmV0d29ya19pZDogeyBnZXRfcmVzb3VyY2U6IHZsYl9wcml2YXRlX25ldHdvcmsgfQogICAgICAgY2lkcjogeyBnZXRfcGFyYW06IHZsYl9wcml2YXRlX25ldF9jaWRyIH0KIAorICBwa3RnZW5fcHJpdmF0ZV9uZXR3b3JrOgorICAgIHR5cGU6IE9TOjpOZXV0cm9uOjpOZXQKKyAgICBwcm9wZXJ0aWVzOgorICAgICAgbmFtZTogeyBnZXRfcGFyYW06IHBrdGdlbl9wcml2YXRlX25ldF9pZCB9CisKKyAgcGt0Z2VuX3ByaXZhdGVfc3VibmV0OgorICAgIHR5cGU6IE9TOjpOZXV0cm9uOjpTdWJuZXQKKyAgICBwcm9wZXJ0aWVzOgorICAgICAgbmFtZTogeyBnZXRfcGFyYW06IHBrdGdlbl9wcml2YXRlX25ldF9pZCB9CisgICAgICBuZXR3b3JrX2lkOiB7IGdldF9yZXNvdXJjZTogcGt0Z2VuX3ByaXZhdGVfbmV0d29yayB9CisgICAgICBjaWRyOiB7IGdldF9wYXJhbTogcGt0Z2VuX3ByaXZhdGVfbmV0X2NpZHIgfQorCisgIHZsYl9wcml2YXRlXzBfcG9ydDoKKyAgICB0eXBlOiBPUzo6TmV1dHJvbjo6UG9ydAorICAgIHByb3BlcnRpZXM6CisgICAgICBuZXR3b3JrOiB7IGdldF9yZXNvdXJjZTogdmxiX3ByaXZhdGVfbmV0d29yayB9CisgICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3Jlc291cmNlOiB2bGJfcHJpdmF0ZV9zdWJuZXQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMCB9fV0KKworICB2bGJfcHJpdmF0ZV8xX3BvcnQ6CisgICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKKyAgICBwcm9wZXJ0aWVzOgorICAgICAgbmV0d29yazogeyBnZXRfcGFyYW06IG9uYXBfcHJpdmF0ZV9uZXRfaWQgfQorICAgICAgZml4ZWRfaXBzOiBbeyJzdWJuZXQiOiB7IGdldF9wYXJhbTogb25hcF9wcml2YXRlX3N1Ym5ldF9pZCB9LCAiaXBfYWRkcmVzcyI6IHsgZ2V0X3BhcmFtOiB2bGJfcHJpdmF0ZV9pcF8xIH19XQorCisgIHZsYl9wcml2YXRlXzJfcG9ydDoKKyAgICB0eXBlOiBPUzo6TmV1dHJvbjo6UG9ydAorICAgIHByb3BlcnRpZXM6CisgICAgICBuZXR3b3JrOiB7IGdldF9yZXNvdXJjZTogcGt0Z2VuX3ByaXZhdGVfbmV0d29yayB9CisgICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3Jlc291cmNlOiBwa3RnZW5fcHJpdmF0ZV9zdWJuZXQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMiB9fV0KKwogICB2bGJfMDoKICAgICB0eXBlOiBPUzo6Tm92YTo6U2VydmVyCiAgICAgcHJvcGVydGllczoKQEAgLTEzOCw2ICsyNDgsNyBAQAogICAgICAgICAtIG5ldHdvcms6IHsgZ2V0X3BhcmFtOiBwdWJsaWNfbmV0X2lkIH0KICAgICAgICAgLSBwb3J0OiB7IGdldF9yZXNvdXJjZTogdmxiX3ByaXZhdGVfMF9wb3J0IH0KICAgICAgICAgLSBwb3J0OiB7IGdldF9yZXNvdXJjZTogdmxiX3ByaXZhdGVfMV9wb3J0IH0KKyAgICAgICAgLSBwb3J0OiB7IGdldF9yZXNvdXJjZTogdmxiX3ByaXZhdGVfMl9wb3J0IH0KICAgICAgIG1ldGFkYXRhOiB7dm5mX2lkOiB7IGdldF9wYXJhbTogdm5mX2lkIH0sIHZmX21vZHVsZV9pZDogeyBnZXRfcGFyYW06IHZmX21vZHVsZV9pZCB9fQogICAgICAgdXNlcl9kYXRhX2Zvcm1hdDogUkFXCiAgICAgICB1c2VyX2RhdGE6CkBAIC0xNDUsMTAwICsyNTYsNjIgQEAKICAgICAgICAgICBwYXJhbXM6CiAgICAgICAgICAgICBfX2RjYWVfY29sbGVjdG9yX2lwX186IHsgZ2V0X3BhcmFtOiBkY2FlX2NvbGxlY3Rvcl9pcCB9CiAgICAgICAgICAgICBfX2RjYWVfY29sbGVjdG9yX3BvcnRfXzogeyBnZXRfcGFyYW06IGRjYWVfY29sbGVjdG9yX3BvcnQgfQotICAgICAgICAgICAgX19sb2NhbF9wcml2YXRlX2lwYWRkcl9fOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMCB9Ci0gICAgICAgICAgICBfX3JlcG9fdXJsX2Jsb2JfXyA6IHsgZ2V0X3BhcmFtOiByZXBvX3VybF9ibG9iIH0KLSAgICAgICAgICAgIF9fcmVwb191cmxfYXJ0aWZhY3RzX18gOiB7IGdldF9wYXJhbTogcmVwb191cmxfYXJ0aWZhY3RzIH0KLSAgICAgICAgICAgIF9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fIDogeyBnZXRfcGFyYW06IGRlbW9fYXJ0aWZhY3RzX3ZlcnNpb24gfQorICAgICAgICAgICAgX19pcF90b19kbnNfbmV0X186IHsgZ2V0X3BhcmFtOiB2bGJfcHJpdmF0ZV9pcF8wIH0KKyAgICAgICAgICAgIF9faXBfdG9fcGt0Z2VuX25ldF9fOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMiB9CisgICAgICAgICAgICBfX3ZpcF9fOiB7IGdldF9wYXJhbTogdmlwIH0KKyAgICAgICAgICAgIF9fZ3JlX2lwYWRkcl9fOiB7IGdldF9wYXJhbTogZ3JlX2lwYWRkciB9CisgICAgICAgICAgICBfX3BrdGdlbl9pcGFkZHJfXzogeyBnZXRfcGFyYW06IHZwZ19wcml2YXRlX2lwXzAgfQorICAgICAgICAgICAgX19vYW1fcHJpdmF0ZV9pcGFkZHJfXzogeyBnZXRfcGFyYW06IHZsYl9wcml2YXRlX2lwXzEgfQorICAgICAgICAgICAgX19yZXBvX3VybF9ibG9iX186IHsgZ2V0X3BhcmFtOiByZXBvX3VybF9ibG9iIH0KKyAgICAgICAgICAgIF9fcmVwb191cmxfYXJ0aWZhY3RzX186IHsgZ2V0X3BhcmFtOiByZXBvX3VybF9hcnRpZmFjdHMgfQorICAgICAgICAgICAgX19kZW1vX2FydGlmYWN0c192ZXJzaW9uX186IHsgZ2V0X3BhcmFtOiBkZW1vX2FydGlmYWN0c192ZXJzaW9uIH0KKyAgICAgICAgICAgIF9faW5zdGFsbF9zY3JpcHRfdmVyc2lvbl9fOiB7IGdldF9wYXJhbTogaW5zdGFsbF9zY3JpcHRfdmVyc2lvbiB9CisgICAgICAgICAgICBfX3ZsYl9wcml2YXRlX25ldF9jaWRyX186IHsgZ2V0X3BhcmFtOiB2bGJfcHJpdmF0ZV9uZXRfY2lkciB9CisgICAgICAgICAgICBfX29uYXBfcHJpdmF0ZV9uZXRfY2lkcl9fOiB7IGdldF9wYXJhbTogb25hcF9wcml2YXRlX25ldF9jaWRyIH0KKyAgICAgICAgICAgIF9fcGt0Z2VuX3ByaXZhdGVfbmV0X2NpZHJfXzogeyBnZXRfcGFyYW06IHBrdGdlbl9wcml2YXRlX25ldF9jaWRyIH0KKyAgICAgICAgICAgIF9fcGt0Z2VuX21hY19fOiB7IGdldF9hdHRyOiBbdnBnX3ByaXZhdGVfMF9wb3J0LCBtYWNfYWRkcmVzc10gfQorICAgICAgICAgICAgX19jbG91ZF9lbnZfXzogeyBnZXRfcGFyYW06IGNsb3VkX2VudiB9CiAgICAgICAgICAgdGVtcGxhdGU6IHwKICAgICAgICAgICAgICMhL2Jpbi9iYXNoCiAKLSAgICAgICAgICAgIERDQUVfQ09MTEVDVE9SX0lQPV9fZGNhZV9jb2xsZWN0b3JfaXBfXwotICAgICAgICAgICAgRENBRV9DT0xMRUNUT1JfUE9SVD1fX2RjYWVfY29sbGVjdG9yX3BvcnRfXwotICAgICAgICAgICAgTE9DQUxfUFJJVkFURV9JUEFERFI9X19sb2NhbF9wcml2YXRlX2lwYWRkcl9fCi0gICAgICAgICAgICBSRVBPX1VSTF9CTE9CPV9fcmVwb191cmxfYmxvYl9fCi0gICAgICAgICAgICBSRVBPX1VSTF9BUlRJRkFDVFM9X19yZXBvX3VybF9hcnRpZmFjdHNfXwotICAgICAgICAgICAgREVNT19BUlRJRkFDVFNfVkVSU0lPTj1fX2RlbW9fYXJ0aWZhY3RzX3ZlcnNpb25fXwotCi0gICAgICAgICAgICAjIERvd25sb2FkIHJlcXVpcmVkIGRlcGVuZGVuY2llcwotICAgICAgICAgICAgYWRkLWFwdC1yZXBvc2l0b3J5IC15IHBwYTpvcGVuamRrLXIvcHBhCi0gICAgICAgICAgICBhcHQtZ2V0IHVwZGF0ZQotICAgICAgICAgICAgYXB0LWdldCBpbnN0YWxsIC15IG1ha2UgZ2NjIHdnZXQgb3Blbmpkay04LWpkayBicmlkZ2UtdXRpbHMgbGliY3VybDQtb3BlbnNzbC1kZXYgYXB0LXRyYW5zcG9ydC1odHRwcyBjYS1jZXJ0aWZpY2F0ZXMKLSAgICAgICAgICAgIGFwdC1nZXQgaW5zdGFsbCAteSBtYXZlbgotICAgICAgICAgICAgc2xlZXAgMQotCi0gICAgICAgICAgICAjIERvd25sb2FkIHZMQiBkZW1vIGNvZGUgZm9yIGxvYWQgYmFsYW5jZXIKKyAgICAgICAgICAgICMgQ3JlYXRlIGNvbmZpZ3VyYXRpb24gZmlsZXMKICAgICAgICAgICAgIG1rZGlyIC9vcHQvY29uZmlnCi0gICAgICAgICAgICBta2RpciAvb3B0L0ZEc2VydmVyCisgICAgICAgICAgICBlY2hvICJfX2RjYWVfY29sbGVjdG9yX2lwX18iID4gL29wdC9jb25maWcvZGNhZV9jb2xsZWN0b3JfaXAudHh0CisgICAgICAgICAgICBlY2hvICJfX2RjYWVfY29sbGVjdG9yX3BvcnRfXyIgPiAvb3B0L2NvbmZpZy9kY2FlX2NvbGxlY3Rvcl9wb3J0LnR4dAorICAgICAgICAgICAgZWNobyAiX19pcF90b19kbnNfbmV0X18iID4gL29wdC9jb25maWcvaXBfdG9fZG5zX25ldC50eHQKKyAgICAgICAgICAgIGVjaG8gIl9faXBfdG9fcGt0Z2VuX25ldF9fIiA+IC9vcHQvY29uZmlnL2lwX3RvX3BrdGdlbl9uZXQudHh0CisgICAgICAgICAgICBlY2hvICJfX3ZpcF9fIiA+IC9vcHQvY29uZmlnL3ZpcC50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fZ3JlX2lwYWRkcl9fIiA+IC9vcHQvY29uZmlnL2dyZV9pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX3BrdGdlbl9pcGFkZHJfXyIgPiAvb3B0L2NvbmZpZy9wa3RnZW5faXBhZGRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19vYW1fcHJpdmF0ZV9pcGFkZHJfXyIgPiAvb3B0L2NvbmZpZy9vYW1fcHJpdmF0ZV9pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX3JlcG9fdXJsX2Jsb2JfXyIgPiAvb3B0L2NvbmZpZy9yZXBvX3VybF9ibG9iLnR4dAorICAgICAgICAgICAgZWNobyAiX19yZXBvX3VybF9hcnRpZmFjdHNfXyIgPiAvb3B0L2NvbmZpZy9yZXBvX3VybF9hcnRpZmFjdHMudHh0CisgICAgICAgICAgICBlY2hvICJfX2RlbW9fYXJ0aWZhY3RzX3ZlcnNpb25fXyIgPiAvb3B0L2NvbmZpZy9kZW1vX2FydGlmYWN0c192ZXJzaW9uLnR4dAorICAgICAgICAgICAgZWNobyAiX19pbnN0YWxsX3NjcmlwdF92ZXJzaW9uX18iID4gL29wdC9jb25maWcvaW5zdGFsbF9zY3JpcHRfdmVyc2lvbi50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fdmxiX3ByaXZhdGVfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy92bGJfcHJpdmF0ZV9uZXRfY2lkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fcGt0Z2VuX3ByaXZhdGVfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy9wa3RnZW5fcHJpdmF0ZV9uZXRfY2lkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fb25hcF9wcml2YXRlX25ldF9jaWRyX18iID4gL29wdC9jb25maWcvb25hcF9wcml2YXRlX25ldF9jaWRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19wa3RnZW5fbWFjX18iID4gL29wdC9jb25maWcvcGt0Z2VuX21hYy50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fY2xvdWRfZW52X18iID4gL29wdC9jb25maWcvY2xvdWRfZW52LnR4dAorCisgICAgICAgICAgICAjIERvd25sb2FkIGFuZCBydW4gaW5zdGFsbCBzY3JpcHQKKyAgICAgICAgICAgIGN1cmwgLWsgX19yZXBvX3VybF9ibG9iX18vb3JnLm9uYXAuZGVtby92bmZzL3ZsYi9fX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXy92X2xiX2luc3RhbGwuc2ggLW8gL29wdC92X2xiX2luc3RhbGwuc2gKICAgICAgICAgICAgIGNkIC9vcHQKKyAgICAgICAgICAgIGNobW9kICt4IHZfbGJfaW5zdGFsbC5zaAorICAgICAgICAgICAgLi92X2xiX2luc3RhbGwuc2gKIAotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vdl9sYl9pbml0LnNoCi0gICAgICAgICAgICB3Z2V0ICRSRVBPX1VSTF9CTE9CL29yZy5vcGVuZWNvbXAuZGVtby92bmZzL3ZsYi8kREVNT19BUlRJRkFDVFNfVkVSU0lPTi92bGIuc2gKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmxiLyRERU1PX0FSVElGQUNUU19WRVJTSU9OL2Ruc21lbWJlcnNoaXAuc2gKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmxiLyRERU1PX0FSVElGQUNUU19WRVJTSU9OL2FkZF9kbnMuc2gKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmxiLyRERU1PX0FSVElGQUNUU19WRVJTSU9OL3JlbW92ZV9kbnMuc2gKIAotICAgICAgICAgICAgbXZuIG9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczptYXZlbi1kZXBlbmRlbmN5LXBsdWdpbjoyLjEwOmdldCAtRHJlbW90ZVJlcG9zaXRvcmllcz0kUkVQT19VUkxfQVJUSUZBQ1RTIC1EYXJ0aWZhY3Q9b3JnLm9wZW5lY29tcC5kZW1vLnZuZi52bGI6ZG5zLW1hbmFnZXI6JERFTU9fQVJUSUZBQ1RTX1ZFUlNJT046amFyIC1EdHJhbnNpdGl2ZT1mYWxzZSAtRGRlc3Q9LgotICAgICAgICAgICAgbXZuIG9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczptYXZlbi1kZXBlbmRlbmN5LXBsdWdpbjoyLjEwOmdldCAtRHJlbW90ZVJlcG9zaXRvcmllcz0kUkVQT19VUkxfQVJUSUZBQ1RTIC1EYXJ0aWZhY3Q9b3JnLm9wZW5lY29tcC5kZW1vLnZuZi52ZXM6dmVzOiRERU1PX0FSVElGQUNUU19WRVJTSU9OOnRhci5nejpkZW1vIC1EdHJhbnNpdGl2ZT1mYWxzZSAtRGRlc3Q9LgotICAgICAgICAgICAgbXZuIG9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczptYXZlbi1kZXBlbmRlbmN5LXBsdWdpbjoyLjEwOmdldCAtRHJlbW90ZVJlcG9zaXRvcmllcz0kUkVQT19VUkxfQVJUSUZBQ1RTIC1EYXJ0aWZhY3Q9b3JnLm9wZW5lY29tcC5kZW1vLnZuZi52ZXM6dmVzX3ZsYl9yZXBvcnRpbmc6JERFTU9fQVJUSUZBQ1RTX1ZFUlNJT046dGFyLmd6OmRlbW8gLUR0cmFuc2l0aXZlPWZhbHNlIC1EZGVzdD0uCi0KLSAgICAgICAgICAgIHRhciAtenh2ZiB2ZXMtJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04tZGVtby50YXIuZ3oKLSAgICAgICAgICAgIG12IHZlcy0kREVNT19BUlRJRkFDVFNfVkVSU0lPTiBWRVMKLSAgICAgICAgICAgIHRhciAtenh2ZiB2ZXNfdmxiX3JlcG9ydGluZy0kREVNT19BUlRJRkFDVFNfVkVSU0lPTi1kZW1vLnRhci5negotICAgICAgICAgICAgbXYgdmVzX3ZsYl9yZXBvcnRpbmctJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04gVkVTcmVwb3J0aW5nX3ZMQgotCi0gICAgICAgICAgICBtdiBWRVNyZXBvcnRpbmdfdkxCIC9vcHQvVkVTL2NvZGUvZXZlbF90cmFpbmluZy9WRVNyZXBvcnRpbmcKLSAgICAgICAgICAgIG12IGRucy1tYW5hZ2VyLSRERU1PX0FSVElGQUNUU19WRVJTSU9OLmphciAvb3B0L0ZEc2VydmVyL2Rucy1tYW5hZ2VyLSRERU1PX0FSVElGQUNUU19WRVJTSU9OLmphcgotICAgICAgICAgICAgbXYgZG5zbWVtYmVyc2hpcC5zaCAvb3B0L0ZEc2VydmVyL2Ruc21lbWJlcnNoaXAuc2gKLSAgICAgICAgICAgIG12IGFkZF9kbnMuc2ggL29wdC9GRHNlcnZlci9hZGRfZG5zLnNoCi0gICAgICAgICAgICBtdiByZW1vdmVfZG5zLnNoIC9vcHQvRkRzZXJ2ZXIvcmVtb3ZlX2Rucy5zaAotICAgICAgICAgICAgcm0gKi50YXIuZ3oKLQotICAgICAgICAgICAgY2htb2QgK3ggdl9sYl9pbml0LnNoCi0gICAgICAgICAgICBjaG1vZCAreCB2bGIuc2gKLSAgICAgICAgICAgIGNobW9kICt4IC9vcHQvVkVTL2NvZGUvZXZlbF90cmFpbmluZy9WRVNyZXBvcnRpbmcvZ28tY2xpZW50LnNoCi0gICAgICAgICAgICBjaG1vZCAreCAvb3B0L0ZEc2VydmVyL2Ruc21lbWJlcnNoaXAuc2gKLSAgICAgICAgICAgIGNobW9kICt4IC9vcHQvRkRzZXJ2ZXIvYWRkX2Rucy5zaAotICAgICAgICAgICAgY2htb2QgK3ggL29wdC9GRHNlcnZlci9yZW1vdmVfZG5zLnNoCi0KLSAgICAgICAgICAgIGVjaG8gJERDQUVfQ09MTEVDVE9SX0lQID4gY29uZmlnL2RjYWVfY29sbGVjdG9yX2lwLnR4dAotICAgICAgICAgICAgZWNobyAkRENBRV9DT0xMRUNUT1JfUE9SVCA+IGNvbmZpZy9kY2FlX2NvbGxlY3Rvcl9wb3J0LnR4dAotICAgICAgICAgICAgZWNobyAkTE9DQUxfUFJJVkFURV9JUEFERFIgPiBjb25maWcvbG9jYWxfcHJpdmF0ZV9pcGFkZHIudHh0Ci0gICAgICAgICAgICBMT0NBTF9QVUJMSUNfSVBBRERSPSQoaWZjb25maWcgZXRoMCB8IGdyZXAgImluZXQgYWRkciIgfCB0ciAtcyAnICcgfCBjdXQgLWQnICcgLWYzIHwgY3V0IC1kJzonIC1mMikKLSAgICAgICAgICAgIGVjaG8gJExPQ0FMX1BVQkxJQ19JUEFERFIgPiBjb25maWcvbG9jYWxfcHVibGljX2lwYWRkci50eHQKLSAgICAgICAgICAgIGVjaG8gJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04gPiBjb25maWcvYXJ0aWZhY3RzX3ZlcnNpb24udHh0Ci0KLSAgICAgICAgICAgICMgSW5zdGFsbCBWUFAKLSAgICAgICAgICAgIGV4cG9ydCBVQlVOVFU9InRydXN0eSIKLSAgICAgICAgICAgIGV4cG9ydCBSRUxFQVNFPSIuc3RhYmxlLjE2MDkiCi0gICAgICAgICAgICBybSAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC85OWZkLmlvLmxpc3QKLSAgICAgICAgICAgIGVjaG8gImRlYiBbdHJ1c3RlZD15ZXNdIGh0dHBzOi8vbmV4dXMuZmQuaW8vY29udGVudC9yZXBvc2l0b3JpZXMvZmQuaW8kUkVMRUFTRS51YnVudHUuJFVCVU5UVS5tYWluLyAuLyIgfCBzdWRvIHRlZSAtYSAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC85OWZkLmlvLmxpc3QKLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgdnBwIHZwcC1kcGRrLWRrbXMgdnBwLWxpYiB2cHAtZGJnIHZwcC1wbHVnaW5zIHZwcC1kZXYKLSAgICAgICAgICAgIHNsZWVwIDEKLQotICAgICAgICAgICAgIyBJbnN0YWxsIFZFUwotICAgICAgICAgICAgY2QgL29wdC9WRVMvYmxkam9icy8KLSAgICAgICAgICAgIG1ha2UgY2xlYW4KLSAgICAgICAgICAgIG1ha2UKLSAgICAgICAgICAgIHNsZWVwIDEKLQotICAgICAgICAgICAgIyBSdW4gaW5zdGFudGlhdGlvbiBzY3JpcHQKLSAgICAgICAgICAgIGNkIC9vcHQgICAgICAgICAgICAKLSAgICAgICAgICAgIG12IHZsYi5zaCAvZXRjL2luaXQuZAotICAgICAgICAgICAgdXBkYXRlLXJjLmQgdmxiLnNoIGRlZmF1bHRzCi0gICAgICAgICAgICAuL3ZfbGJfaW5pdC5zaAotCi0gIHZsYl9wcml2YXRlXzBfcG9ydDoKKyAgdmRuc19wcml2YXRlXzBfcG9ydDoKICAgICB0eXBlOiBPUzo6TmV1dHJvbjo6UG9ydAogICAgIHByb3BlcnRpZXM6CiAgICAgICBuZXR3b3JrOiB7IGdldF9yZXNvdXJjZTogdmxiX3ByaXZhdGVfbmV0d29yayB9Ci0gICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3Jlc291cmNlOiB2bGJfcHJpdmF0ZV9zdWJuZXQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMCB9fV0KKyAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcmVzb3VyY2U6IHZsYl9wcml2YXRlX3N1Ym5ldCB9LCAiaXBfYWRkcmVzcyI6IHsgZ2V0X3BhcmFtOiB2ZG5zX3ByaXZhdGVfaXBfMCB9fV0KIAotICB2bGJfcHJpdmF0ZV8xX3BvcnQ6CisgIHZkbnNfcHJpdmF0ZV8xX3BvcnQ6CiAgICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKICAgICBwcm9wZXJ0aWVzOgotICAgICAgbmV0d29yazogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfbmV0X2lkIH0KLSAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZsYl9wcml2YXRlX2lwXzEgfX1dCisgICAgICBuZXR3b3JrOiB7IGdldF9wYXJhbTogb25hcF9wcml2YXRlX25ldF9pZCB9CisgICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3BhcmFtOiBvbmFwX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZkbnNfcHJpdmF0ZV9pcF8xIH19XQogCiAgIHZkbnNfMDoKICAgICB0eXBlOiBPUzo6Tm92YTo6U2VydmVyCkBAIC0yNTYsODQgKzMyOSwxMDAgQEAKICAgICAgIHVzZXJfZGF0YToKICAgICAgICAgc3RyX3JlcGxhY2U6CiAgICAgICAgICAgcGFyYW1zOgotICAgICAgICAgICAgX19sYl9vYW1faW50X18gOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMSB9CisgICAgICAgICAgICBfX2xiX29hbV9pbnRfXzogeyBnZXRfcGFyYW06IHZsYl9wcml2YXRlX2lwXzEgfQogICAgICAgICAgICAgX19sYl9wcml2YXRlX2lwYWRkcl9fOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMCB9CiAgICAgICAgICAgICBfX2xvY2FsX3ByaXZhdGVfaXBhZGRyX186IHsgZ2V0X3BhcmFtOiB2ZG5zX3ByaXZhdGVfaXBfMCB9Ci0gICAgICAgICAgICBfX3JlcG9fdXJsX2Jsb2JfXyA6IHsgZ2V0X3BhcmFtOiByZXBvX3VybF9ibG9iIH0KLSAgICAgICAgICAgIF9fcmVwb191cmxfYXJ0aWZhY3RzX18gOiB7IGdldF9wYXJhbTogcmVwb191cmxfYXJ0aWZhY3RzIH0KLSAgICAgICAgICAgIF9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fIDogeyBnZXRfcGFyYW06IGRlbW9fYXJ0aWZhY3RzX3ZlcnNpb24gfQorICAgICAgICAgICAgX19vYW1fcHJpdmF0ZV9pcGFkZHJfXzogeyBnZXRfcGFyYW06IHZkbnNfcHJpdmF0ZV9pcF8xIH0KKyAgICAgICAgICAgIF9fcmVwb191cmxfYmxvYl9fOiB7IGdldF9wYXJhbTogcmVwb191cmxfYmxvYiB9CisgICAgICAgICAgICBfX3JlcG9fdXJsX2FydGlmYWN0c19fOiB7IGdldF9wYXJhbTogcmVwb191cmxfYXJ0aWZhY3RzIH0KKyAgICAgICAgICAgIF9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fOiB7IGdldF9wYXJhbTogZGVtb19hcnRpZmFjdHNfdmVyc2lvbiB9CisgICAgICAgICAgICBfX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXzogeyBnZXRfcGFyYW06IGluc3RhbGxfc2NyaXB0X3ZlcnNpb24gfQorICAgICAgICAgICAgX192bGJfcHJpdmF0ZV9uZXRfY2lkcl9fOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfbmV0X2NpZHIgfQorICAgICAgICAgICAgX19vbmFwX3ByaXZhdGVfbmV0X2NpZHJfXzogeyBnZXRfcGFyYW06IG9uYXBfcHJpdmF0ZV9uZXRfY2lkciB9CisgICAgICAgICAgICBfX2Nsb3VkX2Vudl9fOiB7IGdldF9wYXJhbTogY2xvdWRfZW52IH0KICAgICAgICAgICB0ZW1wbGF0ZTogfAogICAgICAgICAgICAgIyEvYmluL2Jhc2gKIAotICAgICAgICAgICAgTEJfT0FNX0lOVD1fX2xiX29hbV9pbnRfXwotICAgICAgICAgICAgTEJfUFJJVkFURV9JUEFERFI9X19sYl9wcml2YXRlX2lwYWRkcl9fCi0gICAgICAgICAgICBMT0NBTF9QUklWQVRFX0lQQUREUj1fX2xvY2FsX3ByaXZhdGVfaXBhZGRyX18KLSAgICAgICAgICAgIFJFUE9fVVJMX0JMT0I9X19yZXBvX3VybF9ibG9iX18KLSAgICAgICAgICAgIFJFUE9fVVJMX0FSVElGQUNUUz1fX3JlcG9fdXJsX2FydGlmYWN0c19fCi0gICAgICAgICAgICBERU1PX0FSVElGQUNUU19WRVJTSU9OPV9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fCi0KLSAgICAgICAgICAgICMgRG93bmxvYWQgcmVxdWlyZWQgZGVwZW5kZW5jaWVzCi0gICAgICAgICAgICBhZGQtYXB0LXJlcG9zaXRvcnkgLXkgcHBhOm9wZW5qZGstci9wcGEKLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgd2dldCBvcGVuamRrLTgtamRrIGJpbmQ5IGJpbmQ5dXRpbHMgYmluZDktZG9jIGFwdC10cmFuc3BvcnQtaHR0cHMgY2EtY2VydGlmaWNhdGVzCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgbWF2ZW4KLSAgICAgICAgICAgIHNsZWVwIDEKLQotICAgICAgICAgICAgIyBEb3dubG9hZCB2RE5TIGRlbW8gY29kZSBmb3IgRE5TIFNlcnZlcgorICAgICAgICAgICAgIyBDcmVhdGUgY29uZmlndXJhdGlvbiBmaWxlcwogICAgICAgICAgICAgbWtkaXIgL29wdC9jb25maWcKLSAgICAgICAgICAgIG1rZGlyIC9vcHQvRkRjbGllbnQKKyAgICAgICAgICAgIGVjaG8gIl9fbGJfb2FtX2ludF9fIiA+IC9vcHQvY29uZmlnL2xiX29hbV9pbnQudHh0CisgICAgICAgICAgICBlY2hvICJfX2xiX3ByaXZhdGVfaXBhZGRyX18iID4gL29wdC9jb25maWcvbGJfcHJpdmF0ZV9pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX2xvY2FsX3ByaXZhdGVfaXBhZGRyX18iID4gL29wdC9jb25maWcvbG9jYWxfcHJpdmF0ZV9pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX29hbV9wcml2YXRlX2lwYWRkcl9fIiA+IC9vcHQvY29uZmlnL29hbV9wcml2YXRlX2lwYWRkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fcmVwb191cmxfYmxvYl9fIiA+IC9vcHQvY29uZmlnL3JlcG9fdXJsX2Jsb2IudHh0CisgICAgICAgICAgICBlY2hvICJfX3JlcG9fdXJsX2FydGlmYWN0c19fIiA+IC9vcHQvY29uZmlnL3JlcG9fdXJsX2FydGlmYWN0cy50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fIiA+IC9vcHQvY29uZmlnL2RlbW9fYXJ0aWZhY3RzX3ZlcnNpb24udHh0CisgICAgICAgICAgICBlY2hvICJfX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXyIgPiAvb3B0L2NvbmZpZy9pbnN0YWxsX3NjcmlwdF92ZXJzaW9uLnR4dAorICAgICAgICAgICAgZWNobyAiX192bGJfcHJpdmF0ZV9uZXRfY2lkcl9fIiA+IC9vcHQvY29uZmlnL3ZsYl9wcml2YXRlX25ldF9jaWRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19vbmFwX3ByaXZhdGVfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy9vbmFwX3ByaXZhdGVfbmV0X2NpZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX2Nsb3VkX2Vudl9fIiA+IC9vcHQvY29uZmlnL2Nsb3VkX2Vudi50eHQKKworICAgICAgICAgICAgIyBEb3dubG9hZCBhbmQgcnVuIGluc3RhbGwgc2NyaXB0CisgICAgICAgICAgICBjdXJsIC1rIF9fcmVwb191cmxfYmxvYl9fL29yZy5vbmFwLmRlbW8vdm5mcy92bGIvX19pbnN0YWxsX3NjcmlwdF92ZXJzaW9uX18vdl9kbnNfaW5zdGFsbC5zaCAtbyAvb3B0L3ZfZG5zX2luc3RhbGwuc2gKICAgICAgICAgICAgIGNkIC9vcHQKLSAgICAgICAgICAgIAotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vdl9kbnNfaW5pdC5zaAotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vdmRucy5zaAotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vZG5zY2xpZW50LnNoCi0gICAgICAgICAgICB3Z2V0ICRSRVBPX1VSTF9CTE9CL29yZy5vcGVuZWNvbXAuZGVtby92bmZzL3ZsYi8kREVNT19BUlRJRkFDVFNfVkVSU0lPTi9zZXRfZ3JlX3R1bm5lbC5zaAotICAgICAgICAgICAgCi0gICAgICAgICAgICBtdm4gb3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zOm1hdmVuLWRlcGVuZGVuY3ktcGx1Z2luOjIuMTA6Z2V0IC1EcmVtb3RlUmVwb3NpdG9yaWVzPSRSRVBPX1VSTF9BUlRJRkFDVFMgLURhcnRpZmFjdD1vcmcub3BlbmVjb21wLmRlbW8udm5mLnZsYjpkbnMtY2xpZW50OiRERU1PX0FSVElGQUNUU19WRVJTSU9OOmphciAtRHRyYW5zaXRpdmU9ZmFsc2UgLURkZXN0PS4KKyAgICAgICAgICAgIGNobW9kICt4IHZfZG5zX2luc3RhbGwuc2gKKyAgICAgICAgICAgIC4vdl9kbnNfaW5zdGFsbC5zaAogCi0gICAgICAgICAgICBtdiBkbnMtY2xpZW50LSRERU1PX0FSVElGQUNUU19WRVJTSU9OLmphciAvb3B0L0ZEY2xpZW50LwotICAgICAgICAgICAgbXYgZG5zY2xpZW50LnNoIC9vcHQvRkRjbGllbnQvCi0gICAgICAgICAgICBtdiBzZXRfZ3JlX3R1bm5lbC5zaCAvb3B0L0ZEY2xpZW50LwogCi0gICAgICAgICAgICBjaG1vZCAreCB2X2Ruc19pbml0LnNoCi0gICAgICAgICAgICBjaG1vZCAreCB2ZG5zLnNoCi0gICAgICAgICAgICBjaG1vZCAreCAvb3B0L0ZEY2xpZW50L2Ruc2NsaWVudC5zaAotICAgICAgICAgICAgY2htb2QgK3ggL29wdC9GRGNsaWVudC9zZXRfZ3JlX3R1bm5lbC5zaAotCi0gICAgICAgICAgICBlY2hvICRMQl9PQU1fSU5UID4gY29uZmlnL2xiX29hbV9pbnQudHh0Ci0gICAgICAgICAgICBlY2hvICRMQl9QUklWQVRFX0lQQUREUiA+IGNvbmZpZy9sYl9wcml2YXRlX2lwYWRkci50eHQKLSAgICAgICAgICAgIGVjaG8gJExPQ0FMX1BSSVZBVEVfSVBBRERSID4gY29uZmlnL2xvY2FsX3ByaXZhdGVfaXBhZGRyLnR4dAotICAgICAgICAgICAgZWNobyAkREVNT19BUlRJRkFDVFNfVkVSU0lPTiA+IGNvbmZpZy9hcnRpZmFjdHNfdmVyc2lvbi50eHQKLQotICAgICAgICAgICAgIyBEb3dubG9hZCBCaW5kIGNvbmZpZyBmaWxlcwotICAgICAgICAgICAgY2QgL29wdC9jb25maWcKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmxiLyRERU1PX0FSVElGQUNUU19WRVJTSU9OL2RiX2Ruc2RlbW9fb3BlbmVjb21wX29yZwotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vbmFtZWQuY29uZi5vcHRpb25zCi0gICAgICAgICAgICB3Z2V0ICRSRVBPX1VSTF9CTE9CL29yZy5vcGVuZWNvbXAuZGVtby92bmZzL3ZsYi8kREVNT19BUlRJRkFDVFNfVkVSU0lPTi9uYW1lZC5jb25mLmxvY2FsCi0KLSAgICAgICAgICAgICMgQ29uZmlndXJlIEJpbmQKLSAgICAgICAgICAgIG1vZHByb2JlIGlwX2dyZQotICAgICAgICAgICAgbWtkaXIgL2V0Yy9iaW5kL3pvbmVzCi0gICAgICAgICAgICBzZWQgLWkgInMvT1BUSU9OUz0uKi9PUFRJT05TPVwiLTQgLXUgYmluZFwiL2ciIC9ldGMvZGVmYXVsdC9iaW5kOQotICAgICAgICAgICAgbXYgZGJfZG5zZGVtb19vcGVuZWNvbXBfb3JnIC9ldGMvYmluZC96b25lcy9kYi5kbnNkZW1vLm9wZW5lY29tcC5vcmcKLSAgICAgICAgICAgIG12IG5hbWVkLmNvbmYub3B0aW9ucyAvZXRjL2JpbmQvCi0gICAgICAgICAgICBtdiBuYW1lZC5jb25mLmxvY2FsIC9ldGMvYmluZC8KLSAgICAgICAgICAgIHNsZWVwIDEKLQotICAgICAgICAgICAgIyBSdW4gaW5zdGFudGlhdGlvbiBzY3JpcHQKLSAgICAgICAgICAgIGNkIC9vcHQKLSAgICAgICAgICAgIG12IHZkbnMuc2ggL2V0Yy9pbml0LmQKLSAgICAgICAgICAgIHVwZGF0ZS1yYy5kIHZkbnMuc2ggZGVmYXVsdHMKLSAgICAgICAgICAgIC4vdl9kbnNfaW5pdC5zaAotCi0gIHZkbnNfcHJpdmF0ZV8wX3BvcnQ6CisgIHZwZ19wcml2YXRlXzBfcG9ydDoKICAgICB0eXBlOiBPUzo6TmV1dHJvbjo6UG9ydAogICAgIHByb3BlcnRpZXM6Ci0gICAgICBuZXR3b3JrOiB7IGdldF9yZXNvdXJjZTogdmxiX3ByaXZhdGVfbmV0d29yayB9Ci0gICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3Jlc291cmNlOiB2bGJfcHJpdmF0ZV9zdWJuZXQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdmRuc19wcml2YXRlX2lwXzAgfX1dCisgICAgICBuZXR3b3JrOiB7IGdldF9yZXNvdXJjZTogcGt0Z2VuX3ByaXZhdGVfbmV0d29yayB9CisgICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3Jlc291cmNlOiBwa3RnZW5fcHJpdmF0ZV9zdWJuZXQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdnBnX3ByaXZhdGVfaXBfMCB9fV0KIAotICB2ZG5zX3ByaXZhdGVfMV9wb3J0OgorICB2cGdfcHJpdmF0ZV8xX3BvcnQ6CiAgICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKICAgICBwcm9wZXJ0aWVzOgotICAgICAgbmV0d29yazogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfbmV0X2lkIH0KLSAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZkbnNfcHJpdmF0ZV9pcF8xIH19XQorICAgICAgbmV0d29yazogeyBnZXRfcGFyYW06IG9uYXBfcHJpdmF0ZV9uZXRfaWQgfQorICAgICAgZml4ZWRfaXBzOiBbeyJzdWJuZXQiOiB7IGdldF9wYXJhbTogb25hcF9wcml2YXRlX3N1Ym5ldF9pZCB9LCAiaXBfYWRkcmVzcyI6IHsgZ2V0X3BhcmFtOiB2cGdfcHJpdmF0ZV9pcF8xIH19XQorCisgIHZwZ18wOgorICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXIKKyAgICBwcm9wZXJ0aWVzOgorICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiB2bGJfaW1hZ2VfbmFtZSB9CisgICAgICBmbGF2b3I6IHsgZ2V0X3BhcmFtOiB2bGJfZmxhdm9yX25hbWUgfQorICAgICAgbmFtZTogeyBnZXRfcGFyYW06IHZwZ19uYW1lXzAgfQorICAgICAga2V5X25hbWU6IHsgZ2V0X3Jlc291cmNlOiBteV9rZXlwYWlyIH0KKyAgICAgIG5ldHdvcmtzOgorICAgICAgICAtIG5ldHdvcms6IHsgZ2V0X3BhcmFtOiBwdWJsaWNfbmV0X2lkIH0KKyAgICAgICAgLSBwb3J0OiB7IGdldF9yZXNvdXJjZTogdnBnX3ByaXZhdGVfMF9wb3J0IH0KKyAgICAgICAgLSBwb3J0OiB7IGdldF9yZXNvdXJjZTogdnBnX3ByaXZhdGVfMV9wb3J0IH0KKyAgICAgIHVzZXJfZGF0YV9mb3JtYXQ6IFJBVworICAgICAgdXNlcl9kYXRhOgorICAgICAgICBzdHJfcmVwbGFjZToKKyAgICAgICAgICBwYXJhbXM6CisgICAgICAgICAgICBfX3JlcG9fdXJsX2Jsb2JfXzogeyBnZXRfcGFyYW06IHJlcG9fdXJsX2Jsb2IgfQorICAgICAgICAgICAgX19yZXBvX3VybF9hcnRpZmFjdHNfXzogeyBnZXRfcGFyYW06IHJlcG9fdXJsX2FydGlmYWN0cyB9CisgICAgICAgICAgICBfX2xvY2FsX3ByaXZhdGVfaXBhZGRyX186IHsgZ2V0X3BhcmFtOiB2cGdfcHJpdmF0ZV9pcF8wIH0KKyAgICAgICAgICAgIF9fb2FtX3ByaXZhdGVfaXBhZGRyX186IHsgZ2V0X3BhcmFtOiB2cGdfcHJpdmF0ZV9pcF8xIH0KKyAgICAgICAgICAgIF9fb25hcF9wcml2YXRlX25ldF9jaWRyX186IHsgZ2V0X3BhcmFtOiBvbmFwX3ByaXZhdGVfbmV0X2NpZHIgfQorICAgICAgICAgICAgX19wa3RnZW5fcHJpdmF0ZV9uZXRfY2lkcl9fOiB7IGdldF9wYXJhbTogcGt0Z2VuX3ByaXZhdGVfbmV0X2NpZHIgfQorICAgICAgICAgICAgX192bGJfaXBhZGRyX186IHsgZ2V0X3BhcmFtOiB2bGJfcHJpdmF0ZV9pcF8yIH0KKyAgICAgICAgICAgIF9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fOiB7IGdldF9wYXJhbTogZGVtb19hcnRpZmFjdHNfdmVyc2lvbiB9CisgICAgICAgICAgICBfX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXzogeyBnZXRfcGFyYW06IGluc3RhbGxfc2NyaXB0X3ZlcnNpb24gfQorICAgICAgICAgICAgX19wZ19pbnRfXzogeyBnZXRfcGFyYW06IHBnX2ludCB9CisgICAgICAgICAgICBfX3ZsYl9tYWNfXzogeyBnZXRfYXR0cjogW3ZsYl9wcml2YXRlXzJfcG9ydCwgbWFjX2FkZHJlc3NdIH0KKyAgICAgICAgICAgIF9fY2xvdWRfZW52X186IHsgZ2V0X3BhcmFtOiBjbG91ZF9lbnYgfQorICAgICAgICAgIHRlbXBsYXRlOiB8CisgICAgICAgICAgICAjIS9iaW4vYmFzaAorCisgICAgICAgICAgICAjIENyZWF0ZSBjb25maWd1cmF0aW9uIGZpbGVzCisgICAgICAgICAgICBta2RpciAvb3B0L2NvbmZpZworICAgICAgICAgICAgZWNobyAiX19vYW1fcHJpdmF0ZV9pcGFkZHJfXyIgPiAvb3B0L2NvbmZpZy9vYW1fcHJpdmF0ZV9pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX29uYXBfcHJpdmF0ZV9uZXRfY2lkcl9fIiA+IC9vcHQvY29uZmlnL29uYXBfcHJpdmF0ZV9uZXRfY2lkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fbG9jYWxfcHJpdmF0ZV9pcGFkZHJfXyIgPiAvb3B0L2NvbmZpZy9sb2NhbF9wcml2YXRlX2lwYWRkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fcGt0Z2VuX3ByaXZhdGVfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy9wa3RnZW5fcHJpdmF0ZV9uZXRfY2lkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fdmxiX2lwYWRkcl9fIiA+IC9vcHQvY29uZmlnL3ZsYl9pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX3JlcG9fdXJsX2Jsb2JfXyIgPiAvb3B0L2NvbmZpZy9yZXBvX3VybF9ibG9iLnR4dAorICAgICAgICAgICAgZWNobyAiX19yZXBvX3VybF9hcnRpZmFjdHNfXyIgPiAvb3B0L2NvbmZpZy9yZXBvX3VybF9hcnRpZmFjdHMudHh0CisgICAgICAgICAgICBlY2hvICJfX2RlbW9fYXJ0aWZhY3RzX3ZlcnNpb25fXyIgPiAvb3B0L2NvbmZpZy9kZW1vX2FydGlmYWN0c192ZXJzaW9uLnR4dAorICAgICAgICAgICAgZWNobyAiX19pbnN0YWxsX3NjcmlwdF92ZXJzaW9uX18iID4gL29wdC9jb25maWcvaW5zdGFsbF9zY3JpcHRfdmVyc2lvbi50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fcGdfaW50X18iID4gL29wdC9jb25maWcvcGdfaW50LnR4dAorICAgICAgICAgICAgZWNobyAiX192bGJfbWFjX18iID4gL29wdC9jb25maWcvdmxiX21hYy50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fY2xvdWRfZW52X18iID4gL29wdC9jb25maWcvY2xvdWRfZW52LnR4dAorCisgICAgICAgICAgICAjIERvd25sb2FkIGFuZCBydW4gaW5zdGFsbCBzY3JpcHQKKyAgICAgICAgICAgIGN1cmwgLWsgX19yZXBvX3VybF9ibG9iX18vb3JnLm9uYXAuZGVtby92bmZzL3ZsYi9fX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXy92X3BhY2tldGdlbl9pbnN0YWxsLnNoIC1vIC9vcHQvdl9wYWNrZXRnZW5faW5zdGFsbC5zaAorICAgICAgICAgICAgY2QgL29wdAorICAgICAgICAgICAgY2htb2QgK3ggdl9wYWNrZXRnZW5faW5zdGFsbC5zaAorICAgICAgICAgICAgLi92X3BhY2tldGdlbl9pbnN0YWxsLnNoClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV92bGIvZG5zc2NhbGluZy55YW1sIGIvcm9ib3QvYXNzZXRzL2FzZGMvYmFzZV92bGIvZG5zc2NhbGluZy55YW1sCmluZGV4IDAwM2RlYjkuLjg1NmRmMWEgMTAwNjQ0Ci0tLSBhL3JvYm90L2Fzc2V0cy9hc2RjL2Jhc2VfdmxiL2Ruc3NjYWxpbmcueWFtbAorKysgYi9yb2JvdC9hc3NldHMvYXNkYy9iYXNlX3ZsYi9kbnNzY2FsaW5nLnlhbWwKQEAgLTEsNiArMSwzNiBAQAorIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMKKyM9PT09PT09PT09PT09PT09PT1MSUNFTlNFX1NUQVJUPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjCisjCisjIENvcHlyaWdodCCpIDIwMTcgQVQmVCBJbnRlbGxlY3R1YWwgUHJvcGVydHkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworIyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisjIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorIyAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCisjPT09PT09PT09PT09PT09PT09TElDRU5TRV9FTkQ9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIworIyBFQ09NUCBpcyBhIHRyYWRlbWFyayBhbmQgc2VydmljZSBtYXJrIG9mIEFUJlQgSW50ZWxsZWN0dWFsIFByb3BlcnR5LgorIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKwogaGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzCiAKLWRlc2NyaXB0aW9uOiBIZWF0IHRlbXBsYXRlIHRvIGRlcGxveSBhIHZETlMgZm9yIE9wZW5FQ09NUCAoc2NhbGluZy11cCBzY2VuYXJpbykKK2Rlc2NyaXB0aW9uOiBIZWF0IHRlbXBsYXRlIHRvIGRlcGxveSBhIHZETlMgZm9yIE9OQVAgKHNjYWxpbmctdXAgc2NlbmFyaW8pCisKKyMjIyMjIyMjIyMjIyMjCisjICAgICAgICAgICAgIworIyBQQVJBTUVURVJTICMKKyMgICAgICAgICAgICAjCisjIyMjIyMjIyMjIyMjIwogCiBwYXJhbWV0ZXJzOgogICB2bGJfaW1hZ2VfbmFtZToKQEAgLTE5LDMwICs0OSwzOCBAQAogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiB2TG9hZEJhbGFuY2VyIHByaXZhdGUgbmV0d29yayBuYW1lIG9yIElECiAgICAgZGVzY3JpcHRpb246IFByaXZhdGUgbmV0d29yayB0aGF0IGNvbm5lY3RzIHZMb2FkQmFsYW5jZXIgd2l0aCB2RE5TcwotICBlY29tcF9wcml2YXRlX25ldF9pZDoKKyAgb25hcF9wcml2YXRlX25ldF9pZDoKICAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogRUNPTVAgbWFuYWdlbWVudCBuZXR3b3JrIG5hbWUgb3IgSUQKLSAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBuZXR3b3JrIHRoYXQgY29ubmVjdHMgRUNPTVAgY29tcG9uZW50IGFuZCB0aGUgVk5GCi0gIGVjb21wX3ByaXZhdGVfc3VibmV0X2lkOgorICAgIGxhYmVsOiBPTkFQIG1hbmFnZW1lbnQgbmV0d29yayBuYW1lIG9yIElECisgICAgZGVzY3JpcHRpb246IFByaXZhdGUgbmV0d29yayB0aGF0IGNvbm5lY3RzIE9OQVAgY29tcG9uZW50IGFuZCB0aGUgVk5GCisgIG9uYXBfcHJpdmF0ZV9zdWJuZXRfaWQ6CiAgICAgdHlwZTogc3RyaW5nCi0gICAgbGFiZWw6IEVDT01QIG1hbmFnZW1lbnQgc3ViLW5ldHdvcmsgbmFtZSBvciBJRAotICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIHN1Yi1uZXR3b3JrIHRoYXQgY29ubmVjdHMgRUNPTVAgY29tcG9uZW50IGFuZCB0aGUgVk5GCisgICAgbGFiZWw6IE9OQVAgbWFuYWdlbWVudCBzdWItbmV0d29yayBuYW1lIG9yIElECisgICAgZGVzY3JpcHRpb246IFByaXZhdGUgc3ViLW5ldHdvcmsgdGhhdCBjb25uZWN0cyBPTkFQIGNvbXBvbmVudCBhbmQgdGhlIFZORgorICB2bGJfcHJpdmF0ZV9uZXRfY2lkcjoKKyAgICB0eXBlOiBzdHJpbmcKKyAgICBsYWJlbDogdkxvYWRCYWxhbmNlciBwcml2YXRlIG5ldHdvcmsgQ0lEUgorICAgIGRlc2NyaXB0aW9uOiBUaGUgQ0lEUiBvZiB0aGUgdkxvYWRCYWxhbmNlciBwcml2YXRlIG5ldHdvcmsKKyAgb25hcF9wcml2YXRlX25ldF9jaWRyOgorICAgIHR5cGU6IHN0cmluZworICAgIGxhYmVsOiBPTkFQIHByaXZhdGUgbmV0d29yayBDSURSCisgICAgZGVzY3JpcHRpb246IFRoZSBDSURSIG9mIHRoZSBwcm90ZWN0ZWQgcHJpdmF0ZSBuZXR3b3JrCiAgIHZsYl9wcml2YXRlX2lwXzA6CiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IHZMb2FkQmFsYW5jZXIgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIHByaXZhdGUgbmV0d29yawogICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdkxvYWRCYWxhbmNlciB0byBjb21tdW5pY2F0ZSB3aXRoIHRoZSB2RE5TcwogICB2bGJfcHJpdmF0ZV9pcF8xOgogICAgIHR5cGU6IHN0cmluZwotICAgIGxhYmVsOiB2TG9hZEJhbGFuY2VyIHByaXZhdGUgSVAgYWRkcmVzcyB0b3dhcmRzIHRoZSBFQ09NUCBtYW5hZ2VtZW50IG5ldHdvcmsKLSAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBJUCBhZGRyZXNzIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZMb2FkQmFsYW5jZXIgdG8gY29tbXVuaWNhdGUgd2l0aCBFQ09NUCBjb21wb25lbnRzCisgICAgbGFiZWw6IHZMb2FkQmFsYW5jZXIgcHJpdmF0ZSBJUCBhZGRyZXNzIHRvd2FyZHMgdGhlIE9OQVAgbWFuYWdlbWVudCBuZXR3b3JrCisgICAgZGVzY3JpcHRpb246IFByaXZhdGUgSVAgYWRkcmVzcyB0aGF0IGlzIGFzc2lnbmVkIHRvIHRoZSB2TG9hZEJhbGFuY2VyIHRvIGNvbW11bmljYXRlIHdpdGggT05BUCBjb21wb25lbnRzCiAgIHZkbnNfcHJpdmF0ZV9pcF8wOgogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiB2RE5TIHByaXZhdGUgSVAgYWRkcmVzcyB0b3dhcmRzIHRoZSBwcml2YXRlIG5ldHdvcmsKICAgICBkZXNjcmlwdGlvbjogUHJpdmF0ZSBJUCBhZGRyZXNzIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHZETlMgdG8gY29tbXVuaWNhdGUgd2l0aCB0aGUgdkxvYWRCYWxhbmNlcgogICB2ZG5zX3ByaXZhdGVfaXBfMToKICAgICB0eXBlOiBzdHJpbmcKLSAgICBsYWJlbDogdkROUyBwcml2YXRlIElQIGFkZHJlc3MgdG93YXJkcyB0aGUgRUNPTVAgbWFuYWdlbWVudCBuZXR3b3JrCi0gICAgZGVzY3JpcHRpb246IFByaXZhdGUgSVAgYWRkcmVzcyB0aGF0IGlzIGFzc2lnbmVkIHRvIHRoZSB2RE5TIHRvIGNvbW11bmljYXRlIHdpdGggRUNPTVAgY29tcG9uZW50cworICAgIGxhYmVsOiB2RE5TIHByaXZhdGUgSVAgYWRkcmVzcyB0b3dhcmRzIHRoZSBPTkFQIG1hbmFnZW1lbnQgbmV0d29yaworICAgIGRlc2NyaXB0aW9uOiBQcml2YXRlIElQIGFkZHJlc3MgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgdkROUyB0byBjb21tdW5pY2F0ZSB3aXRoIE9OQVAgY29tcG9uZW50cwogICB2ZG5zX25hbWVfMDoKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogdkROUyBuYW1lCkBAIC01MCwxMSArODgsMTEgQEAKICAgdm5mX2lkOgogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiBWTkYgSUQKLSAgICBkZXNjcmlwdGlvbjogVGhlIFZORiBJRCBpcyBwcm92aWRlZCBieSBFQ09NUAorICAgIGRlc2NyaXB0aW9uOiBUaGUgVk5GIElEIGlzIHByb3ZpZGVkIGJ5IE9OQVAKICAgdmZfbW9kdWxlX2lkOgogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiB2RmlyZXdhbGwgbW9kdWxlIElECi0gICAgZGVzY3JpcHRpb246IFRoZSB2TG9hZEJhbGFuY2VyIE1vZHVsZSBJRCBpcyBwcm92aWRlZCBieSBFQ09NUAorICAgIGRlc2NyaXB0aW9uOiBUaGUgdkxvYWRCYWxhbmNlciBNb2R1bGUgSUQgaXMgcHJvdmlkZWQgYnkgT05BUAogICBrZXlfbmFtZToKICAgICB0eXBlOiBzdHJpbmcKICAgICBsYWJlbDogS2V5IHBhaXIgbmFtZQpAQCAtNzEsMTAgKzEwOSwyNCBAQAogICAgIHR5cGU6IHN0cmluZwogICAgIGxhYmVsOiBSZXBvc2l0b3J5IFVSTAogICAgIGRlc2NyaXB0aW9uOiBVUkwgb2YgdGhlIHJlcG9zaXRvcnkgdGhhdCBob3N0cyB0aGUgZGVtbyBwYWNrYWdlcworICBpbnN0YWxsX3NjcmlwdF92ZXJzaW9uOgorICAgIHR5cGU6IHN0cmluZworICAgIGxhYmVsOiBJbnN0YWxsYXRpb24gc2NyaXB0IHZlcnNpb24gbnVtYmVyCisgICAgZGVzY3JpcHRpb246IFZlcnNpb24gbnVtYmVyIG9mIHRoZSBzY3JpcHRzIHRoYXQgaW5zdGFsbCB0aGUgdkZXIGRlbW8gYXBwCiAgIGRlbW9fYXJ0aWZhY3RzX3ZlcnNpb246CiAgICAgdHlwZTogc3RyaW5nCiAgICAgbGFiZWw6IEFydGlmYWN0cyB2ZXJzaW9uIHVzZWQgaW4gZGVtbyB2bmZzCiAgICAgZGVzY3JpcHRpb246IEFydGlmYWN0cyAoamFyLCB0YXIuZ3opIHZlcnNpb24gdXNlZCBpbiBkZW1vIHZuZnMKKyAgY2xvdWRfZW52OgorICAgIHR5cGU6IHN0cmluZworICAgIGxhYmVsOiBDbG91ZCBlbnZpcm9ubWVudAorICAgIGRlc2NyaXB0aW9uOiBDbG91ZCBlbnZpcm9ubWVudCAoZS5nLiwgb3BlbnN0YWNrLCByYWNrc3BhY2UpCisKKyMjIyMjIyMjIyMjIyMKKyMgICAgICAgICAgICMKKyMgUkVTT1VSQ0VTICMKKyMgICAgICAgICAgICMKKyMjIyMjIyMjIyMjIyMKIAogcmVzb3VyY2VzOgogCkBAIC05NSw3ICsxNDcsMTkgQEAKICAgICAgIHB1YmxpY19rZXk6IHsgZ2V0X3BhcmFtOiBwdWJfa2V5IH0KICAgICAgIHNhdmVfcHJpdmF0ZV9rZXk6IGZhbHNlCiAKLSAgdmRuc18wOgorICB2ZG5zXzJfcHJpdmF0ZV8wX3BvcnQ6CisgICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKKyAgICBwcm9wZXJ0aWVzOgorICAgICAgbmV0d29yazogeyBnZXRfcGFyYW06IHZsYl9wcml2YXRlX25ldF9pZCB9CisgICAgICBmaXhlZF9pcHM6IFt7InN1Ym5ldCI6IHsgZ2V0X3BhcmFtOiB2bGJfcHJpdmF0ZV9uZXRfaWQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdmRuc19wcml2YXRlX2lwXzAgfX1dCisKKyAgdmRuc18yX3ByaXZhdGVfMV9wb3J0OgorICAgIHR5cGU6IE9TOjpOZXV0cm9uOjpQb3J0CisgICAgcHJvcGVydGllczoKKyAgICAgIG5ldHdvcms6IHsgZ2V0X3BhcmFtOiBvbmFwX3ByaXZhdGVfbmV0X2lkIH0KKyAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcGFyYW06IG9uYXBfcHJpdmF0ZV9zdWJuZXRfaWQgfSwgImlwX2FkZHJlc3MiOiB7IGdldF9wYXJhbTogdmRuc19wcml2YXRlX2lwXzEgfX1dCisKKyAgdmRuc18yOgogICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXIKICAgICBwcm9wZXJ0aWVzOgogICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiB2bGJfaW1hZ2VfbmFtZSB9CkBAIC0xMDQsOTEgKzE2OCw0MyBAQAogICAgICAga2V5X25hbWU6IHsgZ2V0X3Jlc291cmNlOiBteV9rZXlwYWlyIH0KICAgICAgIG5ldHdvcmtzOgogICAgICAgICAtIG5ldHdvcms6IHsgZ2V0X3BhcmFtOiBwdWJsaWNfbmV0X2lkIH0KLSAgICAgICAgLSBwb3J0OiB7IGdldF9yZXNvdXJjZTogdmRuc19wcml2YXRlXzBfcG9ydCB9Ci0gICAgICAgIC0gcG9ydDogeyBnZXRfcmVzb3VyY2U6IHZkbnNfcHJpdmF0ZV8xX3BvcnQgfQorICAgICAgICAtIHBvcnQ6IHsgZ2V0X3Jlc291cmNlOiB2ZG5zXzJfcHJpdmF0ZV8wX3BvcnQgfQorICAgICAgICAtIHBvcnQ6IHsgZ2V0X3Jlc291cmNlOiB2ZG5zXzJfcHJpdmF0ZV8xX3BvcnQgfQogICAgICAgbWV0YWRhdGE6IHt2bmZfaWQ6IHsgZ2V0X3BhcmFtOiB2bmZfaWQgfSwgdmZfbW9kdWxlX2lkOiB7IGdldF9wYXJhbTogdmZfbW9kdWxlX2lkIH19CiAgICAgICB1c2VyX2RhdGFfZm9ybWF0OiBSQVcKICAgICAgIHVzZXJfZGF0YToKICAgICAgICAgc3RyX3JlcGxhY2U6CiAgICAgICAgICAgcGFyYW1zOgotICAgICAgICAgICAgX19sYl9vYW1faW50X18gOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMSB9CisgICAgICAgICAgICBfX2xiX29hbV9pbnRfXzogeyBnZXRfcGFyYW06IHZsYl9wcml2YXRlX2lwXzEgfQogICAgICAgICAgICAgX19sYl9wcml2YXRlX2lwYWRkcl9fOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfaXBfMCB9CiAgICAgICAgICAgICBfX2xvY2FsX3ByaXZhdGVfaXBhZGRyX186IHsgZ2V0X3BhcmFtOiB2ZG5zX3ByaXZhdGVfaXBfMCB9Ci0gICAgICAgICAgICBfX3JlcG9fdXJsX2Jsb2JfXyA6IHsgZ2V0X3BhcmFtOiByZXBvX3VybF9ibG9iIH0KLSAgICAgICAgICAgIF9fcmVwb191cmxfYXJ0aWZhY3RzX18gOiB7IGdldF9wYXJhbTogcmVwb191cmxfYXJ0aWZhY3RzIH0KLSAgICAgICAgICAgIF9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fIDogeyBnZXRfcGFyYW06IGRlbW9fYXJ0aWZhY3RzX3ZlcnNpb24gfQorICAgICAgICAgICAgX19vYW1fcHJpdmF0ZV9pcGFkZHJfXzogeyBnZXRfcGFyYW06IHZkbnNfcHJpdmF0ZV9pcF8xIH0KKyAgICAgICAgICAgIF9fcmVwb191cmxfYmxvYl9fOiB7IGdldF9wYXJhbTogcmVwb191cmxfYmxvYiB9CisgICAgICAgICAgICBfX3JlcG9fdXJsX2FydGlmYWN0c19fOiB7IGdldF9wYXJhbTogcmVwb191cmxfYXJ0aWZhY3RzIH0KKyAgICAgICAgICAgIF9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fOiB7IGdldF9wYXJhbTogZGVtb19hcnRpZmFjdHNfdmVyc2lvbiB9CisgICAgICAgICAgICBfX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXzogeyBnZXRfcGFyYW06IGluc3RhbGxfc2NyaXB0X3ZlcnNpb24gfQorICAgICAgICAgICAgX192bGJfcHJpdmF0ZV9uZXRfY2lkcl9fOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfbmV0X2NpZHIgfQorICAgICAgICAgICAgX19vbmFwX3ByaXZhdGVfbmV0X2NpZHJfXzogeyBnZXRfcGFyYW06IG9uYXBfcHJpdmF0ZV9uZXRfY2lkciB9CisgICAgICAgICAgICBfX2Nsb3VkX2Vudl9fOiB7IGdldF9wYXJhbTogY2xvdWRfZW52IH0KICAgICAgICAgICB0ZW1wbGF0ZTogfAogICAgICAgICAgICAgIyEvYmluL2Jhc2gKIAotICAgICAgICAgICAgTEJfT0FNX0lOVD1fX2xiX29hbV9pbnRfXwotICAgICAgICAgICAgTEJfUFJJVkFURV9JUEFERFI9X19sYl9wcml2YXRlX2lwYWRkcl9fCi0gICAgICAgICAgICBMT0NBTF9QUklWQVRFX0lQQUREUj1fX2xvY2FsX3ByaXZhdGVfaXBhZGRyX18KLSAgICAgICAgICAgIFJFUE9fVVJMX0JMT0I9X19yZXBvX3VybF9ibG9iX18KLSAgICAgICAgICAgIFJFUE9fVVJMX0FSVElGQUNUUz1fX3JlcG9fdXJsX2FydGlmYWN0c19fCi0gICAgICAgICAgICBERU1PX0FSVElGQUNUU19WRVJTSU9OPV9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fCi0KLSAgICAgICAgICAgICMgRG93bmxvYWQgcmVxdWlyZWQgZGVwZW5kZW5jaWVzCi0gICAgICAgICAgICBhZGQtYXB0LXJlcG9zaXRvcnkgLXkgcHBhOm9wZW5qZGstci9wcGEKLSAgICAgICAgICAgIGFwdC1nZXQgdXBkYXRlCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgd2dldCBvcGVuamRrLTgtamRrIGJpbmQ5IGJpbmQ5dXRpbHMgYmluZDktZG9jIGFwdC10cmFuc3BvcnQtaHR0cHMgY2EtY2VydGlmaWNhdGVzCi0gICAgICAgICAgICBhcHQtZ2V0IGluc3RhbGwgLXkgbWF2ZW4KLSAgICAgICAgICAgIHNsZWVwIDEKLQotICAgICAgICAgICAgIyBEb3dubG9hZCB2RE5TIGRlbW8gY29kZSBmb3IgRE5TIFNlcnZlcgorICAgICAgICAgICAgIyBDcmVhdGUgY29uZmlndXJhdGlvbiBmaWxlcwogICAgICAgICAgICAgbWtkaXIgL29wdC9jb25maWcKLSAgICAgICAgICAgIG1rZGlyIC9vcHQvRkRjbGllbnQKKyAgICAgICAgICAgIGVjaG8gIl9fbGJfb2FtX2ludF9fIiA+IC9vcHQvY29uZmlnL2xiX29hbV9pbnQudHh0CisgICAgICAgICAgICBlY2hvICJfX2xiX3ByaXZhdGVfaXBhZGRyX18iID4gL29wdC9jb25maWcvbGJfcHJpdmF0ZV9pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX2xvY2FsX3ByaXZhdGVfaXBhZGRyX18iID4gL29wdC9jb25maWcvbG9jYWxfcHJpdmF0ZV9pcGFkZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX29hbV9wcml2YXRlX2lwYWRkcl9fIiA+IC9vcHQvY29uZmlnL29hbV9wcml2YXRlX2lwYWRkci50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fcmVwb191cmxfYmxvYl9fIiA+IC9vcHQvY29uZmlnL3JlcG9fdXJsX2Jsb2IudHh0CisgICAgICAgICAgICBlY2hvICJfX3JlcG9fdXJsX2FydGlmYWN0c19fIiA+IC9vcHQvY29uZmlnL3JlcG9fdXJsX2FydGlmYWN0cy50eHQKKyAgICAgICAgICAgIGVjaG8gIl9fZGVtb19hcnRpZmFjdHNfdmVyc2lvbl9fIiA+IC9vcHQvY29uZmlnL2RlbW9fYXJ0aWZhY3RzX3ZlcnNpb24udHh0CisgICAgICAgICAgICBlY2hvICJfX2luc3RhbGxfc2NyaXB0X3ZlcnNpb25fXyIgPiAvb3B0L2NvbmZpZy9pbnN0YWxsX3NjcmlwdF92ZXJzaW9uLnR4dAorICAgICAgICAgICAgZWNobyAiX192bGJfcHJpdmF0ZV9uZXRfY2lkcl9fIiA+IC9vcHQvY29uZmlnL3ZsYl9wcml2YXRlX25ldF9jaWRyLnR4dAorICAgICAgICAgICAgZWNobyAiX19vbmFwX3ByaXZhdGVfbmV0X2NpZHJfXyIgPiAvb3B0L2NvbmZpZy9vbmFwX3ByaXZhdGVfbmV0X2NpZHIudHh0CisgICAgICAgICAgICBlY2hvICJfX2Nsb3VkX2Vudl9fIiA+IC9vcHQvY29uZmlnL2Nsb3VkX2Vudi50eHQKKworICAgICAgICAgICAgIyBEb3dubG9hZCBhbmQgcnVuIGluc3RhbGwgc2NyaXB0CisgICAgICAgICAgICBjdXJsIC1rIF9fcmVwb191cmxfYmxvYl9fL29yZy5vbmFwLmRlbW8vdm5mcy92bGIvX19pbnN0YWxsX3NjcmlwdF92ZXJzaW9uX18vdl9kbnNfaW5zdGFsbC5zaCAtbyAvb3B0L3ZfZG5zX2luc3RhbGwuc2gKICAgICAgICAgICAgIGNkIC9vcHQKLQotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vdl9kbnNfaW5pdC5zaAotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vdmRucy5zaAotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vZG5zY2xpZW50LnNoCi0gICAgICAgICAgICB3Z2V0ICRSRVBPX1VSTF9CTE9CL29yZy5vcGVuZWNvbXAuZGVtby92bmZzL3ZsYi8kREVNT19BUlRJRkFDVFNfVkVSU0lPTi9zZXRfZ3JlX3R1bm5lbC5zaAotCi0gICAgICAgICAgICBtdm4gb3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zOm1hdmVuLWRlcGVuZGVuY3ktcGx1Z2luOjIuMTA6Z2V0IC1EcmVtb3RlUmVwb3NpdG9yaWVzPSRSRVBPX1VSTF9BUlRJRkFDVFMgLURhcnRpZmFjdD1vcmcub3BlbmVjb21wLmRlbW8udm5mLnZsYjpkbnMtY2xpZW50OiRERU1PX0FSVElGQUNUU19WRVJTSU9OOmphciAtRHRyYW5zaXRpdmU9ZmFsc2UgLURkZXN0PS4KLQotICAgICAgICAgICAgbXYgZG5zLWNsaWVudC0kREVNT19BUlRJRkFDVFNfVkVSU0lPTi5qYXIgL29wdC9GRGNsaWVudC8KLSAgICAgICAgICAgIG12IGRuc2NsaWVudC5zaCAvb3B0L0ZEY2xpZW50LwotICAgICAgICAgICAgbXYgc2V0X2dyZV90dW5uZWwuc2ggL29wdC9GRGNsaWVudC8KLQotICAgICAgICAgICAgY2htb2QgK3ggdl9kbnNfaW5pdC5zaAotICAgICAgICAgICAgY2htb2QgK3ggdmRucy5zaAotICAgICAgICAgICAgY2htb2QgK3ggL29wdC9GRGNsaWVudC9kbnNjbGllbnQuc2gKLSAgICAgICAgICAgIGNobW9kICt4IC9vcHQvRkRjbGllbnQvc2V0X2dyZV90dW5uZWwuc2gKLQotICAgICAgICAgICAgZWNobyAkTEJfT0FNX0lOVCA+IGNvbmZpZy9sYl9vYW1faW50LnR4dAotICAgICAgICAgICAgZWNobyAkTEJfUFJJVkFURV9JUEFERFIgPiBjb25maWcvbGJfcHJpdmF0ZV9pcGFkZHIudHh0Ci0gICAgICAgICAgICBlY2hvICRMT0NBTF9QUklWQVRFX0lQQUREUiA+IGNvbmZpZy9sb2NhbF9wcml2YXRlX2lwYWRkci50eHQKLSAgICAgICAgICAgIGVjaG8gJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04gPiBjb25maWcvYXJ0aWZhY3RzX3ZlcnNpb24udHh0Ci0KLSAgICAgICAgICAgICMgRG93bmxvYWQgQmluZCBjb25maWcgZmlsZXMKLSAgICAgICAgICAgIGNkIC9vcHQvY29uZmlnCi0gICAgICAgICAgICB3Z2V0ICRSRVBPX1VSTF9CTE9CL29yZy5vcGVuZWNvbXAuZGVtby92bmZzL3ZsYi8kREVNT19BUlRJRkFDVFNfVkVSU0lPTi9kYl9kbnNkZW1vX29wZW5lY29tcF9vcmcKLSAgICAgICAgICAgIHdnZXQgJFJFUE9fVVJMX0JMT0Ivb3JnLm9wZW5lY29tcC5kZW1vL3ZuZnMvdmxiLyRERU1PX0FSVElGQUNUU19WRVJTSU9OL25hbWVkLmNvbmYub3B0aW9ucwotICAgICAgICAgICAgd2dldCAkUkVQT19VUkxfQkxPQi9vcmcub3BlbmVjb21wLmRlbW8vdm5mcy92bGIvJERFTU9fQVJUSUZBQ1RTX1ZFUlNJT04vbmFtZWQuY29uZi5sb2NhbAotCi0gICAgICAgICAgICAjIENvbmZpZ3VyZSBCaW5kCi0gICAgICAgICAgICBtb2Rwcm9iZSBpcF9ncmUKLSAgICAgICAgICAgIG1rZGlyIC9ldGMvYmluZC96b25lcwotICAgICAgICAgICAgc2VkIC1pICJzL09QVElPTlM9LiovT1BUSU9OUz1cIi00IC11IGJpbmRcIi9nIiAvZXRjL2RlZmF1bHQvYmluZDkKLSAgICAgICAgICAgIG12IGRiX2Ruc2RlbW9fb3BlbmVjb21wX29yZyAvZXRjL2JpbmQvem9uZXMvZGIuZG5zZGVtby5vcGVuZWNvbXAub3JnCi0gICAgICAgICAgICBtdiBuYW1lZC5jb25mLm9wdGlvbnMgL2V0Yy9iaW5kLwotICAgICAgICAgICAgbXYgbmFtZWQuY29uZi5sb2NhbCAvZXRjL2JpbmQvCi0gICAgICAgICAgICBzbGVlcCAxCi0KLSAgICAgICAgICAgICMgUnVuIGluc3RhbnRpYXRpb24gc2NyaXB0Ci0gICAgICAgICAgICBjZCAvb3B0Ci0gICAgICAgICAgICBtdiB2ZG5zLnNoIC9ldGMvaW5pdC5kCi0gICAgICAgICAgICB1cGRhdGUtcmMuZCB2ZG5zLnNoIGRlZmF1bHRzCi0gICAgICAgICAgICAuL3ZfZG5zX2luaXQuc2gKLQotICB2ZG5zX3ByaXZhdGVfMF9wb3J0OgotICAgIHR5cGU6IE9TOjpOZXV0cm9uOjpQb3J0Ci0gICAgcHJvcGVydGllczoKLSAgICAgIG5ldHdvcms6IHsgZ2V0X3BhcmFtOiB2bGJfcHJpdmF0ZV9uZXRfaWQgfQotICAgICAgZml4ZWRfaXBzOiBbeyJzdWJuZXQiOiB7IGdldF9wYXJhbTogdmxiX3ByaXZhdGVfbmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZkbnNfcHJpdmF0ZV9pcF8wIH19XQotCi0gIHZkbnNfcHJpdmF0ZV8xX3BvcnQ6Ci0gICAgdHlwZTogT1M6Ok5ldXRyb246OlBvcnQKLSAgICBwcm9wZXJ0aWVzOgotICAgICAgbmV0d29yazogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfbmV0X2lkIH0KLSAgICAgIGZpeGVkX2lwczogW3sic3VibmV0IjogeyBnZXRfcGFyYW06IGVjb21wX3ByaXZhdGVfc3VibmV0X2lkIH0sICJpcF9hZGRyZXNzIjogeyBnZXRfcGFyYW06IHZkbnNfcHJpdmF0ZV9pcF8xIH19XQorICAgICAgICAgICAgY2htb2QgK3ggdl9kbnNfaW5zdGFsbC5zaAorICAgICAgICAgICAgLi92X2Ruc19pbnN0YWxsLnNoClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvcm9ib3QvYXNzZXRzL3NlcnZpY2VfbWFwcGluZ3MucHkgYi9yb2JvdC9hc3NldHMvc2VydmljZV9tYXBwaW5ncy5weQppbmRleCBjMWE1MDc5Li5iYWRjNWU1IDEwMDY0NAotLS0gYS9yb2JvdC9hc3NldHMvc2VydmljZV9tYXBwaW5ncy5weQorKysgYi9yb2JvdC9hc3NldHMvc2VydmljZV9tYXBwaW5ncy5weQpAQCAtNCw3ICs0LDYgQEAKIEdMT0JBTF9TRVJWSUNFX0ZPTERFUl9NQVBQSU5HID0geyJ2RlciIDogWydiYXNlX3ZmdyddLCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidkxCIiA6IFsnYmFzZV92bGInXSwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZWRyIgOiBbJ2Jhc2VfdnZnJ10sIFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2SU1TIiA6IFsnYmFzZV9jbGVhcndhdGVyJ10sIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2Q1BFIiA6IFsnYmFzZV92Y3BlX2luZnJhJywgJ2Jhc2VfdmNwZV92Ym5nJywgJ2Jhc2VfdmNwZV92YnJnZW11JywgJ2Jhc2VfdmNwZV92Z211eCcsICdiYXNlX3ZjcGVfdmd3J10sIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogCkBAIC0xOSw3ICsxOCw2IEBACiAgICAgInZMQiIgIDogW3siaXNCYXNlIiA6ICJ0cnVlIiwgICAidGVtcGxhdGUiIDogInZsYl9wcmVsb2FkLnRlbXBsYXRlIiwgIm5hbWVfcGF0dGVybiI6ICJiYXNlX3ZsYiJ9LAogICAgICAgICAgICAgICB7ImlzQmFzZSIgOiAiZmFsc2UiLCAgInRlbXBsYXRlIiA6ICJkbnNzY2FsaW5nX3ByZWxvYWQudGVtcGxhdGUiLCAibmFtZV9wYXR0ZXJuIjogImRuc3NjYWxpbmciLCAicHJlZml4IiA6ICJ2RE5TXyJ9XSwKICAgICAidlZHIiAgOiBbeyJpc0Jhc2UiIDogInRydWUiLCAgICJ0ZW1wbGF0ZSIgOiAidnZnX3ByZWxvYWQudGVtcGxhdGUiLCAibmFtZV9wYXR0ZXJuIjogImJhc2VfdnZnIn1dLCAKLSAgICAidklNUyIgOiBbeyJpc0Jhc2UiIDogInRydWUiLCAgInRlbXBsYXRlIiA6ICJ2aW1zX3ByZWxvYWQudGVtcGxhdGUiLCAibmFtZV9wYXR0ZXJuIjogImJhc2VfY2xlYXJ3YXRlciJ9XSwgCiAgICAgInZDUEUiIDogW3siaXNCYXNlIiA6ICJ0cnVlIiwgICJ0ZW1wbGF0ZSIgOiAidmNwZV9wcmVsb2FkLnRlbXBsYXRlIiwgIm5hbWVfcGF0dGVybiI6ICJiYXNlX2NsZWFyd2F0ZXIifV0sIAogfQogCkBAIC0yOSw2ICsyNyw1IEBACiBHTE9CQUxfVkFMSURBVEVfTkFNRV9NQVBQSU5HID0geyJ2RlciIDogJ3Zmd19uYW1lXzAnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZMQiIgOiAndmxiX25hbWVfMCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidlZHIiA6ICcnLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZJTVMiIDogJycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidkNQRSIgOiAnJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL3JvYm90L2Fzc2V0cy90ZW1wbGF0ZXMvc2RuYy9wcmVsb2FkLnRlbXBsYXRlIGIvcm9ib3QvYXNzZXRzL3RlbXBsYXRlcy9zZG5jL3ByZWxvYWQudGVtcGxhdGUKaW5kZXggYjJmNGYwOC4uMzI3ZDgwNiAxMDA2NDQKLS0tIGEvcm9ib3QvYXNzZXRzL3RlbXBsYXRlcy9zZG5jL3ByZWxvYWQudGVtcGxhdGUKKysrIGIvcm9ib3QvYXNzZXRzL3RlbXBsYXRlcy9zZG5jL3ByZWxvYWQudGVtcGxhdGUKQEAgLTEsMzEgKzEsMzMgQEAKIHsKLSAgICAiaW5wdXQiOiB7Ci0gICAgICAgICJ2bmYtdG9wb2xvZ3ktaW5mb3JtYXRpb24iOiB7Ci0gICAgICAgICAgICAidm5mLXRvcG9sb2d5LWlkZW50aWZpZXIiOiB7Ci0gICAgICAgICAgICAgICAgInNlcnZpY2UtdHlwZSI6ICIke3NlcnZpY2VfdHlwZX0iLAotICAgICAgICAgICAgICAgICJ2bmYtbmFtZSI6ICIke3ZmX21vZHVsZV9uYW1lfSIsCi0gICAgICAgICAgICAgICAgInZuZi10eXBlIjogIiR7dmZfbW9kdWxlX3R5cGV9IiwKLSAgICAgICAgICAgICAgICAiZ2VuZXJpYy12bmYtbmFtZSI6ICIke2dlbmVyaWNfdm5mX25hbWV9IiwKLSAgICAgICAgICAgICAgICAiZ2VuZXJpYy12bmYtdHlwZSI6ICIke2dlbmVyaWNfdm5mX3R5cGV9IgotICAgICAgICAgICAgfSwKLSAgICAgICAgICAgICJ2bmYtYXNzaWdubWVudHMiOiB7Ci0gICAgICAgICAgICAgICAgImF2YWlsYWJpbGl0eS16b25lcyI6IFtdLAotICAgICAgICAgICAgICAgICJ2bmYtbmV0d29ya3MiOiBbXSwKLSAgICAgICAgICAgICAgICAidm5mLXZtcyI6IFtdCi0gICAgICAgICAgICB9LAotICAgICAgICAgICAgICJ2bmYtcGFyYW1ldGVycyI6ICR7dm5mX3BhcmFtZXRlcnN9Ci0gICAgICAgfSwKLSAgICAgICAgInJlcXVlc3QtaW5mb3JtYXRpb24iOiB7Ci0gICAgICAgICAgICAicmVxdWVzdC1pZCI6ICJyb2JvdDEyIiwKLSAgICAgICAgICAgICJvcmRlci12ZXJzaW9uIjogIjEiLAotICAgICAgICAgICAgIm5vdGlmaWNhdGlvbi11cmwiOiAib3BlbmVjb21wLm9yZyIsCi0gICAgICAgICAgICAib3JkZXItbnVtYmVyIjogIjEiLAotICAgICAgICAgICAgInJlcXVlc3QtYWN0aW9uIjogIlByZWxvYWRWTkZSZXF1ZXN0IgotICAgICAgICB9LAotICAgICAgICAic2RuYy1yZXF1ZXN0LWhlYWRlciI6IHsKLSAgICAgICAgICAgICJzdmMtcmVxdWVzdC1pZCI6ICJyb2JvdDEyIiwKLSAgICAgICAgICAgICJzdmMtbm90aWZpY2F0aW9uLXVybCI6ICJodHRwOlwvXC9vcGVuZWNvbXAub3JnOjgwODBcL2FkYXB0ZXJzXC9yZXN0XC9TRE5DTm90aWZ5IiwKLSAgICAgICAgICAgICJzdmMtYWN0aW9uIjogInJlc2VydmUiCi0gICAgICAgIH0KLSAgICB9ICAgIAotfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKwkiaW5wdXQiOiB7CisJCSJyZXF1ZXN0LWluZm9ybWF0aW9uIjogeworCQkJIm5vdGlmaWNhdGlvbi11cmwiOiAib3BlbmVjb21wLm9yZyIsCisJCQkib3JkZXItbnVtYmVyIjogIjEiLAorCQkJIm9yZGVyLXZlcnNpb24iOiAiMSIsCisJCQkicmVxdWVzdC1hY3Rpb24iOiAiUHJlbG9hZFZORlJlcXVlc3QiLAorCQkJInJlcXVlc3QtaWQiOiAicm9ib3QxMiIKKwkJfSwKKwkJInNkbmMtcmVxdWVzdC1oZWFkZXIiOiB7CisJCQkic3ZjLWFjdGlvbiI6ICJyZXNlcnZlIiwKKwkJCSJzdmMtbm90aWZpY2F0aW9uLXVybCI6ICJodHRwOlwvXC9vcGVuZWNvbXAub3JnOjgwODBcL2FkYXB0ZXJzXC9yZXN0XC9TRE5DTm90aWZ5IiwKKwkJCSJzdmMtcmVxdWVzdC1pZCI6ICJyb2JvdDEyIgorCQl9LAorCQkidm5mLXRvcG9sb2d5LWluZm9ybWF0aW9uIjogeworCQkJInZuZi1hc3NpZ25tZW50cyI6IHsKKwkJCQkiYXZhaWxhYmlsaXR5LXpvbmVzIjogW10sCisJCQkJInZuZi1uZXR3b3JrcyI6IFtdLAorCQkJCSJ2bmYtdm1zIjogW10KKwkJCX0sCisJCQkidm5mLXBhcmFtZXRlcnMiOgorCQkJCSR7dm5mX3BhcmFtZXRlcnN9CisJCQksCisJCQkidm5mLXRvcG9sb2d5LWlkZW50aWZpZXIiOiB7CisJCQkJImdlbmVyaWMtdm5mLW5hbWUiOiAiJHtnZW5lcmljX3ZuZl9uYW1lfSIsCisJCQkJImdlbmVyaWMtdm5mLXR5cGUiOiAiJHtnZW5lcmljX3ZuZl90eXBlfSIsCisJCQkJInZuZi1uYW1lIjogIiR7dmZfbW9kdWxlX25hbWV9IiwKKwkJCQkidm5mLXR5cGUiOiAiJHt2Zl9tb2R1bGVfdHlwZX0iLAorCQkJCSJzZXJ2aWNlLXR5cGUiOiAiJHtzZXJ2aWNlX3R5cGV9IgorCQkJfQorCQl9CisJfQorfQpkaWZmIC0tZ2l0IGEvcm9ib3QvYXNzZXRzL3RlbXBsYXRlcy93ZWIvaW5kZXguaHRtbC50ZW1wbGF0ZSBiL3JvYm90L2Fzc2V0cy90ZW1wbGF0ZXMvd2ViL2luZGV4Lmh0bWwudGVtcGxhdGUKaW5kZXggNDg1M2ZjNy4uZGI5YzVlYSAxMDA2NDQKLS0tIGEvcm9ib3QvYXNzZXRzL3RlbXBsYXRlcy93ZWIvaW5kZXguaHRtbC50ZW1wbGF0ZQorKysgYi9yb2JvdC9hc3NldHMvdGVtcGxhdGVzL3dlYi9pbmRleC5odG1sLnRlbXBsYXRlCkBAIC0yNSwxNSArMjUsNTIgQEAKICAgICA8cD4KICAgICB0aGUgcGFzc3dvcmQgZm9yIGFsbCBvZiB0aGVtIGlzOiBkZW1vMTIzNDU2IQogCisgICAgPGgzPi9ldGMvaG9zdHMgb3IgQzpcV2luZG93c1xzeXN0ZW0zMlxkcml2ZXJzXGV0Y1xob3N0czwvaD4KKwk8cHJlPgorJHtzZGN9CXNkYy5hcGkuc2ltcGxlZGVtby5vcGVuZWNvbXAub3JnCiske3BvbGljeX0JcG9saWN5LmFwaS5zaW1wbGVkZW1vLm9wZW5lY29tcC5vcmcKKyR7cG9ydGFsfQlwb3J0YWwuYXBpLnNpbXBsZWRlbW8ub3BlbmVjb21wLm9yZworJHt2aWR9CXZpZC5hcGkuc2ltcGxlZGVtby5vcGVuZWNvbXAub3JnCisJPC9wcmU+CisKICAgICA8aDE+IFRoZSBSZWFsaXR5IDwvaDE+CiAKICAgICBBcyBldmVyeXRoaW5nIHNob3VsZCBnbyB0aHJvdWdoIHRoZSBwb3J0YWwgdGhlcmUgYXJlIG1hbnkgc3Vic3lzdGVtcyB3aGljaCBoYXZlIHRoZXJlIG93biBHVUkgb3IgQVBJIHdoaWNoIGNvbWUgaW4gdmVyeSBoYW5keSB3aGVuIGRlYnVnZ2luZyB0aGluZ3MuIEhlcmUgdGhlIG1vc3QgaW1wb3J0YW50IG9uY2UuCiAKICAgICA8aDI+IFRlc3RpbmcgPC9oMj4KIAotICAgIDxiPiBOb3Qgd29ya2luZy4gPC9iPiA6CisJPGgzPlJvYm90IExvZ3M8L2gzPgogCi0gICAgPGEgaHJlZj0iaHR0cDovLyR7cm9ib3R9Ojg4L3JlcG9ydC5odG1sIj4gVGVzdCBSZXBvcnQgPC9hPgorICAgIDxhIGhyZWY9Imh0dHA6Ly8ke3JvYm90fTo4OC9sb2dzLyI+IFJvYm90IExvZ3MgPC9hPgorCisgICAgPGgzPlJvYm90IHZtX3Byb3BlcnRpZXMucHkgZm9yIGxvY2FsIHRlc3Rpbmc8L2gzPgorICAgIDxwcmU+CitHTE9CQUxfSU5KRUNURURfQVJUSUZBQ1RTX1ZFUlNJT04gPSAiJHtHTE9CQUxfSU5KRUNURURfQVJUSUZBQ1RTX1ZFUlNJT059IgorR0xPQkFMX0lOSkVDVEVEX0dJVExBQl9QQVNTV09SRCA9ICJwYXNzd29yZCIKK0dMT0JBTF9JTkpFQ1RFRF9HSVRMQUJfVVNFUk5BTUUgPSAidXNlcm5hbWUiCitHTE9CQUxfSU5KRUNURURfTkVUV09SSyA9ICIke0dMT0JBTF9JTkpFQ1RFRF9ORVRXT1JLfSIKK0dMT0JBTF9JTkpFQ1RFRF9ORVhVU19ET0NLRVJfUkVQTyA9ICIke0dMT0JBTF9JTkpFQ1RFRF9ORVhVU19ET0NLRVJfUkVQT30iCitHTE9CQUxfSU5KRUNURURfTkVYVVNfUEFTU1dPUkQgPSAicGFzc3dvcmQiCitHTE9CQUxfSU5KRUNURURfTkVYVVNfUkVQTyA9ICIke0dMT0JBTF9JTkpFQ1RFRF9ORVhVU19SRVBPfSIKK0dMT0JBTF9JTkpFQ1RFRF9ORVhVU19VU0VSTkFNRSA9ICJkb2NrZXIiCitHTE9CQUxfSU5KRUNURURfT1BFTlNUQUNLX0FQSV9LRVkgPSAib3BlbnN0YWNrYXBpa2V5IgorR0xPQkFMX0lOSkVDVEVEX09QRU5TVEFDS19QQVNTV09SRCA9ICJvcGVuc3RhY2twYXNzIgorR0xPQkFMX0lOSkVDVEVEX09QRU5TVEFDS19VU0VSTkFNRSA9ICJvcGVuc3RhY2t1c2VyIgorR0xPQkFMX0lOSkVDVEVEX09QRU5TVEFDS19URU5BTlRfSUQgPSAiJHtHTE9CQUxfSU5KRUNURURfT1BFTlNUQUNLX1RFTkFOVF9JRH0iCitHTE9CQUxfSU5KRUNURURfUkVHSU9OID0gIiR7R0xPQkFMX0lOSkVDVEVEX1JFR0lPTn0iCitHTE9CQUxfSU5KRUNURURfS0VZU1RPTkUgPSAiJHtHTE9CQUxfSU5KRUNURURfS0VZU1RPTkV9IgorR0xPQkFMX0lOSkVDVEVEX0FBSTFfSVBfQUREUiA9ICIke2FhaTF9IgorR0xPQkFMX0lOSkVDVEVEX0FBSTJfSVBfQUREUiA9ICIke2FhaTJ9IgorR0xPQkFMX0lOSkVDVEVEX0FQUENfSVBfQUREUiA9ICIke2FwcGN9IgorR0xPQkFMX0lOSkVDVEVEX0RDQUVfSVBfQUREUiA9ICIke2RjYWVfY29udHJvbGxlcn0iCitHTE9CQUxfSU5KRUNURURfU09fSVBfQUREUiA9ICIke21zb30iCitHTE9CQUxfSU5KRUNURURfTVJfSVBfQUREUiA9ICIke21lc3NhZ2Vfcm91dGVyfSIKK0dMT0JBTF9JTkpFQ1RFRF9QT0xJQ1lfSVBfQUREUiA9ICIke3BvbGljeX0iCitHTE9CQUxfSU5KRUNURURfUE9SVEFMX0lQX0FERFIgPSAiJHtwb3J0YWx9IgorR0xPQkFMX0lOSkVDVEVEX1NEQ19JUF9BRERSID0gIiR7c2RjfSIKK0dMT0JBTF9JTkpFQ1RFRF9TRE5DX0lQX0FERFIgPSAiJHtzZG5jfSIKK0dMT0JBTF9JTkpFQ1RFRF9WSURfSVBfQUREUiA9ICIke3ZpZH0iCisgICAgPC9wcmU+CiAKICAgICA8aDI+IFNETi1DIDwvaDI+CiAKQEAgLTk5LDcgKzEzNiw4IEBACiAKICAgICBUaGUgZm9sbG93aW5nIGxpbmtzIHdpbGwgb3BlbiBhIHNoZWxsIGFuZCBzc2ggdG8gdGhlIHZhcmlvdXMgcnVubmluZyBWTXMgKGF0IGxlYXN0IG9uIGEgTWFjKS4gSXQgYXNzdW1lcyB0aGF0IHRoZSAuc3NoL2NvbmZpZyBmaWxlIGhhcyBiZWVuIHNldCBhcHByb3ByaWF0ZWx5IGFuZCAvZXRjL2hvc3RzIGhhcyBiZWVuIHVwZGF0ZWQgdG8gdGhlIHJ1bm5pbmcgaW5zdGFuY2UuPHA+CiAKLSAgICAgIDxhIGhyZWY9InNzaDovLyR7YWFpfSI+IEFBSSA8L2E+PHA+CisgICAgICA8YSBocmVmPSJzc2g6Ly8ke2FhaTF9Ij4gQUFJMSA8L2E+PHA+CisgICAgICA8YSBocmVmPSJzc2g6Ly8ke2FhaTJ9Ij4gQUFJMiA8L2E+PHA+CiAgICAgICA8YSBocmVmPSJzc2g6Ly8ke3BvbGljeX0iPiBQb2xpY3kgPC9hPjxwPgogICAgICAgPGEgaHJlZj0ic3NoOi8vJHtzZGN9Ij4gU0RDIDwvYT48cD4KICAgICAgIDxhIGhyZWY9InNzaDovLyR7cG9ydGFsfSI+IFBvcnRhbCA8L2E+PHA+CmRpZmYgLS1naXQgYS9yb2JvdC9yZXNvdXJjZXMvYWFmX2ludGVyZmFjZS5yb2JvdCBiL3JvYm90L3Jlc291cmNlcy9hYWZfaW50ZXJmYWNlLnJvYm90CmluZGV4IDU3ZDRhYWIuLmM5MjQ1OTEgMTAwNjQ0Ci0tLSBhL3JvYm90L3Jlc291cmNlcy9hYWZfaW50ZXJmYWNlLnJvYm90CisrKyBiL3JvYm90L3Jlc291cmNlcy9hYWZfaW50ZXJmYWNlLnJvYm90CkBAIC0yMSw2ICsyMSw3IEBACiAgICAgIFtBcmd1bWVudHNdICAgICR7ZGF0YV9wYXRofQogICAgICAke2F1dGh9PSAgQ3JlYXRlIExpc3QgICR7R0xPQkFMX0FBRl9VU0VSTkFNRX0gICAgJHtHTE9CQUxfQUFGX1BBU1NXT1JEfQogICAgICAke3Nlc3Npb259PSAgICBDcmVhdGUgU2Vzc2lvbiAJYWFmCSR7R0xPQkFMX0FBRl9TRVJWRVJ9ICAgIGF1dGg9JHthdXRofQorICAgICAke3Nlc3Npb25fY2xpZW50fT0gICAgQWRkIENsaWVudCBDZXJ0ICAgICR7c2Vzc2lvbn0gICAgY2VydAogICAgICAke3V1aWR9PSAgICBHZW5lcmF0ZSBVVUlECiAgICAgICR7aGVhZGVyc309ICBDcmVhdGUgRGljdGlvbmFyeSAgICAgQWNjZXB0PWFwcGxpY2F0aW9uL2pzb24gICAgQ29udGVudC1UeXBlPWFwcGxpY2F0aW9uL2pzb24gICAgWC1UcmFuc2FjdGlvbklkPSR7R0xPQkFMX0FQUExJQ0FUSU9OX0lEfS0ke3V1aWR9ICAgIFgtRnJvbUFwcElkPSR7R0xPQkFMX0FQUExJQ0FUSU9OX0lEfQogICAgICAke3Jlc3B9PSAJR2V0IFJlcXVlc3QgCWFhZiAJJHtkYXRhX3BhdGh9ICAgICBoZWFkZXJzPSR7aGVhZGVyc30KZGlmZiAtLWdpdCBhL3JvYm90L3Rlc3RzdWl0ZXMvZGVtby5yb2JvdCBiL3JvYm90L3Rlc3RzdWl0ZXMvZGVtby5yb2JvdAppbmRleCA3NGE3OGQ0Li5jNWFkYTA5IDEwMDY0NAotLS0gYS9yb2JvdC90ZXN0c3VpdGVzL2RlbW8ucm9ib3QKKysrIGIvcm9ib3QvdGVzdHN1aXRlcy9kZW1vLnJvYm90CkBAIC0yLDYgKzIsNyBAQAogRG9jdW1lbnRhdGlvbgkgIEV4ZWN1dGVzIHRoZSBWTkYgT3JjaGVzdHJhdGlvbiBUZXN0IGNhc2VzIGluY2x1ZGluZyBzZXR1cCBhbmQgdGVhcmRvd24KIC4uLgogTGlicmFyeSAgIENvbGxlY3Rpb25zCitMaWJyYXJ5ICAgIERhdGFiYXNlTGlicmFyeQogUmVzb3VyY2UgICAgICAgICAuLi9yZXNvdXJjZXMvZGVtb19wcmVsb2FkLnJvYm90CiAqKiogVmFyaWFibGVzICoqKgogCmRpZmYgLS1naXQgYS9yb2JvdC90ZXN0c3VpdGVzL21vZGVsLWRpc3RyaWJ1dGlvbi5yb2JvdCBiL3JvYm90L3Rlc3RzdWl0ZXMvbW9kZWwtZGlzdHJpYnV0aW9uLnJvYm90CmluZGV4IDVmMGM1OTcuLmFkNTEyMDIgMTAwNjQ0Ci0tLSBhL3JvYm90L3Rlc3RzdWl0ZXMvbW9kZWwtZGlzdHJpYnV0aW9uLnJvYm90CisrKyBiL3JvYm90L3Rlc3RzdWl0ZXMvbW9kZWwtZGlzdHJpYnV0aW9uLnJvYm90CkBAIC0xOCw3ICsxOCw1IEBACiAgICAgW1RhZ3NdICAgIGV0ZSAgICBkaXN0cmlidXRlCiBEaXN0cmlidXRlIHZWRyBNb2RlbCAgICB2VkcKICAgICBbVGFnc10gICAgZXRlICAgIGRpc3RyaWJ1dGUKLURpc3RyaWJ1dGUgdklNUyBNb2RlbCAgICB2SU1TCi0gICAgW1RhZ3NdICAgIGV0ZSAgICBkaXN0cmlidXRlCiBEaXN0cmlidXRlIHZDUEUgTW9kZWwgICAgdkNQRQogICAgIFtUYWdzXSAgICBldGUgICAgZGlzdHJpYnV0ZQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3JvYm90L3Rlc3RzdWl0ZXMvdXBkYXRlX29uYXBfcGFnZS5yb2JvdCBiL3JvYm90L3Rlc3RzdWl0ZXMvdXBkYXRlX29uYXBfcGFnZS5yb2JvdAppbmRleCAyZjhjYTE2Li5iOGIwNzgyIDEwMDY0NAotLS0gYS9yb2JvdC90ZXN0c3VpdGVzL3VwZGF0ZV9vbmFwX3BhZ2Uucm9ib3QKKysrIGIvcm9ib3QvdGVzdHN1aXRlcy91cGRhdGVfb25hcF9wYWdlLnJvYm90CkBAIC0yOSwxOSArMjksMjAgQEAKICAgICAke3NlcnZlcl9tYXB9PSAgICBHZXQgT3BlbnN0YWNrIFNlcnZlcnMgICAgYXV0aAogICAgICR7b2FtX2lwX21hcH09ICAgQ3JlYXRlIERpY3Rpb25hcnkKICAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgMTAuMC4wLjE9b25hcGRucwotICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAxMC4wLjEuMT1hYWkKLSAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgMTAuMC4yLjE9YXBwYwotICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAxMC4wLjMuMT1zZGMKLSAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgMTAuMC40LjE9ZGNhZV9jb250cm9sbGVyCisgICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHtvYW1faXBfbWFwfSAgICR7R0xPQkFMX0lOSkVDVEVEX0FBSTFfSVBfQUREUn09YWFpMQorICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAke0dMT0JBTF9JTkpFQ1RFRF9BQUkyX0lQX0FERFJ9PWFhaTIKKyAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgJHtHTE9CQUxfSU5KRUNURURfQVBQQ19JUF9BRERSfT1hcHBjCisgICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHtvYW1faXBfbWFwfSAgICR7R0xPQkFMX0lOSkVDVEVEX0RDQUVfSVBfQUREUn09ZGNhZV9jb250cm9sbGVyCisgICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHtvYW1faXBfbWFwfSAgICR7R0xPQkFMX0lOSkVDVEVEX1NPX0lQX0FERFJ9PW1zbworICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAke0dMT0JBTF9JTkpFQ1RFRF9NUl9JUF9BRERSfT1tZXNzYWdlX3JvdXRlcgorICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAke0dMT0JBTF9JTkpFQ1RFRF9QT0xJQ1lfSVBfQUREUn09cG9saWN5CisgICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHtvYW1faXBfbWFwfSAgICR7R0xPQkFMX0lOSkVDVEVEX1BPUlRBTF9JUF9BRERSfT1wb3J0YWwKKyAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgJHtHTE9CQUxfSU5KRUNURURfU0RDX0lQX0FERFJ9PXNkYworICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAke0dMT0JBTF9JTkpFQ1RFRF9TRE5DX0lQX0FERFJ9PXNkbmMKKyAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgJHtHTE9CQUxfSU5KRUNURURfVklEX0lQX0FERFJ9PXZpZAogICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAxMC4wLjQuMTA1PWRjYWVfY2RhcAogICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAxMC4wLjQuMTAyPWRjYWVfY29sbAotICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAxMC4wLjUuMT1tc28KLSAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgMTAuMC42LjE9cG9saWN5Ci0gICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHtvYW1faXBfbWFwfSAgIDEwLjAuNy4xPXNkbmMKLSAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgMTAuMC44LjE9dmlkCi0gICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHtvYW1faXBfbWFwfSAgIDEwLjAuOS4xPXBvcnRhbAogICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7b2FtX2lwX21hcH0gICAxMC4wLjEwLjE9cm9ib3QKLSAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke29hbV9pcF9tYXB9ICAgMTAuMC4xMS4xPW1lc3NhZ2Vfcm91dGVyCiAKICAgICAke3ZhbHVlc309ICAgQ3JlYXRlIERpY3Rpb25hcnkKICAgICAke2tleXN9PSAgICBHZXQgRGljdGlvbmFyeSBLZXlzICAgICR7b2FtX2lwX21hcH0KQEAgLTUwLDYgKzUxLDEzIEBACiAgICAgXCAgICBTZXQgUHVibGljIElwICAgICR7c2VydmVyX21hcH0gICAgJHtvYW1faXB9ICAgJHt2YWx1ZV9uYW1lfSAgICR7dmFsdWVzfQogICAgIExvZyAgICAke3ZhbHVlc30KICAgICBSdW4gS2V5d29yZCBJZiAgICcke1dFQl9QQVNTV09SRH0nICE9ICcnICAgQ3JlYXRlIEZpbGUgICAke0NSRURFTlRJQUxTX0ZJTEV9ICAgJHtXRUJfVVNFUn06JHtXRUJfUEFTU1dPUkR9CisgICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHt2YWx1ZXN9ICAgR0xPQkFMX0lOSkVDVEVEX0FSVElGQUNUU19WRVJTSU9OPSR7R0xPQkFMX0lOSkVDVEVEX0FSVElGQUNUU19WRVJTSU9OfQorICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7dmFsdWVzfSAgIEdMT0JBTF9JTkpFQ1RFRF9ORVRXT1JLPSR7R0xPQkFMX0lOSkVDVEVEX05FVFdPUkt9CisgICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHt2YWx1ZXN9ICAgR0xPQkFMX0lOSkVDVEVEX05FWFVTX0RPQ0tFUl9SRVBPPSR7R0xPQkFMX0lOSkVDVEVEX05FWFVTX0RPQ0tFUl9SRVBPfQorICAgIFNldCBUbyBEaWN0aW9uYXJ5ICAgICR7dmFsdWVzfSAgIEdMT0JBTF9JTkpFQ1RFRF9ORVhVU19SRVBPPSR7R0xPQkFMX0lOSkVDVEVEX05FWFVTX1JFUE99CisgICAgU2V0IFRvIERpY3Rpb25hcnkgICAgJHt2YWx1ZXN9ICAgR0xPQkFMX0lOSkVDVEVEX09QRU5TVEFDS19URU5BTlRfSUQ9JHtHTE9CQUxfSU5KRUNURURfT1BFTlNUQUNLX1RFTkFOVF9JRH0KKyAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke3ZhbHVlc30gICBHTE9CQUxfSU5KRUNURURfUkVHSU9OPSR7R0xPQkFMX0lOSkVDVEVEX1JFR0lPTn0KKyAgICBTZXQgVG8gRGljdGlvbmFyeSAgICAke3ZhbHVlc30gICBHTE9CQUxfSU5KRUNURURfS0VZU1RPTkU9JHtHTE9CQUxfSU5KRUNURURfS0VZU1RPTkV9CiAgICAgQ3JlYXRlIEZpbGUgRnJvbSBUZW1wbGF0ZSAgICR7VVJMU19IVE1MX1RFTVBMQVRFfSAgICR7VVJMU19IVE1MfSAgICR7dmFsdWVzfQogCiAqKiogS2V5d29yZHMgKioqCkBAIC04MCw2ICs4OCw4IEBACiAgICAgUmV0dXJuIEZyb20gS2V5d29yZCBJZiAgICcke3N0YXR1c30nPT0nUEFTUycgICAke3B1YmxpY19pcH0KICAgICAke3N0YXR1c30gICAke3B1YmxpY19pcH09ICAgUnVuIEtleXdvcmQgQW5kIElnbm9yZSBFcnJvciAgIEZpbmQgT3BlbnN0YWNrICAgJHthZGRyZXNzZXN9ICAgJHtvYW1faXB9CiAgICAgUmV0dXJuIEZyb20gS2V5d29yZCBJZiAgICcke3N0YXR1c30nPT0nUEFTUycgICAke3B1YmxpY19pcH0KKyAgICAke3N0YXR1c30gICAke3B1YmxpY19pcH09ICAgUnVuIEtleXdvcmQgQW5kIElnbm9yZSBFcnJvciAgIEZpbmQgT3BlbnN0YWNrIDIgICAke2FkZHJlc3Nlc30gICAke29hbV9pcH0KKyAgICBSZXR1cm4gRnJvbSBLZXl3b3JkIElmICAgJyR7c3RhdHVzfSc9PSdQQVNTJyAgICR7cHVibGljX2lwfQogICAgIEZhaWwgICR7b2FtX2lwfSBTZXJ2ZXIgTm90IEZvdW5kCiAKIEZpbmQgUmFja3NwYWNlCkBAIC05MiwxMSArMTAyLDE3IEBACiAgICAgRmFpbCAgJHtvYW1faXB9IFNlcnZlciBOb3QgRm91bmQKIAogRmluZCBPcGVuc3RhY2sKLSAgICBbQXJndW1lbnRzXSAgICR7YWRkcmVzc2VzfSAgICR7b2FtX2lwfSAgICAKLSAgICAke2lwc30gICBHZXQgRnJvbSBEaWN0aW9uYXJ5ICAgJHthZGRyZXNzZXN9ICAgJHtHTE9CQUxfSU5KRUNURURfTkVUV09SS30KLSAgICAke3B1YmxpY19pcH09ICAgR2V0IFY0IElQIE9wZW5zdGFjayAgICR7aXBzfSAgIGZsb2F0aW5nCi0gICAgIyMke29hbV9pcHN9ICAgR2V0IEZyb20gRGljdGlvbmFyeSAgICR7YWRkcmVzc2VzfSAgICR7R0xPQkFMX0lOSkVDVEVEX05FVFdPUkt9Ci0gICAgJHt0aGlzX29hbV9pcH09ICAgIEdldCBWNCBJUCBPcGVuc3RhY2sgICAke2lwc30gICBmaXhlZAorICAgIFtBcmd1bWVudHNdICAgJHthZGRyZXNzZXN9ICAgJHtvYW1faXB9CisgICAgJHtwdWJsaWNfaXB9PSAgIEdldCBWNCBJUCBPcGVuc3RhY2sgICAke2FkZHJlc3Nlc30gICBleHRlcm5hbAorICAgICR7dGhpc19vYW1faXB9PSAgICBHZXQgVjQgSVAgT3BlbnN0YWNrICAgJHthZGRyZXNzZXN9ICAgJHtHTE9CQUxfSU5KRUNURURfTkVUV09SS30KKyAgICBSZXR1cm4gRnJvbSBLZXl3b3JkIElmICAgJyR7dGhpc19vYW1faXB9Jz09JyR7b2FtX2lwfScgICAke3B1YmxpY19pcH0KKyAgICBGYWlsICAke29hbV9pcH0gU2VydmVyIE5vdCBGb3VuZAorCitGaW5kIE9wZW5zdGFjayAyCisgICAgW0FyZ3VtZW50c10gICAke2FkZHJlc3Nlc30gICAke29hbV9pcH0KKyAgICAke2lwbWFwc309ICAgR2V0IEZyb20gREljdGlvbmFyeSAgICR7YWRkcmVzc2VzfSAgICR7R0xPQkFMX0lOSkVDVEVEX05FVFdPUkt9CisgICAgJHtwdWJsaWNfaXB9PSAgIEdldCBWNCBJUCBPcGVuc3RhY2sgMiAgJHtpcG1hcHN9ICAgZmxvYXRpbmcKKyAgICAke3RoaXNfb2FtX2lwfT0gICAgR2V0IFY0IElQIE9wZW5zdGFjayAyICAgJHtpcG1hcHN9ICAgZml4ZWQKICAgICBSZXR1cm4gRnJvbSBLZXl3b3JkIElmICAgJyR7dGhpc19vYW1faXB9Jz09JyR7b2FtX2lwfScgICAke3B1YmxpY19pcH0KICAgICBGYWlsICAke29hbV9pcH0gU2VydmVyIE5vdCBGb3VuZAogCkBAIC0xMDksMTAgKzEyNSwxOSBAQAogICAgIEZhaWwgIE5vIFZlcnNpb24gNCBJUAogCiBHZXQgVjQgSVAgT3BlbnN0YWNrCisgICAgW0FyZ3VtZW50c10gICAke2FkZHJlc3Nlc30gICAke3Rlc3R0eXBlfQorICAgICR7aXBtYXBzfT0gICBHZXQgRnJvbSBEaWN0aW9uYXJ5ICAgJHthZGRyZXNzZXN9ICAgJHt0ZXN0dHlwZX0KKyAgICA6Zm9yICAgJHtpcG1hcH0gICBpbiAgIEB7aXBtYXBzfQorICAgIFwgICAgJHtpcH0gICBHZXQgRnJvbSBEaWN0aW9uYXJ5ICAgJHtpcG1hcH0gICBhZGRyCisgICAgXCAgICAke3ZlcnNpb259ICAgR2V0IEZyb20gRGljdGlvbmFyeSAgICR7aXBtYXB9ICAgdmVyc2lvbgorICAgIFwgICAgUmV0dXJuIGZyb20gS2V5d29yZCBpZiAgICcke3ZlcnNpb259Jz09JzQnICAgJHtpcH0KKyAgICBGYWlsICBObyBWZXJzaW9uIDQgSVAKKworR2V0IFY0IElQIE9wZW5zdGFjayAyCiAgICAgW0FyZ3VtZW50c10gICAke2lwbWFwc30gICAke3Rlc3R0eXBlfQogICAgIDpmb3IgICAke2lwbWFwfSAgIGluICAgQHtpcG1hcHN9CiAgICAgXCAgICAke3R5cGV9ICAgR2V0IEZyb20gRGljdGlvbmFyeSAgICR7aXBtYXB9ICAgT1MtRVhULUlQUzp0eXBlCiAgICAgXCAgICAke2lwfSAgIEdldCBGcm9tIERpY3Rpb25hcnkgICAke2lwbWFwfSAgIGFkZHIKICAgICBcICAgICR7dmVyc2lvbn0gICBHZXQgRnJvbSBEaWN0aW9uYXJ5ICAgJHtpcG1hcH0gICB2ZXJzaW9uCiAgICAgXCAgICBSZXR1cm4gZnJvbSBLZXl3b3JkIGlmICAgJyR7dmVyc2lvbn0nPT0nNCcgYW5kICcke3R5cGV9Jz09JyR7dGVzdHR5cGV9JyAgICR7aXB9Ci0gICAgRmFpbCAgTm8gVmVyc2lvbiA0IElQICAgIApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKyAgICBGYWlsICBObyBWZXJzaW9uIDQgSVAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCg==