UEtJWDEgeyB9CkRFRklOSVRJT05TIElNUExJQ0lUIFRBR1MgOjo9CkJFR0lOCmlkLWNlIE9CSkVDVCBJREVOVElGSUVSICA6Oj0gIHtqb2ludC1pc28tY2NpdHQoMikgZHMoNSkgMjl9CmlkLWNlLWF1dGhvcml0eUtleUlkZW50aWZpZXIgT0JKRUNUIElERU5USUZJRVIgOjo9ICB7IGlkLWNlIDM1IH0KQXV0aG9yaXR5S2V5SWRlbnRpZmllciA6Oj0gU0VRVUVOQ0UgewogICAgICBrZkNFIHsKICAgYnVpbHQtaW4tc3RhbmRhcmQtYXR0cmlidXRlcyBCdWlsdEluU3RhbmRhcmRBdHRyaWJ1dGVzLAogICBidWlsdC1pbi1kb21haW4tZGVmaW5lZC1hdHRyaWJ1dGVzCiAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWx0SW5Eb21haW5EZWZpbmVkQXR0cmlidXRlcyBPUFRJT05BTCwKICAgLS0gc2VlIGFsc28gdGVsZXRleC1kb21haW4tZGVmaW5lZC1hdHRyaWJ1dGVzCiAgIGV4dGVuc2lvbi1hdHRyaWJ1dGVzIEV4dGVuc2lvbkF0dHJpYnV0ZXMgT1BUSU9OQUwgfQpCdWlsdEluU3RhbmRhcmRBdHRyaWJ1dGVzIDo6PSBTRVFVRU5DRSB7CiAgIGNvdW50cnktbmFtZSBDb3VudHJ5TmFtZSBPUFRJT05BTCwKICAgYWRtaW5pc2FtZS1udW1lcmljLWxlbmd0aCkpLAogICBpc28tMTU4My1hbHBoYTItY29kZSBQcmludGFibGVTdHJpbmcKICAgICAgICAgICAgICAgIChTSVpFICh1Yi1jb3VudHJ5LW5hbWUtYWxwaGEtbGVuZ3RoKSkgfQpBZG1pbmnzdHJhdGlvbkRvbWFpbk5hbWUgOjo9IFtBUFBMSUNBVElPTiAyXSBFWFBMSUNJVCBDSE9JQ0UgewogICBudW1lcmljIE51bWVyaWNTdHJpbmcgKFNJWkUgKDAuLnViLWRvbWFpbi1uYW1lLWxlbmd0aCkpLAogICBwcmludGFibGUgUHJpbnRhYmxlU3RyaW5nIChTSVpFICgwLi51Yi1kb21haW4tbmFtZS1sZW5ndGgpKSB9Ck5ldHdvcmtBZGRyZXNzIDo6PSBYMTIxQWRkcmVzcyAgLS0gc2VlIGFsc28gZXh0ZW5kZWQtbmV0d29yay1hZGRyZXNzClgxMjFBZGRyZXNzIDo6PSBOdW1lcmljU3RyaW5nIChTSVpFICgxLi51Yi14MTIxLWFkZHJlc3MtbGVuZ3RoKSkKVGVybWluYWxJZGVudGlmaWVyIDo6PSBQcmludGFibGVTdHJpbmcgKFNJWkUgKDEuLnViLXRlcm1pbmFsLWlkLWxlbmd0aCkpClByaXZhdGVEb21haW5OYW1lIDo6PSBDSE9JQ0UgewogICBudW1lcmljIE51bWVyaWNTdHJpbmcgKFNJWkUgKDEuLnViLWRvbWFpbi1uYW1lLWxlbmd0aCkpLAogICBwcmludGFibGUgUHJpbnRhYmxlU3RyaW5nIChTSVpFICgxLi51Yi1kb21haW4tbmFtZS1sZW5ndGgpKSB9Ck9yZ2FuaXphdGlvbk5hbWUgOjo9IFByaW50YWJsZVN0cmluZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgKFNJWkUgKDEuLnViLW9yZ2FuaXphdGlvbi1uYW1lLWxlbmd0aCkpCk51bWVyaWNVc2VySWRlbnRpZmllciA6Oj0gTnVtZXJpY1N0cmluZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgKFNJWkUgKDEuLnViLW51bWVyaWMtdXNlci1pZC1sZW5ndGgpKQpQZSAgKFNJWkUgKHViLWNvdW50cnktbmFtZS1hbHBoYS1sZW5ndGgpKSB9CkFkbWluaXN0cmF0aW9uRG9tYWluTmFtZSA6Oj0gW0FQUExJQ0FUSU9OIDJdIEVYUExJQ0lUIENIT0lDRSB7CiAgIG51bWVyaWMgTnVtZXJpY1N0cmluZyAoU0laRSAoMC4udWItZG9tYWluLW5hbWUtbGVuZ3RoKSksCiAgIHByaW50YWJsZSBQcmludGFibGVTdHJpbmcgKFNJWkUgKDAuLnViLWRvbWFpbi1uYW1lLWxlbmd0aCkpIH0KTmV0d29ya0FkZHJlc3MgOjo9IFgxMjFBZGRyZXNzICAtLSBzZWUgYWxzbyBleHRlbmRlZC1uZXR3b3JrLWFkZHJlc3MKWDEyMUFkZHJlc3MgOjo9IE51bWVyaWNTdHJpbmcgKFNJWkUgKDEuLnViLXgxMjEtYWRkcmVzcy1sZW5ndGgpKQpUZXJtaW5hbElkZW50aWZpZXIgOjo9IFByaW50YWJsZVN0cmluZyAoU0laRSAoMS4udWItdGVybWluYWwtaWQtbGVuZ3RoKSkKUHJpdmF0ZURvbWFpbk5hbWUgOjo9IENIT0lDRSB7CiAgIG51bWVyaWMgTnVtZXJpY1N0cmlPTkFMLAogICBhZG1pbmlzYW1lLW51bWVyaWMtbGVuZ3RoKSksCiAgIGlzby0zMTY2LWFscGhhMi1jb2RlIFByaW50YWJsZVN0cmluZwogICAgICAgICAgICAgICAgKFNJWkUgKHViLWNvdW50cnktbmFtZS1hbHBoYS1sZW5ndGgpKSB9CkFkbWluaXN0cmF0aW9uRG9tYWluTmFtZSA6Oj0gW0FQUExJQ0FUSU9OIDJdIEVYUExJQ0lUIENIT0lDRSB7CiAgIG51bWVyaWMgTnVtZXJpY1N0cmluZyAoU0laRSAoMC4udWItZG9tYWluLW5hbWUtbGVuZ3RoKSksCiAgIHByaW50YWJsZSBQcmludGFibGVTdHJpbmcgKFNJWkUgKDAuLnViLWRvbWFpbi1uYW1lLWxlbmd0aCkpIH0KTmV0d29ya0FkZHJlc3MgOjo9IFgxMjFBZGRyZXNzICAtLSBzZWUgYWxzbyBleHRlbmRlZC1uZXR3b3JrLWFkZHJlc3MKWDEyMUFkZHJlc3MgOjo9IE51bWVyaWNTdHJpbmcgKFNJWkUgKDEuLnViLXgxMjEtYWRkcmVzcy1sZW5ndGgpKQpUZXJtaW5hbElkZW50aWZpZXIgOjo9IFByaW50YWJsZVN0cmluZyAoU0laRSAoMS4udWItdGVybWluYWwtaWQtbGVuZ3RoKSkKUHJpdmF0ZURvbWFpbk5hbWUgOjo9IENIT0lDRSB7CiAgIG51bWVyaWMgTnVtZXJpY1N0cmluZyAoU0laRSAoMS4udWItZG9tYWluLW5hbWUtbGVuZ3RoKSksCiAgIHByaW50YWJsZSBQcmludGFibGVTdHJpbmcgKFNJWkUgKDEuLnViLWRvbWFpbi1uYW1lLWxlbmd0aCkpIH0KT3JnYW5pemF0aW9qTmFtZSA6Oj0gUHJpbnRhYmxlU3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoU0laRSAoMS4udWItb3JnYW5pemF0aW9uLW5hbWUtbGVuZ3RoKSkKTnVtZXJpY1VzZXJJZGVudGlmaWVyIDo6PSBOdW1lcmljU3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoU0laRSAoMS4udWItbnVtZXJpYy11c2VyLWlkLWxlbmd0aCkpClBlICAoU0laRSAodWItY291bnRyeS1uYW1lLWFscGhhLWxlbmd0aCkpIH0KQWRtaW5pc3RyYXRpb25Eb21haW5OYW1lIDo6PSBbQVBQTElDQVRJT04gMl0gRVhQTElDSVQgQ0hPSUNFIHsKICAgbnVtZXJpYyBOdW1lcmljU3RyaW5nIChTSVpFICgwLi51Yi1kb21haW4tbmFtZS1sZW5ndGgpKSwKICAgcHJpbnRhYmxlIFByaW50YWJsZVN0cmluZyAoU0laRSAoMC4udWItZG9tYWluLW5hbWUtbGVuZ3RoKSkgfQpOZXR3b3JrQWRkcmVzcyA6Oj0gWDEyMUFkZHJlc3MgIC0tIHNlZSBhbHNvIGV4dGVuZGVkLW5ldHdvcmstYWRkcmVzcwpYMTIxQWRkcmVzcyA6Oj0gTnVtZXJpY1N0cmluZyAoU0laRSAoMS4udWIteDEyMS1hZGRyZXNzLWxlbmd0aCkpClRlcm1pbmFsSWRlbnRpZmllciA6Oj0gUHJpbnRhYmxlU3RyaW5nIChTSVpFICgxLi51Yi10ZXJtaW5hbC1pZC1sZW5ndGgpKQpQcml2YXRlRG9tYWluTmFtZSA6Oj0gQ0hPSUNFIHsKICAgbnVtZXJpYyBOdW1lcmljU3RyaW5nIChTSVpFICgxLi51Yi1kb21haW4tbmFtZS1sZW5ndGgpKSwKICAgcHJpbnRhYmxlIFByaW50YWJsZVN0cmluZyAoU0laRSAoMS4udWItZG9tYWluLW5hbWUtbGVuZ3RoKSkgfQpPcmdhbml6YXRpb25OYW1lIDo6PSBQcmludGFibGVTdHJpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTSVpFICgxLi51Yi1vcmdhbml6YXRpb24tbmFtZS1sZW5ndGgpKQpOdW1lcmljVXNlcklkZW50aWZpZXIgOjo9IE51bWVyaWNTdHJpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTSVpFICgxLi51Yi1udW1lcmljLXVzZXItaWQtbGVuZ3RoKSkKUGVyc29uYWxOYW1lIDo6PSBTRVQgewogICBzdXJuYVNJWkUgKDAuLnViLWRvbWFpbi1uYW1lLWxlbmd0aCkpIH0KTmV0d29ya0FkZHJlc3MgOjo9IFgxMjFBZGRyZXNzICAtLSBzZWUgYWxzbyBleHRlbmRlZC1uZXR3b3JrLWFkZHJlc3MKWDEyMUFkZHJlc3MgOjo9IE51bWVyaWNTdHJpbmcgKFNJWkUgKDEuLnViLXgxMjEtYWRkcmVzcy1sZW5ndGgpKQpUZXJtaW5hbElkZW50aWZpZXIgOjo9IFByaW50YWJsZVN0cmluZyAoU0laRSAoMS4udWItdGVybWluYWwtaWQtbGVuZ3RoKSkKUHJpdmF0ZURvbWFpbk5hbWUgOjo9IENIT0lDRSB7CiAgIG51bWVyaWMgTnVtZXJpY1N0cmluZyAoU0laRSAoMS4udWItZG9tYWluLW5hbWUtbGVuZ3RoKSksCiAgIHByaW50YWJsZSBQcmludGFibGVTdHJpbmcgKFNJIDo6PSBTRVFVRU5DRSBTSVpFICgwLi51Yi1vcmdhbml6YXRpb25hbC11bml0cykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9GIE9yZ2FuaXphdGlvbmFsVW5pdE5hbWUKT3JnYW5pemF0aW9uYWxVbml0TmFtZSA6Oj0gUHJpbnRhYmxlU3RyaW5nIChTSVpFCiAgICAgICAgICAgICAgICAgICAgICAgICgxLi51Yi1vcmdhbml6YXRpb25hbC11bml0LW5hbWUtbGVuZ3RoKSkKQnVpbHRJbkRvbWFpbkRlZmluZWRBdHRyaWJ1dGVzIDo6PSBTRVFVRU5DRSBTSVpFCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDEuLnViLWRvbWFpbi1kZWZpbkVRVUVOcyBJTlRFR0VSIDo6PSA1ClRlbGV0ZXhPcmdhbml6YXRpb25hbFVuaXROYW1lcyA6Oj0gU0VRVUVOQ0UgU0laRQogICAgICAgICgxLi51Yi1vcmdhbml6YXRpb25hbC11bml0cykgT0YgVGVsZXRleE9yZ2FuaXphdGlvbmFsVW5pdE5hbWUKVGVsZXRleE8=