UEtJWDEgeyB9CkRFRklOSVRJT05TIElNUExJQ0lUIFRBR1MgOjo9CkJFR0lOCmlkLWNlIE9CSkVDVCBJREVOVElGSUVSICA6Oj0gIHtqb2ludC1pc28tY2NpdHQoMikgZHMoNSkgMjl9CmlkLWNlLWF1dGhvcml0eUtleUlkZW50aWZpZXIgT0JKRUNUIElERU5USUZJRVIgOjo9ICB7IGlkLWNlIDM1IH0KQXV0aG9yaXR5S2V5SWRlbnRpZmllciA6Oj0gU0VRVUVOQ0UgewogICAgICBrZXlJZGVudGlmaWVyICAgICAgICAgICAgIFswXSBLZXlJZGVudGlmaWVyICAgICAgICAgICAgT1BUSU9OQUwsCiAgIGcgICAgICAgVVRGOFN0cmluZyAgICAgKFNJWkUgKDEuLjIwMCkpIH0KaWQtY2UtcG9saWN5TWFwcGluZ3MgT0JKRUNUIElERU5USUZJRVIgOjo9ICB7IGlkLWNlIDMzIH0KUG9saWN5TWFwcGluZ3MgOjo9IFNFUVVFTkNFIFNJWkUgKDEuLk1BWCkgT0YgU0VRVUVOQ0UgewogICAgIGlzc3VlckRvbWFpblBvbGljeSAgICAgIENlcnRQb2xpY3lJZCwKICAgICBzdWJqZWN0RG9tYWkgICAgICAgICAgICAgWzBdIEtleUlkZW50aWZpZXIgICAgICAgICAgICBPUFRJT05BTCwKICAgZyAgICAgICBVVEY4U3RyaW5nICAgICAoU0laRSAoMS4uMjAwKSkgfQppZC1jZS1wb2xpY3lNYXBwaW5ncyBPQkpFQ1QgSURFTlRJRklFUiA6Oj0gIHsgaWQtY2UgMzMgfQpQb2xpY3lNYXBwaW5ncyA6Oj0gU0VRVUVOQ0UgU0laRSAoMS4uTUFYKSBPRiBTRVFVRU5DRSB7CiAgICAgaXNzdWVyRG9tYWluUG9saWN5ICAgICAgQ2VydFBvbGljeUlkLAogICAgIHN1YmplY3REb21haW5Qb2xpY3kgICAgIENlcnRQb2xpY3lJZCB9CkRpcmVjdG9yeVN0cmluZyA6Oj0gQ0hPSUNFIHsKICAgICAgdGVsZXRleFN0cmluZyAgICAgICAgICAgICBUZWxldGV4U3RyaW5nIChTSVpFICgxLi5NQVgpKSwKICAgICAgcHJpbnRhYmxlU3RyaW5nICAgICAgICAgICBQcmludGFibGVTdHJpbmcgKFNJWkUgKDEuLk1BWCkpLAogICAgICB1bml2ZXJzYWxTdHJpbmcgIMwgICAgICAgIFVuaXZlcnNhbFN0cmluZyAoU0laRSAoMS4uSUFYKSksCiAgICAgIHV0ZjhTdHJpbmcgICAgICAgICAgICAgIFVURjhTdHJpbmcgKFNJWkUgKDEuLk1BWCkpLAogICAgICBibXBTdHJpbmcgICAgICAgICAgICAgICBCTVBTdHJpbmcgKFNJWkUoMS4uTUFYKSksCiAgICAgIC0tIElBNVN0cmluZyBpcyBhZGRlZCBoZXJlIHRvIGhhbmRsZSBvbGQgVUlEIGVuY29kZWQgYXMgaWE1U3RyaW5nIC0tCiAgICAgIC0tIFNlZSB0ZXN0cy91c2VyaWQvIGZvciBtb3JlIGluZm9ybWF0aW9uLiAgSXQgc2hvdWxkbid0IGJlIGhlcmUsIC0tCiBQTElDSVQgSU5URUdFUiBERUZBVUxUIDAsCiAgIHJlc3BvbmRlcklEICAgICAgICAgICAgICBSZXNwb25kZXJJRCwIICAgcHJvZHVjZWRBdCAgICAgICAgICAgICAgIEdlbmVyYWxpemVkVGltZSwKICAgcmVzcG9uc2VzICAgICAgICAgICAgICAgIFNFUVVFTkNFIE9GIFNpbmdsZVJlc3BvbnNlLAogCkRpcmVjdG9yeVN0cmluZyA6Oj0gQ0hPSUNFIHsKICAgICAgdGVsZXRleFN0cmlua2VkICAgICAgICAgICAgIFsxXSAgICAgSU1QTElDSVQgUmV2b2tlZEluZm8sCiAgICB1bmtub3duICAgICAgICAgICAgIFsyXSAgICAgSU1QTElDSVQgVW5rbm93bkluZm8gfQpTaW5nbGVSZXNwb25zZSA6Oj0gU0VRVUVOQ0UgewogICBjZXJ0SUQgICAgICAgICAgICAgICAgICAgICAgIENlcnRJRCwKICAgY2VydFN0YXR1cyAgICAgICAgICAgICAgICAgICBDZXJ0U3RhdHVzLAogICB0aGkgICAgWzBdICAgICBFWFBMSUNJVCBDUkxSZWFzb24gT1BUSU9OQUwgfQpVbmtub3duSW5mbyA6Oj0gTlVMTCAtLSB0aGlzIGNhbiBiZSByZXBsYWNlZCB3aXRoIGFuIGVudW1lcmF0aW9uCkVORAo=