CiMjIGNvbnN0cnVjdG9yIGV4Y2VwdGlvbnMgCgojIGNlcnQgcGF0aCBpcyBlbXB0eQpDZXJ0UGF0aFJldmlld2VyLmVtcHR5Q2VydFBhdGgudGl0bGUgPSBaZXJ0aWZpemllcnVuZ3NwZmFkIGlzdCBsZWVyCkNlcnRQYXRoUmV2aWV3ZXIuZW1wdHlDZXJ0UGF0aC50ZXh0ID0gUEtJWENlcnRQYXRoUmV2aWV3ZXI6IGRlciBaZXJ0aWZpemllcnVuZ3NwZmFkIGlzdCBsZWVyLgpDZXJ0UGF0aFJldmlld2VyLmVtcHR5Q2VydFBhdGguc3VtbWFyeSA9IFBLSVhDZXJ0UGF0aFJldmlld2VyOiBkZXIgWmVydGlmaXppZXJ1bmdzcGZhZCBpc3QgbGVlci4KQ2VydFBhdGhSZXZpZXdlci5lbXB0eUNlcnRQYXRoLmRldGFpbHMgPSBQS0lYQ2VydFBhdGhSZXZpZXdlcjogZGVyIFplcnRpZml6aWVydW5nc3BmYWQgaXN0IGxlZXIuCgojIyBuYW1lIGNvbnN0cmFpbnRzIHByb2Nlc3NpbmcgZXJyb3JzCgojIGNlcnQgRE4gaXMgbm90IGluIHRoZSBwZXJtaXR0ZWQgdHJlZQojIHswfSBETiBhcyBTdHJpbmcgCkNlcnRQYXRoUmV2aWV3ZXIubm90UGVybWl0dGVkRE4udGl0bGUgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IFplcnRpZmlrYXRzIEROIGlzdCBuaWNodCBlcmxhdWJ0CkNlcnRQYXRoUmV2aWV3ZXIubm90UGVybWl0dGVkRE4udGV4dCA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogRGVyIFplcnRpZmlrYXRzIEROIHswfSBpc3QgbmljaHQgZXJsYXVidC4KQ2VydFBhdGhSZXZpZXdlci5ub3RQZXJtaXR0ZWRETi5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nOiBEZXIgWmVydGlmaWthdHMgRE4gaXN0IG5pY2h0IGVybGF1YnQuCkNlcnRQYXRoUmV2aWV3ZXIubm90UGVybWl0dGVkRE4uZGV0YWlscyA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogRGVyIFplcnRpZmlrYXRzIEROIHswfSBpc3QgbmljaHQgaW0gU2V0IGRlciBlcmxhdWJ0ZW4gRE5zLgoKIyBjZXJ0IEROIGlzIGluIHRoZSBleGNsdWRlZCB0cmVlCiMgezB9IEROIGFzIFN0cmluZwpDZXJ0UGF0aFJldmlld2VyLmV4Y2x1ZGVkRE4udGl0bGUgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IFplcnRpZmlrYXRzIEROIGlzdCBhdXNnZXNjaGxvc3NlbgpDZXJ0UGF0aFJldmlld2VyLmV4Y2x1ZGVkRE4udGV4dCA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogRGVyIFplcnRpZmlrYXRzIEROIHswfSBpc3QgYXVzZ2VzY2hsb3NzZW4uCkNlcnRQYXRoUmV2aWV3ZXIuZXhjbHVkZWRETi5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nOiBEZXIgWmVydGlmaWthdHMgRE4gaXN0IGF1c2dlc2NobG9zc2VuCkNlcnRQYXRoUmV2aWV3ZXIuZXhjbHVkZWRETi5kZXRhaWxzID0gRmVobGVyIGJlaSBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nOiBEZXIgWmVydGlmaWthdHMgRE4gaXN0IHswfSBpcyBpbm5lcmhhbGIgZGVzIFNldHMgdm9uIGF1c2dlc2NobG9zc2VuZW4gRE5zLgoKIyBjZXJ0IGVtYWlsIGlzIG5vdCBpbiB0aGUgcGVybWl0dGVkIHRyZWUKIyB7MH0gZW1haWwgYWRkcmVzcyBhcyBTdHJpbmcKQ2VydFBhdGhSZXZpZXdlci5ub3RQZXJtaXR0ZWRFbWFpbC50aXRsZSA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogbmljaHQgZXJsYXVidGUgRW1haWwgQWRkcmVzc2UKQ2VydFBhdGhSZXZpZXdlci5ub3RQZXJtaXR0ZWRFbWFpbC50ZXh0ID0gRmVobGVyIGJlaSBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nOiBEYXMgWmVydGlmaWthdCBlbnRo5Gx0IGRpZSBuaWNodCBlcmxhdWJ0ZSBFbWFpbCBBZGRyZXNzZSB7MH0uCkNlcnRQYXRoUmV2aWV3ZXIubm90UGVybWl0dGVkRW1haWwuc3VtbWFyeSA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogRGllIEVtYWlsIEFkZHJlc3NlIGlzdCBuaWNodCBlcmxhdWJ0LgpDZXJ0UGF0aFJldmlld2VyLm5vdFBlcm1pdHRlZEVtYWlsLmRldGFpbHMgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IERhcyBaZXJ0aWZpa2F0IGVudGjkbHQgZGllIEVtYWlsIEFkZHJlc3NlIHswfSwgd2VsY2hlIG5pY2h0IGltIFNldCBkZXIgZXJsYXVidGVuIEVtYWlsIEFkZHJlc3NlbiBpc3QuCgojIGNlcnQgZW1haWwgaXMgaW4gdGhlIGV4Y2x1ZGVkIHRyZWUKIyB7MH0gZW1haWwgYXMgU3RyaW5nCkNlcnRQYXRoUmV2aWV3ZXIuZXhjbHVkZWRFbWFpbC50aXRsZSA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogRW1haWwgQWRkcmVzc2UgYXVzZ2VzY2hsb3NzZW4KQ2VydFBhdGhSZXZpZXdlci5leGNsdWRlZEVtYWlsLnRleHQgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IERpZSBFbWFpbCBBZGRyZXNzZSB7MH0gaW0gWmVydGlmaWthdCBpc3QgYXVzZ2VzY2hsb3NzZW4uIApDZXJ0UGF0aFJldmlld2VyLmV4Y2x1ZGVkRW1haWwuc3VtbWFyeSA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogRGllIEVtYWlsIEFkZHJlc3NlIGlzdCBhdXNnZXNjaGxvc3Nlbi4KQ2VydFBhdGhSZXZpZXdlci5leGNsdWRlZEVtYWlsLmRldGFpbHMgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IERhcyBaZXJ0aWZpa2F0IGVudGjkbHQgZGllIEVtYWlsIEFkZHJlc3NlIHswfSwgd2VsY2hlIGltIFNldCBkZXIgYXVzZ2VzY2hsb3NzZW5lbiBFbWFpbCBBZGRyZXNzZW4gaXN0LgoKIyBjZXJ0IElQIGlzIG5vdCBpbiB0aGUgcGVybWl0dGVkIHRyZWUKIyB7MH0gaXAgYWRkcmVzcyBhcyBTdHJpbmcKQ2VydFBhdGhSZXZpZXdlci5ub3RQZXJtaXR0ZWRJUC50aXRsZSA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogbmljaHQgZXJsYXVidGUgSVAgQWRkcmVzc2UKQ2VydFBhdGhSZXZpZXdlci5ub3RQZXJtaXR0ZWRJUC50ZXh0ID0gRmVobGVyIGJlaSBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nOiBEYXMgWmVydGlmaWthdCBlbnRo5Gx0IGRpZSBuaWNodCBlcmxhdWJ0ZSBJUCBBZGRyZXNzZSB7MH0uCkNlcnRQYXRoUmV2aWV3ZXIubm90UGVybWl0dGVkSVAuc3VtbWFyeSA9IEZlaGxlciBiZWkgZGVyIE5hbWVuc2Jlc2NocuRua3VuZzogRGllIElQIEFkZHJlc3NlIGlzdCBuaWNodCBlcmxhdWJ0LgpDZXJ0UGF0aFJldmlld2VyLm5vdFBlcm1pdHRlZElQLmRldGFpbHMgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IERhcyBaZXJ0aWZpa2F0IGVudGjkbHQgZGllIElQIEFkZHJlc3NlIHswfSwgd2VsY2hlIG5pY2h0IGltIFNldCBkZXIgZXJsYXVidGVuIElQIEFkZHJlc3NlbiBpc3QuCgojIGNlcnQgaXAgaXMgaW4gdGhlIGV4Y2x1ZGVkIHRyZWUKIyB7MH0gaXAgYWRkcmVzcyBhcyBTdHJpbmcKQ2VydFBhdGhSZXZpZXdlci5leGNsdWRlZElQLnRpdGxlID0gRmVobGVyIGJlaSBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nOiBBdXNnZXNjaGxvc3NlbmUgSVAgQWRkcmVzc2UKQ2VydFBhdGhSZXZpZXdlci5leGNsdWRlZElQLnRleHQgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IERhcyBaZXJ0aWZpa2F0IGVuaORsdCBkaWUgYXVzZ2VzY2hsb3NzZW5lIElQIEFkZHJlc3NlIHswfS4KQ2VydFBhdGhSZXZpZXdlci5leGNsdWRlZElQLnN1bW1hcnkgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IERpZSBJUCBBZGRyZXNzZSBpbSBaZXJ0aWZpa2F0IGlzdCBhdXNnZXNjaGxvc3Nlbi4KQ2VydFBhdGhSZXZpZXdlci5leGNsdWRlZElQLmRldGFpbHMgPSBGZWhsZXIgYmVpIGRlciBOYW1lbnNiZXNjaHLkbmt1bmc6IERhcyBaZXJ0aWZpa2F0IGVudGjkbHQgZGllIElQIEFkZHJlc3NlIHswfSwgd2VsY2hlIGltIFNldCBkZXIgYXVzZ2VzY2hsb3NzZW5lbiBJUCBBZGRyZXNzZW4gaXN0LgoKIyBlcnJvciBwcm9jZXNzaW5nIHRoZSBuYW1lIGNvbnN0cmFpbnRzIGV4dGVuc2lvbgpDZXJ0UGF0aFJldmlld2VyLm5jRXh0RXJyb3IudGl0bGUgPSBQcvxmZW4gZGVyIE5hbWVuc2Jlc2NocuRua3VuZ2VuIGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIubmNFeHRFcnJvci50ZXh0ID0gUHL8ZmVuIGRlciBOYW1lbnNiZXNjaHLkbmt1bmdlbiBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgTmFtZSBDb25zdHJhaW50cyBFcndlaXRlcnVuZyBkZXMgWmVydGlmaWthdHMuCkNlcnRQYXRoUmV2aWV3ZXIubmNFeHRFcnJvci5zdW1tYXJ5ID0gUHL8ZmVuIGRlciBOYW1lbnNiZXNjaHLkbmt1bmdlbiBmZWhsZ2VzY2hsYWdlbjogRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBOYW1lIENvbnN0cmFpbnRzIEVyd2VpdGVydW5nLgpDZXJ0UGF0aFJldmlld2VyLm5jRXh0RXJyb3IuZGV0YWlscyA9IFBy/GZlbiBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nZW4gZmVobGdlc2NobGFnZW46IEVzIGdhYiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIE5hbWUgQ29uc3RyYWludHMgRXJ3ZWl0ZXJ1bmcgZGVzIFplcnRpZmlrYXRzLgoKIyBlcnJvciBwcm9jZXNzaW5nIHRoZSBzdWJqZWN0IGFsdGVybmF0aXZlIG5hbWUgZXh0ZW5zaW9uCkNlcnRQYXRoUmV2aWV3ZXIuc3ViakFsdE5hbWVFeHRFcnJvci50aXRsZSA9IFBy/GZlbiBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nZW4gZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5zdWJqQWx0TmFtZUV4dEVycm9yLnRleHQgPSBQcvxmZW4gZGVyIE5hbWVuc2Jlc2NocuRua3VuZ2VuIGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBTdWJqZWN0IEFsdGVybmF0aXZlIE5hbWUgRXJ3ZWl0ZXJ1bmcgZGVzIFplcnRpZmlrYXRzLgpDZXJ0UGF0aFJldmlld2VyLnN1YmpBbHROYW1lRXh0RXJyb3Iuc3VtbWFyeSA9IFBy/GZlbiBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nZW4gZmVobGdlc2NobGFnZW46IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgU3ViamVjdCBBbHRlcm5hdGl2ZSBOYW1lIEVyd2VpdGVydW5nLgpDZXJ0UGF0aFJldmlld2VyLnN1YmpBbHROYW1lRXh0RXJyb3IuZGV0YWlscyA9IFBy/GZlbiBkZXIgTmFtZW5zYmVzY2hy5G5rdW5nZW4gZmVobGdlc2NobGFnZW46IEVzIGdhYiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIFN1YmplY3QgQWx0ZXJuYXRpdmUgTmFtZSBFcndlaXRlcnVuZyBkZXMgWmVydGlmaWthdHMuCgojIGV4Y2VwdGlvbiBleHRyYWN0aW5nIHN1YmplY3QgbmFtZSB3aGVuIGNoZWNraW5nIHN1YnRyZWVzCiMgezB9IHN1YmplY3QgUHJpbmNpcGFsCkNlcnRQYXRoUmV2aWV3ZXIubmNTdWJqZWN0TmFtZUVycm9yLnRpdGxlID0gUHL8ZmVuIGRlciBOYW1lbnNiZXNjaHLkbmt1bmdlbiBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLm5jU3ViamVjdE5hbWVFcnJvci50ZXh0ID0gUHL8ZmVuIGRlciBOYW1lbnNiZXNjaHLkbmt1bmdlbiBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmVuIEZlaGxlciBiZWltIGF1c2xlc2VuIGRlcyBETiBkZXMgWmVydGlmaWthdHMuCkNlcnRQYXRoUmV2aWV3ZXIubmNTdWJqZWN0TmFtZUVycm9yLnN1bW1hcnkgPSBQcvxmZW4gZGVyIE5hbWVuc2Jlc2NocuRua3VuZ2VuIGZlaGxnZXNjaGxhZ2VuOiBGZWhsZXIgYmVpbSBhdXNsZXNlbiBkZXMgRE5zLgpDZXJ0UGF0aFJldmlld2VyLm5jU3ViamVjdE5hbWVFcnJvci5kZXRhaWxzID0gUHL8ZmVuIGRlciBOYW1lbnNiZXNjaHLkbmt1bmdlbiBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmVuIEZlaGxlciBiZWltIGF1c2xlc2VuIGRlcyBETiBkZXMgWmVydGlmaWthdHMuCgoKIyMgcGF0aCBsZW5ndGggZXJyb3JzCgojIG1heCBwYXRoIGxlbmd0aCBleHRlbmRlZApDZXJ0UGF0aFJldmlld2VyLnBhdGhMZW5naHRFeHRlbmRlZC50aXRsZSA9IE1heGltYWxlIFBmYWRs5G5nZSD8YmVyc2Nocml0dGVuIApDZXJ0UGF0aFJldmlld2VyLnBhdGhMZW5naHRFeHRlbmRlZC50ZXh0ID0gWmVydGlmaXppZXJ1bmdzcGZhZCB1bmf8bHRpZzogZGllIE1heGltYWxlIFBmYWRs5G5nZSBpc3Qg/GJlcnNjaHJpdHRlbi4KQ2VydFBhdGhSZXZpZXdlci5wYXRoTGVuZ2h0RXh0ZW5kZWQuc3VtbWFyeSA9IFplcnRpZml6aWVydW5nc3BmYWQgdW5n/Gx0aWc6IGRpZSBNYXhpbWFsZSBQZmFkbORuZ2UgaXN0IPxiZXJzY2hyaXR0ZW4uCkNlcnRQYXRoUmV2aWV3ZXIucGF0aExlbmdodEV4dGVuZGVkLmRldGFpbHMgPSBaZXJ0aWZpemllcnVuZ3NwZmFkIHVuZ/xsdGlnOiBkaWUgTWF4aW1hbGUgUGZhZGzkbmdlIGlzdCD8YmVyc2Nocml0dGVuLgoKIyBlcnJvciByZWFkaW5nIGxlbmd0aCBjb25zdHJhaW50IGZyb20gYmFzaWMgY29uc3RyYWludCBleHRlbnNpb24KQ2VydFBhdGhSZXZpZXdlci5wcm9jZXNzTGVuZ3RoQ29uc3RFcnJvci50aXRsZSA9IFBy/GZlbiBkZXIgUGZhZGzkbmdlIGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIucHJvY2Vzc0xlbmd0aENvbnN0RXJyb3IudGV4dCA9IFBy/GZlbiBkZXIgUGZhZGzkbmdlIGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBzdWJqZWN0IGFsdGVybmF0aXZlIG5hbWUgRXJ3ZWl0ZXJ1bmcgZGVzIFplcnRpZmlrYXRzLiAKQ2VydFBhdGhSZXZpZXdlci5wcm9jZXNzTGVuZ3RoQ29uc3RFcnJvci5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBzdWJqZWN0IGFsdGVybmF0aXZlIG5hbWUgRXJ3ZWl0ZXJ1bmcuCkNlcnRQYXRoUmV2aWV3ZXIucHJvY2Vzc0xlbmd0aENvbnN0RXJyb3IuZGV0YWlscyA9IFBy/GZlbiBkZXIgUGZhZGzkbmdlIGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBzdWJqZWN0IGFsdGVybmF0aXZlIG5hbWUgRXJ3ZWl0ZXJ1bmcgZGVzIFplcnRpZmlrYXRzLgoKCiMjIHBhdGggbGVuZ3RoIG5vdGlmaWNhdGlvbnMKCiMgdG90YWwgcGF0aCBsZW5ndGggYXMgZGVmaW5lZCBpbiByZmMgMzI4MAojIHswfSB0aGUgcGF0aCBsZW5ndGggYXMgSW50ZWdlcgpDZXJ0UGF0aFJldmlld2VyLnRvdGFsUGF0aExlbmd0aC50aXRsZSA9IFRvdGFsZSBQZmFkbORuZ2UKQ2VydFBhdGhSZXZpZXdlci50b3RhbFBhdGhMZW5ndGgudGV4dCA9IERpZSB0b3RhbGUgUGZhZGzkbmdlIG9obmUgc2VsZi1zaWduZWQgWmVydGlmaWthdGUgaXN0IHswfS4KQ2VydFBhdGhSZXZpZXdlci50b3RhbFBhdGhMZW5ndGguc3VtbWFyeSA9IERpZSB0b3RhbGUgUGZhZGzkbmdlIG9obmUgc2VsZi1zaWduZWQgWmVydGlmaWthdGUgaXN0IHswfS4KQ2VydFBhdGhSZXZpZXdlci50b3RhbFBhdGhMZW5ndGguZGV0YWlscyA9IERpZSB0b3RhbGUgUGZhZGzkbmdlIG9obmUgc2VsZi1zaWduZWQgWmVydGlmaWthdGUsIHdpZSBiZXNjaHJpZWJlbiBpbiBSRkMgMzI4MCwgaXN0IHswfS4KCgojIyBjcml0aWNhbCBleHRlbnNpb25zIGVycm9ycwoKIyBvbmUgdW5rbm93biBjcml0aWNhbCBleHRlbnNpb24KIyB7MH0gZXh0ZW5zaW9uIGFzIFN0cmluZwpDZXJ0UGF0aFJldmlld2VyLnVua25vd25Dcml0aWNhbEV4dC50aXRsZSA9IFVuYmVrYW5udGUga3JpdGlzY2hlIEVyd2VpdGVydW5nCkNlcnRQYXRoUmV2aWV3ZXIudW5rbm93bkNyaXRpY2FsRXh0LnRleHQgPSBEYXMgWmVydGlmaWthdCBlbmjkbHQgZWluZSB1bmJla2FubnRlIGtyaXRpc2NoZSBFcndlaXRlcnVuZyBtaXQgZGVyIE9JRCB7MH0uCkNlcnRQYXRoUmV2aWV3ZXIudW5rbm93bkNyaXRpY2FsRXh0LnN1bW1hcnkgPSBVbmJla2FubnRlIGtyaXRpc2NoZSBFcndlaXRlcnVuZzogezB9LgpDZXJ0UGF0aFJldmlld2VyLnVua25vd25Dcml0aWNhbEV4dC5kZXRhaWxzID0gRGFzIFplcnRpZmlrYXQgZW5o5Gx0IGVpbmUgdW5iZWthbm50ZSBrcml0aXNjaGUgRXJ3ZWl0ZXJ1bmcgbWl0IGRlciBPSUQgezB9LgoKIyBtb3JlIHVua25vd24gY3JpdGljYWwgZXh0ZW5zaW9ucwojIHswfSBleHRlbnNpb25zIGFzIFNldCBvZiBTdHJpbmdzCkNlcnRQYXRoUmV2aWV3ZXIudW5rbm93bkNyaXRpY2FsRXh0cy50aXRsZSA9IFVuYmVrYW5udGUga3JpdGlzY2hlIEVyd2VpdGVydW5nCkNlcnRQYXRoUmV2aWV3ZXIudW5rbm93bkNyaXRpY2FsRXh0cy50ZXh0ID0gRGFzIFplcnRpZmlrYXQgZW5o5Gx0IHp3ZWkgb2RlciBtZWhyIHVuYmVrYW5udGUga3JpdGlzY2hlIEVyd2VpdGVydW5nZW4gbWl0IGRlbiBPSURzIHswfS4KQ2VydFBhdGhSZXZpZXdlci51bmtub3duQ3JpdGljYWxFeHRzLnN1bW1hcnkgPSBVbmJla2FubnRlIGtyaXRpc2NoZSBFcndlaXRlcnVuZ2VuOiB7MH0uCkNlcnRQYXRoUmV2aWV3ZXIudW5rbm93bkNyaXRpY2FsRXh0cy5kZXRhaWxzID0gRGFzIFplcnRpZmlrYXQgZW5o5Gx0IHp3ZWkgb2RlciBtZWhyIHVuYmVrYW5udGUga3JpdGlzY2hlIEVyd2VpdGVydW5nZW4gbWl0IGRlbiBPSURzIHswfS4KCiMgZXJyb3IgcHJvY2Vzc2luZyBjcml0aWNhbCBleHRlbnNpb24KIyB7MH0gdGhlIG1lc3NhZ2Ugb2YgdGhlIHVuZGVybHlpbmcgZXhjZXB0aW9uCiMgezF9IHRoZSB1bmRlcmx5aW5nIGV4Y2VwdGlvbgojIHsyfSB0aGUgbmFtZSBvZiB0aGUgZXhjZXB0aW9uCkNlcnRQYXRoUmV2aWV3ZXIuY3JpdGljYWxFeHRlbnNpb25FcnJvci50aXRsZSA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBlaW5lciBrcml0aXNjaGVuIEVyd2VpdGVydW5nCkNlcnRQYXRoUmV2aWV3ZXIuY3JpdGljYWxFeHRlbnNpb25FcnJvci50ZXh0ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGVpbmVyIGtyaXRpc2NoZW4gRXJ3ZWl0ZXJ1bmcuIEVzIGdhYiBlaW5lIHsyfS4KQ2VydFBhdGhSZXZpZXdlci5jcml0aWNhbEV4dGVuc2lvbkVycm9yLnN1bW1hcnkgPSBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZWluZXIga3JpdGlzY2hlbiBFcndlaXRlcnVuZy4gRXMgZ2FiIGVpbmUgezJ9LgpDZXJ0UGF0aFJldmlld2VyLmNyaXRpY2FsRXh0ZW5zaW9uRXJyb3IuZGV0YWlscyA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBlaW5lciBrcml0aXNjaGVuIEVyd2VpdGVydW5nLiBFcyBnYWIgZWluZSB7Mn0uIEdydW5kOiB7MH0uCgojIGVycm9yIGluaXRpYWxpemluZyB0aGUgY2VydHBhdGggY2hlY2tlcnMKIyB7MH0gdGhlIG1lc3NhZ2Ugb2YgdGhlIHVuZGVybHlpbmcgZXhjZXB0aW9uCiMgezF9IHRoZSB1bmRlcmx5aW5nIGV4Y2VwdGlvbgojIHsyfSB0aGUgbmFtZSBvZiB0aGUgZXhjZXB0aW9uCkNlcnRQYXRoUmV2aWV3ZXIuY2VydFBhdGhDaGVja2VyRXJyb3IudGl0bGUgPSBQcvxmZW4gZGVyIGtyaXRpc2NoZW4gRXJ3ZWl0ZXJ1bmdlbiBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLmNlcnRQYXRoQ2hlY2tlckVycm9yLnRleHQgPSBQcvxmZW4gZGVyIGtyaXRpc2NoZW4gRXJ3ZWl0ZXJ1bmdlbiBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmUgezJ9IGJlaSBkZXIgSW5pdGlhbGlzaWVydW5nIGVpbmVzIENlcnRQYXRoQ2hlY2tlci4KQ2VydFBhdGhSZXZpZXdlci5jZXJ0UGF0aENoZWNrZXJFcnJvci5zdW1tYXJ5ID0gUHL8ZmVuIGRlciBrcml0aXNjaGVuIEVyd2VpdGVydW5nZW4gZmVobGdlc2NobGFnZW46IHsyfSBiZWkgZGVyIEluaXRpYWxpc2llcnVuZyBlaW5lcyBDZXJ0UGF0aENoZWNrZXIuCkNlcnRQYXRoUmV2aWV3ZXIuY2VydFBhdGhDaGVja2VyRXJyb3IuZGV0YWlscyA9IFBy/GZlbiBkZXIga3JpdGlzY2hlbiBFcndlaXRlcnVuZ2VuIGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZSB7Mn0gYmVpIGRlciBJbml0aWFsaXNpZXJ1bmcgZWluZXMgQ2VydFBhdGhDaGVja2VyLiBHcnVuZDogezB9CgoKIyMgY2hlY2sgc2lnbmF0dXJlIGVycm9ycwoKQ2VydFBhdGhSZXZpZXdlci5yb290S2V5SXNWYWxpZEJ1dE5vdEFUcnVzdEFuY2hvci50aXRsZSA9IHJvb3RLZXlJc1ZhbGlkQnV0Tm90QVRydXN0QW5jaG9yCkNlcnRQYXRoUmV2aWV3ZXIucm9vdEtleUlzVmFsaWRCdXROb3RBVHJ1c3RBbmNob3IudGV4dCA9IERhcyBaZXJ0aWZpa2F0IGhhdCBlaW5lIGf8bHRpZ2UgU2lnbmF0dXIsIGlzdCBhYmVyIGtlaW4gdmVydHJhdWVuc3f8cmRpZ2VzIFJvb3QgWmVydGlmaWthdC4KQ2VydFBhdGhSZXZpZXdlci5yb290S2V5SXNWYWxpZEJ1dE5vdEFUcnVzdEFuY2hvci5zdW1tYXJ5ID0gRGFzIFplcnRpZmlrYXQgaGF0IGVpbmUgZ/xsdGlnZSBTaWduYXR1ciwgaXN0IGFiZXIga2VpbiB2ZXJ0cmF1ZW5zd/xyZGlnZXMgUm9vdCBaZXJ0aWZpa2F0LgpDZXJ0UGF0aFJldmlld2VyLnJvb3RLZXlJc1ZhbGlkQnV0Tm90QVRydXN0QW5jaG9yLmRldGFpbHMgPSBEYXMgWmVydGlmaWthdCBoYXQgZWluZSBn/Gx0aWdlIFNpZ25hdHVyLCBpc3QgYWJlciBrZWluIHZlcnRyYXVlbnN3/HJkaWdlcyBSb290IFplcnRpZmlrYXQuCgojIHRydXN0YW5jaG9yIGZvdW5kLCBidXQgY2VydGlmaWNhdGUgdmFsaWRhdGlvbiBmYWlsZWQKQ2VydFBhdGhSZXZpZXdlci50cnVzdEJ1dEludmFsaWRDZXJ0LnRpdGxlID0gVmVydHJhdWVuc3f8cmRpZ2VzIFJvb3QgWmVydGlmaWthdCBpbnZhbGlkCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RCdXRJbnZhbGlkQ2VydC50ZXh0ID0gRWluIFJvb3QgWmVydGlmaWthdCB3dXJkZSBnZWZ1bmRlbi4gRXMgaGF0IGFiZXIgZWluZW4gYW5kZXJlbiD2ZmZlbnRsaWNoZW4gU2NobPxzc2VsIGFscyB2ZXJ3ZW5kZXQgd3VyZGUgdW0gZGFzIGVyc3RlIFplcnRpZmlrYXQgZGVzIFplcnRpZml6aWVydW5nc3BmYWRlcyB6dSBzaWduaWVyZW4uCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RCdXRJbnZhbGlkQ2VydC5zdW1tYXJ5ID0gRWluIFJvb3QgWmVydGlmaWthdCB3dXJkZSBnZWZ1bmRlbi4gRXMgaGF0IGFiZXIgZWluZW4gYW5kZXJlbiD2ZmZlbnRsaWNoZW4gU2NobPxzc2VsIGFscyB2ZXJ3ZW5kZXQgd3VyZGUgdW0gZGFzIGVyc3RlIFplcnRpZmlrYXQgZGVzIFplcnRpZml6aWVydW5nc3BmYWRlcyB6dSBzaWduaWVyZW4uCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RCdXRJbnZhbGlkQ2VydC5kZXRhaWxzID0gRWluIFJvb3QgWmVydGlmaWthdCB3dXJkZSBnZWZ1bmRlbi4gRXMgaGF0IGFiZXIgZWluZW4gYW5kZXJlbiD2ZmZlbnRsaWNoZW4gU2NobPxzc2VsIGFscyB2ZXJ3ZW5kZXQgd3VyZGUgdW0gZGFzIGVyc3RlIFplcnRpZmlrYXQgZGVzIFplcnRpZml6aWVydW5nc3BmYWRlcyB6dSBzaWduaWVyZW4uCgojIHRydXN0YW5jaG9yIC0gY2Fubm90IGV4dHJhY3QgaXNzdWVyCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RBbmNob3JJc3N1ZXJFcnJvci50aXRsZSA9IEthbm4ga2VpbiB2ZXJ0cmF1ZW5zd/xyZGlnZXMgUm9vdCBaZXJ0aWZpa2F0IGZpbmRlbgpDZXJ0UGF0aFJldmlld2VyLnRydXN0QW5jaG9ySXNzdWVyRXJyb3IudGV4dCA9IEthbm4ga2VpbiB2ZXJ0cmF1ZW5zd/xyZGlnZXMgUm9vdCBaZXJ0aWZpa2F0IGZpbmRlbjogRGVyIEhlcmF1c2dlYmVyIHZvbSBaZXJ0aWZpa2F0IGthbm4gbmljaHQgYXVzbGVzZW4gd2VyZGVuLgpDZXJ0UGF0aFJldmlld2VyLnRydXN0QW5jaG9ySXNzdWVyRXJyb3Iuc3VtbWFyeSA9IEthbm4ga2VpbiB2ZXJ0cmF1ZW5zd/xyZGlnZXMgUm9vdCBaZXJ0aWZpa2F0IGZpbmRlbjogRGVyIEhlcmF1c2dlYmVyIHZvbSBaZXJ0aWZpa2F0IGthbm4gbmljaHQgYXVzbGVzZW4gd2VyZGVuLgpDZXJ0UGF0aFJldmlld2VyLnRydXN0QW5jaG9ySXNzdWVyRXJyb3IuZGV0YWlscyA9IEthbm4ga2VpbiB2ZXJ0cmF1ZW5zd/xyZGlnZXMgUm9vdCBaZXJ0aWZpa2F0IGZpbmRlbjogRGVyIEhlcmF1c2dlYmVyIHZvbSBaZXJ0aWZpa2F0IGthbm4gbmljaHQgYXVzbGVzZW4gd2VyZGVuLgoKIyBubyB0cnVzdGFuY2hvciB3YXMgZm91bmQgZm9yIHRoZSBjZXJ0aWZpY2F0ZSBwYXRoCiMgezB9IGlzc3VlciBvZiB0aGUgcm9vdCBjZXJ0aWZpY2F0ZSBvZiB0aGUgcGF0aAojIHsxfSBudW1iZXIgb2YgdHJ1c3RlZCByb290IGNlcnRpZmljYXRlcyAodHJ1c3RhbmNob3JzKSBwcm92aWRlZApDZXJ0UGF0aFJldmlld2VyLm5vVHJ1c3RBbmNob3JGb3VuZC50aXRsZSA9IEtlaW4gdmVydHJhdWVuc3f8cmRpZ2VzIFJvb3QgWmVydGlmaWthdCBnZWZ1bmRlbgpDZXJ0UGF0aFJldmlld2VyLm5vVHJ1c3RBbmNob3JGb3VuZC50ZXh0ID0gRGFzIFJvb3QgWmVydGlmaWthdCBkZXIgWmVydGlmaXppZXJ1bmdzcGZhZHMgd3VyZGUgbmljaHQgdm9uIGVpbmVyIHZlcnRyYXVlbnN3/HJkaWdlbiBDQSBhdXNnZXN0ZWxsdC4gRGVyIE5hbWUgZGVyIENBIGlzdCAiezB9Ii4KQ2VydFBhdGhSZXZpZXdlci5ub1RydXN0QW5jaG9yRm91bmQuc3VtbWFyeSA9IERhcyBSb290IFplcnRpZmlrYXQgZGVyIFplcnRpZml6aWVydW5nc3BmYWRzIHd1cmRlIG5pY2h0IHZvbiBlaW5lciB2ZXJ0cmF1ZW5zd/xyZGlnZW4gQ0EgYXVzZ2VzdGVsbHQuCkNlcnRQYXRoUmV2aWV3ZXIubm9UcnVzdEFuY2hvckZvdW5kLmRldGFpbHMgPSBEYXMgUm9vdCBaZXJ0aWZpa2F0IGRlciBaZXJ0aWZpemllcnVuZ3NwZmFkcyB3dXJkZSBuaWNodCB2b24gZWluZXIgdmVydHJhdWVuc3f8cmRpZ2VuIENBIGF1c2dlc3RlbGx0LiBEZXIgTmFtZSBkZXIgQ0EgaXN0ICJ7MH0iLiBEZXIgUm9vdC1aZXJ0aWZpa2F0LVNwZWljaGVyIGVudGjkbHQgezF9IENBKHMpLgoKIyBjb25mbGljdGluZyB0cnVzdCBhbmNob3JzCiMgezB9IG51bWJlciBvZiB0cnVzdGFuY2hvcnMgZm91bmQgKEludGVnZXIpCiMgezF9IHRoZSBjYSBuYW1lCkNlcnRQYXRoUmV2aWV3ZXIuY29uZmxpY3RpbmdUcnVzdEFuY2hvcnMudGl0bGUgPSBLb3JydXB0ZXIgUm9vdC1aZXJ0aWZpa2F0LVNwZWljaGVyCkNlcnRQYXRoUmV2aWV3ZXIuY29uZmxpY3RpbmdUcnVzdEFuY2hvcnMudGV4dCA9IFdhcm51bmc6IEVzIHNpbmQgezB9IPZmZmVudGxpY2hlIFNjaGz8c3NlbCBm/HIgZGllIENBICJ7MX0iIGltIFJvb3QtWmVydGlmaWthdC1TcGVpY2hlciB2b3JoYW5kZW4gLSBiaXR0ZSBwcvxmZW4gU2llIG1pdCBkZXIgQ0Egd2VsY2hlcyBkZXIgcmljaHRpZ2UgU2NobPxzc2VsIGlzdC4KQ2VydFBhdGhSZXZpZXdlci5jb25mbGljdGluZ1RydXN0QW5jaG9ycy5zdW1tYXJ5ID0gV2FybnVuZzogRXMgc2luZCB7MH0g9mZmZW50bGljaGUgU2NobPxzc2VsIGb8ciBkaWUgQ0EgInsxfSIgaW0gUm9vdC1aZXJ0aWZpa2F0LVNwZWljaGVyIHZvcmhhbmRlbiAtIGJpdHRlIHBy/GZlbiBTaWUgbWl0IGRlciBDQSB3ZWxjaGVzIGRlciByaWNodGlnZSBTY2hs/HNzZWwgaXN0LgpDZXJ0UGF0aFJldmlld2VyLmNvbmZsaWN0aW5nVHJ1c3RBbmNob3JzLmRldGFpbHMgPSBXYXJudW5nOiBFcyBzaW5kIHswfSD2ZmZlbnRsaWNoZSBTY2hs/HNzZWwgZvxyIGRpZSBDQSAiezF9IiBpbSBSb290LVplcnRpZmlrYXQtU3BlaWNoZXIgdm9yaGFuZGVuIC0gYml0dGUgcHL8ZmVuIFNpZSBtaXQgZGVyIENBIHdlbGNoZXMgZGVyIHJpY2h0aWdlIFNjaGz8c3NlbCBpc3QuCgojIHRydXN0YW5jaG9yIEROIGlzIGludmFsaWQKIyB7MH0gRE4gb2YgdGhlIFRydXN0YW5jaG9yCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RETkludmFsaWQudGl0bGUgPSBETiBkZXMgdmVydHJhdWVuc3f8cmRpZ2VuIFJvb3QgWmVydGlmaWthdHMgbWl0IGZhbHNjaGVtIEZvcm1hdC4KQ2VydFBhdGhSZXZpZXdlci50cnVzdEROSW52YWxpZC50ZXh0ID0gRGVyIEROIGRlcyB2ZXJ0cmF1ZW5zd/xyZGlnZW4gUm9vdCBaZXJ0aWZpa2F0cyBoYXQgZWluIGZhbHNjaGVzIEZvcm1hdDogezB9LgpDZXJ0UGF0aFJldmlld2VyLnRydXN0RE5JbnZhbGlkLnN1bW1hcnkgPSBEZXIgRE4gZGVzIHZlcnRyYXVlbnN3/HJkaWdlbiBSb290IFplcnRpZmlrYXRzIGhhdCBlaW4gZmFsc2NoZXMgRm9ybWF0OiB7MH0uCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RETkludmFsaWQuZGV0YWlscyA9IERlciBETiBkZXMgdmVydHJhdWVuc3f8cmRpZ2VuIFJvb3QgWmVydGlmaWthdHMgaGF0IGVpbiBmYWxzY2hlcyBGb3JtYXQ6IHswfS4gRXMgaXN0IGtlaW4gZ/xsdGlnZXIgWC41MDAgTmFtZS4gU2llaGUgUkZDIDE3Nzkgb2RlciBSRkMgMjI1My4gCgojIHRydXN0YW5jaG9yIHB1YmxpYyBrZXkgYWxnb3JpdGhtIGVycm9yCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RQdWJLZXlFcnJvci50aXRsZSA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXMg9mZmZW50bGljaGVuIFNjaGz8c3NlbHMgZGVyIHZlcnRyYXVlbnN3/HJkaWdlbiBSb290IFplcnRpZmlrYXRzCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RQdWJLZXlFcnJvci50ZXh0ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlcyD2ZmZlbnRsaWNoZW4gU2NobPxzc2VscyBkZXIgdmVydHJhdWVuc3f8cmRpZ2VuIFJvb3QgWmVydGlmaWthdHMuCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RQdWJLZXlFcnJvci5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlcyD2ZmZlbnRsaWNoZW4gU2NobPxzc2VscyBkZXIgdmVydHJhdWVuc3f8cmRpZ2VuIFJvb3QgWmVydGlmaWthdHMuCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RQdWJLZXlFcnJvci5kZXRhaWxzID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlcyD2ZmZlbnRsaWNoZW4gU2NobPxzc2VscyBkZXIgdmVydHJhdWVuc3f8cmRpZ2VuIFJvb3QgWmVydGlmaWthdHMuIERlciBBbG9yaXRobUlkZW50aWZpZXIgdm9tIFNjaGz8c3NlbCBrYW5uIG5pY2h0IGF1c2dlbGVzZW4gd2VyZGVuLgoKIyBjYW4gbm90IHZlcmlmaXkgc2lnbmF0dXJlOiBpc3N1ZXIgcHVibGljIGtleSB1bmtub3duCkNlcnRQYXRoUmV2aWV3ZXIuTm9Jc3N1ZXJQdWJsaWNLZXkudGl0bGUgPSBaZXJ0aWZpa2F0cyBTaWduYXR1ciBrYW5uIG5pY2h0IGdlcHL8ZnQgd2VyZGVuIApDZXJ0UGF0aFJldmlld2VyLk5vSXNzdWVyUHVibGljS2V5LnRleHQgPSBEaWUgWmVydGlmaWthdHMgU2lnbmF0dXIga2FubiBuaWNodCBnZXBy/GZ0IHdlcmRlbjogRGVyIPZmZmVudGxpY2hlIFNjaGz8c3NlbCBkZXMgSGVyYXVzZ2ViZXJzIGlzdCB1bmJla2FubnQuCkNlcnRQYXRoUmV2aWV3ZXIuTm9Jc3N1ZXJQdWJsaWNLZXkuc3VtbWFyeSA9IERpZSBaZXJ0aWZpa2F0cyBTaWduYXR1ciBrYW5uIG5pY2h0IGdlcHL8ZnQgd2VyZGVuOiBEZXIg9mZmZW50bGljaGUgU2NobPxzc2VsIGRlcyBIZXJhdXNnZWJlcnMgaXN0IHVuYmVrYW5udC4KQ2VydFBhdGhSZXZpZXdlci5Ob0lzc3VlclB1YmxpY0tleS5kZXRhaWxzID0gRGllIFplcnRpZmlrYXRzIFNpZ25hdHVyIGthbm4gbmljaHQgZ2VwcvxmdCB3ZXJkZW46IERlciD2ZmZlbnRsaWNoZSBTY2hs/HNzZWwgZGVzIEhlcmF1c2dlYmVycyBpc3QgdW5iZWthbm50LgoKIyBzaWduYXR1cmUgY2FuIG5vdCBiZSB2ZXJpZmllZAojIHswfSBtZXNzYWdlIG9mIHRoZSB1bmRlcmx5aW5nIGV4Y2VwdGlvbiAoZW5nbGlzaCkKIyB7MX0gdGhlIHVuZGVybHlpbmcgZXhjZXB0aW9uCiMgezJ9IHRoZSBuYW1lIG9mIHRoZSBleGNlcHRpb24KQ2VydFBhdGhSZXZpZXdlci5zaWduYXR1cmVOb3RWZXJpZmllZC50aXRsZSA9IFplcnRpZmlrYXRzIFNpZ25hdHVyIGlzdCB1bmf8bHRpZwpDZXJ0UGF0aFJldmlld2VyLnNpZ25hdHVyZU5vdFZlcmlmaWVkLnRleHQgPSBEaWUgWmVydGlmaWthdHMgU2lnbmF0dXIgaXN0IHVuZ/xsdGlnLiBFcyBnYWIgZWluZSB7Mn0uCkNlcnRQYXRoUmV2aWV3ZXIuc2lnbmF0dXJlTm90VmVyaWZpZWQuc3VtbWFyeSA9IERpZSBaZXJ0aWZpa2F0cyBTaWduYXR1ciBpc3QgdW5n/Gx0aWcuCkNlcnRQYXRoUmV2aWV3ZXIuc2lnbmF0dXJlTm90VmVyaWZpZWQuZGV0YWlscyA9IERpZSBaZXJ0aWZpa2F0cyBTaWduYXR1ciBpc3QgdW5n/Gx0aWcuIEVzIGdhYiBlaW5lIHsyfS4gR3J1bmQ6IHswfQoKIyBjZXJ0aWZpY2F0ZSBleHBpcmVkCiMgezB9IHRoZSBkYXRlIHRoZSBjZXJ0aWZpY2F0ZSBleHBpcmVkIApDZXJ0UGF0aFJldmlld2VyLmNlcnRpZmljYXRlRXhwaXJlZC50aXRsZSA9IFplcnRpZmlrYXQgaXN0IGFiZ2VsYXVmZW4KQ2VydFBhdGhSZXZpZXdlci5jZXJ0aWZpY2F0ZUV4cGlyZWQudGV4dCA9IERhcyBaZXJ0aWZpa2F0IGlzdCB1bmf8bHRpZy4gRXMgaXN0IGFtIHswLGRhdGV9IHswLHRpbWUsZnVsbH0gYWJnZWxhdWZlbi4KQ2VydFBhdGhSZXZpZXdlci5jZXJ0aWZpY2F0ZUV4cGlyZWQuc3VtbWFyeSA9IERhcyBaZXJ0aWZpa2F0IGlzdCBhYmdlbGF1ZmVuIGFtIHswLGRhdGV9IHswLHRpbWUsZnVsbH0uCkNlcnRQYXRoUmV2aWV3ZXIuY2VydGlmaWNhdGVFeHBpcmVkLmRldGFpbHMgPSBEYXMgWmVydGlmaWthdCBpc3QgdW5n/Gx0aWcuIEVzIGlzdCBhbSB7MCxkYXRlfSB7MCx0aW1lLGZ1bGx9IGFiZ2VsYXVmZW4uIAoKIyBjZXJ0aWZpY2F0ZSBub3QgeWV0IHZhbGlkCiMgezB9IHRoZSBkYXRlIGZyb20gd2hpY2ggb24gdGhlIGNlcnRpZmljYXRlIGlzIHZhbGlkCkNlcnRQYXRoUmV2aWV3ZXIuY2VydGlmaWNhdGVOb3RZZXRWYWxpZC50aXRsZSA9IERhcyBaZXJ0aWZpa2F0IGlzdCBub2NoIG5pY2h0IGf8bHRpZwpDZXJ0UGF0aFJldmlld2VyLmNlcnRpZmljYXRlTm90WWV0VmFsaWQudGV4dCA9IERhcyBaZXJ0aWZpa2F0IGlzdCB1bmf8bHRpZy4gRXMgaXN0IGVyc3QgZ/xsdGlnIGFiIHswLGRhdGV9IHswLHRpbWUsZnVsbH0uCkNlcnRQYXRoUmV2aWV3ZXIuY2VydGlmaWNhdGVOb3RZZXRWYWxpZC5zdW1tYXJ5ID0gRGFzIFplcnRpZmlrYXQgaXN0IG5pY2h0IGf8bHRpZyBiaXMgezAsZGF0ZX0gezAsdGltZSxmdWxsfS4KQ2VydFBhdGhSZXZpZXdlci5jZXJ0aWZpY2F0ZU5vdFlldFZhbGlkLmRldGFpbHMgPSBEYXMgWmVydGlmaWthdCBpc3QgdW5n/Gx0aWcuIEVzIGlzdCBlcnN0IGf8bHRpZyBhYiB7MCxkYXRlfSB7MCx0aW1lLGZ1bGx9LiAKCiMgY2VydGlmaWNhdGUgaW52YWxpZCBpc3N1ZXIgRE4KIyB7MH0gZXhwZWN0ZWQgaXNzdWVyIEROIGFzIFN0cmluZwojIHsxfSBmb3VuZCBpc3N1ZXIgRE4gYXMgU3RyaW5nCkNlcnRQYXRoUmV2aWV3ZXIuY2VydFdyb25nSXNzdWVyLnRpdGxlID0gRmFsc2NoZXIgSGVyYXVzZ2ViZXIKQ2VydFBhdGhSZXZpZXdlci5jZXJ0V3JvbmdJc3N1ZXIudGV4dCA9IERhcyBIZXJhdXNnZWJlciBkZXMgWmVydGlmaWthdHMgaXN0IHVuZ/xsdGlnLiBFcndhcnRldCB7MH0sIGdlZnVuZGVuIHsxfS4gCkNlcnRQYXRoUmV2aWV3ZXIuY2VydFdyb25nSXNzdWVyLnN1bW1hcnkgPSBEYXMgSGVyYXVzZ2ViZXIgZGVzIFplcnRpZmlrYXRzIGlzdCB1bmf8bHRpZy4gCkNlcnRQYXRoUmV2aWV3ZXIuY2VydFdyb25nSXNzdWVyLmRldGFpbHMgPSBEYXMgSGVyYXVzZ2ViZXIgZGVzIFplcnRpZmlrYXRzIGlzdCB1bmf8bHRpZy4gRXJ3YXJ0ZXQgezB9LCBnZWZ1bmRlbiB7MX0uCgojIGludGVybWVkaWF0ZSBjZXJ0aWZpY2F0ZSBpcyBubyBjYSBjZXJ0CkNlcnRQYXRoUmV2aWV3ZXIubm9DQUNlcnQudGl0bGUgPSBaZXJ0aWZpa2F0IGlzdCBrZWluIENBIFplcnRpZmlrYXQKQ2VydFBhdGhSZXZpZXdlci5ub0NBQ2VydC50ZXh0ID0gRGFzIFplcnRpZmlrYXQgaXN0IGtlaW4gQ0EgWmVydGlmaWthdC4KQ2VydFBhdGhSZXZpZXdlci5ub0NBQ2VydC5zdW1tYXJ5ID0gRGFzIFplcnRpZmlrYXQgaXN0IGtlaW4gQ0EgWmVydGlmaWthdC4KQ2VydFBhdGhSZXZpZXdlci5ub0NBQ2VydC5kZXRhaWxzID0gRGFzIFplcnRpZmlrYXQgaXN0IGtlaW4gQ0EgWmVydGlmaWthdCwgd2lyZCBhYmVyIHdpZSBlaW5lcyBnZWJyYXVjaHQuCgojIGNlcnQgbGFrcyBiYXNpYyBjb25zdHJhaW50cwpDZXJ0UGF0aFJldmlld2VyLm5vQmFzaWNDb25zdHJhaW50cy50aXRsZSA9IFplcnRpZmlrYXQgaGF0IGtlaW5lIEJhc2lzZWluc2NocuRua3VuZ2VuCkNlcnRQYXRoUmV2aWV3ZXIubm9CYXNpY0NvbnN0cmFpbnRzLnRleHQgPSBEYXMgWmVydGlmaWthdCBoYXQga2VpbmUgQmFzaXNlaW5zY2hy5G5rdW5nZW4uCkNlcnRQYXRoUmV2aWV3ZXIubm9CYXNpY0NvbnN0cmFpbnRzLnN1bW1hcnkgPSBEYXMgWmVydGlmaWthdCBoYXQga2VpbmUgQmFzaXNlaW5zY2hy5G5rdW5nZW4uCkNlcnRQYXRoUmV2aWV3ZXIubm9CYXNpY0NvbnN0cmFpbnRzLmRldGFpbHMgPSBEYXMgWmVydGlmaWthdCBoYXQga2VpbmUgQmFzaXNlaW5zY2hy5G5rdW5nZW4uCgojIGVycm9yIHByb2Nlc3NpbmcgYmFzaWMgY29uc3RyYWludHMKQ2VydFBhdGhSZXZpZXdlci5lcnJvclByb2Nlc2luZ0JDLnRpdGxlID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBCYXNpc2VpbnNjaHLkbmt1bmdlbgpDZXJ0UGF0aFJldmlld2VyLmVycm9yUHJvY2VzaW5nQkMudGV4dCA9IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIEJhc2lzZWluc2NocuRua3VuZ2VuIGRlcyBaZXJ0aWZpa2F0cy4KQ2VydFBhdGhSZXZpZXdlci5lcnJvclByb2Nlc2luZ0JDLnN1bW1hcnkgPSBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIEJhc2lzZWluc2NocuRua3VuZ2VuIApDZXJ0UGF0aFJldmlld2VyLmVycm9yUHJvY2VzaW5nQkMuZGV0YWlscyA9IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIEJhc2lzZWluc2NocuRua3VuZ2VuIGRlcyBaZXJ0aWZpa2F0cy4KCiMgY2VydGlmaWNhdGUgbm90IHVzYWJsZSBmb3Igc2lnbmluZyBjZXJ0cwpDZXJ0UGF0aFJldmlld2VyLm5vQ2VydFNpZ24udGl0bGUgPSBTY2hs/HNzZWwgbmljaHQgbnV0emJhciBm/HIgWmVydGlmaWthdHNzaWduYXR1cmVuCkNlcnRQYXRoUmV2aWV3ZXIubm9DZXJ0U2lnbi50ZXh0ID0gRGVyIFNjaGz8c3NlbCBrYW5uIG5pY2h0IHp1bSBTaWduaWVyZW4gdm9uIFplcnRpZmlrYXRlbiB2ZXJ3ZW5kZXQgd2VyZGVuLgpDZXJ0UGF0aFJldmlld2VyLm5vQ2VydFNpZ24uc3VtbWFyeSA9IERlciBTY2hs/HNzZWwga2FubiBuaWNodCB6dW0gU2lnbmllcmVuIHZvbiBaZXJ0aWZpa2F0ZW4gdmVyd2VuZGV0IHdlcmRlbi4KQ2VydFBhdGhSZXZpZXdlci5ub0NlcnRTaWduLmRldGFpbHMgPSBEZXIgU2NobPxzc2VsIGthbm4gbmljaHQgenVtIFNpZ25pZXJlbiB2b24gWmVydGlmaWthdGVuIHZlcndlbmRldCB3ZXJkZW4uCgojIGVycm9yIHByb2Nlc3NpbmcgcHVibGljIGtleQpDZXJ0UGF0aFJldmlld2VyLnB1YktleUVycm9yLnRpdGxlID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlcyD2ZmZlbnRsaWNoZW4gU2NobPxzc2VscwpDZXJ0UGF0aFJldmlld2VyLnB1YktleUVycm9yLnRleHQgPSBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVzIPZmZmVudGxpY2hlbiBTY2hs/HNzZWxzIGRlcyBaZXJ0aWZpa2F0cy4KQ2VydFBhdGhSZXZpZXdlci5wdWJLZXlFcnJvci5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlcyD2ZmZlbnRsaWNoZW4gU2NobPxzc2VscyBkZXMgWmVydGlmaWthdHMuCkNlcnRQYXRoUmV2aWV3ZXIucHViS2V5RXJyb3IuZGV0YWlscyA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXMg9mZmZW50bGljaGVuIFNjaGz8c3NlbHMgZGVzIFplcnRpZmlrYXRzLiBEZXIgQWxvcml0aG1JZGVudGlmaWVyIGtvbm50ZSBuaWNodCBleHRyYWhpZXJ0IHdlcmRlbi4KCgojIyBjaGVjayBzaWduYXR1cmVzIG5vdGlmaWNhdGlvbnMKCiMKIyB0cnVzdCBhbmNob3IgaGFzIG5vIGtleXVzYWdlIGNlcnRTaWduCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RLZXlVc2FnZS50aXRsZSA9IFJvb3QtWmVydGlmaWthdCBTY2hs/HNzZWx2ZXJ3ZW5kdW5nCkNlcnRQYXRoUmV2aWV3ZXIudHJ1c3RLZXlVc2FnZS50ZXh0ID0gRGFzIFJvb3QtWmVydGlmaWthdCBkYXJmIG5pY2h0IHp1bSBTaWduaWVyZW4gdm9uIFplcnRpZmlrYXRlbiB2ZXJ3ZW5kZXQgd2VyZGVuLgpDZXJ0UGF0aFJldmlld2VyLnRydXN0S2V5VXNhZ2Uuc3VtbWFyeSA9IERhcyBSb290LVplcnRpZmlrYXQgZGFyZiBuaWNodCB6dW0gU2lnbmllcmVuIHZvbiBaZXJ0aWZpa2F0ZW4gdmVyd2VuZGV0IHdlcmRlbi4KQ2VydFBhdGhSZXZpZXdlci50cnVzdEtleVVzYWdlLmRldGFpbHMgPSBEYXMgUm9vdC1aZXJ0aWZpa2F0IGRhcmYgbmljaHQgenVtIFNpZ25pZXJlbiB2b24gWmVydGlmaWthdGVuIHZlcndlbmRldCB3ZXJkZW4uCgojIGNlcnRpZmljYXRlIHBhdGggdmFsaWRhdGlvbiBkYXRlCiMgezB9IGRhdGUgZm9yIHdoaWNoIHRoZSBjZXJ0IHBhdGggaXMgdmFsaWRhdGVkCiMgezF9IGN1cnJlbnQgZGF0ZQpDZXJ0UGF0aFJldmlld2VyLmNlcnRQYXRoVmFsaWREYXRlLnRpdGxlID0gRGF0dW0gZGVyIFplcnRpZmlrYXRzcGZhZCBWYWxpZGllcnVuZwpDZXJ0UGF0aFJldmlld2VyLmNlcnRQYXRoVmFsaWREYXRlLnRleHQgPSBEZXIgWmVydGlmaWthdHNwZmFkIHd1cmRlIGFtIHswLGRhdGV9IHswLHRpbWUsZnVsbH0gYW5nZXdlbmRldC4gRXIgd3VyZGUgYW0gezEsZGF0ZX0gezEsdGltZSxmdWxsfSBnZXBy/GZ0LgpDZXJ0UGF0aFJldmlld2VyLmNlcnRQYXRoVmFsaWREYXRlLnN1bW1hcnkgPSBEZXIgWmVydGlmaWthdHNwZmFkIHd1cmRlIGFtIHswLGRhdGV9IHswLHRpbWUsZnVsbH0gYW5nZXdlbmRldC4gRXIgd3VyZGUgYW0gezEsZGF0ZX0gezEsdGltZSxmdWxsfSBnZXBy/GZ0LgpDZXJ0UGF0aFJldmlld2VyLmNlcnRQYXRoVmFsaWREYXRlLmRldGFpbHMgPSBEZXIgWmVydGlmaWthdHNwZmFkIHd1cmRlIGFtIHswLGRhdGV9IHswLHRpbWUsZnVsbH0gYW5nZXdlbmRldC4gRXIgd3VyZGUgYW0gezEsZGF0ZX0gezEsdGltZSxmdWxsfSBnZXBy/GZ0LgoKCiMjIGNoZWNrIHBvbGljeSBlcnJvcnMKCiMgZXJyb3IgcHJvY2Vzc2luZyBjZXJ0aWZpY2F0ZSBwb2xpY3kgZXh0ZW5zaW9uCkNlcnRQYXRoUmV2aWV3ZXIucG9saWN5RXh0RXJyb3IudGl0bGUgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLnBvbGljeUV4dEVycm9yLnRleHQgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmVuIEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgUG9saWN5IEVyd2VpdGVydW5nLiAKQ2VydFBhdGhSZXZpZXdlci5wb2xpY3lFeHRFcnJvci5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBQb2xpY3kgRXJ3ZWl0ZXJ1bmcuCkNlcnRQYXRoUmV2aWV3ZXIucG9saWN5RXh0RXJyb3IuZGV0YWlscyA9IFBy/GZlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBQb2xpY3kgRXJ3ZWl0ZXJ1bmcuIAoKIyBlcnJvciBwcm9jZXNzaW5nIHBvbGljeSBjb25zdHJhaW50cyBleHRlbnNpb24KQ2VydFBhdGhSZXZpZXdlci5wb2xpY3lDb25zdEV4dEVycm9yLnRpdGxlID0gUHL8ZmVuIGRlciBQb2xpY3kgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5wb2xpY3lDb25zdEV4dEVycm9yLnRleHQgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmVuIEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgUG9saWN5IENvbnN0cmFpbnRzIEVyd2VpdGVydW5nLgpDZXJ0UGF0aFJldmlld2VyLnBvbGljeUNvbnN0RXh0RXJyb3Iuc3VtbWFyeSA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgUG9saWN5IENvbnN0cmFpbnRzIEVyd2VpdGVydW5nLgpDZXJ0UGF0aFJldmlld2VyLnBvbGljeUNvbnN0RXh0RXJyb3IuZGV0YWlscyA9IFBy/GZlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBQb2xpY3kgQ29uc3RyYWludHMgRXJ3ZWl0ZXJ1bmcuCgojIGVycm9yIHByb2Nlc3NpbmcgcG9saWN5IG1hcHBpbmcgZXh0ZW5zaW9uCkNlcnRQYXRoUmV2aWV3ZXIucG9saWN5TWFwRXh0RXJyb3IudGl0bGUgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLnBvbGljeU1hcEV4dEVycm9yLnRleHQgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmVuIEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgUG9saWN5IE1hcHBpbmcgRXJ3ZWl0ZXJ1bmcuCkNlcnRQYXRoUmV2aWV3ZXIucG9saWN5TWFwRXh0RXJyb3Iuc3VtbWFyeSA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgUG9saWN5IE1hcHBpbmcgRXJ3ZWl0ZXJ1bmcuCkNlcnRQYXRoUmV2aWV3ZXIucG9saWN5TWFwRXh0RXJyb3IuZGV0YWlscyA9IFBy/GZlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBQb2xpY3kgTWFwcGluZyBFcndlaXRlcnVuZy4KCiMgZXJyb3IgcHJvY2Vzc2luZyBpbmhpYml0IGFueSBwb2xpY3kgZXh0ZW5zaW9uCkNlcnRQYXRoUmV2aWV3ZXIucG9saWN5SW5oaWJpdEV4dEVycm9yLnRpdGxlID0gUHL8ZmVuIGRlciBQb2xpY3kgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5wb2xpY3lJbmhpYml0RXh0RXJyb3IudGV4dCA9IFBy/GZlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBJbmhpYml0IEFueSBQb2xpY3kgRXJ3ZWl0ZXJ1bmcuCkNlcnRQYXRoUmV2aWV3ZXIucG9saWN5SW5oaWJpdEV4dEVycm9yLnN1bW1hcnkgPSBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIEluaGliaXQgQW55IFBvbGljeSBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5wb2xpY3lJbmhpYml0RXh0RXJyb3IuZGV0YWlscyA9IFBy/GZlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBJbmhpYml0IEFueSBQb2xpY3kgRXJ3ZWl0ZXJ1bmcuCgojIGVycm9yIGJ1aWxkaW5nIHF1YWxpZmllciBzZXQKQ2VydFBhdGhSZXZpZXdlci5wb2xpY3lRdWFsaWZpZXJFcnJvci50aXRsZSA9IFBy/GZlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIucG9saWN5UXVhbGlmaWVyRXJyb3IudGV4dCA9IFBy/GZlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuOiBGZWhsZXIgYmVpbSBlcnN0ZWxsZW4gZGVzIFBvbGljeSBRdWFsaWZpZXIgU2V0LgpDZXJ0UGF0aFJldmlld2VyLnBvbGljeVF1YWxpZmllckVycm9yLnN1bW1hcnkgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbjogRmVobGVyIGJlaW0gZXJzdGVsbGVuIGRlcyBQb2xpY3kgUXVhbGlmaWVyIFNldC4KQ2VydFBhdGhSZXZpZXdlci5wb2xpY3lRdWFsaWZpZXJFcnJvci5kZXRhaWxzID0gUHL8ZmVuIGRlciBQb2xpY3kgZmVobGdlc2NobGFnZW46IEZlaGxlciBiZWltIGVyc3RlbGxlbiBkZXMgUG9saWN5IFF1YWxpZmllciBTZXQuCgojIG5vIHZhbGlkIHBvbGljeSB0cmVlIC0gZXhwbGljaXQgcG9saWN5IHJlcXVpcmVkCkNlcnRQYXRoUmV2aWV3ZXIubm9WYWxpZFBvbGljeVRyZWUudGl0bGUgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLm5vVmFsaWRQb2xpY3lUcmVlLnRleHQgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbjogS2VpbiBn/Gx0aWdlciBQb2xpY3kgQmF1bSBnZWZ1bmRlbiwgYWxzIGVpbmVyIGVyd2FydGV0IHd1cmRlLgpDZXJ0UGF0aFJldmlld2VyLm5vVmFsaWRQb2xpY3lUcmVlLnN1bW1hcnkgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbjogS2VpbiBn/Gx0aWdlciBQb2xpY3kgQmF1bSBnZWZ1bmRlbiwgYWxzIGVpbmVyIGVyd2FydGV0IHd1cmRlLgpDZXJ0UGF0aFJldmlld2VyLm5vVmFsaWRQb2xpY3lUcmVlLmRldGFpbHMgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbjogS2VpbiBn/Gx0aWdlciBQb2xpY3kgQmF1bSBnZWZ1bmRlbiwgYWxzIGVpbmVyIGVyd2FydGV0IHd1cmRlLgoKIyBleHBpY2l0IHBvbGljeSByZXF1ZXN0ZWQsIGJ1dCBubyBwb2xpY3kgYXZhaWxhYmxlCkNlcnRQYXRoUmV2aWV3ZXIuZXhwbGljaXRQb2xpY3kudGl0bGUgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLmV4cGxpY2l0UG9saWN5LnRleHQgPSBQcvxmZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbjogUG9saWN5IHZlcmxhbmcsIGFiZXIga2VpbmUgUG9saWN5IHZvcmhhbmRlbi4KQ2VydFBhdGhSZXZpZXdlci5leHBsaWNpdFBvbGljeS5zdW1tYXJ5ID0gUHL8ZmVuIGRlciBQb2xpY3kgZmVobGdlc2NobGFnZW46IFBvbGljeSB2ZXJsYW5nLCBhYmVyIGtlaW5lIFBvbGljeSB2b3JoYW5kZW4uCkNlcnRQYXRoUmV2aWV3ZXIuZXhwbGljaXRQb2xpY3kuZGV0YWlscyA9IFBy/GZlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuOiBQb2xpY3kgdmVybGFuZywgYWJlciBrZWluZSBQb2xpY3kgdm9yaGFuZGVuLgoKIyBwYXRoIHByb2Nlc3NpbmcgZmFpbGVkIG9uIHBvbGljeQpDZXJ0UGF0aFJldmlld2VyLmludmFsaWRQb2xpY3kudGl0bGUgPSBQZmFkIFZhbGlkaWVydW5nIHdlZ2VuIGRlciBQb2xpY3kgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5pbnZhbGlkUG9saWN5LnRleHQgPSBQZmFkIFZhbGlkaWVydW5nIHdlZ2VuIGRlciBQb2xpY3kgZmVobGdlc2NobGFnZW4uCkNlcnRQYXRoUmV2aWV3ZXIuaW52YWxpZFBvbGljeS5zdW1tYXJ5ID0gUGZhZCBWYWxpZGllcnVuZyB3ZWdlbiBkZXIgUG9saWN5IGZlaGxnZXNjaGxhZ2VuLgpDZXJ0UGF0aFJldmlld2VyLmludmFsaWRQb2xpY3kuZGV0YWlscyA9IFBmYWQgVmFsaWRpZXJ1bmcgd2VnZW4gZGVyIFBvbGljeSBmZWhsZ2VzY2hsYWdlbi4KCiMgaW52YWxpZCBwb2xpY3kgbWFwcGluZwpDZXJ0UGF0aFJldmlld2VyLmludmFsaWRQb2xpY3lNYXBwaW5nLnRpdGxlID0gVW5n/Gx0aWdlcyBQb2xpY3kgTWFwcGluZyAKQ2VydFBhdGhSZXZpZXdlci5pbnZhbGlkUG9saWN5TWFwcGluZy50ZXh0ID0gRGFzIFplcnRpZmlrYXQgZW50aORsdCBlaW4gVW5n/Gx0aWdlcyBQb2xpY3kgTWFwcGluZy4KQ2VydFBhdGhSZXZpZXdlci5pbnZhbGlkUG9saWN5TWFwcGluZy5zdW1tYXJ5ID0gRGFzIFplcnRpZmlrYXQgZW50aORsdCBlaW4gVW5n/Gx0aWdlcyBQb2xpY3kgTWFwcGluZy4gCkNlcnRQYXRoUmV2aWV3ZXIuaW52YWxpZFBvbGljeU1hcHBpbmcuZGV0YWlscyA9IERhcyBaZXJ0aWZpa2F0IGVudGjkbHQgZWluIFVuZ/xsdGlnZXMgUG9saWN5IE1hcHBpbmcsIGRhcyBkZW4gV2VydCBBbnkgUG9saWN5IGVudGjkbHQuCgojIyBjaGVjayBDUkwgbm90aWZpY2F0aW9ucwoKIyBmb3VuZCBsb2NhbCB2YWxpZCBDUkwKIyB7MH0gdGhpc1VwZGF0ZSBvZiB0aGUgQ1JMCiMgezF9IG5leHRVcGRhdGUgb2YgdGhlIENSTApDZXJ0UGF0aFJldmlld2VyLmxvY2FsVmFsaWRDUkwudGl0bGUgPSBH/Gx0aWdlIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBnZWZ1bmRlbgpDZXJ0UGF0aFJldmlld2VyLmxvY2FsVmFsaWRDUkwudGV4dCA9IEf8bHRpZ2UgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGltIGxva2FsZW4gU3BlaWNoZXIgZ2VmdW5kZW4uIEhlcmF1c2dlZ2ViZW4gYW0gezAsZGF0ZX0sIG7kY2hzdGVzIFVwZGF0ZSBhbSB7MSxkYXRlfS4KQ2VydFBhdGhSZXZpZXdlci5sb2NhbFZhbGlkQ1JMLnN1bW1hcnkgPSBH/Gx0aWdlIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBpbSBsb2thbGVuIFNwZWljaGVyIGdlZnVuZGVuLiBIZXJhdXNnZWdlYmVuIGFtIHswLGRhdGV9LCBu5GNoc3RlcyBVcGRhdGUgYW0gezEsZGF0ZX0uCkNlcnRQYXRoUmV2aWV3ZXIubG9jYWxWYWxpZENSTC5kZXRhaWxzID0gR/xsdGlnZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgaW0gbG9rYWxlbiBTcGVpY2hlciBnZWZ1bmRlbi4gSGVyYXVzZ2VnZWJlbiBhbSB7MCxkYXRlfSwgbuRjaHN0ZXMgVXBkYXRlIGFtIHsxLGRhdGV9LgoKCiMgZm91bmQgbWF0Y2hpbmcgQ1JMLCBidXQgbm90IHZhbGlkCiMgezB9IHRoaXNVcGRhdGUgb2YgdGhlIENSTAojIHsxfSBuZXh0VXBkYXRlIG9mIHRoZSBDUkwKQ2VydFBhdGhSZXZpZXdlci5sb2NhbEludmFsaWRDUkwudGl0bGUgPSBMb2thbGUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIHZlcmFsdGV0CkNlcnRQYXRoUmV2aWV3ZXIubG9jYWxJbnZhbGlkQ1JMLnRleHQgPSBFaW5lIGxva2FsZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgd3VyZGUgbmljaHQgZ2VudXR6dCwgZGEgc2llIHZlcmFsdGV0IGlzdC4gSGVyYXVzZ2VnZWJlbiBhbSB7MCxkYXRlfSwgbuRjaHN0ZXMgVXBkYXRlIGFtIHsxLGRhdGV9LgpDZXJ0UGF0aFJldmlld2VyLmxvY2FsSW52YWxpZENSTC5zdW1tYXJ5ID0gRWluZSBsb2thbGUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIHd1cmRlIG5pY2h0IGdlbnV0enQsIGRhIHNpZSB2ZXJhbHRldCBpc3QuIEhlcmF1c2dlZ2ViZW4gYW0gezAsZGF0ZX0sIG7kY2hzdGVzIFVwZGF0ZSBhbSB7MSxkYXRlfS4KQ2VydFBhdGhSZXZpZXdlci5sb2NhbEludmFsaWRDUkwuZGV0YWlscyA9IEVpbmUgbG9rYWxlIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSB3dXJkZSBuaWNodCBnZW51dHp0LCBkYSBzaWUgdmVyYWx0ZXQgaXN0LiBIZXJhdXNnZWdlYmVuIGFtIHswLGRhdGV9LCBu5GNoc3RlcyBVcGRhdGUgYW0gezEsZGF0ZX0uCgojIGZvdW5kIGEgdmFsaWQgY3JsIGF0IGNybCBkaXN0cmlidXRpb24gcG9pbnQKIyB7MH0gdGhpc1VwZGF0ZSBvZiB0aGUgQ1JMCiMgezF9IG5leHRVcGRhdGUgb2YgdGhlIENSTAojIHsyfSB0aGUgdXJsIG9mIHRoZSBkaXN0cmlidXRpb24gcG9pbnQKQ2VydFBhdGhSZXZpZXdlci5vbmxpbmVWYWxpZENSTC50aXRsZSA9IEf8bHRpZ2UgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIHZvbiBlaW5lbSBDRFAKQ2VydFBhdGhSZXZpZXdlci5vbmxpbmVWYWxpZENSTC50ZXh0ID0gR/xsdGlnZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZ2VmdW5kZW4gdm9uOiB7Mn0uIEhlcmF1c2dlZ2ViZW4gYW0gezAsZGF0ZX0sIG7kY2hzdGVzIFVwZGF0ZSBhbSB7MSxkYXRlfS4KQ2VydFBhdGhSZXZpZXdlci5vbmxpbmVWYWxpZENSTC5zdW1tYXJ5ID0gR/xsdGlnZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZ2VmdW5kZW4gdm9uOiB7Mn0uIEhlcmF1c2dlZ2ViZW4gYW0gezAsZGF0ZX0sIG7kY2hzdGVzIFVwZGF0ZSBhbSB7MSxkYXRlfS4KQ2VydFBhdGhSZXZpZXdlci5vbmxpbmVWYWxpZENSTC5kZXRhaWxzID0gR/xsdGlnZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZ2VmdW5kZW4gdm9uOiB7Mn0uIEhlcmF1c2dlZ2ViZW4gYW0gezAsZGF0ZX0sIG7kY2hzdGVzIFVwZGF0ZSBhbSB7MSxkYXRlfS4KCiMgZm91bmQgYW4gaW52YWxpZCBDUkwgYXQgY3JsIGRpc3RyaWJ1dGlvbiBwb2ludAojIHswfSB0aGlzVXBkYXRlIG9mIHRoZSBDUkwKIyB7MX0gbmV4dFVwZGF0ZSBvZiB0aGUgQ1JMCiMgezJ9IHRoZSB1cmwgb2YgdGhlIGRpc3RyaWJ1dGlvbiBwb2ludApDZXJ0UGF0aFJldmlld2VyLm9ubGluZUludmFsaWRDUkwudGl0bGUgPSBWZXJhbHRldGUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIHZvbiBlaW5lbSBDRFAKQ2VydFBhdGhSZXZpZXdlci5vbmxpbmVJbnZhbGlkQ1JMLnRleHQgPSBEaWUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIHZvbiB7Mn0gaXN0IHZlcmFsdGV0LiBIZXJhdXNnZWdlYmVuIGFtIHswLGRhdGV9LCBu5GNoc3RlcyBVcGRhdGUgYW0gezEsZGF0ZX0uCkNlcnRQYXRoUmV2aWV3ZXIub25saW5lSW52YWxpZENSTC5zdW1tYXJ5ID0gRGllIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSB2b24gezJ9IGlzdCB2ZXJhbHRldC4gSGVyYXVzZ2VnZWJlbiBhbSB7MCxkYXRlfSwgbuRjaHN0ZXMgVXBkYXRlIGFtIHsxLGRhdGV9LgpDZXJ0UGF0aFJldmlld2VyLm9ubGluZUludmFsaWRDUkwuZGV0YWlscyA9IERpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgdm9uIHsyfSBpc3QgdmVyYWx0ZXQuIEhlcmF1c2dlZ2ViZW4gYW0gezAsZGF0ZX0sIG7kY2hzdGVzIFVwZGF0ZSBhbSB7MSxkYXRlfS4KCiNmb3VuZCBhIENSTCBhdCBhIGNybCBkaXN0cmlidXRpb24gcG9pbnQsIGJ1dCBpc3N1ZWQgYnkgYW5vdGhlciBDQQojIHswfSBpc3N1ZXIgb2YgdGhlIENSTAojIHsxfSBleHBlY3RlZCBpc3N1ZXIKIyB7Mn0gdGhlIHVybCBvZiB0aGUgZGlzdHJpYnV0aW9uIHBvaW50CkNlcnRQYXRoUmV2aWV3ZXIub25saW5lQ1JMV3JvbmdDQS50aXRsZSA9IFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSB2b24gQ0RQIG1pdCBmYWxzY2hlbSBIZXJhdXNnZWJlcgpDZXJ0UGF0aFJldmlld2VyLm9ubGluZUNSTFdyb25nQ0EudGV4dCA9IERpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgdm9uIHsyfSB3dXJkZSB2b24gezB9IGhlcmF1c2dlZ2ViZW4sIGVyd2FydGV0IHd1cmRlIHsxfS4KQ2VydFBhdGhSZXZpZXdlci5vbmxpbmVDUkxXcm9uZ0NBLnN1bW1hcnkgPSBEaWUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIHZvbiB7Mn0gaGF0IGVpbmVuIGZhbHNjaGVuIEhlcmF1c2dlYmVyLgpDZXJ0UGF0aFJldmlld2VyLm9ubGluZUNSTFdyb25nQ0EuZGV0YWlscyA9IERpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgdm9uIHsyfSB3dXJkZSB2b24gezB9IGhlcmF1c2dlZ2ViZW4sIGVyd2FydGV0IHd1cmRlIHsxfS4KCiMgQ2VydGlmaWNhdGUgbm90IHJldm9rZWQKQ2VydFBhdGhSZXZpZXdlci5ub3RSZXZva2VkLnRpdGxlID0gWmVydGlmaWthdCBuaWNodCByZXZvemllcnQKQ2VydFBhdGhSZXZpZXdlci5ub3RSZXZva2VkLnRleHQgPSBEYXMgWmVydGlmaWthdCBpc3QgbmljaHQgcmV2b3ppZXJ0LgpDZXJ0UGF0aFJldmlld2VyLm5vdFJldm9rZWQuc3VtbWFyeSA9IERhcyBaZXJ0aWZpa2F0IGlzdCBuaWNodCByZXZvemllcnQuCkNlcnRQYXRoUmV2aWV3ZXIubm90UmV2b2tlZC5kZXRhaWxzID0gRGFzIFplcnRpZmlrYXQgaXN0IG5pY2h0IHJldm96aWVydC4KCiMgQ1JMIGZvdW5kOiBjZXJ0aWZpY2F0ZSB3YXMgcmV2b2tlZCwgYnV0IGFmdGVyIHRoZSB2YWxpZGF0aW9uRGF0ZQojIHswfSB0aGUgZGF0ZSB0aGUgY2VydGlmaWNhdGUgd2FzIHJldm9rZWQKIyB7MX0gdGhlIHJlYXNvbiBmb3IgcmV2b2tpbmcgdGhlIGNlcnRpZmljYXRlCkNlcnRQYXRoUmV2aWV3ZXIucmV2b2tlZEFmdGVyVmFsaWRhdGlvbi50aXRsZSA9IFplcnRpZmlrYXQgcmV2b3ppZXJ0IG5hY2ggZGVtIFZhbGlkaWVydW5nZGF0dW0KQ2VydFBhdGhSZXZpZXdlci5yZXZva2VkQWZ0ZXJWYWxpZGF0aW9uLnRleHQgPSBEYXMgWmVydGlmaWthdCB3dXJkZSBuYWNoIGRlbSBWYWxpZGllcnVuZ2RhdHVtIGFtIHswLGRhdGV9IHswLHRpbWUsZnVsbH0gcmV2b3ppZXJ0LiBHcnVuZDogezF9LgpDZXJ0UGF0aFJldmlld2VyLnJldm9rZWRBZnRlclZhbGlkYXRpb24uc3VtbWFyeSA9IERhcyBaZXJ0aWZpa2F0IHd1cmRlIG5hY2ggZGVtIFZhbGlkaWVydW5nZGF0dW0gYW0gezAsZGF0ZX0gezAsdGltZSxmdWxsfSByZXZvemllcnQuCkNlcnRQYXRoUmV2aWV3ZXIucmV2b2tlZEFmdGVyVmFsaWRhdGlvbi5kZXRhaWxzID0gRGFzIFplcnRpZmlrYXQgd3VyZGUgbmFjaCBkZW0gVmFsaWRpZXJ1bmdkYXR1bSBhbSB7MCxkYXRlfSB7MCx0aW1lLGZ1bGx9IHJldm96aWVydC4gR3J1bmQ6IHsxfS4KCiMgdXBkYXRlZCBjcmwgYXZhaWxhYmxlCiMgezB9IGRhdGUgc2luY2Ugd2hlbiB0aGUgdXBkYXRlIGlzIGF2YWlsYWJsZQpDZXJ0UGF0aFJldmlld2VyLmNybFVwZGF0ZUF2YWlsYWJsZS50aXRsZSA9IFplcnRpZmlrYXRzc3BlcnJsaXN0ZW4gKENSTCkgVXBkYXRlIGVyaORsdGxpY2gKQ2VydFBhdGhSZXZpZXdlci5jcmxVcGRhdGVBdmFpbGFibGUudGV4dCA9IEVpbiBVcGRhdGUgZvxyIGRpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZvxyIGRpZXNlcyBaZXJ0aWZpa2F0IGlzdCBlcmjkbHRsaWNoIHNlaXQgezAsZGF0ZX0gezAsdGltZSxmdWxsfS4KQ2VydFBhdGhSZXZpZXdlci5jcmxVcGRhdGVBdmFpbGFibGUuc3VtbWFyeSA9IEVpbiBVcGRhdGUgZvxyIGRpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZvxyIGRpZXNlcyBaZXJ0aWZpa2F0IGlzdCBlcmjkbHRsaWNoIHNlaXQgezAsZGF0ZX0gezAsdGltZSxmdWxsfS4KQ2VydFBhdGhSZXZpZXdlci5jcmxVcGRhdGVBdmFpbGFibGUuZGV0YWlscyA9IEVpbiBVcGRhdGUgZvxyIGRpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZvxyIGRpZXNlcyBaZXJ0aWZpa2F0IGlzdCBlcmjkbHRsaWNoIHNlaXQgezAsZGF0ZX0gezAsdGltZSxmdWxsfS4KCiMgY3JsIGRpc3RyaWJ1dGlvbiBwb2ludCB1cmwKIyB7MH0gdGhlIGNybCBkaXN0cmlidXRpb24gcG9pbnQgdXJsIGFzIFN0cmluZwpDZXJ0UGF0aFJldmlld2VyLmNybERpc3RQb2ludC50aXRsZSA9IENEUApDZXJ0UGF0aFJldmlld2VyLmNybERpc3RQb2ludC50ZXh0ID0gRWluZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkga2FubiB2b24gezB9IGdlbGFkZW4gd2VyZGVuLgpDZXJ0UGF0aFJldmlld2VyLmNybERpc3RQb2ludC5zdW1tYXJ5ID0gRWluZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkga2FubiB2b24gezB9IGdlbGFkZW4gd2VyZGVuLgpDZXJ0UGF0aFJldmlld2VyLmNybERpc3RQb2ludC5kZXRhaWxzID0gRWluZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkga2FubiB2b24gezB9IGdlbGFkZW4gd2VyZGVuLgoKIyBvY3NwIGxvY2F0aW9uCiMgezB9IHRoZSB1cmwgb24gd2hpY2ggdGhlIG9jc3Agc2VydmljZSBjYW4gYmUgZm91bmQKQ2VydFBhdGhSZXZpZXdlci5vY3NwTG9jYXRpb24udGl0bGUgPSBPQ1NQIFNlcnZlciAKQ2VydFBhdGhSZXZpZXdlci5vY3NwTG9jYXRpb24udGV4dCA9IE9DU1AgU2VydmVyOiB7MH0uCkNlcnRQYXRoUmV2aWV3ZXIub2NzcExvY2F0aW9uLnN1bW1hcnkgPSBPQ1NQIFNlcnZlcjogezB9LgpDZXJ0UGF0aFJldmlld2VyLm9jc3BMb2NhdGlvbi5kZXRhaWxzID0gT0NTUCBTZXJ2ZXI6IHswfS4KCiMgdW5hYmxlIHRvIGdldCBjcmwgZnJvbSBjcmwgZGlzdHJpYnV0aW9uIHBvaW50CiMgezB9IHRoZSB1cmwgb2YgdGhlIGRpc3RyaWJ1dGlvbiBwb2ludAojIHsxfSB0aGUgbWVzc2FnZSBvZiB0aGUgb2NjdXJyZWQgZXhjZXB0aW9uCiMgezJ9IHRoZSBvY2N1cnJlZCBleGNlcHRpb24KIyB7M30gdGhlIG5hbWUgb2YgdGhlIGV4Y2VwdGlvbgpDZXJ0UGF0aFJldmlld2VyLmxvYWRDcmxEaXN0UG9pbnRFcnJvci50aXRsZSA9IEthbm4gWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIG5pY2h0IHZvbiBDRFAgbGFkZW4KQ2VydFBhdGhSZXZpZXdlci5sb2FkQ3JsRGlzdFBvaW50RXJyb3IudGV4dCA9IEthbm4gZGllIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSB2b24gezB9IG5pY2h0IGxhZGVuLiBFcyBnYWIgZWluZSB7Mn0uCkNlcnRQYXRoUmV2aWV3ZXIubG9hZENybERpc3RQb2ludEVycm9yLnN1bW1hcnkgPSBLYW5uIGRpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgdm9uIHswfSBuaWNodCBsYWRlbi4gRXMgZ2FiIGVpbmUgezJ9LgpDZXJ0UGF0aFJldmlld2VyLmxvYWRDcmxEaXN0UG9pbnRFcnJvci5kZXRhaWxzID0gS2FubiBkaWUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIHZvbiB7MH0gbmljaHQgbGFkZW4uIEVzIGdhYiBlaW5lIHsyfS4gR3J1bmQ6IHsxfS4KCiMgbm8gY3JsIGZvdW5kIGluIGNlcnRzdG9yZXMKIyB7MH0gdGhlIGlzc3VlcnMgd2hpY2ggd2Ugc2VhcmNoZWQgZm9yCiMgezF9IGxpc3Qgb2YgY3JsIGlzc3VlciBuYW1lcyB0aGF0IGFyZSBmb3VuZCBpbiB0aGUgY2VydHN0b3JlcwojIHsyfSBudW1iZXIgb2YgY3JscyBpbiB0aGUgY2VydHN0b3JlcwpDZXJ0UGF0aFJldmlld2VyLm5vQ3JsSW5DZXJ0c3RvcmUudGl0bGUgPSBLZWluZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgaW0gbG9rYWxlbiBTcGVpY2hlcgpDZXJ0UGF0aFJldmlld2VyLm5vQ3JsSW5DZXJ0c3RvcmUudGV4dCA9IEVzIHd1cmRlIGtlaW5lIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBpbSBsb2thbGVuIFNwZWljaGVyIGdlZnVuZGVuLgpDZXJ0UGF0aFJldmlld2VyLm5vQ3JsSW5DZXJ0c3RvcmUuc3VtbWFyeSA9IEVzIHd1cmRlIGtlaW5lIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBpbSBsb2thbGVuIFNwZWljaGVyIGdlZnVuZGVuLgpDZXJ0UGF0aFJldmlld2VyLm5vQ3JsSW5DZXJ0c3RvcmUuZGV0YWlscyA9IEVzIHd1cmRlIGtlaW5lIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBm/HIgZGVuIEhlcmF1c2dlYmVyIHswfSBpbSBsb2thbGVuIFNwZWljaGVyIGdlZnVuZGVuLiBcCkRpZSB7Mn0gWmVydGlmaWthdHNzcGVycmxpc3RlbiBpbSBsb2thbGVuIFNwZWljaGVyIHd1cmRlbiBoZWFydXNnZWdlYmVuIHZvbiB7MX0uCgoKIyMgY2hlY2sgQ1JMIGV4Y2VwdGlvbnMKCiMgY2Fubm90IGV4dHJhY3QgaXNzdWVyIGZyb20gY2VydGlmaWNhdGUKQ2VydFBhdGhSZXZpZXdlci5jcmxJc3N1ZXJFeGNlcHRpb24udGl0bGUgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5jcmxJc3N1ZXJFeGNlcHRpb24udGV4dCA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogS2FubiBkZW4gSGVyYXVzZ2ViZXIgdm9tIFplcnRpZmlrYXQgbmljaHQgZXh0cmFoaWVyZW4uCkNlcnRQYXRoUmV2aWV3ZXIuY3JsSXNzdWVyRXhjZXB0aW9uLnN1bW1hcnkgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEthbm4gZGVuIEhlcmF1c2dlYmVyIHZvbSBaZXJ0aWZpa2F0IG5pY2h0IGV4dHJhaGllcmVuLgpDZXJ0UGF0aFJldmlld2VyLmNybElzc3VlckV4Y2VwdGlvbi5kZXRhaWxzID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBLYW5uIGRlbiBIZXJhdXNnZWJlciB2b20gWmVydGlmaWthdCBuaWNodCBleHRyYWhpZXJlbi4KCiMgY2Fubm90IGV4dHJhY3QgY3JscwojIHswfSBtZXNzYWdlIGZyb20gdGhlIHVuZGVybHlpbmcgZXhjZXB0aW9uCiMgezF9IHRoZSB1bmRlcmx5aW5nIGV4Y2VwdGlvbgojIHsyfSB0aGUgbmFtZSBvZiB0aGUgZXhjZXB0aW9uCkNlcnRQYXRoUmV2aWV3ZXIuY3JsRXh0cmFjdGlvbkVycm9yLnRpdGxlID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsRXh0cmFjdGlvbkVycm9yLnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lIHsyfSBiZWltIGxhZGVuIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgYXVzIGRlbSBsb2thbGVuIFNwZWljaGVyLgpDZXJ0UGF0aFJldmlld2VyLmNybEV4dHJhY3Rpb25FcnJvci5zdW1tYXJ5ID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZSB7Mn0gYmVpbSBsYWRlbiBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGF1cyBkZW0gbG9rYWxlbiBTcGVpY2hlci4KQ2VydFBhdGhSZXZpZXdlci5jcmxFeHRyYWN0aW9uRXJyb3IuZGV0YWlscyA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmUgezJ9IGJlaW0gbGFkZW4gZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBhdXMgZGVtIGxva2FsZW4gU3BlaWNoZXIuIEdydW5kOiB7MH0uCgojIElzc3VlciBjZXJ0aWZpY2F0ZSBrZXkgdXNhZ2UgZXh0ZW5zaW9uIGRvZXMgbm90IHBlcm1pdCBjcmwgc2lnbmluZwpDZXJ0UGF0aFJldmlld2VyLm5vQ3JsU2lnbmluZ1Blcm1pdGVkLnRpdGxlID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIubm9DcmxTaWduaW5nUGVybWl0ZWQudGV4dCA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRGFzIEhlcmF1c2dlYmVyIFplcnRpZmlrYXQgZXJsYXVidCBrZWluZSBTaWduaWVyZW4gdm9uIFplcnRpZmlrYXRzc3BlcnJsaXN0ZW4gKENSTCkuCkNlcnRQYXRoUmV2aWV3ZXIubm9DcmxTaWduaW5nUGVybWl0ZWQuc3VtbWFyeSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRGFzIEhlcmF1c2dlYmVyIFplcnRpZmlrYXQgZXJsYXVidCBrZWluZSBTaWduaWVyZW4gdm9uIFplcnRpZmlrYXRzc3BlcnJsaXN0ZW4gKENSTCkuCkNlcnRQYXRoUmV2aWV3ZXIubm9DcmxTaWduaW5nUGVybWl0ZWQuZGV0YWlscyA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRGFzIEhlcmF1c2dlYmVyIFplcnRpZmlrYXQgZXJsYXVidCBrZWluZSBTaWduaWVyZW4gdm9uIFplcnRpZmlrYXRzc3BlcnJsaXN0ZW4gKENSTCkuCgojIGNhbiBub3QgdmVyaWZ5IGNybDogaXNzdWVyIHB1YmxpYyBrZXkgdW5rbm93bgpDZXJ0UGF0aFJldmlld2VyLmNybE5vSXNzdWVyUHVibGljS2V5LnRpdGxlID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsTm9Jc3N1ZXJQdWJsaWNLZXkudGV4dCA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogS2FubiBkaWUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIG5pY2h0IHZlcmlmaXppZXJlbi4gRGVyIPZmZmVudGxpY2hlIFNjaGz8c3NlbCBkZXMgSGVyYXVzZ2ViZXJzIGlzdCB1bmJla2FubnQuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsTm9Jc3N1ZXJQdWJsaWNLZXkuc3VtbWFyeSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogS2FubiBkaWUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIG5pY2h0IHZlcmlmaXppZXJlbi4gRGVyIPZmZmVudGxpY2hlIFNjaGz8c3NlbCBkZXMgSGVyYXVzZ2ViZXJzIGlzdCB1bmJla2FubnQuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsTm9Jc3N1ZXJQdWJsaWNLZXkuZGV0YWlscyA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogS2FubiBkaWUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIG5pY2h0IHZlcmlmaXppZXJlbi4gRGVyIPZmZmVudGxpY2hlIFNjaGz8c3NlbCBkZXMgSGVyYXVzZ2ViZXJzIGlzdCB1bmJla2FubnQuCgojIGNybCB2ZXJpZmljYXRpb24gZmFpbGVkCkNlcnRQYXRoUmV2aWV3ZXIuY3JsVmVyaWZ5RmFpbGVkLnRpdGxlID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsVmVyaWZ5RmFpbGVkLnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IERpZSBTaWduYXR1ciBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGlzdCB1bmf8bHRpZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxWZXJpZnlGYWlsZWQuc3VtbWFyeSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRGllIFNpZ25hdHVyIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgaXN0IHVuZ/xsdGlnLgpDZXJ0UGF0aFJldmlld2VyLmNybFZlcmlmeUZhaWxlZC5kZXRhaWxzID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBEaWUgU2lnbmF0dXIgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBpc3QgdW5n/Gx0aWcuCgojIG5vIHZhbGlkIENSTCBmb3VuZApDZXJ0UGF0aFJldmlld2VyLm5vVmFsaWRDcmxGb3VuZC50aXRsZSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLm5vVmFsaWRDcmxGb3VuZC50ZXh0ID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBrZWluZSBn/Gx0aWdlIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBnZWZ1bmRlbi4KQ2VydFBhdGhSZXZpZXdlci5ub1ZhbGlkQ3JsRm91bmQuc3VtbWFyeSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjoga2VpbmUgZ/xsdGlnZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZ2VmdW5kZW4uCkNlcnRQYXRoUmV2aWV3ZXIubm9WYWxpZENybEZvdW5kLmRldGFpbHMgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IGtlaW5lIGf8bHRpZ2UgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGdlZnVuZGVuLgoKIyBObyBiYXNlIENSTCBmb3IgZGVsdGEgQ1JMCkNlcnRQYXRoUmV2aWV3ZXIubm9CYXNlQ1JMLnRpdGxlID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIubm9CYXNlQ1JMLnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IGtlaW5lIEJhc2lzIENSTCBm/HIgZGllIERlbHRhIENSTCBnZWZ1bmRlbi4KQ2VydFBhdGhSZXZpZXdlci5ub0Jhc2VDUkwuc3VtbWFyeSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjoga2VpbmUgQmFzaXMgQ1JMIGb8ciBkaWUgRGVsdGEgQ1JMIGdlZnVuZGVuLgpDZXJ0UGF0aFJldmlld2VyLm5vQmFzZUNSTC5kZXRhaWxzID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBrZWluZSBCYXNpcyBDUkwgZvxyIGRpZSBEZWx0YSBDUkwgZ2VmdW5kZW4uCgojIGNlcnRpZmljYXRlIHJldm9rZWQKIyB7MH0gdGhlIGRhdGUgdGhlIGNlcnRpZmljYXRlIHdhcyByZXZva2VkCiMgezF9IHRoZSByZWFzb24gZm9yIHJldm9raW5nIHRoZSBjZXJ0aWZpY2F0ZQpDZXJ0UGF0aFJldmlld2VyLmNlcnRSZXZva2VkLnRpdGxlID0gWmVydGlmaWthdCB3dXJkZSByZXZvemllcnQKQ2VydFBhdGhSZXZpZXdlci5jZXJ0UmV2b2tlZC50ZXh0ID0gRGFzIFplcnRpZmlrYXQgd3VyZGUgYW0gezAsZGF0ZX0gezAsdGltZSxmdWxsfSByZXZvemllcnQuIEdydW5kOiB7MX0uCkNlcnRQYXRoUmV2aWV3ZXIuY2VydFJldm9rZWQuc3VtbWFyeSA9IERhcyBaZXJ0aWZpa2F0IHd1cmRlIGFtIHswLGRhdGV9IHswLHRpbWUsZnVsbH0gcmV2b3ppZXJ0LgpDZXJ0UGF0aFJldmlld2VyLmNlcnRSZXZva2VkLmRldGFpbHMgPSBEYXMgWmVydGlmaWthdCB3dXJkZSBhbSB7MCxkYXRlfSB7MCx0aW1lLGZ1bGx9IHJldm96aWVydC4gR3J1bmQ6IHsxfS4KCiMgZXJyb3IgcHJvY2Vzc2luZyBpc3N1aW5nIGRpc3RyaWJ1dGlvbiBwb2ludCBleHRlbnNpb24KQ2VydFBhdGhSZXZpZXdlci5kaXN0clB0RXh0RXJyb3IudGl0bGUgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5kaXN0clB0RXh0RXJyb3IudGV4dCA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmVuIEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgSXNzdWluZyBEaXN0cmlidXRpb24gUG9pbnQgRXJ3ZWl0ZXJ1bmcuIApDZXJ0UGF0aFJldmlld2VyLmRpc3RyUHRFeHRFcnJvci5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBJc3N1aW5nIERpc3RyaWJ1dGlvbiBQb2ludCBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5kaXN0clB0RXh0RXJyb3IuZGV0YWlscyA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmVuIEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgSXNzdWluZyBEaXN0cmlidXRpb24gUG9pbnQgRXJ3ZWl0ZXJ1bmcuCgojIGVycm9yIHByb2Nlc3NpbmcgY3JsIGRpc3RyaWJ1dGlvbiBwb2ludHMgZXh0ZW5zaW9uCkNlcnRQYXRoUmV2aWV3ZXIuY3JsRGlzdFB0RXh0RXJyb3IudGl0bGUgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5jcmxEaXN0UHRFeHRFcnJvci50ZXh0ID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBDUkwgRGlzdHJpYnV0aW9uIFBvaW50cyBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxEaXN0UHRFeHRFcnJvci5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBDUkwgRGlzdHJpYnV0aW9uIFBvaW50cyBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxEaXN0UHRFeHRFcnJvci5kZXRhaWxzID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBDUkwgRGlzdHJpYnV0aW9uIFBvaW50cyBFcndlaXRlcnVuZy4KCiMgZXJyb3IgcHJvY2Vzc2luZyB0aGUgYXV0aG9yaXR5IGluZm8gYWNjZXNzIGV4dGVuc2lvbgpDZXJ0UGF0aFJldmlld2VyLmNybEF1dGhJbmZvQWNjRXJyb3IudGl0bGUgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5jcmxBdXRoSW5mb0FjY0Vycm9yLnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIEF1dGhvcml0eSBJbmZvIEFjY2VzcyBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxBdXRoSW5mb0FjY0Vycm9yLnN1bW1hcnkgPSBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIEF1dGhvcml0eSBJbmZvIEFjY2VzcyBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxBdXRoSW5mb0FjY0Vycm9yLmRldGFpbHMgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIEF1dGhvcml0eSBJbmZvIEFjY2VzcyBFcndlaXRlcnVuZy4KCiMgZXJyb3IgcHJvY2Vzc2luZyBkZWx0YSBjcmwgaW5kaWNhdG9yIGV4dGVuc2lvbgpDZXJ0UGF0aFJldmlld2VyLmRlbHRhQ3JsRXh0RXJyb3IudGl0bGUgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5kZWx0YUNybEV4dEVycm9yLnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIERlbHRhIENSTCBJbmRpY2F0b3IgRXJ3ZWl0ZXJ1bmcuIApDZXJ0UGF0aFJldmlld2VyLmRlbHRhQ3JsRXh0RXJyb3Iuc3VtbWFyeSA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgRGVsdGEgQ1JMIEluZGljYXRvciBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5kZWx0YUNybEV4dEVycm9yLmRldGFpbHMgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIERlbHRhIENSTCBJbmRpY2F0b3IgRXJ3ZWl0ZXJ1bmcuCgojIGVycm9yIHBvcmNlc3NpbmcgY3JsIG51bWJlciBleHRlbnNpb24KQ2VydFBhdGhSZXZpZXdlci5jcmxOYnJFeHRFcnJvci50aXRsZSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLmNybE5ickV4dEVycm9yLnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIENSTCBOdW1iZXIgRXJ3ZWl0ZXJ1bmcuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsTmJyRXh0RXJyb3Iuc3VtbWFyeSA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgQ1JMIE51bWJlciBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxOYnJFeHRFcnJvci5kZXRhaWxzID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBFcyBnYWIgZWluZW4gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBDUkwgTnVtYmVyIEVyd2VpdGVydW5nLgoKIyBlcnJvciBwcm9jZXNzaW5nIGNybCByZWFzb24gY29kZSBleHRlbnNpb24KQ2VydFBhdGhSZXZpZXdlci5jcmxSZWFzb25FeHRFcnJvci50aXRsZSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLmNybFJlYXNvbkV4dEVycm9yLnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIENSTCBSZWFzb24gQ29kZSBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxSZWFzb25FeHRFcnJvci5zdW1tYXJ5ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBDUkwgUmVhc29uIENvZGUgRXJ3ZWl0ZXJ1bmcuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsUmVhc29uRXh0RXJyb3IuZGV0YWlscyA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRXMgZ2FiIGVpbmVuIEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgQ1JMIFJlYXNvbiBDb2RlIEVyd2VpdGVydW5nLgoKIyBlcnJvciBwcm9jZXNzaW5nIGJhc2ljIGNvbnN0cmFpbnRzIGV4dGVuc2lvbgpDZXJ0UGF0aFJldmlld2VyLmNybEJDRXh0RXJyb3IudGl0bGUgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW4KQ2VydFBhdGhSZXZpZXdlci5jcmxCQ0V4dEVycm9yLnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIENSTCBSZWFzb24gQ29kZSBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxCQ0V4dEVycm9yLnN1bW1hcnkgPSBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIENSTCBSZWFzb24gQ29kZSBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5jcmxCQ0V4dEVycm9yLmRldGFpbHMgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IEVzIGdhYiBlaW5lbiBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIENSTCBSZWFzb24gQ29kZSBFcndlaXRlcnVuZy4KCiMgQ0EgQ2VydCBDUkwgb25seSBjb250YWlucyB1c2VyIGNlcnRpZmljYXRlcwpDZXJ0UGF0aFJldmlld2VyLmNybE9ubHlVc2VyQ2VydC50aXRsZSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLmNybE9ubHlVc2VyQ2VydC50ZXh0ID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBEaWUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGVudGjkbHQgbnVyIFVzZXIgWmVydGlmaWthdGUuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsT25seVVzZXJDZXJ0LnN1bW1hcnkgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IERpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZW50aORsdCBudXIgVXNlciBaZXJ0aWZpa2F0ZS4KQ2VydFBhdGhSZXZpZXdlci5jcmxPbmx5VXNlckNlcnQuZGV0YWlscyA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRGllIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBlbnRo5Gx0IG51ciBVc2VyIFplcnRpZmlrYXRlLgoKIyBFbmQgQ1JMIG9ubHkgY29udGFpbnMgQ0EgY2VydGlmaWNhdGVzCkNlcnRQYXRoUmV2aWV3ZXIuY3JsT25seUNhQ2VydC50aXRsZSA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbgpDZXJ0UGF0aFJldmlld2VyLmNybE9ubHlDYUNlcnQudGV4dCA9IFBy/GZ1bmcgZGVyIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBmZWhsZ2VzY2hsYWdlbjogRGllIFplcnRpZmlrYXRzc3BlcnJsaXN0ZSAoQ1JMKSBlbnRo5Gx0IG51ciBDQSBaZXJ0aWZpa2F0ZS4KQ2VydFBhdGhSZXZpZXdlci5jcmxPbmx5Q2FDZXJ0LnN1bW1hcnkgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IERpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZW50aORsdCBudXIgQ0EgWmVydGlmaWthdGUuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsT25seUNhQ2VydC5kZXRhaWxzID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuOiBEaWUgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGVudGjkbHQgbnVyIENBIFplcnRpZmlrYXRlLgoKIyBvbmx5Q29udGFpbnNBdHRyaWJ1dGVDZXJ0cyBib29sZWFuIGlzIGFzc2VydGVkCkNlcnRQYXRoUmV2aWV3ZXIuY3JsT25seUF0dHJDZXJ0LnRpdGxlID0gUHL8ZnVuZyBkZXIgWmVydGlmaWthdHNzcGVycmxpc3RlIChDUkwpIGZlaGxnZXNjaGxhZ2VuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsT25seUF0dHJDZXJ0LnRleHQgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IERpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZW50aORsdCBudXIgQXR0cmlidXQgWmVydGlmaWthdGUuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsT25seUF0dHJDZXJ0LnN1bW1hcnkgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IERpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZW50aORsdCBudXIgQXR0cmlidXQgWmVydGlmaWthdGUuCkNlcnRQYXRoUmV2aWV3ZXIuY3JsT25seUF0dHJDZXJ0LmRldGFpbHMgPSBQcvxmdW5nIGRlciBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZmVobGdlc2NobGFnZW46IERpZSBaZXJ0aWZpa2F0c3NwZXJybGlzdGUgKENSTCkgZW50aORsdCBudXIgQXR0cmlidXQgWmVydGlmaWthdGUuCgoKIyMgUWNTdGF0ZW1lbnQgbm90aWZpY2F0aW9ucwoKIyB1bmtvd24gc3RhdGVtZW50CiMgezB9IHN0YXRlbWVudCBPSUQKIyB7MX0gc3RhdGVtZW50IGFzIEFOUzFTZXF1ZW5jZQpDZXJ0UGF0aFJldmlld2VyLlFjVW5rbm93blN0YXRlbWVudC50aXRsZSA9IFVuYmVrYW5udGVzIFN0YXRlbWVudCBpbiBkZXIgUWNTdGF0ZW1lbnQgRXJ3ZWl0ZXJ1bmcgCkNlcnRQYXRoUmV2aWV3ZXIuUWNVbmtub3duU3RhdGVtZW50LnRleHQgPSBVbmJla2FubnRlcyBTdGF0ZW1lbnQgaW4gZGVyIFFjU3RhdGVtZW50IEVyd2VpdGVydW5nOiBPSUQgPSB7MH0KQ2VydFBhdGhSZXZpZXdlci5RY1Vua25vd25TdGF0ZW1lbnQuc3VtbWFyeSA9IFVuYmVrYW5udGVzIFN0YXRlbWVudCBpbiBkZXIgUWNTdGF0ZW1lbnQgRXJ3ZWl0ZXJ1bmc6IE9JRCA9IHswfQpDZXJ0UGF0aFJldmlld2VyLlFjVW5rbm93blN0YXRlbWVudC5kZXRhaWxzID0gVW5iZWthbm50ZXMgU3RhdGVtZW50IGluIGRlciBRY1N0YXRlbWVudCBFcndlaXRlcnVuZzogT0lEID0gezB9LCBzdGF0ZW1lbnQgPSB7MX0KCiMgUWNMaW1pdFZhbHVlIEFscGhhIGN1cnJlbmN5IGNvZGUKIyB7MH0gY3VycmVuY3kgY29kZQojIHsxfSBsaW1pdCB2YWx1ZQojIHsyfSBtb25ldGFyeSB2YWx1ZSBhcyBNb25ldGFyeVZhbHVlCkNlcnRQYXRoUmV2aWV3ZXIuUWNMaW1pdFZhbHVlQWxwaGEudGl0bGUgPSBUcmFuc2FjdGlvbiBWYWx1ZSBMaW1pdApDZXJ0UGF0aFJldmlld2VyLlFjTGltaXRWYWx1ZUFscGhhLnRleHQgPSBEaWVzZXMgWmVydGlmaWthdCBoYXQgZWluIFdlcnRsaW1pdGUgdm9uIHsxLG51bWJlciwgIyMjLCMjIywjIyMsIyMwLjAwI30gezB9IGb8ciBUcmFuc2FrdGlvbmVuLgpDZXJ0UGF0aFJldmlld2VyLlFjTGltaXRWYWx1ZUFscGhhLnN1bW1hcnkgPSBXZXJ0bGltaXRlIHZvbiB7MSxudW1iZXIsICMjIywjIyMsIyMjLCMjMC4wMCN9IHswfSBm/HIgVHJhbnNha3Rpb25lbi4KQ2VydFBhdGhSZXZpZXdlci5RY0xpbWl0VmFsdWVBbHBoYS5kZXRhaWxzID0gRGllc2VzIFplcnRpZmlrYXQgaGF0IGVpbmUgV2VydGxpbWl0ZSBm/HIgVHJhbnNha3Rpb25lbiBm/HIgd2VsY2hlXAogZGFzIFplcnRpZmlrYXQgZ2VudXR6dCB3ZXJkZW4ga2FubiwgZ2Vt5HNzIGRlciBSaWNodGxpbmllIDE5OTkvOTMvRUcgZGVzIEV1cm9w5GlzY2hlbiBQYXJsYW1lbnRzIHVuZFwKIGRlcyBSYXRlcyD8YmVyIGdlbWVpbnNjaGFmdGxpY2hlIFJhaG1lbmJlZGluZ3VuZ2VuIGb8ciBlbGVrdHJvbmlzY2hlIFNpZ25hdHVyZW4gdW5kIGdlbeRzcyBkZXIgVW1zZXR6dW5nIGRlclwKIFJpY2h0bGluaWUgaW0gTGFuZCwgZGFzIGltIEhlcmF1c2dlYmVyIGRpZXNlcyBaZXJ0aWZpa2F0cyBhbmdlZ2ViZW4gaXN0LiBEaWUgTGltaXRlIGb8ciBkaWVzZSBaZXJ0aWZpa2F0IGlzdCB7MSxudW1iZXIsICMjIywjIyMsIyMjLCMjMC4wMCN9IHswfS4KCiMgUWNMaW1pdFZhbHVlIE51bWVyaWMgY3VycmVuY3kgY29kZQojIHswfSBjdXJyZW5jeSBjb2RlCiMgezF9IGxpbWl0IHZhbHVlCiMgezJ9IG1vbmV0YXJ5IHZhbHVlIGFzIE1vbmV0YXJ5VmFsdWUKQ2VydFBhdGhSZXZpZXdlci5RY0xpbWl0VmFsdWVOdW0udGl0bGUgPSBUcmFuc2FjdGlvbiBWYWx1ZSBMaW1pdApDZXJ0UGF0aFJldmlld2VyLlFjTGltaXRWYWx1ZU51bS50ZXh0ID0gRGllc2VzIFplcnRpZmlrYXQgaGF0IGVpbmUgV2VydGxpbWl0ZSBm/HIgVHJhbnNha3Rpb25lbiB2b24gezEsbnVtYmVyLCAjIyMsIyMjLCMjIywjIzAuMDAjfSBkZXIgV+RocnVuZyB7MH0gKFNpZWhlIFJGQyA0MjE3IGb8ciBX5GhydW5nc2NvZGVzKS4KQ2VydFBhdGhSZXZpZXdlci5RY0xpbWl0VmFsdWVOdW0uc3VtbWFyeSA9IFdlcnRsaW1pdGUgZvxyIFRyYW5zYWt0aW9uZW4gdm9uIHsxLG51bWJlciwgIyMjLCMjIywjIyMsIyMwLjAwI30gZGVyIFfkaHJ1bmcgezB9IChTaWVoZSBSRkMgNDIxNyBm/HIgV+RocnVuZ3Njb2RlcykuCkNlcnRQYXRoUmV2aWV3ZXIuUWNMaW1pdFZhbHVlTnVtLmRldGFpbHMgPSBEaWVzZXMgWmVydGlmaWthdCBoYXQgZWluZSBXZXJ0bGltaXRlIGb8ciBUcmFuc2FrdGlvbmVuIGb8ciB3ZWxjaGVcCiBkYXMgWmVydGlmaWthdCBnZW51dHp0IHdlcmRlbiBrYW5uLCBnZW3kc3MgZGVyIFJpY2h0bGluaWUgMTk5OS85My9FRyBkZXMgRXVyb3DkaXNjaGVuIFBhcmxhbWVudHMgdW5kXAogZGVzIFJhdGVzIPxiZXIgZ2VtZWluc2NoYWZ0bGljaGUgUmFobWVuYmVkaW5ndW5nZW4gZvxyIGVsZWt0cm9uaXNjaGUgU2lnbmF0dXJlbiB1bmQgZ2Vt5HNzIGRlciBVbXNldHp1bmcgZGVyXAogUmljaHRsaW5pZSBpbSBMYW5kLCBkYXMgaW0gSGVyYXVzZ2ViZXIgZGllc2VzIFplcnRpZmlrYXRzIGFuZ2VnZWJlbiBpc3QuIERpZSBMaW1pdGUgZvxyIGRpZXNlIFplcnRpZmlrYXQgaXN0IHsxLG51bWJlciwgIyMjLCMjIywjIyMsIyMwLjAwI30gZGVyIFfkaHJ1bmcgezB9IChTaWVoZSBSRkMgNDIxNyBm/HIgV+RocnVuZ3Njb2RlcykuCgojIFFjU1NDRApDZXJ0UGF0aFJldmlld2VyLlFjU1NDRC50aXRsZSA9IFFjU1NDRCBTdGF0ZW1lbnQKQ2VydFBhdGhSZXZpZXdlci5RY1NTQ0QudGV4dCA9IChTU0NEKSBEZXIgSGVyYXVzZ2ViZXIgbWFjaHQgZ2VsdGVuZCwgZGFzcyBkZXIgUHJpdmF0ZSBTY2hs/HNzZWwsIGRlciBtaXQgZGllc2VtIFplcnRpZmlrYXQgdmVyYnVuZGVuIGlzdCwgbmFjaCBkZW4gQW5mb3JkZXJ1bmdlbiBkaWUgaW0gQW5oYW5nIElJSSBkZXIgUmljaHRsaW5pZSAxOTk5LzkzL0VHIGRlcyBFdXJvcORpc2NoZW4gUGFybGFtZW50cyB1bmQgZGVzIFJhdGVzIPxiZXIgZ2VtZWluc2NoYWZ0bGljaGUgUmFobWVuYmVkaW5ndW5nZW4gZvxyIGVsZWt0cm9uaXNjaGUgU2lnbmF0dXJlbiBnZXNjaPx0enQgaXN0LgpDZXJ0UGF0aFJldmlld2VyLlFjU1NDRC5zdW1tYXJ5ID0gKFNTQ0QpIERlciBIZXJhdXNnZWJlciBtYWNodCBnZWx0ZW5kLCBkYXNzIGRlciBQcml2YXRlIFNjaGz8c3NlbCwgZGVyIG1pdCBkaWVzZW0gWmVydGlmaWthdCB2ZXJidW5kZW4gaXN0LCBuYWNoIGRlbiBBbmZvcmRlcnVuZ2VuIGRpZSBpbSBBbmhhbmcgSUlJIGRlciBSaWNodGxpbmllIDE5OTkvOTMvRUcgZGVzIEV1cm9w5GlzY2hlbiBQYXJsYW1lbnRzIHVuZCBkZXMgUmF0ZXMg/GJlciBnZW1laW5zY2hhZnRsaWNoZSBSYWhtZW5iZWRpbmd1bmdlbiBm/HIgZWxla3Ryb25pc2NoZSBTaWduYXR1cmVuIGdlc2No/HR6dCBpc3QuCkNlcnRQYXRoUmV2aWV3ZXIuUWNTU0NELmRldGFpbHMgPSAoU1NDRCkgRGVyIEhlcmF1c2dlYmVyIG1hY2h0IGdlbHRlbmQsIGRhc3MgZGVyIFByaXZhdGUgU2NobPxzc2VsLCBkZXIgbWl0IGRpZXNlbSBaZXJ0aWZpa2F0IHZlcmJ1bmRlbiBpc3QsIG5hY2ggZGVuIEFuZm9yZGVydW5nZW4gZGllIGltIEFuaGFuZyBJSUkgZGVyIFJpY2h0bGluaWUgMTk5OS85My9FRyBkZXMgRXVyb3DkaXNjaGVuIFBhcmxhbWVudHMgdW5kIGRlcyBSYXRlcyD8YmVyIGdlbWVpbnNjaGFmdGxpY2hlIFJhaG1lbmJlZGluZ3VuZ2VuIGb8ciBlbGVrdHJvbmlzY2hlIFNpZ25hdHVyZW4gZ2VzY2j8dHp0IGlzdC4KCiMgUWNFdUNvbXBsaWFuY2UKQ2VydFBhdGhSZXZpZXdlci5RY0V1Q29tcGxpYW5jZS50aXRsZSA9IFF1YWxpZml6aWVydGVzIFplcnRpZmlrYXQKQ2VydFBhdGhSZXZpZXdlci5RY0V1Q29tcGxpYW5jZS50ZXh0ID0gRGllc2VzIFplcnRpZmlrYXQgd3VyZGUgYWxzIFF1YWxpZml6aWVydGVzIFplcnRpZmlrYXQgaGVyYXVzZ2VnZWJlbiBnZW3kc3MgQW5oYW5nIEkgdW5kIElJIGRlciBSaWNodGxpbmllIDE5OTkvOTMvRUcgZGVzIEV1cm9w5GlzY2hlbiBQYXJsYW1lbnRzIHVuZCBkZXMgUmF0ZXMg/GJlciBnZW1laW5zY2hhZnRsaWNoZSBSYWhtZW5iZWRpbmd1bmdlbiBm/HIgZWxla3Ryb25pc2NoZSBTaWduYXR1cmVuIHVuZCBnZW3kc3MgZGVyIFVtc2V0enVuZyBkZXIgUmljaHRsaW5pZSBpbSBMYW5kLCBkYXMgaW0gSGVyYXVzZ2ViZXIgZGllc2VzIFplcnRpZmlrYXRzIGFuZ2VnZWJlbiBpc3QuCkNlcnRQYXRoUmV2aWV3ZXIuUWNFdUNvbXBsaWFuY2Uuc3VtbWFyeSA9IERpZXNlcyBaZXJ0aWZpa2F0IHd1cmRlIGFscyBRdWFsaWZpemllcnRlcyBaZXJ0aWZpa2F0IGhlcmF1c2dlZ2ViZW4gZ2Vt5HNzIEFuaGFuZyBJIHVuZCBJSSBkZXIgUmljaHRsaW5pZSAxOTk5LzkzL0VHIGRlcyBFdXJvcORpc2NoZW4gUGFybGFtZW50cyB1bmQgZGVzIFJhdGVzIPxiZXIgZ2VtZWluc2NoYWZ0bGljaGUgUmFobWVuYmVkaW5ndW5nZW4gZvxyIGVsZWt0cm9uaXNjaGUgU2lnbmF0dXJlbiB1bmQgZ2Vt5HNzIGRlciBVbXNldHp1bmcgZGVyIFJpY2h0bGluaWUgaW4gZGVtIExhbmQsIGRhcyBpbSBIZXJhdXNnZWJlciBkaWVzZXMgWmVydGlmaWthdHMgYW5nZWdlYmVuIGlzdC4KQ2VydFBhdGhSZXZpZXdlci5RY0V1Q29tcGxpYW5jZS5kZXRhaWxzID0gRGllc2VzIFplcnRpZmlrYXQgd3VyZGUgYWxzIFF1YWxpZml6aWVydGVzIFplcnRpZmlrYXQgaGVyYXVzZ2VnZWJlbiBnZW3kc3MgQW5oYW5nIEkgdW5kIElJIGRlciBSaWNodGxpbmllIDE5OTkvOTMvRUcgZGVzIEV1cm9w5GlzY2hlbiBQYXJsYW1lbnRzIHVuZCBkZXMgUmF0ZXMg/GJlciBnZW1laW5zY2hhZnRsaWNoZSBSYWhtZW5iZWRpbmd1bmdlbiBm/HIgZWxla3Ryb25pc2NoZSBTaWduYXR1cmVuIHVuZCBnZW3kc3MgZGVyIFVtc2V0enVuZyBkZXIgUmljaHRsaW5pZSBpbiBkZW0gTGFuZCwgZGFzIGltIEhlcmF1c2dlYmVyIGRpZXNlcyBaZXJ0aWZpa2F0cyBhbmdlZ2ViZW4gaXN0LgoKIyMgUWNTdGF0ZW1lbnQgZXJyb3JzCgojIGVycm9yIHByb2Nlc3NpbmcgdGhlIFFjU3RhdGVtZW50IGV4dGVuc2lvbgpDZXJ0UGF0aFJldmlld2VyLlFjU3RhdGVtZW50RXh0RXJyb3IudGl0bGUgPSBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIFFjU3RhdGVtZW50IEVyd2VpdGVydW5nCkNlcnRQYXRoUmV2aWV3ZXIuUWNTdGF0ZW1lbnRFeHRFcnJvci50ZXh0ID0gRmVobGVyIGJlaSBkZXIgVmVyYXJiZWl0dW5nIGRlciBRY1N0YXRlbWVudCBFcndlaXRlcnVuZy4KQ2VydFBhdGhSZXZpZXdlci5RY1N0YXRlbWVudEV4dEVycm9yLnN1bW1hcnkgPSBGZWhsZXIgYmVpIGRlciBWZXJhcmJlaXR1bmcgZGVyIFFjU3RhdGVtZW50IEVyd2VpdGVydW5nLgpDZXJ0UGF0aFJldmlld2VyLlFjU3RhdGVtZW50RXh0RXJyb3IuZGV0YWlscyA9IEZlaGxlciBiZWkgZGVyIFZlcmFyYmVpdHVuZyBkZXIgUWNTdGF0ZW1lbnQgRXJ3ZWl0ZXJ1bmcuCgojIyB1bmtub3duL2dlbmVyaWMgZXJyb3JzCkNlcnRQYXRoUmV2aWV3ZXIudW5rbm93bi50aXRsZSA9IFVuYmVrYW5udGVyIEZlaGxlciAKQ2VydFBhdGhSZXZpZXdlci51bmtub3duLnRleHQgPSBVbmJla2FubnRlciBGZWhsZXIgezB9CkNlcnRQYXRoUmV2aWV3ZXIudW5rbm93bi5zdW1tYXJ5ID0gVW5iZWthbm50ZXIgRmVobGVyIApDZXJ0UGF0aFJldmlld2VyLnVua25vd24uZGV0YWlscyA9IFVuYmVrYW5udGVyIEZlaGxlciB7MH0KCiMKIyBjcmwgcmVhc29ucwojCnVuc3BlY2lmaWVkID0gTmljaHQgc3BlemlmaXppZXJ0CmtleUNvbXByb21pc2UgPSBTY2hs/HNzZWwgS29tcHJvbWl0dGllcnVuZwpjQUNvbXByb21pc2UgPSBDQSBLb21wcm9taXR0aWVydW5nCmFmZmlsaWF0aW9uQ2hhbmdlZCA9IFZlcuRuZGVydGUgWnVnZWj2cmlna2VpdApzdXBlcnNlZGVkID0gRXJzZXR6dApjZXNzYXRpb25PZk9wZXJhdGlvbiA9IEVpbnN0ZWxsZW4gZGVyIFTkdGlna2VpdGVuCmNlcnRpZmljYXRlSG9sZCA9IFplcnRpZmlrYXQgdm9y/GJlcmdlaGVuZCBnZXNwZXJydAp1bmtub3duID0gVW5iZWthbm50CnJlbW92ZUZyb21DUkwgPSBFbnRmZXJuZSB2b24gZGVyIENSTApwcml2aWxlZ2VXaXRoZHJhd24gPSBadXL8Y2tnZXpvZ2VuZSBSZWNodGUKYUFDb21wcm9taXNlID0gQUEgS29tcHJvbWl0dGllcnVuZwoKIwojCiMKbWlzc2luZ0lzc3VlciA9IFRoZSBtaXNzaW5nIGNlcnRpZmljYXRlIHdhcyBpc3N1ZWQgYnkKbWlzc2luZ1NlcmlhbCA9IHdpdGggdGhlIHNlcmlhbCBudW1iZXIK