UOEAWDEgeyB9CkRFRklOSVRJT05TIElNUExJQ0lUIFRBR1MgOjo9CkJFR0lOCmlkLWNlIE9CSkVDVCBJREVOVElGSUVSICA6Oj0gIHtqb2ludC1pc28tY2NpdHQoMikgZHMoNSkgMjl9CmlkLWNlLWF1dGhvcml0eUtleUlkZW50aWZpZXIgT0JKRUNUIElERU5USUZJRVIgOjo9ICB7IGlkLWNlIDM1IH0KQXV0aG9yaXR5S2V5SWRlbnRpZmllciA6Oj0gU0VRVUVOQ0UgewogICAgICBrZXlJZGVudGlmaWVyICAgICAgICAgICAgIFswXSBLZXlJZGVudGlmaWVyICAgICAgICAgICAgT1BUSU9OQUwsCiAgICAgIGF1dGhvcml0eUNlcnRJc3N1ZXIgICAgICAgWzFdIEdlbmVyYWxOYW1lcyAgICAgICAgICAgICBPUFRJT05BTCwKICB5ICAgICAgICAgICAgKDgpIH0KaWQtY2UtcHJpdmF0ZUtleVVzYWdlUGVyaW9kIE9CSkVDVCBJREVOVElGSUVSIDo6PSAgeyBpZC1jZSAxNiB9ClByaXZhdGVLZXlVc2FnZVBlcmlvZCA6Oj0gU0VRVUVOQ0UgewogICAgIG5vdEJlZm9yZSAgICAgICBbMF0gICAgIEdlbmVyYWxpemVkVGltZSBPUFRJT05BTCwKICAgICBub3RBZnRlciAgICAgICAgWzFdICAgIHRBZGRyZXNzIDo6PQlEaXJlY3RvcnlTdHJpbmcKaWQtYXQtcG9zdGFsQWRkcmVzcwlBdHRyaWJ1dGVUeXBlCTo6PQl7aWQtYXQgMTZ9Clg1MjBwb3N0YWxBZGRyZXNzIDo6PSBQb3N0YWxBZGRyZXNzClBvc3RhbEFkZHJlc3MgOjo9IFNFUVVFTkNFIE9GIERpcmVjdG9yeVN0cmluZwogLS0gTGVnYWN5IGF0dHJpYnV0ZXMKcGtjcyBPQkpFQ1QgSURFTlRJRklFUiA6Oj0KICAgICAgIHsgaXNvKDEpIG1lbWJlci1ib2R5KDIpIHVzKDg0MCkgcnNhZHNpKDExMzU0OSkgcGtjcygxKSB9CnBrY3MtOSBPQkpFQ1QgSURFTlRJRklFUiA6Oj0KICAgICAgIHsgcGtjcyA5IH0KZW1haWxBZGRyZXNzIEF0dHJpYnV0ZVR5cGUgICAgICA6Oj0geyBwa2NzLTkgMSB9ClBrY3M5ZW1haWwgOjo9IElBNVN0cmluZyAoU0laRSAoMS4udWItZW1haQAAAAAAWaO3LWxlbmd0aCkpCk5hbWUgICAgICAgICAgICA6Oj0gICBDSE9JQ0UgeyAtLSBvbmx5IG9uZSBwb3NzaWJpbGl0eSBmb3Igbm93IC0tCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJkblNlcXVlbmNlICBSRE5TZXF1ZW5jZSB9ClJETlNlcXVlbmNlICAgICA6Oj0gICBTRVFVRU5DRSBPRiBSZWxhdGl2ZURpc3Rpbmd1aXNoZWROYW1lCkRpdHJlZXRBZGRyZXNzCUF0dHJpYnV0ZVR5cGUgICA6Oj0gICAgIHtpZC1hdCA5fQpYNTIwc3RyZWV0QWRkcmVzcyA6Oj0JRGlyZWN0b3J5U3RyaW5nCmlkLWF0LXBvc3RhbEFkZHJlc3MJQXR0cmlidXRlVHlwZQk6Oj0Je2lkLWF0IDE2fQpYNTIwcG9zdGFsQWRkcmVzcyA6Oj0gUG9zdGFsQWRkcmVzcwpQb3N0YWxBZGRyZXNzIDo6PSBTRVFVRU5DRSBPRiBEaXJlY3RvcnlTdHJpbmcKIC0tIExlZ2FjeSBhdHRyaWJ1dGVzCnBrY3MgT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICB7IGlzbygxKSBtZW1iZXItYm9keSgyKSB1cyg4NDApIHJzYWRzaSgxMTM1NDkpIHBrY3MoMSkgfQpwa2NzLTkgT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICB7IHBrY3MgOSB9CmVtYWlsQWRkcmVzcyBBdHRyaWJ1dGVUeXBlICAgICAgOjo9IHsgcGtjcy05IDEgfQpQa2NzOWVtYWlsIDo6PSBJQTVTdHJpbmcgKFNJWkUgKDEuLnViLWVtYWlsYWRkcmVzcy1sZW5ndGgpKQpOYW1lICAgICAgICAgICAgOjo9ICAgQ0hPSUNFIHsgLS0gb25seSBvbmUgcG9zc2liaWxpdHkgZm9yIG5vdyAtLQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZG5TZXF1ZW5jZSAgUkROU2VxdWVuY2UgfQpSRE5TZXF1ZW5jZSAgICAgOjo9ICB7IH0KREVGSU5JVElPTlMgSU1QTElDSVQgVEFHUyA6Oj0KQkVHSU4KaWQtY2UgT0JKRUNUIElERU5USUZJRVIgIDo6PSAge2pvaW50LWlzby1jY2l0dCgyKSBkcyg1KSAyOX0KaWQtY2UtYXV0aG9yaXR5S2V5SWRlbnRpZmllciBPQkpFQ1QgSURFTlRJRklFUiA6Oj0gIHsgaWQtY2UgMzUgfQpBdXRob3JpdHlLZXlJZGVudGlmaWVyIDo6PSBTRVFVRU5DRSB7CiAgICAgIGtleUlkZW50aWZpZXIgICAgICAgICAgICAgWzBdIEtleUlkZW50aWZpZXIgICAgICAgICAgICBPUFRJT05BTCwKICAgICAgYXV0aG9yaXR5Q2VydElzc3VlciAgICAgICBbMV0gR2VuZXJhbE5hbWVzICAgICAgICAgICAgIE9QVElPTkFMLAogIHkgICAgICAgICAgICAoOCkgfQppZC1jZS1wcml2YXRlS2V5VXNhZ2VQZXJpb2QgT0JKRUNUIElERU5USUZJRVIgOjo9ICB7IGlkLWNlIDE2IH0KUHJpdmF0ZUtleVVzYWdlUGVyaW9kIDo6PSBTRVFVRU5DRSB7CiAgICAgbm90QmVmb3JlICAgICAgIFswXSAgICAgR2VuZXJhbGl6ZWRUaW1lIE9QVElPTkFMLAogICAgIG5vdEFmdGVyICAgICAgICBbMV0gICAgdEFkZHJlc3MgOjo9CURpcmVjdG9yeVN0cmluZwppZC1hdC1wb3N0YWxBZGRyZXNzCUF0dHJpYnV0ZVR5cGUJOjo9CXtpZC1hdCAxNn0KWDUyMHBvc3RhbEFkZHJlc3MgOjo9IFBvc3RhbEFkZHJlc3MKUG9zdGFsQWRkcmVzcyA6Oj0gU0VRVUVOQ0UgT0YgRGlyZWN0b3J5U3RyaW5nCiAtLSBMZWdhY3kgYXR0AnsyCTYgMnJpYnV0ZXMKcGtjcyBPQkpFQ1QgSURFTlRJRklFUiA6Oj0KICAgICAgIHsgaXNvKDEpIG1lbWJlci1ib2R5KDIpIHVzKDg0MCkgcnNhZHNpKDExMzU0OSkgcGtjcygxKSB9CnBrY3MtOSBPQkpFQ1QgSURFTlRJRklFUiA6Oj0KICAgICAgIHsgcGtjcyA5IH0KZW1haWxBZGRyZXNzIEF0dHJpYnV0ZVR5cGUgICAgICA6Oj0geyBwa2NzLTkgMSB9ClBrY3M5ZW1haWwgOjo9IElBNVN0cmluZyAoU0laRSAoMS4udWItZW1haQAAAAAAWaO3LWxlbmd0aCkpCk5hbWUgICAgICAgICAgICA6Oj0gICBDSE9JQ0UgeyAtLSBvbmx5IG9uZSBwb3NzaWJpbGl0eSBmb3Igbm93IC0tCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJkblNlcXVlbmNlICBSRE5TZXF1ZW5jZSB9ClJETlNlcXVlbmNlICAgICA6Oj0gICBTRVFVRU5DRSBPRiBSZWxhdGl2ZURpc3Rpbmd1aXNoZWROYW1lCkRpdHJlZXRBZGRyZXNzCUF0dHJpYnV0ZVR5cGUgICA6Oj0gICAgIHtpZC1hdCA5fQpYNTIwc3RyZWV0QWRkcmVzcyA6Oj0JRGlyZWN0b3J5U3RyaW5nCmlkLWF0LXBvc3RhbEFkZHJlc3MJQXR0cmlidXRlVHlwZQk6Oj0Je2lkLWF0IDE2fQpYNTIwcG9zdGFsQWRkcmVzcyA6Oj0gUG9zdGFsQWRkcmVzcwpQb3N0YWxBZGRyZXNzIDo6PSBTRVFVRU5DRSBPRiBEaXJlY3RvcnlTdHJpbmcKIC0tIExlZ2FjeSBhdHRyaWJ1dGVzCnBrY3MgT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICB7IGlzbygxKSBtZW1iZXItYm9keSgyKSB1cyg4NDApIHJzYWRzaSgxMTM1NDkpIHBrY3MoMSkgfQpwa2NzLTkgT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICB7IHBrY3MgOSB9CmVtYWlsQWRkcmVzcyBBdHRyaWJ1dGVUeXBlICAgICAgOjo9IHsgcGtjcy05IDEgfQpQa2NzOWVtYWlsIDo6PSBJQTVTdHJpbmcgKFNJWkUgKDEuLnViLWVtYWlsYWRkcmVzcy1sZW5ndGgpKQpOYW1lICAgICAgICAgICAgOjo9ICAgQ0hPSUNFIHsgLS0gb25seSBvbmUgcG9zc2liaWxpdHkgZm9yIG5vdyAtLQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZG5T