@scalekit-sdk/node 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16,7 +16,7 @@ const options_pb_1 = require("../options/options_pb");
16
16
  /**
17
17
  * Describes the file scalekit/v1/roles/roles.proto.
18
18
  */
19
- exports.file_scalekit_v1_roles_roles = (0, codegenv2_1.fileDesc)("Ch1zY2FsZWtpdC92MS9yb2xlcy9yb2xlcy5wcm90bxIRc2NhbGVraXQudjEucm9sZXMikQwKBFJvbGUSdQoCaWQYASABKAlCaZJBYzJIVW5pcXVlIHN5c3RlbS1nZW5lcmF0ZWQgaWRlbnRpZmllciBmb3IgdGhlIHJvbGUuIEltbXV0YWJsZSBvbmNlIGNyZWF0ZWQuShcicm9sZV8xMjM0YWJjZDU2NzhlZmdoIuBBAxKPAQoEbmFtZRgCIAEoCUKAAZJBcTJdVW5pcXVlIG5hbWUgaWRlbnRpZmllciBmb3IgdGhlIHJvbGUuIE11c3QgYmUgYWxwaGFudW1lcmljIHdpdGggdW5kZXJzY29yZXMsIDEtMTAwIGNoYXJhY3RlcnMuShAiY29udGVudF9lZGl0b3IiukgJyAEBcgQQARhkEocBCgxkaXNwbGF5X25hbWUYAyABKAlCcZJBYjJOSHVtYW4tcmVhZGFibGUgZGlzcGxheSBuYW1lIGZvciB0aGUgcm9sZS4gVXNlZCBpbiB1c2VyIGludGVyZmFjZXMgYW5kIHJlcG9ydHMuShAiQ29udGVudCBFZGl0b3IiukgJyAEBcgQQARhkErwBCgtkZXNjcmlwdGlvbhgEIAEoCUKmAZJBogEyVURldGFpbGVkIGRlc2NyaXB0aW9uIG9mIHRoZSByb2xlJ3MgcHVycG9zZSBhbmQgY2FwYWJpbGl0aWVzLiBNYXhpbXVtIDIwMDAgY2hhcmFjdGVycy5KSSJDYW4gY3JlYXRlLCBlZGl0LCBhbmQgcHVibGlzaCBjb250ZW50IGJ1dCBjYW5ub3QgZGVsZXRlIG9yIG1hbmFnZSB1c2VycyISbQoPZGVmYXVsdF9jcmVhdG9yGAYgASgIQlSSQVEySUluZGljYXRlcyBpZiB0aGlzIHJvbGUgaXMgdGhlIGRlZmF1bHQgY3JlYXRvciByb2xlIGZvciBuZXcgb3JnYW5pemF0aW9ucy5KBHRydWUSYwoOZGVmYXVsdF9tZW1iZXIYByABKAhCS5JBSDJASW5kaWNhdGVzIGlmIHRoaXMgcm9sZSBpcyB0aGUgZGVmYXVsdCBtZW1iZXIgcm9sZSBmb3IgbmV3IHVzZXJzLkoEdHJ1ZRKdAQoHZXh0ZW5kcxgIIAEoCUKGAZJBZDJUTmFtZSBvZiB0aGUgYmFzZSByb2xlIHRoYXQgdGhpcyByb2xlIGV4dGVuZHMuIEVuYWJsZXMgaGllcmFyY2hpY2FsIHJvbGUgaW5oZXJpdGFuY2UuSgwiYWRtaW5fcm9sZSK6SBxyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kSACIAQES4gIKC3Blcm1pc3Npb25zGAkgAygLMiEuc2NhbGVraXQudjEucm9sZXMuUm9sZVBlcm1pc3Npb25CqQKSQaUCMnVMaXN0IG9mIHBlcm1pc3Npb25zIHdpdGggcm9sZSBzb3VyY2UgaW5mb3JtYXRpb24uIE9ubHkgaW5jbHVkZWQgd2hlbiAnaW5jbHVkZScgcGFyYW1ldGVyIGlzIHNwZWNpZmllZCBpbiB0aGUgcmVxdWVzdC5KqwFbeyJuYW1lIjogInJlYWQ6Y29udGVudCIsICJkZXNjcmlwdGlvbiI6ICJSZWFkIENvbnRlbnQiLCAicm9sZV9uYW1lIjogImFkbWluX3JvbGUifSwgeyJuYW1lIjogIndyaXRlOmNvbnRlbnQiLCAiZGVzY3JpcHRpb24iOiAiV3JpdGUgQ29udGVudCIsICJyb2xlX25hbWUiOiAiZWRpdG9yX3JvbGUifV0SewoVZGVwZW5kZW50X3JvbGVzX2NvdW50GAogASgFQlySQVkyVE51bWJlciBvZiByb2xlcyB0aGF0IGV4dGVuZCBmcm9tIHRoaXMgcm9sZSAoZGVwZW5kZW50IHJvbGVzIGNvdW50KS4gUmVhZC1vbmx5IGZpZWxkLkoBMxJPCgtpc19vcmdfcm9sZRgLIAEoCEI6kkE3Mi9JbmRpY2F0ZXMgaWYgdGhpcyByb2xlIGlzIGFuIG9yZ2FuaXphdGlvbiByb2xlLkoEdHJ1ZUIKCghfZXh0ZW5kc0oECAUQBiKYCQoKQ3JlYXRlUm9sZRLrAQoEbmFtZRgCIAEoCULcAZJBtgEyoQFVbmlxdWUgbmFtZSBpZGVudGlmaWVyIGZvciB0aGUgcm9sZS4gTXVzdCBiZSBhbHBoYW51bWVyaWMgd2l0aCB1bmRlcnNjb3JlcywgMS02NCBjaGFyYWN0ZXJzLiBUaGlzIG5hbWUgaXMgdXNlZCBpbiBBUEkgY2FsbHMgYW5kIGNhbm5vdCBiZSBjaGFuZ2VkIGFmdGVyIGNyZWF0aW9uLkoQImNvbnRlbnRfZWRpdG9yIrpIH8gBAXIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSQSpQEKDGRpc3BsYXlfbmFtZRgDIAEoCUKOAZJBfzJrSHVtYW4tcmVhZGFibGUgZGlzcGxheSBuYW1lIGZvciB0aGUgcm9sZS4gVXNlZCBpbiB1c2VyIGludGVyZmFjZXMsIHJlcG9ydHMsIGFuZCB1c2VyLWZhY2luZyBjb21tdW5pY2F0aW9ucy5KECJDb250ZW50IEVkaXRvciK6SAnIAQFyBBABGGQS7gEKC2Rlc2NyaXB0aW9uGAQgASgJQtMBkkHHATJqRGV0YWlsZWQgZGVzY3JpcHRpb24gb2YgdGhlIHJvbGUncyBwdXJwb3NlLCBjYXBhYmlsaXRpZXMsIGFuZCBpbnRlbmRlZCB1c2UgY2FzZXMuIE1heGltdW0gMjAwMCBjaGFyYWN0ZXJzLkpZIkNhbiBjcmVhdGUsIGVkaXQsIGFuZCBwdWJsaXNoIGNvbnRlbnQgYnV0IGNhbm5vdCBkZWxldGUgY29udGVudCBvciBtYW5hZ2UgdXNlciBhY2NvdW50cyK6SAVyAxjQD0gAiAEBEtcBCgdleHRlbmRzGAggASgJQsABkkGdATKQAU5hbWUgb2YgdGhlIGJhc2Ugcm9sZSB0aGF0IHRoaXMgcm9sZSBleHRlbmRzLiBFbmFibGVzIGhpZXJhcmNoaWNhbCByb2xlIGluaGVyaXRhbmNlIHdoZXJlIHRoaXMgcm9sZSBpbmhlcml0cyBhbGwgcGVybWlzc2lvbnMgZnJvbSB0aGUgYmFzZSByb2xlLkoIInZpZXdlciK6SBxyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kSAGIAQES+gEKC3Blcm1pc3Npb25zGAkgAygJQuQBkkG+ATKFAUxpc3Qgb2YgcGVybWlzc2lvbiBuYW1lcyB0byBhc3NpZ24gdG8gdGhpcyByb2xlLiBQZXJtaXNzaW9ucyBtdXN0IGV4aXN0IGluIHRoZSBjdXJyZW50IGVudmlyb25tZW50LiBNYXhpbXVtIDEwMCBwZXJtaXNzaW9ucyBwZXIgcm9sZS5KNFsicmVhZDpjb250ZW50IiwgIndyaXRlOmNvbnRlbnQiLCAicHVibGlzaDpjb250ZW50Il26SB+SARwQZCIYchYQARhAMhBeW2EtekEtWjAtOV86XSskQg4KDF9kZXNjcmlwdGlvbkIKCghfZXh0ZW5kc0oECAUQBkoECAYQB0oECAcQCCLuBQoWQ3JlYXRlT3JnYW5pemF0aW9uUm9sZRJuCgRuYW1lGAIgASgJQmCSQTsyJlVuaXF1ZSBuYW1lIG9mIHRoZSBvcmdhbml6YXRpb24ncyByb2xlShEib3JnX3ZpZXdlcl9yb2xlIrpIH8gBAXIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSQSagoMZGlzcGxheV9uYW1lGAMgASgJQlSSQUUyJ0Rpc3BsYXkgbmFtZSBvZiB0aGUgb3JnYW5pemF0aW9uJ3Mgcm9sZUoaIk9yZ2FuaXphdGlvbiBWaWV3ZXIgUm9sZSK6SAnIAQFyBBABGGQSkwEKC2Rlc2NyaXB0aW9uGAQgASgJQnmSQW4yJkRlc2NyaXB0aW9uIG9mIHRoZSBvcmdhbml6YXRpb24ncyByb2xlSkQiT3JnYW5pemF0aW9uIFZpZXdlciBSb2xlIHdpbGwgYmUgdXNlZCBvbmx5IGZvciB2aWV3aW5nIHRoZSBvYmplY3RzIrpIBXIDGNAPSACIAQESbQoHZXh0ZW5kcxgIIAEoCUJXkkE1MiVCYXNlIHJvbGUgbmFtZSBmb3IgaGllcmFyY2hpY2FsIHJvbGVzSgwiYWRtaW5fcm9sZSK6SBxyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kSAGIAQESxAEKC3Blcm1pc3Npb25zGAkgAygJQq4BkkGIATJjTGlzdCBvZiBwZXJtaXNzaW9uIG5hbWVzIHRvIGFzc2lnbiB0byB0aGlzIHJvbGUuIFBlcm1pc3Npb25zIG11c3QgZXhpc3QgaW4gdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQuSiFbInJlYWQ6dXNlcnMiLCAid3JpdGU6ZG9jdW1lbnRzIl26SB+SARwQZCIYchYQARhAMhBeW2EtekEtWjAtOV86XSskQg4KDF9kZXNjcmlwdGlvbkIKCghfZXh0ZW5kc0oECAUQBkoECAYQB0oECAcQCCLWAgoRQ3JlYXRlUm9sZVJlcXVlc3QSugIKBHJvbGUYAiABKAsyHS5zY2FsZWtpdC52MS5yb2xlcy5DcmVhdGVSb2xlQowCkkGCAjJsUm9sZSBjb25maWd1cmF0aW9uIGRldGFpbHMgaW5jbHVkaW5nIG5hbWUsIGRpc3BsYXkgbmFtZSwgZGVzY3JpcHRpb24sIHBlcm1pc3Npb25zLCBhbmQgaW5oZXJpdGFuY2Ugc2V0dGluZ3MuSpEBeyJuYW1lIjogImNvbnRlbnRfZWRpdG9yIiwgImRpc3BsYXlfbmFtZSI6ICJDb250ZW50IEVkaXRvciIsICJkZXNjcmlwdGlvbiI6ICJDYW4gZWRpdCBjb250ZW50IiwgInBlcm1pc3Npb25zIjogWyJyZWFkOmNvbnRlbnQiLCAid3JpdGU6Y29udGVudCJdfbpIA8gBAUoECAEQAiKUAgoSQ3JlYXRlUm9sZVJlc3BvbnNlEv0BCgRyb2xlGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZULVAZJB0QEyT1RoZSBjcmVhdGVkIHJvbGUgb2JqZWN0IHdpdGggc3lzdGVtLWdlbmVyYXRlZCBJRCBhbmQgYWxsIGNvbmZpZ3VyYXRpb24gZGV0YWlscy5KfnsiaWQiOiAicm9sZV8xMjM0YWJjZDU2NzhlZmdoIiwgIm5hbWUiOiAiY29udGVudF9lZGl0b3IiLCAiZGlzcGxheV9uYW1lIjogIkNvbnRlbnQgRWRpdG9yIiwgImRlc2NyaXB0aW9uIjogIkNhbiBlZGl0IGNvbnRlbnQifSLUAwoOR2V0Um9sZVJlcXVlc3QStAEKCXJvbGVfbmFtZRgCIAEoCUKgAZJBezJnVW5pcXVlIG5hbWUgaWRlbnRpZmllciBvZiB0aGUgcm9sZSB0byByZXRyaWV2ZS4gTXVzdCBiZSBhbHBoYW51bWVyaWMgd2l0aCB1bmRlcnNjb3JlcywgMS02NCBjaGFyYWN0ZXJzLkoQImNvbnRlbnRfZWRpdG9yIrpIH8gBAXIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSQS+AEKB2luY2x1ZGUYAyABKAlC4QGSQbgBMqYBSW5jbHVkZSBhZGRpdGlvbmFsIGRhdGEgaW4gdGhlIHJlc3BvbnNlLiBWYWxpZCB2YWx1ZXM6ICdwZXJtaXNzaW9ucycgKGRpcmVjdCBwZXJtaXNzaW9ucyBvbmx5KSwgJ3Blcm1pc3Npb25zOmFsbCcgKGluY2x1ZGVzIGluaGVyaXRlZCBwZXJtaXNzaW9ucyBmcm9tIHJvbGUgaGllcmFyY2h5KUoNInBlcm1pc3Npb25zIrpIInIgUgBSC3Blcm1pc3Npb25zUg9wZXJtaXNzaW9uczphbGxIAIgBAUIKCghfaW5jbHVkZUoECAEQAiK4AgoPR2V0Um9sZVJlc3BvbnNlEqQCCgRyb2xlGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZUL8AZJB+AEyUVRoZSBjb21wbGV0ZSByb2xlIG9iamVjdCB3aXRoIGFsbCBtZXRhZGF0YSwgcGVybWlzc2lvbnMsIGFuZCBpbmhlcml0YW5jZSBkZXRhaWxzLkqiAXsiaWQiOiAicm9sZV8xMjM0YWJjZDU2NzhlZmdoIiwgIm5hbWUiOiAiY29udGVudF9lZGl0b3IiLCAiZGlzcGxheV9uYW1lIjogIkNvbnRlbnQgRWRpdG9yIiwgInBlcm1pc3Npb25zIjogW3sibmFtZSI6ICJyZWFkOmNvbnRlbnQifV0sICJkZXBlbmRlbnRfcm9sZXNfY291bnQiOiAyfSKfAgoQTGlzdFJvbGVzUmVxdWVzdBL4AQoHaW5jbHVkZRgCIAEoCULhAZJBuAEypgFJbmNsdWRlIGFkZGl0aW9uYWwgZGF0YSBpbiB0aGUgcmVzcG9uc2UuIFZhbGlkIHZhbHVlczogJ3Blcm1pc3Npb25zJyAoZGlyZWN0IHBlcm1pc3Npb25zIG9ubHkpLCAncGVybWlzc2lvbnM6YWxsJyAoaW5jbHVkZXMgaW5oZXJpdGVkIHBlcm1pc3Npb25zIGZyb20gcm9sZSBoaWVyYXJjaHkpSg0icGVybWlzc2lvbnMiukgiciBSAFILcGVybWlzc2lvbnNSD3Blcm1pc3Npb25zOmFsbEgAiAEBQgoKCF9pbmNsdWRlSgQIARACIsICChFMaXN0Um9sZXNSZXNwb25zZRKsAgoFcm9sZXMYASADKAsyFy5zY2FsZWtpdC52MS5yb2xlcy5Sb2xlQoMCkkH/ATJaTGlzdCBvZiBhbGwgcm9sZXMgaW4gdGhlIGVudmlyb25tZW50IHdpdGggdGhlaXIgbWV0YWRhdGEgYW5kIG9wdGlvbmFsbHkgdGhlaXIgcGVybWlzc2lvbnMuSqABW3siaWQiOiAicm9sZV8xMjM0YWJjZDU2NzhlZmdoIiwgIm5hbWUiOiAiYWRtaW4iLCAiZGlzcGxheV9uYW1lIjogIkFkbWluaXN0cmF0b3IifSwgeyJpZCI6ICJyb2xlXzk4NzZ6eXh3NTQzMnZ1dHMiLCAibmFtZSI6ICJ2aWV3ZXIiLCAiZGlzcGxheV9uYW1lIjogIlZpZXdlciJ9XSKtCAoKVXBkYXRlUm9sZRKvAQoMZGlzcGxheV9uYW1lGAEgASgJQpMBkkGGATJrSHVtYW4tcmVhZGFibGUgZGlzcGxheSBuYW1lIGZvciB0aGUgcm9sZS4gVXNlZCBpbiB1c2VyIGludGVyZmFjZXMsIHJlcG9ydHMsIGFuZCB1c2VyLWZhY2luZyBjb21tdW5pY2F0aW9ucy5KFyJTZW5pb3IgQ29udGVudCBFZGl0b3IiukgGcgQQARhkSACIAQES9wEKC2Rlc2NyaXB0aW9uGAIgASgJQtwBkkHOATJqRGV0YWlsZWQgZGVzY3JpcHRpb24gb2YgdGhlIHJvbGUncyBwdXJwb3NlLCBjYXBhYmlsaXRpZXMsIGFuZCBpbnRlbmRlZCB1c2UgY2FzZXMuIE1heGltdW0gMjAwMCBjaGFyYWN0ZXJzLkpgIkNhbiBjcmVhdGUsIGVkaXQsIHB1Ymxpc2gsIGFuZCBhcHByb3ZlIGNvbnRlbnQuIENhbm5vdCBkZWxldGUgY29udGVudCBvciBtYW5hZ2UgdXNlciBhY2NvdW50cy4iukgHcgUQARjQD0gBiAEBEt8BCgdleHRlbmRzGAYgASgJQsgBkkGlATKQAU5hbWUgb2YgdGhlIGJhc2Ugcm9sZSB0aGF0IHRoaXMgcm9sZSBleHRlbmRzLiBFbmFibGVzIGhpZXJhcmNoaWNhbCByb2xlIGluaGVyaXRhbmNlIHdoZXJlIHRoaXMgcm9sZSBpbmhlcml0cyBhbGwgcGVybWlzc2lvbnMgZnJvbSB0aGUgYmFzZSByb2xlLkoQImNvbnRlbnRfZWRpdG9yIrpIHHIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSRIAogBARLRAgoLcGVybWlzc2lvbnMYByADKAlCuwKSQZUCMskBTGlzdCBvZiBwZXJtaXNzaW9uIG5hbWVzIHRvIGFzc2lnbiB0byB0aGlzIHJvbGUuIFdoZW4gcHJvdmlkZWQsIHRoaXMgcmVwbGFjZXMgYWxsIGV4aXN0aW5nIHJvbGUtcGVybWlzc2lvbiBtYXBwaW5ncy4gUGVybWlzc2lvbnMgbXVzdCBleGlzdCBpbiB0aGUgY3VycmVudCBlbnZpcm9ubWVudC4gTWF4aW11bSAxMDAgcGVybWlzc2lvbnMgcGVyIHJvbGUuSkdbInJlYWQ6Y29udGVudCIsICJ3cml0ZTpjb250ZW50IiwgInB1Ymxpc2g6Y29udGVudCIsICJhcHByb3ZlOmNvbnRlbnQiXbpIH5IBHBBkIhhyFhABGEAyEF5bYS16QS1aMC05XzpdKyRCDwoNX2Rpc3BsYXlfbmFtZUIOCgxfZGVzY3JpcHRpb25CCgoIX2V4dGVuZHNKBAgDEARKBAgEEAVKBAgFEAYimwMKEVVwZGF0ZVJvbGVSZXF1ZXN0ErIBCglyb2xlX25hbWUYAiABKAlCngGSQXkyZVVuaXF1ZSBuYW1lIGlkZW50aWZpZXIgb2YgdGhlIHJvbGUgdG8gdXBkYXRlLiBNdXN0IGJlIGFscGhhbnVtZXJpYyB3aXRoIHVuZGVyc2NvcmVzLCAxLTY0IGNoYXJhY3RlcnMuShAiY29udGVudF9lZGl0b3IiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JBLKAQoEcm9sZRgDIAEoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZVJvbGVCnAGSQZIBMj5Sb2xlIGZpZWxkcyB0byB1cGRhdGUuIE9ubHkgc3BlY2lmaWVkIGZpZWxkcyB3aWxsIGJlIG1vZGlmaWVkLkpQeyJkaXNwbGF5X25hbWUiOiAiU2VuaW9yIEVkaXRvciIsICJkZXNjcmlwdGlvbiI6ICJDYW4gZWRpdCBhbmQgYXBwcm92ZSBjb250ZW50In26SAPIAQFKBAgBEAIikAIKElVwZGF0ZVJvbGVSZXNwb25zZRL5AQoEcm9sZRgBIAEoCzIXLnNjYWxla2l0LnYxLnJvbGVzLlJvbGVC0QGSQc0BMj9UaGUgdXBkYXRlZCByb2xlIG9iamVjdCB3aXRoIGFsbCBjdXJyZW50IGNvbmZpZ3VyYXRpb24gZGV0YWlscy5KiQF7ImlkIjogInJvbGVfMTIzNGFiY2Q1Njc4ZWZnaCIsICJuYW1lIjogImNvbnRlbnRfZWRpdG9yIiwgImRpc3BsYXlfbmFtZSI6ICJTZW5pb3IgRWRpdG9yIiwgImRlc2NyaXB0aW9uIjogIkNhbiBlZGl0IGFuZCBhcHByb3ZlIGNvbnRlbnQifSKOBAoRRGVsZXRlUm9sZVJlcXVlc3QSrAEKCXJvbGVfbmFtZRgCIAEoCUKYAZJBczJlVW5pcXVlIG5hbWUgaWRlbnRpZmllciBvZiB0aGUgcm9sZSB0byBkZWxldGUuIE11c3QgYmUgYWxwaGFudW1lcmljIHdpdGggdW5kZXJzY29yZXMsIDEtNjQgY2hhcmFjdGVycy5KCiJvbGRfcm9sZSK6SB/IAQFyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kEooBChByZWFzc2lnbl9yb2xlX2lkGAMgASgJQmsYAZJBRzI2Um9sZSBuYW1lIHRvIHJlYXNzaWduIHVzZXJzIHRvIHdoZW4gZGVsZXRpbmcgdGhpcyByb2xlSg0ibWVtYmVyX3JvbGUiukgcchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JEgAiAEBEooBChJyZWFzc2lnbl9yb2xlX25hbWUYBCABKAlCaZJBRzI2Um9sZSBuYW1lIHRvIHJlYXNzaWduIHVzZXJzIHRvIHdoZW4gZGVsZXRpbmcgdGhpcyByb2xlSg0ibWVtYmVyX3JvbGUiukgcchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JEgBiAEBQhMKEV9yZWFzc2lnbl9yb2xlX2lkQhUKE19yZWFzc2lnbl9yb2xlX25hbWVKBAgBEAIi3wEKHUNyZWF0ZU9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0El8KBm9yZ19pZBgBIAEoCUJPkkE+MiVVbmlxdWUgaWRlbnRpZmllciBvZiB0aGUgb3JnYW5pemF0aW9uShUib3JnXzEyMTMxMjQzNDEyMzMxMiK6SAtyCRABGCA6A29yZxJdCgRyb2xlGAIgASgLMikuc2NhbGVraXQudjEucm9sZXMuQ3JlYXRlT3JnYW5pemF0aW9uUm9sZUIkkkEbMhlPcmdhbml6YXRpb24gcm9sZSBkZXRhaWxzukgDyAEBIkcKHkNyZWF0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZRIlCgRyb2xlGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZSLRAwoaR2V0T3JnYW5pemF0aW9uUm9sZVJlcXVlc3QSXwoGb3JnX2lkGAEgASgJQk+SQT4yJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KFSJvcmdfMTIxMzEyNDM0MTIzMzEyIrpIC3IJEAEYIDoDb3JnEl8KCXJvbGVfbmFtZRgCIAEoCUJMkkEnMhdVbmlxdWUgbmFtZSBvZiB0aGUgcm9sZUoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JBLkAQoHaW5jbHVkZRgDIAEoCULNAZJBpAEykgFJbmNsdWRlIGFkZGl0aW9uYWwgZGF0YSBpbiB0aGUgcmVzcG9uc2UuIFZhbGlkIHZhbHVlczogJ3Blcm1pc3Npb25zJyAoZGlyZWN0IHBlcm1pc3Npb25zIG9ubHkpLCAncGVybWlzc2lvbnM6YWxsJyAoaW5jbHVkZXMgaW5oZXJpdGVkIHBlcm1pc3Npb25zKUoNInBlcm1pc3Npb25zIrpIInIgUgBSC3Blcm1pc3Npb25zUg9wZXJtaXNzaW9uczphbGxIAIgBAUIKCghfaW5jbHVkZSJEChtHZXRPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2USJQoEcm9sZRgBIAEoCzIXLnNjYWxla2l0LnYxLnJvbGVzLlJvbGUi0gQKHExpc3RPcmdhbml6YXRpb25Sb2xlc1JlcXVlc3QSYgoGb3JnX2lkGAEgASgJQlKSQT4yJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KFSJvcmdfMTIxMzEyNDM0MTIzMzEyIrpIDsgBAXIJEAEYIDoDb3JnEuQBCgdpbmNsdWRlGAIgASgJQs0BkkGkATKSAUluY2x1ZGUgYWRkaXRpb25hbCBkYXRhIGluIHRoZSByZXNwb25zZS4gVmFsaWQgdmFsdWVzOiAncGVybWlzc2lvbnMnIChkaXJlY3QgcGVybWlzc2lvbnMgb25seSksICdwZXJtaXNzaW9uczphbGwnIChpbmNsdWRlcyBpbmhlcml0ZWQgcGVybWlzc2lvbnMpSg0icGVybWlzc2lvbnMiukgiciBSAFILcGVybWlzc2lvbnNSD3Blcm1pc3Npb25zOmFsbEgAiAEBOtoBkkHWAQqwASoXTGlzdCBvcmdhbml6YXRpb24gcm9sZXMyiwFSZXRyaWV2ZXMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBhbGwgcm9sZXMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24uIFVzZSB0aGUgcGFnZV90b2tlbiBmcm9tIHRoZSByZXNwb25zZSB0byBhY2Nlc3Mgc3Vic2VxdWVudCBwYWdlcyBvZiByZXN1bHRz0gEGb3JnX2lkMiF7Im9yZ19pZCIgOiAib3JnXzg3NTY4NjU2ODU3NjIiIH1CCgoIX2luY2x1ZGUiYwodTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2USQgoFcm9sZXMYASADKAsyFy5zY2FsZWtpdC52MS5yb2xlcy5Sb2xlQhqSQRcyFUxpc3Qgb2Ygcm9sZXMgb2JqZWN0cyK0AgodVXBkYXRlT3JnYW5pemF0aW9uUm9sZVJlcXVlc3QSXwoGb3JnX2lkGAEgASgJQk+SQT4yJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KFSJvcmdfMTIxMzEyNDM0MTIzMzEyIrpIC3IJEAEYIDoDb3JnEl8KCXJvbGVfbmFtZRgCIAEoCUJMkkEnMhdVbmlxdWUgbmFtZSBvZiB0aGUgcm9sZUoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JBJRCgRyb2xlGAMgASgLMh0uc2NhbGVraXQudjEucm9sZXMuVXBkYXRlUm9sZUIkkkEbMhlPcmdhbml6YXRpb24gcm9sZSBkZXRhaWxzukgDyAEBIkcKHlVwZGF0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZRIlCgRyb2xlGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZSKFAwodRGVsZXRlT3JnYW5pemF0aW9uUm9sZVJlcXVlc3QSXwoGb3JnX2lkGAEgASgJQk+SQT4yJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KFSJvcmdfMTIxMzEyNDM0MTIzMzEyIrpIC3IJEAEYIDoDb3JnEl8KCXJvbGVfbmFtZRgCIAEoCUJMkkEnMhdVbmlxdWUgbmFtZSBvZiB0aGUgcm9sZUoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JBKKAQoScmVhc3NpZ25fcm9sZV9uYW1lGAMgASgJQmmSQUcyNlJvbGUgbmFtZSB0byByZWFzc2lnbiB1c2VycyB0byB3aGVuIGRlbGV0aW5nIHRoaXMgcm9sZUoNIm1lbWJlcl9yb2xlIrpIHHIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSRIAIgBAUIVChNfcmVhc3NpZ25fcm9sZV9uYW1lIoEBChhHZXRSb2xlVXNlcnNDb3VudFJlcXVlc3QSXwoJcm9sZV9uYW1lGAIgASgJQkySQScyF1VuaXF1ZSBuYW1lIG9mIHRoZSByb2xlSgwiYWRtaW5fcm9sZSK6SB/IAQFyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kSgQIARACImQKGUdldFJvbGVVc2Vyc0NvdW50UmVzcG9uc2USRwoFY291bnQYASABKANCOJJBLjIoTnVtYmVyIG9mIHVzZXJzIGFzc29jaWF0ZWQgd2l0aCB0aGUgcm9sZUoCMTC6SAQaAiAAIu4BCiRHZXRPcmdhbml6YXRpb25Sb2xlVXNlcnNDb3VudFJlcXVlc3QSWAoGb3JnX2lkGAEgASgJQkiSQTkyJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KECJvcmdfMTIzNDU2Nzg5MCK6SAnIAQFyBBABGGQSbAoJcm9sZV9uYW1lGAIgASgJQlmSQTQyJFVuaXF1ZSBuYW1lIG9mIHRoZSBvcmdhbml6YXRpb24gcm9sZUoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JCJ8CiVHZXRPcmdhbml6YXRpb25Sb2xlVXNlcnNDb3VudFJlc3BvbnNlElMKBWNvdW50GAEgASgDQkSSQToyNU51bWJlciBvZiB1c2VycyBhc3NvY2lhdGVkIHdpdGggdGhlIG9yZ2FuaXphdGlvbiByb2xlSgE1ukgEGgIgACKqCQoZVXBkYXRlRGVmYXVsdFJvbGVzUmVxdWVzdBKOAgoPZGVmYXVsdF9jcmVhdG9yGAIgASgLMiQuc2NhbGVraXQudjEucm9sZXMuVXBkYXRlRGVmYXVsdFJvbGVCzgEYAZJByAEySkRlZmF1bHQgY3JlYXRvciByb2xlIChkZXByZWNhdGVkIC0gdXNlIGRlZmF1bHRfY3JlYXRvcl9yb2xlIGZpZWxkIGluc3RlYWQpSnp7ImlkIjogInJvbGVfMTIzNDU2Nzg5MCIsICJuYW1lIjogImNyZWF0b3IiLCAiZGlzcGxheV9uYW1lIjogIkNyZWF0b3IgUm9sZSIsICJkZXNjcmlwdGlvbiI6ICJSb2xlIGZvciBjcmVhdGluZyByZXNvdXJjZXMifRKGAgoOZGVmYXVsdF9tZW1iZXIYAyABKAsyJC5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVEZWZhdWx0Um9sZULHARgBkkHBATJIRGVmYXVsdCBtZW1iZXIgcm9sZSAoZGVwcmVjYXRlZCAtIHVzZSBkZWZhdWx0X21lbWJlcl9yb2xlIGZpZWxkIGluc3RlYWQpSnV7ImlkIjogInJvbGVfMDk4NzY1NDMyMSIsICJuYW1lIjogIm1lbWJlciIsICJkaXNwbGF5X25hbWUiOiAiTWVtYmVyIFJvbGUiLCAiZGVzY3JpcHRpb24iOiAiUm9sZSBmb3IgcmVndWxhciBtZW1iZXJzIn0SogIKFGRlZmF1bHRfY3JlYXRvcl9yb2xlGAQgASgJQv4BkkHbATLNAU5hbWUgb2YgdGhlIHJvbGUgdG8gc2V0IGFzIHRoZSBkZWZhdWx0IGNyZWF0b3Igcm9sZS4gVGhpcyByb2xlIHdpbGwgYmUgYXV0b21hdGljYWxseSBhc3NpZ25lZCB0byB1c2VycyB3aG8gY3JlYXRlIG5ldyByZXNvdXJjZXMgaW4gdGhlIGVudmlyb25tZW50LiBNdXN0IGJlIGEgdmFsaWQgcm9sZSBuYW1lIHRoYXQgZXhpc3RzIGluIHRoZSBlbnZpcm9ubWVudC5KCSJjcmVhdG9yIrpIHHIaEAAYZDIUXlthLXpBLVowLTlfXXsxLDY0fSRIAIgBARKWAgoTZGVmYXVsdF9tZW1iZXJfcm9sZRgFIAEoCULzAZJB0AEywwFOYW1lIG9mIHRoZSByb2xlIHRvIHNldCBhcyB0aGUgZGVmYXVsdCBtZW1iZXIgcm9sZS4gVGhpcyByb2xlIHdpbGwgYmUgYXV0b21hdGljYWxseSBhc3NpZ25lZCB0byBuZXcgdXNlcnMgd2hlbiB0aGV5IGpvaW4gdGhlIGVudmlyb25tZW50LiBNdXN0IGJlIGEgdmFsaWQgcm9sZSBuYW1lIHRoYXQgZXhpc3RzIGluIHRoZSBlbnZpcm9ubWVudC5KCCJtZW1iZXIiukgcchoQABhkMhReW2EtekEtWjAtOV9dezEsNjR9JEgBiAEBQhcKFV9kZWZhdWx0X2NyZWF0b3Jfcm9sZUIWChRfZGVmYXVsdF9tZW1iZXJfcm9sZUoECAEQAiKBAgolVXBkYXRlRGVmYXVsdE9yZ2FuaXphdGlvblJvbGVzUmVxdWVzdBJiCgZvcmdfaWQYASABKAlCUpJBPjIlVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIG9yZ2FuaXphdGlvbkoVIm9yZ18xMjEzMTI0MzQxMjMzMTIiukgOyAEBcgkQARggOgNvcmcSdAoTZGVmYXVsdF9tZW1iZXJfcm9sZRgCIAEoCUJXkkEyMiZVbmlxdWUgbmFtZSBvZiB0aGUgZGVmYXVsdCBtZW1iZXIgcm9sZUoIIm1lbWJlciK6SB/IAQFyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kIqcFChpVcGRhdGVEZWZhdWx0Um9sZXNSZXNwb25zZRLGAgoPZGVmYXVsdF9jcmVhdG9yGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZUKTApJBjwIykAFUaGUgcm9sZSB0aGF0IGlzIG5vdyBzZXQgYXMgdGhlIGRlZmF1bHQgY3JlYXRvciByb2xlIGZvciB0aGUgZW52aXJvbm1lbnQuIENvbnRhaW5zIGNvbXBsZXRlIHJvbGUgaW5mb3JtYXRpb24gaW5jbHVkaW5nIHBlcm1pc3Npb25zIGFuZCBtZXRhZGF0YS5KensiaWQiOiAicm9sZV8xMjM0NTY3ODkwIiwgIm5hbWUiOiAiY3JlYXRvciIsICJkaXNwbGF5X25hbWUiOiAiQ3JlYXRvciBSb2xlIiwgImRlc2NyaXB0aW9uIjogIlJvbGUgZm9yIGNyZWF0aW5nIHJlc291cmNlcyJ9Er8CCg5kZWZhdWx0X21lbWJlchgCIAEoCzIXLnNjYWxla2l0LnYxLnJvbGVzLlJvbGVCjQKSQYkCMo8BVGhlIHJvbGUgdGhhdCBpcyBub3cgc2V0IGFzIHRoZSBkZWZhdWx0IG1lbWJlciByb2xlIGZvciB0aGUgZW52aXJvbm1lbnQuIENvbnRhaW5zIGNvbXBsZXRlIHJvbGUgaW5mb3JtYXRpb24gaW5jbHVkaW5nIHBlcm1pc3Npb25zIGFuZCBtZXRhZGF0YS5KdXsiaWQiOiAicm9sZV8wOTg3NjU0MzIxIiwgIm5hbWUiOiAibWVtYmVyIiwgImRpc3BsYXlfbmFtZSI6ICJNZW1iZXIgUm9sZSIsICJkZXNjcmlwdGlvbiI6ICJSb2xlIGZvciByZWd1bGFyIG1lbWJlcnMifSL1AQomVXBkYXRlRGVmYXVsdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2USygEKDmRlZmF1bHRfbWVtYmVyGAIgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZUKYAZJBlAEyG1VwZGF0ZWQgZGVmYXVsdCBtZW1iZXIgcm9sZUp1eyJpZCI6ICJyb2xlXzA5ODc2NTQzMjEiLCAibmFtZSI6ICJtZW1iZXIiLCAiZGlzcGxheV9uYW1lIjogIk1lbWJlciBSb2xlIiwgImRlc2NyaXB0aW9uIjogIlJvbGUgZm9yIHJlZ3VsYXIgbWVtYmVycyJ9IpQBChFVcGRhdGVEZWZhdWx0Um9sZRIbCgJpZBgBIAEoCUIPukgMcgoQARggOgRyb2xlElkKBG5hbWUYAiABKAlCRpJBJDIXVW5pcXVlIG5hbWUgb2YgdGhlIHJvbGVKCSJjcmVhdG9yIrpIHHIaEAAYZDIUXlthLXpBLVowLTlfXXsxLDY0fSRIAIgBAUIHCgVfbmFtZSLAAgoKUGVybWlzc2lvbhIbCgJpZBgBIAEoCUIPukgMcgoQARggOgRwZXJtEiwKBG5hbWUYAiABKAlCHrpIG8gBAXIWEAEYZDIQXlthLXpBLVowLTlfOl0rJBIdCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMY0A8SLwoLY3JlYXRlX3RpbWUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC3VwZGF0ZV90aW1lGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBJmChZpc19zY2FsZWtpdF9wZXJtaXNzaW9uGAYgASgIQkaSQUMyO0luZGljYXRlcyB3aGV0aGVyIHRoaXMgcGVybWlzc2lvbiBpcyBwcmVkZWZpbmVkIGJ5IFNjYWxla2l0SgR0cnVlIt0CCg5Sb2xlUGVybWlzc2lvbhIbCgJpZBgBIAEoCUIPukgMcgoQARggOgRwZXJtEiwKBG5hbWUYAiABKAlCHrpIG8gBAXIWEAEYZDIQXlthLXpBLVowLTlfOl0rJBIdCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMY0A8SLwoLY3JlYXRlX3RpbWUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC3VwZGF0ZV90aW1lGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBJ/Cglyb2xlX25hbWUYBiABKAlCbJJBRzI3TmFtZSBvZiB0aGUgcm9sZSBmcm9tIHdoaWNoIHRoaXMgcGVybWlzc2lvbiB3YXMgc291cmNlZEoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JCLuAQoQQ3JlYXRlUGVybWlzc2lvbhJoCgRuYW1lGAEgASgJQlqSQTQyIFVuaXF1ZSBuYW1lL0lEIG9mIHRoZSBwZXJtaXNzaW9uShAicmVhZDpkb2N1bWVudHMiukggyAEBchsQARhkMhVeW2EtekEtWjAtOV86XXsxLDY0fSQScAoLZGVzY3JpcHRpb24YAiABKAlCW5JBUDIdRGVzY3JpcHRpb24gb2YgdGhlIHBlcm1pc3Npb25KLyJBbGxvd3MgdXNlciB0byByZWFkIGRvY3VtZW50cyBmcm9tIHRoZSBzeXN0ZW0iukgFcgMY0A8iWgoXQ3JlYXRlUGVybWlzc2lvblJlcXVlc3QSPwoKcGVybWlzc2lvbhgBIAEoCzIjLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVBlcm1pc3Npb25CBrpIA8gBASJNChhDcmVhdGVQZXJtaXNzaW9uUmVzcG9uc2USMQoKcGVybWlzc2lvbhgBIAEoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb24ieAoUR2V0UGVybWlzc2lvblJlcXVlc3QSYAoPcGVybWlzc2lvbl9uYW1lGAEgASgJQkeSQSYyFk5hbWUgb2YgdGhlIHBlcm1pc3Npb25KDCJyZWFkOnVzZXJzIrpIG8gBAXIWEAEYQDIQXlthLXpBLVowLTlfOl0rJCJKChVHZXRQZXJtaXNzaW9uUmVzcG9uc2USMQoKcGVybWlzc2lvbhgBIAEoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb24ivAEKF1VwZGF0ZVBlcm1pc3Npb25SZXF1ZXN0EmAKD3Blcm1pc3Npb25fbmFtZRgBIAEoCUJHkkEmMhZOYW1lIG9mIHRoZSBwZXJtaXNzaW9uSgwicmVhZF91c2VycyK6SBvIAQFyFhABGEAyEF5bYS16QS1aMC05XzpdKyQSPwoKcGVybWlzc2lvbhgDIAEoCzIjLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVBlcm1pc3Npb25CBrpIA8gBASJNChhVcGRhdGVQZXJtaXNzaW9uUmVzcG9uc2USMQoKcGVybWlzc2lvbhgBIAEoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb24i7gMKFkxpc3RQZXJtaXNzaW9uc1JlcXVlc3QSWQoKcGFnZV90b2tlbhgBIAEoCUJAkkE9MitQYWdlIHRva2VuIHRvIHJldHJpZXZlIG5leHQgcGFnZSBvZiByZXN1bHRzSg4idG9rZW5fYWJjMTIzIkgAiAEBElwKCXBhZ2Vfc2l6ZRgCIAEoDUJEkkE4MjJOdW1iZXIgb2YgcGVybWlzc2lvbnMgdG8gcmV0dXJuIHBlciBwYWdlIChtYXggMTAwKUoCNTC6SAYqBBhkKAFIAYgBARL9AQoEdHlwZRgDIAEoDjIhLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb25UeXBlQssBkkHHATK/AUZpbHRlciBwZXJtaXNzaW9ucyBieSB0eXBlOiBBTEwsIFNDQUxFS0lULCBvciBFTlZJUk9OTUVOVCwgd2hlcmUgU0NBTEVLSVQgYXJlIHByZWRlZmluZWQgU2NhbGVraXQgcGVybWlzc2lvbnMgYW5kIEVOVklST05NRU5UIGFyZSBjdXN0b20gcGVybWlzc2lvbnMgY3JlYXRlZCBpbiB0aGUgZW52aXJvbm1lbnQsIGRlZmF1bHQgaXMgQUxMSgNBTExCDQoLX3BhZ2VfdG9rZW5CDAoKX3BhZ2Vfc2l6ZSLCAgoXTGlzdFBlcm1pc3Npb25zUmVzcG9uc2USMgoLcGVybWlzc2lvbnMYASADKAsyHS5zY2FsZWtpdC52MS5yb2xlcy5QZXJtaXNzaW9uElgKD3ByZXZfcGFnZV90b2tlbhgCIAEoCUI/kkE8MipUb2tlbiB0byByZXRyaWV2ZSBwcmV2aW91cyBwYWdlIG9mIHJlc3VsdHNKDiJ0b2tlbl9kZWY0NTYiElQKD25leHRfcGFnZV90b2tlbhgDIAEoCUI7kkE4MiZUb2tlbiB0byByZXRyaWV2ZSBuZXh0IHBhZ2Ugb2YgcmVzdWx0c0oOInRva2VuX2RlZjQ1NiISQwoKdG90YWxfc2l6ZRgEIAEoDUIvkkEsMiVUb3RhbCBudW1iZXIgb2YgcGVybWlzc2lvbnMgYXZhaWxhYmxlSgMxNTAiewoXRGVsZXRlUGVybWlzc2lvblJlcXVlc3QSYAoPcGVybWlzc2lvbl9uYW1lGAEgASgJQkeSQSYyFk5hbWUgb2YgdGhlIHBlcm1pc3Npb25KDCJyZWFkX3VzZXJzIrpIG8gBAXIWEAEYQDIQXlthLXpBLVowLTlfOl0rJCJrChpMaXN0Um9sZVBlcm1pc3Npb25zUmVxdWVzdBJNCglyb2xlX25hbWUYASABKAlCOpJBGTIQTmFtZSBvZiB0aGUgcm9sZUoFYWRtaW66SBvIAQFyFhABGEAyEF5bYS16QS1aMC05Xy1dKyQiiQEKG0xpc3RSb2xlUGVybWlzc2lvbnNSZXNwb25zZRJqCgtwZXJtaXNzaW9ucxgBIAMoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb25CNpJBMzIxTGlzdCBvZiBwZXJtaXNzaW9ucyBkaXJlY3RseSBhc3NpZ25lZCB0byB0aGUgcm9sZSLfAQobQWRkUGVybWlzc2lvbnNUb1JvbGVSZXF1ZXN0Ek0KCXJvbGVfbmFtZRgBIAEoCUI6kkEZMhBOYW1lIG9mIHRoZSByb2xlSgVhZG1pbrpIG8gBAXIWEAEYQDIQXlthLXpBLVowLTlfOl0rJBJxChBwZXJtaXNzaW9uX25hbWVzGAIgAygJQleSQS0yK0xpc3Qgb2YgcGVybWlzc2lvbiBuYW1lcyB0byBhZGQgdG8gdGhlIHJvbGW6SCTIAQGSAR4IARBkIhhyFhABGEAyEF5bYS16QS1aMC05XzpdKyQilQEKHEFkZFBlcm1pc3Npb25zVG9Sb2xlUmVzcG9uc2USdQoLcGVybWlzc2lvbnMYASADKAsyHS5zY2FsZWtpdC52MS5yb2xlcy5QZXJtaXNzaW9uQkGSQT4yPExpc3Qgb2YgYWxsIHBlcm1pc3Npb25zIGJlbG9uZ2luZyB0byB0aGUgcm9sZSBhZnRlciBhZGRpdGlvbiLZAQofUmVtb3ZlUGVybWlzc2lvbkZyb21Sb2xlUmVxdWVzdBJMCglyb2xlX25hbWUYASABKAlCOZJBGTIQTmFtZSBvZiB0aGUgcm9sZUoFYWRtaW66SBrIAQFyFRABGEAyD15bYS16QS1aMC05X10rJBJoCg9wZXJtaXNzaW9uX25hbWUYAiABKAlCT5JBLjIgTmFtZSBvZiB0aGUgcGVybWlzc2lvbiB0byByZW1vdmVKCnJlYWRfdXNlcnO6SBvIAQFyFhABGEAyEF5bYS16QS1aMC05XzpdKyQicwojTGlzdEVmZmVjdGl2ZVJvbGVQZXJtaXNzaW9uc1JlcXVlc3QSTAoJcm9sZV9uYW1lGAEgASgJQjmSQRkyEE5hbWUgb2YgdGhlIHJvbGVKBWFkbWluukgayAEBchUQARhAMg9eW2EtekEtWjAtOV9dKyQirQEKJExpc3RFZmZlY3RpdmVSb2xlUGVybWlzc2lvbnNSZXNwb25zZRKEAQoLcGVybWlzc2lvbnMYASADKAsyHS5zY2FsZWtpdC52MS5yb2xlcy5QZXJtaXNzaW9uQlCSQU0yS0xpc3Qgb2YgYWxsIGVmZmVjdGl2ZSBwZXJtaXNzaW9ucyBpbmNsdWRpbmcgdGhvc2UgaW5oZXJpdGVkIGZyb20gYmFzZSByb2xlcyJuChlMaXN0RGVwZW5kZW50Um9sZXNSZXF1ZXN0ElEKCXJvbGVfbmFtZRgBIAEoCUI+kkEeMhVOYW1lIG9mIHRoZSBiYXNlIHJvbGVKBWFkbWluukgayAEBchUQARhAMg9eW2EtekEtWjAtOV9dKyQiYgoaTGlzdERlcGVuZGVudFJvbGVzUmVzcG9uc2USRAoFcm9sZXMYASADKAsyFy5zY2FsZWtpdC52MS5yb2xlcy5Sb2xlQhySQRkyF0xpc3Qgb2YgZGVwZW5kZW50IHJvbGVzIvMBChVEZWxldGVSb2xlQmFzZVJlcXVlc3QS2QEKCXJvbGVfbmFtZRgBIAEoCULFAZJBpAEykQFVbmlxdWUgbmFtZSBpZGVudGlmaWVyIG9mIHRoZSByb2xlIHdob3NlIGJhc2UgaW5oZXJpdGFuY2UgcmVsYXRpb25zaGlwIHNob3VsZCBiZSByZW1vdmVkLiBNdXN0IGJlIGFscGhhbnVtZXJpYyB3aXRoIHVuZGVyc2NvcmVzLCAxLTY0IGNoYXJhY3RlcnMuSg5jb250ZW50X2VkaXRvcrpIGsgBAXIVEAEYQDIPXlthLXpBLVowLTlfXSskIvcBCiFEZWxldGVPcmdhbml6YXRpb25Sb2xlQmFzZVJlcXVlc3QSXgoGb3JnX2lkGAEgASgJQk6SQT0yJFVuaXF1ZSBpZGVudGlmaWVyIHRvIGFuIE9yZ2FuaXphdGlvbkoVIm9yZ18xMjEzMTI0MzQxMjMzMTIiukgLcgkQARggOgNvcmcScgoJcm9sZV9uYW1lGAIgASgJQl+SQToyMU5hbWUgb2YgdGhlIG9yZ2FuaXphdGlvbiByb2xlIHRvIHJlbW92ZSBiYXNlIGZyb21KBWFkbWluukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JCo4Cg5QZXJtaXNzaW9uVHlwZRIHCgNBTEwQABIMCghTQ0FMRUtJVBABEg8KC0VOVklST05NRU5UEAIy67sBCgxSb2xlc1NlcnZpY2USzwUKCkNyZWF0ZVJvbGUSJC5zY2FsZWtpdC52MS5yb2xlcy5DcmVhdGVSb2xlUmVxdWVzdBolLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVJvbGVSZXNwb25zZSLzBJJBzgQKBVJvbGVzEh5DcmVhdGUgbmV3IHJvbGUgaW4gZW52aXJvbm1lbnQaiANDcmVhdGVzIGEgbmV3IHJvbGUgd2l0aGluIHRoZSBlbnZpcm9ubWVudCB3aXRoIHNwZWNpZmllZCBwZXJtaXNzaW9ucyBhbmQgbWV0YWRhdGEuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGRlZmluZSBjdXN0b20gcm9sZXMgdGhhdCBjYW4gYmUgYXNzaWduZWQgdG8gdXNlcnMgb3IgZ3JvdXBzLiBZb3UgY2FuIGNyZWF0ZSBoaWVyYXJjaGljYWwgcm9sZXMgYnkgZXh0ZW5kaW5nIGV4aXN0aW5nIHJvbGVzLCBhc3NpZ24gc3BlY2lmaWMgcGVybWlzc2lvbnMsIGFuZCBjb25maWd1cmUgZGlzcGxheSBpbmZvcm1hdGlvbi4gUm9sZXMgYXJlIHRoZSBmb3VuZGF0aW9uIG9mIHlvdXIgYWNjZXNzIGNvbnRyb2wgc3lzdGVtIGFuZCBkZXRlcm1pbmUgd2hhdCBhY3Rpb25zIHVzZXJzIGNhbiBwZXJmb3JtLkqZAQoDMjAxEpEBCmRSb2xlIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5LiBSZXR1cm5zIHRoZSBjb21wbGV0ZSByb2xlIG9iamVjdCB3aXRoIHN5c3RlbS1nZW5lcmF0ZWQgSUQgYW5kIHRpbWVzdGFtcHMuEikKJxolLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVJvbGVSZXNwb25zZYK1GAIYRILT5JMCFToEcm9sZSINL2FwaS92MS9yb2xlcxKyBQoKVXBkYXRlUm9sZRIkLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZVJvbGVSZXF1ZXN0GiUuc2NhbGVraXQudjEucm9sZXMuVXBkYXRlUm9sZVJlc3BvbnNlItYEkkGlBAoFUm9sZXMSF1VwZGF0ZSByb2xlIGluZm9ybWF0aW9uGvYCTW9kaWZpZXMgYW4gZXhpc3Rpbmcgcm9sZSdzIHByb3BlcnRpZXMgaW5jbHVkaW5nIGRpc3BsYXkgbmFtZSwgZGVzY3JpcHRpb24sIHBlcm1pc3Npb25zLCBhbmQgaW5oZXJpdGFuY2UuIFVzZSB0aGlzIGVuZHBvaW50IHRvIHVwZGF0ZSByb2xlIG1ldGFkYXRhLCBjaGFuZ2UgcGVybWlzc2lvbiBhc3NpZ25tZW50cywgb3IgbW9kaWZ5IHJvbGUgaGllcmFyY2h5LiBPbmx5IHRoZSBmaWVsZHMgeW91IHNwZWNpZnkgd2lsbCBiZSB1cGRhdGVkLCBsZWF2aW5nIG90aGVyIHByb3BlcnRpZXMgdW5jaGFuZ2VkLiBXaGVuIHVwZGF0aW5nIHBlcm1pc3Npb25zLCB0aGUgbmV3IGxpc3QgcmVwbGFjZXMgYWxsIGV4aXN0aW5nIHBlcm1pc3Npb25zIGZvciB0aGUgcm9sZS5KiQEKAzIwMBKBAQpUUm9sZSB1cGRhdGVkIHN1Y2Nlc3NmdWxseS4gUmV0dXJucyB0aGUgbW9kaWZpZWQgcm9sZSBvYmplY3Qgd2l0aCB1cGRhdGVkIHRpbWVzdGFtcHMuEikKJxolLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZVJvbGVSZXNwb25zZYK1GAIYRILT5JMCIToEcm9sZRoZL2FwaS92MS9yb2xlcy97cm9sZV9uYW1lfRL/BAoHR2V0Um9sZRIhLnNjYWxla2l0LnYxLnJvbGVzLkdldFJvbGVSZXF1ZXN0GiIuc2NhbGVraXQudjEucm9sZXMuR2V0Um9sZVJlc3BvbnNlIqwEkkGBBAoFUm9sZXMSEEdldCByb2xlIGRldGFpbHMaqQJSZXRyaWV2ZXMgY29tcGxldGUgaW5mb3JtYXRpb24gZm9yIGEgc3BlY2lmaWMgcm9sZSBpbmNsdWRpbmcgbWV0YWRhdGEgYW5kIGluaGVyaXRhbmNlIGRldGFpbHMgKGJhc2Ugcm9sZSBhbmQgZGVwZW5kZW50IHJvbGUgY291bnQpLiBVc2UgdGhpcyBlbmRwb2ludCB0byBhdWRpdCByb2xlIGNvbmZpZ3VyYXRpb24gYW5kIHVuZGVyc3RhbmQgdGhlIHJvbGUncyBwbGFjZSBpbiB0aGUgaGllcmFyY2h5LiBUbyB2aWV3IHRoZSByb2xlJ3MgcGVybWlzc2lvbnMsIHVzZSB0aGUgTGlzdFJvbGVQZXJtaXNzaW9ucyBlbmRwb2ludC5KuQEKAzIwMBKxAQqGAVN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgcm9sZSBkZXRhaWxzLiBSZXR1cm5zIHRoZSByb2xlIG9iamVjdCBpbmNsdWRpbmcgbWV0YWRhdGEgYW5kIGluaGVyaXRhbmNlIGRldGFpbHMuIFBlcm1pc3Npb25zIGFyZSBub3QgaW5jbHVkZWQuEiYKJBoiLnNjYWxla2l0LnYxLnJvbGVzLkdldFJvbGVSZXNwb25zZYK1GAIYRILT5JMCGxIZL2FwaS92MS9yb2xlcy97cm9sZV9uYW1lfRKJBgoJTGlzdFJvbGVzEiMuc2NhbGVraXQudjEucm9sZXMuTGlzdFJvbGVzUmVxdWVzdBokLnNjYWxla2l0LnYxLnJvbGVzLkxpc3RSb2xlc1Jlc3BvbnNlIrAFkkGRBQoFUm9sZXMSHUxpc3QgYWxsIHJvbGVzIGluIGVudmlyb25tZW50GsQDUmV0cmlldmVzIGEgY29tcHJlaGVuc2l2ZSBsaXN0IG9mIGFsbCByb2xlcyBhdmFpbGFibGUgd2l0aGluIHRoZSBzcGVjaWZpZWQgZW52aXJvbm1lbnQgaW5jbHVkaW5nIG9yZ2FuaXphdGlvbiByb2xlcy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdmlldyBhbGwgcm9sZSBkZWZpbml0aW9ucywgaW5jbHVkaW5nIGN1c3RvbSByb2xlcyBhbmQgdGhlaXIgY29uZmlndXJhdGlvbnMuIFlvdSBjYW4gb3B0aW9uYWxseSBpbmNsdWRlIHBlcm1pc3Npb24gZGV0YWlscyBmb3IgZWFjaCByb2xlIHRvIHVuZGVyc3RhbmQgdGhlaXIgY2FwYWJpbGl0aWVzLiBUaGlzIGlzIHVzZWZ1bCBmb3Igcm9sZSBtYW5hZ2VtZW50LCBhdWRpdGluZyBvcmdhbml6YXRpb24gYWNjZXNzIGNvbnRyb2xzLCBvciB1bmRlcnN0YW5kaW5nIHRoZSBhdmFpbGFibGUgYWNjZXNzIGxldmVscyB3aXRoaW4gdGhlIG9yZ2FuaXphdGlvbi5KoQEKAzIwMBKZAQptU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBsaXN0IG9mIHJvbGVzLiBSZXR1cm5zIGFsbCByb2xlcyB3aXRoIHRoZWlyIG1ldGFkYXRhIGFuZCBvcHRpb25hbGx5IHRoZWlyIHBlcm1pc3Npb25zLhIoCiYaJC5zY2FsZWtpdC52MS5yb2xlcy5MaXN0Um9sZXNSZXNwb25zZYK1GAIYZILT5JMCDxINL2FwaS92MS9yb2xlcxKsBgoKRGVsZXRlUm9sZRIkLnNjYWxla2l0LnYxLnJvbGVzLkRlbGV0ZVJvbGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5It8FkkG0BQoFUm9sZXMSHkRlbGV0ZSByb2xlIGFuZCByZWFzc2lnbiB1c2Vycxq7BFBlcm1hbmVudGx5IHJlbW92ZXMgYSByb2xlIGZyb20gdGhlIGVudmlyb25tZW50IGFuZCByZWFzc2lnbnMgdXNlcnMgd2hvIGhhZCB0aGF0IHJvbGUgdG8gYSBkaWZmZXJlbnQgcm9sZS4gVXNlIHRoaXMgZW5kcG9pbnQgd2hlbiB5b3UgbmVlZCB0byBjbGVhbiB1cCB1bnVzZWQgcm9sZXMgb3IgcmVzdHJ1Y3R1cmUgeW91ciBhY2Nlc3MgY29udHJvbCBzeXN0ZW0uIFRoZSByb2xlIGNhbm5vdCBiZSBkZWxldGVkIGlmIGl0IGhhcyBkZXBlbmRlbnQgcm9sZXMgKHJvbGVzIHRoYXQgZXh0ZW5kIGl0KSB1bmxlc3MgeW91IHNwZWNpZnkgYSByZXBsYWNlbWVudCByb2xlLiBJZiB1c2VycyBhcmUgYXNzaWduZWQgdG8gdGhlIHJvbGUgYmVpbmcgZGVsZXRlZCwgeW91IG11c3QgcHJvdmlkZSBhIHJlYXNzaWduX3JvbGVfbmFtZSB0byBtb3ZlIHRob3NlIHVzZXJzIHRvIGEgZGlmZmVyZW50IHJvbGUgYmVmb3JlIGRlbGV0aW9uIGNhbiBwcm9jZWVkLiBUaGlzIGFjdGlvbiBjYW5ub3QgYmUgdW5kb25lLCBzbyBlbnN1cmUgbm8gY3JpdGljYWwgdXNlcnMgZGVwZW5kIG9uIHRoZSByb2xlIGJlZm9yZSBkZWxldGlvbi5KTQoDMjAwEkYKRFJvbGUgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQgYW5kIHVzZXJzIHJlYXNzaWduZWQuIE5vIGNvbnRlbnQgcmV0dXJuZWQugrUYAhhEgtPkkwIbKhkvYXBpL3YxL3JvbGVzL3tyb2xlX25hbWV9EtwGChZDcmVhdGVPcmdhbml6YXRpb25Sb2xlEjAuc2NhbGVraXQudjEucm9sZXMuQ3JlYXRlT3JnYW5pemF0aW9uUm9sZVJlcXVlc3QaMS5zY2FsZWtpdC52MS5yb2xlcy5DcmVhdGVPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2Ui3AWSQaAFCgVSb2xlcxIYQ3JlYXRlIG9yZ2FuaXphdGlvbiByb2xlGscDQ3JlYXRlcyBhIG5ldyByb2xlIHdpdGhpbiB0aGUgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbiB3aXRoIGJhc2ljIGNvbmZpZ3VyYXRpb24gaW5jbHVkaW5nIG5hbWUsIGRpc3BsYXkgbmFtZSwgZGVzY3JpcHRpb24sIGFuZCBwZXJtaXNzaW9ucy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gZGVmaW5lIGN1c3RvbSByb2xlcyB0aGF0IGNhbiBiZSBhc3NpZ25lZCB0byB1c2VycyB3aXRoaW4gdGhlIG9yZ2FuaXphdGlvbi4gWW91IGNhbiBjcmVhdGUgaGllcmFyY2hpY2FsIHJvbGVzIGJ5IGV4dGVuZGluZyBleGlzdGluZyByb2xlcyBhbmQgYXNzaWduIHNwZWNpZmljIHBlcm1pc3Npb25zIHRvIGNvbnRyb2wgYWNjZXNzIGxldmVscy4gVGhlIHJvbGUgd2lsbCBiZSBzY29wZWQgdG8gdGhlIG9yZ2FuaXphdGlvbiBhbmQgY2FuIGJlIHVzZWQgZm9yIG9yZ2FuaXphdGlvbi1zcGVjaWZpYyBhY2Nlc3MgY29udHJvbC5KsgEKAzIwMRKqAQpxT3JnYW5pemF0aW9uIHJvbGUgY3JlYXRlZCBzdWNjZXNzZnVsbHkuIFJldHVybnMgdGhlIGNvbXBsZXRlIHJvbGUgb2JqZWN0IHdpdGggc3lzdGVtLWdlbmVyYXRlZCBJRCBhbmQgdGltZXN0YW1wcy4SNQozGjEuc2NhbGVraXQudjEucm9sZXMuQ3JlYXRlT3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlgrUYAhhEgtPkkwIsOgRyb2xlIiQvYXBpL3YxL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMStQYKFlVwZGF0ZU9yZ2FuaXphdGlvblJvbGUSMC5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBoxLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZSK1BZJB7QQKBVJvbGVzEhhVcGRhdGUgb3JnYW5pemF0aW9uIHJvbGUapANNb2RpZmllcyBhbiBleGlzdGluZyBvcmdhbml6YXRpb24gcm9sZSdzIHByb3BlcnRpZXMgaW5jbHVkaW5nIGRpc3BsYXkgbmFtZSwgZGVzY3JpcHRpb24sIHBlcm1pc3Npb25zLCBhbmQgaW5oZXJpdGFuY2Ugc2V0dGluZ3MuIFVzZSB0aGlzIGVuZHBvaW50IHRvIHVwZGF0ZSByb2xlIG1ldGFkYXRhLCBjaGFuZ2UgcGVybWlzc2lvbiBhc3NpZ25tZW50cywgb3IgbW9kaWZ5IHJvbGUgaGllcmFyY2h5IHdpdGhpbiB0aGUgb3JnYW5pemF0aW9uLiBPbmx5IHRoZSBmaWVsZHMgeW91IHNwZWNpZnkgd2lsbCBiZSB1cGRhdGVkLCBsZWF2aW5nIG90aGVyIHByb3BlcnRpZXMgdW5jaGFuZ2VkLiBXaGVuIHVwZGF0aW5nIHBlcm1pc3Npb25zLCB0aGUgbmV3IGxpc3QgcmVwbGFjZXMgYWxsIGV4aXN0aW5nIHBlcm1pc3Npb25zIGZvciB0aGUgcm9sZS5KogEKAzIwMBKaAQphT3JnYW5pemF0aW9uIHJvbGUgdXBkYXRlZCBzdWNjZXNzZnVsbHkuIFJldHVybnMgdGhlIG1vZGlmaWVkIHJvbGUgb2JqZWN0IHdpdGggdXBkYXRlZCB0aW1lc3RhbXBzLhI1CjMaMS5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2WCtRgCGESC0+STAjg6BHJvbGUaMC9hcGkvdjEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9yb2xlcy97cm9sZV9uYW1lfRKgBwoTR2V0T3JnYW5pemF0aW9uUm9sZRItLnNjYWxla2l0LnYxLnJvbGVzLkdldE9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0Gi4uc2NhbGVraXQudjEucm9sZXMuR2V0T3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIqkGkkHnBQoFUm9sZXMSHUdldCBvcmdhbml6YXRpb24gcm9sZSBkZXRhaWxzGr8DUmV0cmlldmVzIGNvbXBsZXRlIGluZm9ybWF0aW9uIGZvciBhIHNwZWNpZmljIG9yZ2FuaXphdGlvbiByb2xlIGluY2x1ZGluZyBtZXRhZGF0YSwgaW5oZXJpdGFuY2UgZGV0YWlscywgYW5kIG9wdGlvbmFsbHkgcGVybWlzc2lvbnMuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGF1ZGl0IHJvbGUgY29uZmlndXJhdGlvbiBhbmQgdW5kZXJzdGFuZCB0aGUgcm9sZSdzIHBsYWNlIGluIHRoZSBvcmdhbml6YXRpb24ncyByb2xlIGhpZXJhcmNoeS4gWW91IGNhbiBpbmNsdWRlIHBlcm1pc3Npb24gZGV0YWlscyB0byBzZWUgd2hhdCBjYXBhYmlsaXRpZXMgdGhlIHJvbGUgcHJvdmlkZXMuIFRoaXMgb3BlcmF0aW9uIGlzIHVzZWZ1bCBmb3Igcm9sZSBtYW5hZ2VtZW50LCB1c2VyIGFzc2lnbm1lbnQgZGVjaXNpb25zLCBvciB1bmRlcnN0YW5kaW5nIG9yZ2FuaXphdGlvbiBhY2Nlc3MgY29udHJvbHMuSvwBCgMyMDAS9AEKvQFTdWNjZXNzZnVsbHkgcmV0cmlldmVkIG9yZ2FuaXphdGlvbiByb2xlIGRldGFpbHMuIFJldHVybnMgdGhlIHJvbGUgb2JqZWN0IGluY2x1ZGluZyBtZXRhZGF0YSBhbmQgaW5oZXJpdGFuY2UgZGV0YWlscy4gUGVybWlzc2lvbnMgYXJlIGluY2x1ZGVkIG9ubHkgd2hlbiByZXF1ZXN0ZWQgdmlhIHRoZSBpbmNsdWRlIHBhcmFtZXRlci4SMgowGi4uc2NhbGVraXQudjEucm9sZXMuR2V0T3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlgrUYAhhkgtPkkwIyEjAvYXBpL3YxL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMve3JvbGVfbmFtZX0SowYKFUxpc3RPcmdhbml6YXRpb25Sb2xlcxIvLnNjYWxla2l0LnYxLnJvbGVzLkxpc3RPcmdhbml6YXRpb25Sb2xlc1JlcXVlc3QaMC5zY2FsZWtpdC52MS5yb2xlcy5MaXN0T3JnYW5pemF0aW9uUm9sZXNSZXNwb25zZSKmBZJB8AQKBVJvbGVzEhdMaXN0IG9yZ2FuaXphdGlvbiByb2xlcxqQA1JldHJpZXZlcyBhbGwgZW52aXJvbm1lbnQgcm9sZXMgYW5kIG9yZ2FuaXphdGlvbiBzcGVjaWZpYyByb2xlcy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdmlldyBhbGwgcm9sZSBkZWZpbml0aW9ucywgaW5jbHVkaW5nIGN1c3RvbSByb2xlcyBhbmQgdGhlaXIgY29uZmlndXJhdGlvbnMuIFlvdSBjYW4gb3B0aW9uYWxseSBpbmNsdWRlIHBlcm1pc3Npb24gZGV0YWlscyBmb3IgZWFjaCByb2xlIHRvIHVuZGVyc3RhbmQgdGhlaXIgY2FwYWJpbGl0aWVzLiBUaGlzIGlzIHVzZWZ1bCBmb3Igcm9sZSBtYW5hZ2VtZW50LCBhdWRpdGluZyBvcmdhbml6YXRpb24gYWNjZXNzIGNvbnRyb2xzLCBvciB1bmRlcnN0YW5kaW5nIHRoZSBhdmFpbGFibGUgYWNjZXNzIGxldmVscyB3aXRoaW4gdGhlIG9yZ2FuaXphdGlvbi5KugEKAzIwMBKyAQp6U3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBsaXN0IG9mIG9yZ2FuaXphdGlvbiByb2xlcy4gUmV0dXJucyBhbGwgcm9sZXMgd2l0aCB0aGVpciBtZXRhZGF0YSBhbmQgb3B0aW9uYWxseSB0aGVpciBwZXJtaXNzaW9ucy4SNAoyGjAuc2NhbGVraXQudjEucm9sZXMuTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2WCtRgCGGSC0+STAiYSJC9hcGkvdjEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9yb2xlcxKKBgoWRGVsZXRlT3JnYW5pemF0aW9uUm9sZRIwLnNjYWxla2l0LnYxLnJvbGVzLkRlbGV0ZU9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IqUFkkHjBAoFUm9sZXMSGERlbGV0ZSBvcmdhbml6YXRpb24gcm9sZRrWA1Blcm1hbmVudGx5IHJlbW92ZXMgYSByb2xlIGZyb20gdGhlIG9yZ2FuaXphdGlvbiBhbmQgb3B0aW9uYWxseSByZWFzc2lnbnMgdXNlcnMgd2hvIGhhZCB0aGF0IHJvbGUgdG8gYSBkaWZmZXJlbnQgcm9sZS4gVXNlIHRoaXMgZW5kcG9pbnQgd2hlbiB5b3UgbmVlZCB0byBjbGVhbiB1cCB1bnVzZWQgcm9sZXMgb3IgcmVzdHJ1Y3R1cmUgeW91ciBvcmdhbml6YXRpb24ncyBhY2Nlc3MgY29udHJvbCBzeXN0ZW0uIElmIHVzZXJzIGFyZSBhc3NpZ25lZCB0byB0aGUgcm9sZSBiZWluZyBkZWxldGVkLCB5b3UgY2FuIHByb3ZpZGUgYSByZWFzc2lnbl9yb2xlX25hbWUgdG8gbW92ZSB0aG9zZSB1c2VycyB0byBhIGRpZmZlcmVudCByb2xlIGJlZm9yZSBkZWxldGlvbi4gVGhpcyBhY3Rpb24gY2Fubm90IGJlIHVuZG9uZSwgc28gZW5zdXJlIG5vIGNyaXRpY2FsIHVzZXJzIGRlcGVuZCBvbiB0aGUgcm9sZSBiZWZvcmUgZGVsZXRpb24uSmcKAzIwMBJgCl5Pcmdhbml6YXRpb24gcm9sZSBzdWNjZXNzZnVsbHkgZGVsZXRlZCBhbmQgdXNlcnMgcmVhc3NpZ25lZCBpZiBzcGVjaWZpZWQuIE5vIGNvbnRlbnQgcmV0dXJuZWQugrUYAhhEgtPkkwIyKjAvYXBpL3YxL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMve3JvbGVfbmFtZX0S2wgKEUdldFJvbGVVc2Vyc0NvdW50Eisuc2NhbGVraXQudjEucm9sZXMuR2V0Um9sZVVzZXJzQ291bnRSZXF1ZXN0Giwuc2NhbGVraXQudjEucm9sZXMuR2V0Um9sZVVzZXJzQ291bnRSZXNwb25zZSLqB5JBswcKBVJvbGVzEhxSZXRyaWV2ZSB1c2VyIGNvdW50IGZvciByb2xlGpMFUmV0cmlldmVzIHRoZSB0b3RhbCBudW1iZXIgb2YgdXNlcnMgY3VycmVudGx5IGFzc2lnbmVkIHRvIHRoZSBzcGVjaWZpZWQgcm9sZSB3aXRoaW4gdGhlIGVudmlyb25tZW50LiBVc2UgdGhpcyBlbmRwb2ludCB0byBtb25pdG9yIHJvbGUgdXNhZ2UsIGVuZm9yY2UgdXNlciBsaW1pdHMsIG9yIHVuZGVyc3RhbmQgdGhlIHNjb3BlIG9mIHJvbGUgYXNzaWdubWVudHMuIFByb3ZpZGUgdGhlIHJvbGUncyB1bmlxdWUgbmFtZSBhcyBhIHBhdGggcGFyYW1ldGVyLCBhbmQgdGhlIHJlc3BvbnNlIHdpbGwgaW5jbHVkZSB0aGUgY3VycmVudCB1c2VyIGNvdW50IGZvciB0aGF0IHJvbGUuIFRoaXMgb3BlcmF0aW9uIGlzIHJlYWQtb25seSBhbmQgZG9lcyBub3QgbW9kaWZ5IGFueSBkYXRhIG9yIHVzZXIgYXNzaWdubWVudHMuIFRoZSBjb3VudCByZWZsZWN0cyBhbGwgdXNlcnMgd2hvIGhhdmUgdGhlIHJvbGUgZWl0aGVyIGRpcmVjdGx5IGFzc2lnbmVkIG9yIGluaGVyaXRlZCB0aHJvdWdoIG9yZ2FuaXphdGlvbiBtZW1iZXJzaGlwLiBUaGlzIGluZm9ybWF0aW9uIGlzIHVzZWZ1bCBmb3IgY2FwYWNpdHkgcGxhbm5pbmcsIHNlY3VyaXR5IGF1ZGl0aW5nLCBvciB1bmRlcnN0YW5kaW5nIHRoZSBpbXBhY3Qgb2Ygcm9sZSBjaGFuZ2VzIGFjcm9zcyB5b3VyIHVzZXIgYmFzZS5K9QEKAzIwMBLtAQq4AVN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgdXNlciBjb3VudCBmb3IgdGhlIHNwZWNpZmllZCByb2xlLiBSZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgdXNlcnMgY3VycmVudGx5IGFzc2lnbmVkIHRvIHRoZSByb2xlLCBpbmNsdWRpbmcgYm90aCBkaXJlY3QgYXNzaWdubWVudHMgYW5kIGluaGVyaXRlZCBhc3NpZ25tZW50cy4SMAouGiwuc2NhbGVraXQudjEucm9sZXMuR2V0Um9sZVVzZXJzQ291bnRSZXNwb25zZYK1GAIYRILT5JMCJxIlL2FwaS92MS9yb2xlcy97cm9sZV9uYW1lfS91c2Vyczpjb3VudBKyBwodR2V0T3JnYW5pemF0aW9uUm9sZVVzZXJzQ291bnQSNy5zY2FsZWtpdC52MS5yb2xlcy5HZXRPcmdhbml6YXRpb25Sb2xlVXNlcnNDb3VudFJlcXVlc3QaOC5zY2FsZWtpdC52MS5yb2xlcy5HZXRPcmdhbml6YXRpb25Sb2xlVXNlcnNDb3VudFJlc3BvbnNlIp0GkkHABQoFUm9sZXMSIEdldCBvcmdhbml6YXRpb24gcm9sZSB1c2VyIGNvdW50GsADUmV0cmlldmVzIHRoZSB0b3RhbCBudW1iZXIgb2YgdXNlcnMgY3VycmVudGx5IGFzc2lnbmVkIHRvIHRoZSBzcGVjaWZpZWQgb3JnYW5pemF0aW9uIHJvbGUuIFVzZSB0aGlzIGVuZHBvaW50IHRvIG1vbml0b3Igb3JnYW5pemF0aW9uIHJvbGUgdXNhZ2UsIGVuZm9yY2UgdXNlciBsaW1pdHMsIG9yIHVuZGVyc3RhbmQgdGhlIHNjb3BlIG9mIHJvbGUgYXNzaWdubWVudHMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24uIFByb3ZpZGUgdGhlIG9yZ2FuaXphdGlvbiBJRCBhbmQgcm9sZSBuYW1lIGFzIHBhdGggcGFyYW1ldGVycy4gVGhlIHJlc3BvbnNlIGluY2x1ZGVzIHRoZSB1c2VyIGNvdW50IGZvciB0aGUgcmVxdWVzdGVkIG9yZ2FuaXphdGlvbiByb2xlLiBUaGlzIG9wZXJhdGlvbiBpcyByZWFkLW9ubHkgYW5kIGRvZXMgbm90IG1vZGlmeSBhbnkgZGF0YSBvciB1c2VyIGFzc2lnbm1lbnRzLkrRAQoDMjAwEskBCogBU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCB1c2VyIGNvdW50IGZvciB0aGUgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbiByb2xlLiBSZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgdXNlcnMgY3VycmVudGx5IGFzc2lnbmVkIHRvIHRoZSByb2xlLhI8CjoaOC5zY2FsZWtpdC52MS5yb2xlcy5HZXRPcmdhbml6YXRpb25Sb2xlVXNlcnNDb3VudFJlc3BvbnNlgrUYAhhk+tLkkwIJEgdQUkVWSUVXgtPkkwI+EjwvYXBpL3YxL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMve3JvbGVfbmFtZX0vdXNlcnM6Y291bnQSngYKElVwZGF0ZURlZmF1bHRSb2xlcxIsLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZURlZmF1bHRSb2xlc1JlcXVlc3QaLS5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVEZWZhdWx0Um9sZXNSZXNwb25zZSKqBZJB3wQKBVJvbGVzEiRTZXQgZGVmYXVsdCBjcmVhdG9yIGFuZCBtZW1iZXIgcm9sZXMazwNVcGRhdGVzIHRoZSBkZWZhdWx0IGNyZWF0b3IgYW5kIG1lbWJlciByb2xlcyBmb3IgdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGNvbmZpZ3VyZSB3aGljaCByb2xlcyBhcmUgYXV0b21hdGljYWxseSBhc3NpZ25lZCB0byBuZXcgdXNlcnMgd2hlbiB0aGV5IGpvaW4gdGhlIGVudmlyb25tZW50LiBZb3UgY2FuIHNwZWNpZnkgcm9sZSBuYW1lcyBmb3IgYm90aCBjcmVhdG9yIGFuZCBtZW1iZXIgZGVmYXVsdCByb2xlcy4gVGhlIHN5c3RlbSB3aWxsIHZhbGlkYXRlIHRoYXQgdGhlIHNwZWNpZmllZCByb2xlcyBleGlzdCBhbmQgdXBkYXRlIHRoZSBlbnZpcm9ubWVudCBzZXR0aW5ncyBhY2NvcmRpbmdseS4gUmV0dXJucyB0aGUgdXBkYXRlZCBkZWZhdWx0IHJvbGUgb2JqZWN0cyBpbmNsdWRpbmcgdGhlaXIgY29tcGxldGUgcm9sZSBpbmZvcm1hdGlvbiBhbmQgcGVybWlzc2lvbnMuSl4KAzIwMBJXCiJEZWZhdWx0IHJvbGVzIHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5EjEKLxotLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZURlZmF1bHRSb2xlc1Jlc3BvbnNlgrUYAhhEgtPkkwI7OgEqWho6ASoyFS9hcGkvdjEvcm9sZXMvZGVmYXVsdDIaL2FwaS92MS9yb2xlczpzZXRfZGVmYXVsdHMSywYKHlVwZGF0ZURlZmF1bHRPcmdhbml6YXRpb25Sb2xlcxI4LnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZURlZmF1bHRPcmdhbml6YXRpb25Sb2xlc1JlcXVlc3QaOS5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVEZWZhdWx0T3JnYW5pemF0aW9uUm9sZXNSZXNwb25zZSKzBZJB7QQKBVJvbGVzEh5TZXQgZGVmYXVsdCBvcmdhbml6YXRpb24gcm9sZXMa+AJVcGRhdGVzIHRoZSBkZWZhdWx0IG1lbWJlciByb2xlIGZvciB0aGUgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbi4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gY29uZmlndXJlIHdoaWNoIHJvbGUgaXMgYXV0b21hdGljYWxseSBhc3NpZ25lZCB0byBuZXcgdXNlcnMgd2hlbiB0aGV5IGpvaW4gdGhlIG9yZ2FuaXphdGlvbi4gVGhlIHN5c3RlbSB3aWxsIHZhbGlkYXRlIHRoYXQgdGhlIHNwZWNpZmllZCByb2xlIGV4aXN0cyBhbmQgdXBkYXRlIHRoZSBvcmdhbml6YXRpb24gc2V0dGluZ3MgYWNjb3JkaW5nbHkuIFRoaXMgY29uZmlndXJhdGlvbiBhZmZlY3RzIGFsbCBuZXcgdXNlciBpbnZpdGF0aW9ucyBhbmQgbWVtYmVyc2hpcHMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24uSsgBCgMyMDASwAEKf0RlZmF1bHQgb3JnYW5pemF0aW9uIHJvbGVzIHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5LiBSZXR1cm5zIHRoZSB1cGRhdGVkIGRlZmF1bHQgbWVtYmVyIHJvbGUgb2JqZWN0IHdpdGggY29tcGxldGUgcm9sZSBpbmZvcm1hdGlvbi4SPQo7Gjkuc2NhbGVraXQudjEucm9sZXMuVXBkYXRlRGVmYXVsdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2WCtRgCGESC0+STAjY6ASoyMS9hcGkvdjEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9yb2xlczpzZXRfZGVmYXVsdHMSpAgKEkxpc3REZXBlbmRlbnRSb2xlcxIsLnNjYWxla2l0LnYxLnJvbGVzLkxpc3REZXBlbmRlbnRSb2xlc1JlcXVlc3QaLS5zY2FsZWtpdC52MS5yb2xlcy5MaXN0RGVwZW5kZW50Um9sZXNSZXNwb25zZSKwB5JB+gYKBVJvbGVzEhRMaXN0IGRlcGVuZGVudCByb2xlcxr8BFJldHJpZXZlcyBhbGwgcm9sZXMgdGhhdCBkaXJlY3RseSBleHRlbmQgdGhlIHNwZWNpZmllZCBiYXNlIHJvbGUgdGhyb3VnaCBpbmhlcml0YW5jZS4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdW5kZXJzdGFuZCB0aGUgcm9sZSBoaWVyYXJjaHkgYW5kIGlkZW50aWZ5IHdoaWNoIHJvbGVzIGluaGVyaXQgcGVybWlzc2lvbnMgZnJvbSBhIHBhcnRpY3VsYXIgYmFzZSByb2xlLiBQcm92aWRlIHRoZSBiYXNlIHJvbGUgbmFtZSBhcyBhIHBhdGggcGFyYW1ldGVyLCBhbmQgdGhlIHJlc3BvbnNlIHdpbGwgaW5jbHVkZSBhbGwgZGVwZW5kZW50IHJvbGVzIHdpdGggdGhlaXIgbWV0YWRhdGEgYW5kIHBlcm1pc3Npb24gaW5mb3JtYXRpb24uIFRoaXMgb3BlcmF0aW9uIGlzIHVzZWZ1bCBmb3IgYXVkaXRpbmcgcm9sZSBpbmhlcml0YW5jZSByZWxhdGlvbnNoaXBzLCB1bmRlcnN0YW5kaW5nIHRoZSBpbXBhY3Qgb2YgY2hhbmdlcyB0byBiYXNlIHJvbGVzLCBvciBtYW5hZ2luZyByb2xlIGhpZXJhcmNoaWVzIGVmZmVjdGl2ZWx5LiBSZXR1cm5zIGEgbGlzdCBvZiBkZXBlbmRlbnQgcm9sZSBvYmplY3RzIGluY2x1ZGluZyB0aGVpciBuYW1lcywgZGlzcGxheSBuYW1lcywgZGVzY3JpcHRpb25zLCBhbmQgcGVybWlzc2lvbiBkZXRhaWxzLkrbAQoDMjAwEtMBCp0BU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBkZXBlbmRlbnQgcm9sZXMuIFJldHVybnMgYSBsaXN0IG9mIGFsbCByb2xlcyB0aGF0IGV4dGVuZCB0aGUgc3BlY2lmaWVkIGJhc2Ugcm9sZSwgaW5jbHVkaW5nIHRoZWlyIG1ldGFkYXRhIGFuZCBwZXJtaXNzaW9uIGluZm9ybWF0aW9uLhIxCi8aLS5zY2FsZWtpdC52MS5yb2xlcy5MaXN0RGVwZW5kZW50Um9sZXNSZXNwb25zZYK1GAIYZILT5JMCJhIkL2FwaS92MS9yb2xlcy97cm9sZV9uYW1lfS9kZXBlbmRlbnRzErcGCg5EZWxldGVSb2xlQmFzZRIoLnNjYWxla2l0LnYxLnJvbGVzLkRlbGV0ZVJvbGVCYXNlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSLiBZJBsgUKBVJvbGVzEiREZWxldGUgcm9sZSBpbmhlcml0YW5jZSByZWxhdGlvbnNoaXAahgRSZW1vdmVzIHRoZSBiYXNlIHJvbGUgaW5oZXJpdGFuY2UgcmVsYXRpb25zaGlwIGZvciBhIHNwZWNpZmllZCByb2xlLCBlZmZlY3RpdmVseSBlbGltaW5hdGluZyBhbGwgaW5oZXJpdGVkIHBlcm1pc3Npb25zIGZyb20gdGhlIGJhc2Ugcm9sZS4gVXNlIHRoaXMgZW5kcG9pbnQgd2hlbiB5b3Ugd2FudCB0byBicmVhayB0aGUgaGllcmFyY2hpY2FsIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHJvbGVzIGFuZCByZW1vdmUgaW5oZXJpdGVkIHBlcm1pc3Npb25zLiBUaGUgcm9sZSB3aWxsIHJldGFpbiBvbmx5IGl0cyBkaXJlY3RseSBhc3NpZ25lZCBwZXJtaXNzaW9ucyBhZnRlciB0aGlzIG9wZXJhdGlvbi4gVGhpcyBhY3Rpb24gY2Fubm90IGJlIHVuZG9uZSwgc28gZW5zdXJlIHRoZSByb2xlIGhhcyBzdWZmaWNpZW50IGRpcmVjdCBwZXJtaXNzaW9ucyBiZWZvcmUgcmVtb3ZpbmcgaW5oZXJpdGFuY2UuIFJldHVybnMgbm8gY29udGVudCBvbiBzdWNjZXNzZnVsIHJlbW92YWwgb2YgdGhlIGJhc2UgcmVsYXRpb25zaGlwLkp6CgMyMDAScwpxQmFzZSByb2xlIGluaGVyaXRhbmNlIHJlbGF0aW9uc2hpcCBzdWNjZXNzZnVsbHkgcmVtb3ZlZC4gVGhlIHJvbGUgbm93IGhhcyBvbmx5IGl0cyBkaXJlY3RseSBhc3NpZ25lZCBwZXJtaXNzaW9ucy6CtRgCGESC0+STAiAqHi9hcGkvdjEvcm9sZXMve3JvbGVfbmFtZX0vYmFzZRLmBgoaRGVsZXRlT3JnYW5pemF0aW9uUm9sZUJhc2USNC5zY2FsZWtpdC52MS5yb2xlcy5EZWxldGVPcmdhbml6YXRpb25Sb2xlQmFzZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHki+QWSQaMFCgVSb2xlcxIkUmVtb3ZlIG9yZ2FuaXphdGlvbiByb2xlIGluaGVyaXRhbmNlGugDUmVtb3ZlcyB0aGUgYmFzZSByb2xlIGluaGVyaXRhbmNlIHJlbGF0aW9uc2hpcCBmb3IgYSBzcGVjaWZpZWQgb3JnYW5pemF0aW9uIHJvbGUsIGVmZmVjdGl2ZWx5IGVsaW1pbmF0aW5nIGFsbCBpbmhlcml0ZWQgcGVybWlzc2lvbnMgZnJvbSB0aGUgYmFzZSByb2xlLiBVc2UgdGhpcyBlbmRwb2ludCB3aGVuIHlvdSB3YW50IHRvIGJyZWFrIHRoZSBoaWVyYXJjaGljYWwgcmVsYXRpb25zaGlwIGJldHdlZW4gcm9sZXMgYW5kIHJlbW92ZSBpbmhlcml0ZWQgcGVybWlzc2lvbnMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24uIFRoZSByb2xlIHdpbGwgcmV0YWluIG9ubHkgaXRzIGRpcmVjdGx5IGFzc2lnbmVkIHBlcm1pc3Npb25zIGFmdGVyIHRoaXMgb3BlcmF0aW9uLiBUaGlzIGFjdGlvbiBjYW5ub3QgYmUgdW5kb25lLCBzbyBlbnN1cmUgdGhlIHJvbGUgaGFzIHN1ZmZpY2llbnQgZGlyZWN0IHBlcm1pc3Npb25zIGJlZm9yZSByZW1vdmluZyBpbmhlcml0YW5jZS5KiAEKAzIwMBKAAQp+T3JnYW5pemF0aW9uIHJvbGUgYmFzZSBpbmhlcml0YW5jZSByZWxhdGlvbnNoaXAgc3VjY2Vzc2Z1bGx5IHJlbW92ZWQuIFRoZSByb2xlIG5vdyBoYXMgb25seSBpdHMgZGlyZWN0bHkgYXNzaWduZWQgcGVybWlzc2lvbnMugrUYAhhE+tLkkwIJEgdQUkVWSUVXgtPkkwI3KjUvYXBpL3YxL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMve3JvbGVfbmFtZX0vYmFzZRLPBwoQQ3JlYXRlUGVybWlzc2lvbhIqLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVBlcm1pc3Npb25SZXF1ZXN0Gisuc2NhbGVraXQudjEucm9sZXMuQ3JlYXRlUGVybWlzc2lvblJlc3BvbnNlIuEGkkGwBgoLUGVybWlzc2lvbnMSFUNyZWF0ZSBuZXcgcGVybWlzc2lvbhrGBENyZWF0ZXMgYSBuZXcgcGVybWlzc2lvbiB0aGF0IHJlcHJlc2VudHMgYSBzcGVjaWZpYyBhY3Rpb24gdXNlcnMgY2FuIHBlcmZvcm0gd2l0aGluIHRoZSBlbnZpcm9ubWVudC4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gZGVmaW5lIGdyYW51bGFyIGFjY2VzcyBjb250cm9scyBmb3IgeW91ciBSQkFDIHN5c3RlbS4gWW91IGNhbiBwcm92aWRlIGEgdW5pcXVlIHBlcm1pc3Npb24gbmFtZSBmb2xsb3dpbmcgdGhlIGZvcm1hdCAnYWN0aW9uOnJlc291cmNlJyAoZm9yIGV4YW1wbGUsICdyZWFkOmRvY3VtZW50cycsICd3cml0ZTp1c2VycycpIGFuZCBhbiBvcHRpb25hbCBkZXNjcmlwdGlvbiBleHBsYWluaW5nIHRoZSBwZXJtaXNzaW9uJ3MgcHVycG9zZS4gVGhlIHBlcm1pc3Npb24gbmFtZSBtdXN0IGJlIHVuaXF1ZSBhY3Jvc3MgdGhlIGVudmlyb25tZW50IGFuZCBmb2xsb3dzIGFscGhhbnVtZXJpYyBuYW1pbmcgY29udmVudGlvbnMgd2l0aCBjb2xvbnMgYW5kIHVuZGVyc2NvcmVzLiBSZXR1cm5zIHRoZSBjcmVhdGVkIHBlcm1pc3Npb24gb2JqZWN0IGluY2x1ZGluZyBzeXN0ZW0tZ2VuZXJhdGVkIElEIGFuZCB0aW1lc3RhbXBzLkrAAQoDMjAxErgBCoQBUGVybWlzc2lvbiBjcmVhdGVkIHN1Y2Nlc3NmdWxseS4gUmV0dXJucyB0aGUgY29tcGxldGUgcGVybWlzc2lvbiBvYmplY3Qgd2l0aCBzeXN0ZW0tZ2VuZXJhdGVkIElELCBuYW1lLCBkZXNjcmlwdGlvbiwgYW5kIHRpbWVzdGFtcHMuEi8KLRorLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVBlcm1pc3Npb25SZXNwb25zZYK1GAIYRILT5JMCIToKcGVybWlzc2lvbiITL2FwaS92MS9wZXJtaXNzaW9ucxK9BwoNR2V0UGVybWlzc2lvbhInLnNjYWxla2l0LnYxLnJvbGVzLkdldFBlcm1pc3Npb25SZXF1ZXN0Giguc2NhbGVraXQudjEucm9sZXMuR2V0UGVybWlzc2lvblJlc3BvbnNlItgGkkGhBgoLUGVybWlzc2lvbnMSG1JldHJpZXZlIHBlcm1pc3Npb24gZGV0YWlscxqqBFJldHJpZXZlcyBjb21wbGV0ZSBpbmZvcm1hdGlvbiBmb3IgYSBzcGVjaWZpYyBwZXJtaXNzaW9uIGJ5IGl0cyB1bmlxdWUgbmFtZSBpZGVudGlmaWVyLiBVc2UgdGhpcyBlbmRwb2ludCB0byB2aWV3IHBlcm1pc3Npb24gZGV0YWlscyBpbmNsdWRpbmcgZGVzY3JpcHRpb24sIGNyZWF0aW9uIHRpbWUsIGFuZCBsYXN0IHVwZGF0ZSB0aW1lLiBQcm92aWRlIHRoZSBwZXJtaXNzaW9uIG5hbWUgaW4gdGhlIHBhdGggcGFyYW1ldGVyIGZvbGxvd2luZyB0aGUgZm9ybWF0ICdhY3Rpb246cmVzb3VyY2UnIChmb3IgZXhhbXBsZSwgJ3JlYWQ6ZG9jdW1lbnRzJykuIFRoaXMgb3BlcmF0aW9uIGlzIHVzZWZ1bCBmb3IgYXVkaXRpbmcgcGVybWlzc2lvbiBkZWZpbml0aW9ucywgdW5kZXJzdGFuZGluZyBwZXJtaXNzaW9uIHB1cnBvc2VzLCBvciB2ZXJpZnlpbmcgcGVybWlzc2lvbiBleGlzdGVuY2UgYmVmb3JlIGFzc2lnbm1lbnQuIFJldHVybnMgdGhlIGNvbXBsZXRlIHBlcm1pc3Npb24gb2JqZWN0IHdpdGggYWxsIG1ldGFkYXRhIGFuZCBzeXN0ZW0tZ2VuZXJhdGVkIHRpbWVzdGFtcHMuSscBCgMyMDASvwEKjgFTdWNjZXNzZnVsbHkgcmV0cmlldmVkIHBlcm1pc3Npb24gZGV0YWlscy4gUmV0dXJucyB0aGUgY29tcGxldGUgcGVybWlzc2lvbiBvYmplY3QgaW5jbHVkaW5nIG5hbWUsIGRlc2NyaXB0aW9uLCBjcmVhdGlvbiB0aW1lLCBhbmQgdXBkYXRlIHRpbWUuEiwKKhooLnNjYWxla2l0LnYxLnJvbGVzLkdldFBlcm1pc3Npb25SZXNwb25zZYK1GAIYRILT5JMCJxIlL2FwaS92MS9wZXJtaXNzaW9ucy97cGVybWlzc2lvbl9uYW1lfRKDCAoQVXBkYXRlUGVybWlzc2lvbhIqLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZVBlcm1pc3Npb25SZXF1ZXN0Gisuc2NhbGVraXQudjEucm9sZXMuVXBkYXRlUGVybWlzc2lvblJlc3BvbnNlIpUHkkHSBgoLUGVybWlzc2lvbnMSGVVwZGF0ZSBwZXJtaXNzaW9uIGRldGFpbHMa+QRNb2RpZmllcyBhbiBleGlzdGluZyBwZXJtaXNzaW9uJ3MgYXR0cmlidXRlcyBpbmNsdWRpbmcgZGVzY3JpcHRpb24gYW5kIG1ldGFkYXRhLiBVc2UgdGhpcyBlbmRwb2ludCB0byB1cGRhdGUgcGVybWlzc2lvbiBkZXNjcmlwdGlvbnMgb3IgY2xhcmlmeSBwZXJtaXNzaW9uIHB1cnBvc2VzIGFmdGVyIGNyZWF0aW9uLiBUaGUgcGVybWlzc2lvbiBpcyBpZGVudGlmaWVkIGJ5IGl0cyB1bmlxdWUgbmFtZSBpbiB0aGUgcGF0aCBwYXJhbWV0ZXIsIGFuZCBvbmx5IHRoZSBmaWVsZHMgeW91IHNwZWNpZnkgaW4gdGhlIHJlcXVlc3QgYm9keSB3aWxsIGJlIHVwZGF0ZWQuIE5vdGUgdGhhdCB0aGUgcGVybWlzc2lvbiBuYW1lIGl0c2VsZiBjYW5ub3QgYmUgY2hhbmdlZCBhcyBpdCBzZXJ2ZXMgYXMgdGhlIGltbXV0YWJsZSBpZGVudGlmaWVyLiBUaGlzIG9wZXJhdGlvbiBpcyB1c2VmdWwgZm9yIG1haW50YWluaW5nIGNsZWFyIGRvY3VtZW50YXRpb24gb2YgcGVybWlzc2lvbiBwdXJwb3NlcyBvciB1cGRhdGluZyBkZXNjcmlwdGlvbnMgdG8gcmVmbGVjdCBjaGFuZ2VzIGluIHN5c3RlbSBmdW5jdGlvbmFsaXR5LiBSZXR1cm5zIHRoZSB1cGRhdGVkIHBlcm1pc3Npb24gb2JqZWN0IHdpdGggbW9kaWZpZWQgdGltZXN0YW1wcy5KqwEKAzIwMBKjAQpwUGVybWlzc2lvbiB1cGRhdGVkIHN1Y2Nlc3NmdWxseS4gUmV0dXJucyB0aGUgbW9kaWZpZWQgcGVybWlzc2lvbiBvYmplY3Qgd2l0aCB1cGRhdGVkIGRlc2NyaXB0aW9uIGFuZCB0aW1lc3RhbXBzLhIvCi0aKy5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVQZXJtaXNzaW9uUmVzcG9uc2WCtRgCGESC0+STAjM6CnBlcm1pc3Npb24aJS9hcGkvdjEvcGVybWlzc2lvbnMve3Blcm1pc3Npb25fbmFtZX0S8QcKD0xpc3RQZXJtaXNzaW9ucxIpLnNjYWxla2l0LnYxLnJvbGVzLkxpc3RQZXJtaXNzaW9uc1JlcXVlc3QaKi5zY2FsZWtpdC52MS5yb2xlcy5MaXN0UGVybWlzc2lvbnNSZXNwb25zZSKGB5JB4QYKC1Blcm1pc3Npb25zEhRMaXN0IGFsbCBwZXJtaXNzaW9ucxrrBFJldHJpZXZlcyBhIGNvbXByZWhlbnNpdmUsIHBhZ2luYXRlZCBsaXN0IG9mIGFsbCBwZXJtaXNzaW9ucyBhdmFpbGFibGUgd2l0aGluIHRoZSBlbnZpcm9ubWVudC4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdmlldyBhbGwgcGVybWlzc2lvbiBkZWZpbml0aW9ucyBmb3IgYXVkaXRpbmcsIHJvbGUgbWFuYWdlbWVudCwgb3IgdW5kZXJzdGFuZGluZyB0aGUgY29tcGxldGUgc2V0IG9mIGF2YWlsYWJsZSBhY2Nlc3MgY29udHJvbHMuIFRoZSByZXNwb25zZSBpbmNsdWRlcyBwYWdpbmF0aW9uIHRva2VucyB0byBuYXZpZ2F0ZSB0aHJvdWdoIGxhcmdlIHNldHMgb2YgcGVybWlzc2lvbnMgZWZmaWNpZW50bHkuIEVhY2ggcGVybWlzc2lvbiBvYmplY3QgY29udGFpbnMgdGhlIHBlcm1pc3Npb24gbmFtZSwgZGVzY3JpcHRpb24sIGNyZWF0aW9uIHRpbWUsIGFuZCBsYXN0IHVwZGF0ZSB0aW1lLiBUaGlzIG9wZXJhdGlvbiBpcyB1c2VmdWwgZm9yIGJ1aWxkaW5nIHBlcm1pc3Npb24gc2VsZWN0aW9uIGludGVyZmFjZXMsIGF1ZGl0aW5nIHBlcm1pc3Npb24gdXNhZ2UsIG9yIHVuZGVyc3RhbmRpbmcgdGhlIHNjb3BlIG9mIGF2YWlsYWJsZSBhY2Nlc3MgY29udHJvbHMgaW4geW91ciBSQkFDIHN5c3RlbS5KzQEKAzIwMBLFAQqSAVN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgdGhlIGxpc3Qgb2YgcGVybWlzc2lvbnMuIFJldHVybnMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBwZXJtaXNzaW9uIG9iamVjdHMgd2l0aCBtZXRhZGF0YSBhbmQgcGFnaW5hdGlvbiB0b2tlbnMgZm9yIG5hdmlnYXRpb24uEi4KLBoqLnNjYWxla2l0LnYxLnJvbGVzLkxpc3RQZXJtaXNzaW9uc1Jlc3BvbnNlgrUYAhhEgtPkkwIVEhMvYXBpL3YxL3Blcm1pc3Npb25zEtAGChBEZWxldGVQZXJtaXNzaW9uEiouc2NhbGVraXQudjEucm9sZXMuRGVsZXRlUGVybWlzc2lvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHki9wWSQcAFCgtQZXJtaXNzaW9ucxIRRGVsZXRlIHBlcm1pc3Npb24a3QRQZXJtYW5lbnRseSByZW1vdmVzIGEgcGVybWlzc2lvbiBmcm9tIHRoZSBlbnZpcm9ubWVudCB1c2luZyBpdHMgdW5pcXVlIG5hbWUgaWRlbnRpZmllci4gVXNlIHRoaXMgZW5kcG9pbnQgd2hlbiB5b3UgbmVlZCB0byBjbGVhbiB1cCB1bnVzZWQgcGVybWlzc2lvbnMgb3IgcmVtb3ZlIGFjY2VzcyBjb250cm9scyB0aGF0IGFyZSBubyBsb25nZXIgcmVsZXZhbnQuIFRoZSBwZXJtaXNzaW9uIGlzIGlkZW50aWZpZWQgYnkgaXRzIG5hbWUgaW4gdGhlIHBhdGggcGFyYW1ldGVyIGZvbGxvd2luZyB0aGUgZm9ybWF0ICdhY3Rpb246cmVzb3VyY2UnLiBUaGlzIG9wZXJhdGlvbiBjYW5ub3QgYmUgdW5kb25lLCBzbyBlbnN1cmUgbm8gYWN0aXZlIHJvbGVzIGRlcGVuZCBvbiB0aGUgcGVybWlzc2lvbiBiZWZvcmUgZGVsZXRpb24uIElmIHRoZSBwZXJtaXNzaW9uIGlzIGN1cnJlbnRseSBhc3NpZ25lZCB0byBhbnkgcm9sZXMsIHlvdSBtYXkgbmVlZCB0byByZW1vdmUgdGhvc2UgYXNzaWdubWVudHMgZmlyc3Qgb3IgdXBkYXRlIHRoZSByb2xlcyB0byB1c2UgYWx0ZXJuYXRpdmUgcGVybWlzc2lvbnMuIFJldHVybnMgbm8gY29udGVudCBvbiBzdWNjZXNzZnVsIGRlbGV0aW9uLko+CgMyMDASNwo1UGVybWlzc2lvbiBzdWNjZXNzZnVsbHkgZGVsZXRlZC4gTm8gY29udGVudCByZXR1cm5lZC6CtRgCGESC0+STAicqJS9hcGkvdjEvcGVybWlzc2lvbnMve3Blcm1pc3Npb25fbmFtZX0SgAkKE0xpc3RSb2xlUGVybWlzc2lvbnMSLS5zY2FsZWtpdC52MS5yb2xlcy5MaXN0Um9sZVBlcm1pc3Npb25zUmVxdWVzdBouLnNjYWxla2l0LnYxLnJvbGVzLkxpc3RSb2xlUGVybWlzc2lvbnNSZXNwb25zZSKJCJJB0gcKBVJvbGVzEhlMaXN0IHBlcm1pc3Npb25zIGZvciByb2xlGtcFUmV0cmlldmVzIGFsbCBwZXJtaXNzaW9ucyBkaXJlY3RseSBhc3NpZ25lZCB0byB0aGUgc3BlY2lmaWVkIHJvbGUsIGV4Y2x1ZGluZyBwZXJtaXNzaW9ucyBpbmhlcml0ZWQgZnJvbSBiYXNlIHJvbGVzLiBVc2UgdGhpcyBlbmRwb2ludCB0byB2aWV3IHRoZSBleHBsaWNpdCBwZXJtaXNzaW9uIGFzc2lnbm1lbnRzIGZvciBhIHJvbGUsIHdoaWNoIGlzIHVzZWZ1bCBmb3IgdW5kZXJzdGFuZGluZyBkaXJlY3Qgcm9sZSBjYXBhYmlsaXRpZXMsIGF1ZGl0aW5nIHBlcm1pc3Npb24gYXNzaWdubWVudHMsIG9yIG1hbmFnaW5nIHJvbGUtcGVybWlzc2lvbiByZWxhdGlvbnNoaXBzLiBQcm92aWRlIHRoZSByb2xlIG5hbWUgYXMgYSBwYXRoIHBhcmFtZXRlciwgYW5kIHRoZSByZXNwb25zZSB3aWxsIGluY2x1ZGUgb25seSB0aGUgcGVybWlzc2lvbnMgdGhhdCBhcmUgZGlyZWN0bHkgYXNzaWduZWQgdG8gdGhhdCByb2xlLiBUaGlzIG9wZXJhdGlvbiBkb2VzIG5vdCBpbmNsdWRlIGluaGVyaXRlZCBwZXJtaXNzaW9ucyBmcm9tIHJvbGUgaGllcmFyY2hpZXMgLSB1c2UgTGlzdEVmZmVjdGl2ZVJvbGVQZXJtaXNzaW9ucyB0byBzZWUgdGhlIGNvbXBsZXRlIHNldCBvZiBwZXJtaXNzaW9ucyBpbmNsdWRpbmcgaW5oZXJpdGFuY2UuIFJldHVybnMgYSBsaXN0IG9mIHBlcm1pc3Npb24gb2JqZWN0cyB3aXRoIHRoZWlyIG5hbWVzLCBkZXNjcmlwdGlvbnMsIGFuZCBhc3NpZ25tZW50IG1ldGFkYXRhLkrTAQoDMjAwEssBCpQBU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCByb2xlIHBlcm1pc3Npb25zLiBSZXR1cm5zIGEgbGlzdCBvZiBhbGwgcGVybWlzc2lvbnMgZGlyZWN0bHkgYXNzaWduZWQgdG8gdGhlIHNwZWNpZmllZCByb2xlLCBleGNsdWRpbmcgaW5oZXJpdGVkIHBlcm1pc3Npb25zLhIyCjAaLi5zY2FsZWtpdC52MS5yb2xlcy5MaXN0Um9sZVBlcm1pc3Npb25zUmVzcG9uc2WCtRgCGESC0+STAicSJS9hcGkvdjEvcm9sZXMve3JvbGVfbmFtZX0vcGVybWlzc2lvbnMS+ggKFEFkZFBlcm1pc3Npb25zVG9Sb2xlEi4uc2NhbGVraXQudjEucm9sZXMuQWRkUGVybWlzc2lvbnNUb1JvbGVSZXF1ZXN0Gi8uc2NhbGVraXQudjEucm9sZXMuQWRkUGVybWlzc2lvbnNUb1JvbGVSZXNwb25zZSKACJJBxgcKBVJvbGVzEhdBZGQgcGVybWlzc2lvbnMgdG8gcm9sZRq9BUFkZHMgb25lIG9yIG1vcmUgcGVybWlzc2lvbnMgdG8gdGhlIHNwZWNpZmllZCByb2xlIHdoaWxlIHByZXNlcnZpbmcgZXhpc3RpbmcgcGVybWlzc2lvbiBhc3NpZ25tZW50cy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gZ3JhbnQgYWRkaXRpb25hbCBjYXBhYmlsaXRpZXMgdG8gYSByb2xlIHdpdGhvdXQgYWZmZWN0aW5nIGl0cyBjdXJyZW50IHBlcm1pc3Npb24gc2V0LiBQcm92aWRlIHRoZSByb2xlIG5hbWUgYXMgYSBwYXRoIHBhcmFtZXRlciBhbmQgYSBsaXN0IG9mIHBlcm1pc3Npb24gbmFtZXMgaW4gdGhlIHJlcXVlc3QgYm9keS4gVGhlIHN5c3RlbSB3aWxsIHZhbGlkYXRlIHRoYXQgYWxsIHNwZWNpZmllZCBwZXJtaXNzaW9ucyBleGlzdCBpbiB0aGUgZW52aXJvbm1lbnQgYW5kIGFkZCB0aGVtIHRvIHRoZSByb2xlLiBFeGlzdGluZyBwZXJtaXNzaW9uIGFzc2lnbm1lbnRzIHJlbWFpbiB1bmNoYW5nZWQsIG1ha2luZyB0aGlzIG9wZXJhdGlvbiBzYWZlIGZvciBpbmNyZW1lbnRhbCBwZXJtaXNzaW9uIG1hbmFnZW1lbnQuIFRoaXMgaXMgdXNlZnVsIGZvciBncmFkdWFsbHkgZXhwYW5kaW5nIHJvbGUgY2FwYWJpbGl0aWVzIG9yIGFkZGluZyBuZXcgcGVybWlzc2lvbnMgYXMgeW91ciBzeXN0ZW0gZXZvbHZlcy4gUmV0dXJucyB0aGUgdXBkYXRlZCBsaXN0IG9mIGFsbCBwZXJtaXNzaW9ucyBub3cgYXNzaWduZWQgdG8gdGhlIHJvbGUuSuMBCgMyMDAS2wEKowFQZXJtaXNzaW9ucyBhZGRlZCB0byByb2xlIHN1Y2Nlc3NmdWxseS4gUmV0dXJucyB0aGUgY29tcGxldGUgbGlzdCBvZiBhbGwgcGVybWlzc2lvbnMgbm93IGFzc2lnbmVkIHRvIHRoZSByb2xlLCBpbmNsdWRpbmcgYm90aCBleGlzdGluZyBhbmQgbmV3bHkgYWRkZWQgcGVybWlzc2lvbnMuEjMKMRovLnNjYWxla2l0LnYxLnJvbGVzLkFkZFBlcm1pc3Npb25zVG9Sb2xlUmVzcG9uc2WCtRgCGESC0+STAio6ASoiJS9hcGkvdjEvcm9sZXMve3JvbGVfbmFtZX0vcGVybWlzc2lvbnMStwcKGFJlbW92ZVBlcm1pc3Npb25Gcm9tUm9sZRIyLnNjYWxla2l0LnYxLnJvbGVzLlJlbW92ZVBlcm1pc3Npb25Gcm9tUm9sZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkizgaSQYUGCgVSb2xlcxIbUmVtb3ZlIHBlcm1pc3Npb24gZnJvbSByb2xlGpQFUmVtb3ZlcyBhIHNwZWNpZmljIHBlcm1pc3Npb24gZnJvbSB0aGUgc3BlY2lmaWVkIHJvbGUsIHJldm9raW5nIHRoYXQgY2FwYWJpbGl0eSBmcm9tIGFsbCB1c2VycyBhc3NpZ25lZCB0byB0aGUgcm9sZS4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gcmVzdHJpY3Qgcm9sZSBjYXBhYmlsaXRpZXMgb3IgcmVtb3ZlIHVubmVjZXNzYXJ5IHBlcm1pc3Npb25zLiBQcm92aWRlIGJvdGggdGhlIHJvbGUgbmFtZSBhbmQgcGVybWlzc2lvbiBuYW1lIGFzIHBhdGggcGFyYW1ldGVycy4gVGhpcyBvcGVyYXRpb24gb25seSBhZmZlY3RzIHRoZSBkaXJlY3QgcGVybWlzc2lvbiBhc3NpZ25tZW50IGFuZCBkb2VzIG5vdCBpbXBhY3QgcGVybWlzc2lvbnMgaW5oZXJpdGVkIGZyb20gYmFzZSByb2xlcy4gSWYgdGhlIHBlcm1pc3Npb24gaXMgaW5oZXJpdGVkIHRocm91Z2ggcm9sZSBoaWVyYXJjaHksIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgdGhlIGJhc2Ugcm9sZSBpbnN0ZWFkLiBUaGlzIGlzIHVzZWZ1bCBmb3IgZmluZS10dW5pbmcgcm9sZSBwZXJtaXNzaW9ucywgaW1wbGVtZW50aW5nIGxlYXN0LXByaXZpbGVnZSBhY2Nlc3MgY29udHJvbHMsIG9yIHJlbW92aW5nIGRlcHJlY2F0ZWQgcGVybWlzc2lvbnMuIFJldHVybnMgbm8gY29udGVudCBvbiBzdWNjZXNzZnVsIHJlbW92YWwuSkgKAzIwMBJBCj9QZXJtaXNzaW9uIHJlbW92ZWQgZnJvbSByb2xlIHN1Y2Nlc3NmdWxseS4gTm8gY29udGVudCByZXR1cm5lZC6CtRgCGESC0+STAjkqNy9hcGkvdjEvcm9sZXMve3JvbGVfbmFtZX0vcGVybWlzc2lvbnMve3Blcm1pc3Npb25fbmFtZX0S3wkKHExpc3RFZmZlY3RpdmVSb2xlUGVybWlzc2lvbnMSNi5zY2FsZWtpdC52MS5yb2xlcy5MaXN0RWZmZWN0aXZlUm9sZVBlcm1pc3Npb25zUmVxdWVzdBo3LnNjYWxla2l0LnYxLnJvbGVzLkxpc3RFZmZlY3RpdmVSb2xlUGVybWlzc2lvbnNSZXNwb25zZSLNCJJBkggKBVJvbGVzEiNMaXN0IGVmZmVjdGl2ZSBwZXJtaXNzaW9ucyBmb3Igcm9sZRrZBVJldHJpZXZlcyB0aGUgY29tcGxldGUgc2V0IG9mIGVmZmVjdGl2ZSBwZXJtaXNzaW9ucyBmb3IgYSByb2xlLCBpbmNsdWRpbmcgYm90aCBkaXJlY3RseSBhc3NpZ25lZCBwZXJtaXNzaW9ucyBhbmQgcGVybWlzc2lvbnMgaW5oZXJpdGVkIGZyb20gYmFzZSByb2xlcyB0aHJvdWdoIHRoZSByb2xlIGhpZXJhcmNoeS4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdW5kZXJzdGFuZCB0aGUgZnVsbCBzY29wZSBvZiBjYXBhYmlsaXRpZXMgYXZhaWxhYmxlIHRvIHVzZXJzIGFzc2lnbmVkIHRvIGEgc3BlY2lmaWMgcm9sZS4gUHJvdmlkZSB0aGUgcm9sZSBuYW1lIGFzIGEgcGF0aCBwYXJhbWV0ZXIsIGFuZCB0aGUgcmVzcG9uc2Ugd2lsbCBpbmNsdWRlIGFsbCBwZXJtaXNzaW9ucyB0aGF0IGFwcGx5IHRvIHRoZSByb2xlLCBhY2NvdW50aW5nIGZvciBpbmhlcml0YW5jZSByZWxhdGlvbnNoaXBzLiBUaGlzIG9wZXJhdGlvbiBpcyBlc3NlbnRpYWwgZm9yIGF1ZGl0aW5nIHJvbGUgY2FwYWJpbGl0aWVzLCB1bmRlcnN0YW5kaW5nIHBlcm1pc3Npb24gaW5oZXJpdGFuY2UsIG9yIHZlcmlmeWluZyB0aGUgY29tcGxldGUgYWNjZXNzIHNjb3BlIGJlZm9yZSByb2xlIGFzc2lnbm1lbnQuIFJldHVybnMgYSBjb21wcmVoZW5zaXZlIGxpc3Qgb2YgcGVybWlzc2lvbiBuYW1lcyByZXByZXNlbnRpbmcgdGhlIGZ1bGwgc2V0IG9mIGVmZmVjdGl2ZSBwZXJtaXNzaW9ucyBmb3IgdGhlIHNwZWNpZmllZCByb2xlLkqHAgoDMjAwEv8BCr8BU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBlZmZlY3RpdmUgcGVybWlzc2lvbnMuIFJldHVybnMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgYWxsIHBlcm1pc3Npb25zIHRoYXQgYXBwbHkgdG8gdGhlIHJvbGUsIGluY2x1ZGluZyBib3RoIGRpcmVjdCBhc3NpZ25tZW50cyBhbmQgaW5oZXJpdGVkIHBlcm1pc3Npb25zIGZyb20gYmFzZSByb2xlcy4SOwo5Gjcuc2NhbGVraXQudjEucm9sZXMuTGlzdEVmZmVjdGl2ZVJvbGVQZXJtaXNzaW9uc1Jlc3BvbnNlgrUYAhhEgtPkkwIrEikvYXBpL3YxL3JvbGVzL3tyb2xlX25hbWV9L3Blcm1pc3Npb25zOmFsbBriApJB3gIKBVJvbGVzEtQCUm9sZS1iYXNlZCBhY2Nlc3MgY29udHJvbCAoUkJBQykgZm9yIGRlZmluaW5nIGFuZCBtYW5hZ2luZyBwZXJtaXNzaW9ucyBpbiBhbiBlbnZpcm9ubWVudC4gQ3JlYXRlIGFuZCB1cGRhdGUgY3VzdG9tIHJvbGVzIHdpdGggZXhwbGljaXQgcGVybWlzc2lvbnMsIG1vZGVsIHJvbGUgaGllcmFyY2hpZXMgdGhyb3VnaCBpbmhlcml0YW5jZSwgdmlldyBkZXBlbmRlbnQgcm9sZXMsIG1hbmFnZSByb2xlLXBlcm1pc3Npb24gYXNzaWdubWVudHMsIGFuZCBsaXN0IHJvbGVzIGFuZCBwZXJtaXNzaW9ucy4gQWxzbyBwcm92aWRlcyBhIHV0aWxpdHkgdG8gY291bnQgdXNlcnMgYXNzaWduZWQgdG8gYSByb2xlLkIxWi9naXRodWIuY29tL3NjYWxla2l0LWluYy9zY2FsZWtpdC9wa2cvZ3JwYy9yb2xlc2IGcHJvdG8z", [validate_pb_1.file_buf_validate_validate, annotations_pb_1.file_google_api_annotations, field_behavior_pb_1.file_google_api_field_behavior, visibility_pb_1.file_google_api_visibility, wkt_1.file_google_protobuf_empty, wkt_1.file_google_protobuf_timestamp, annotations_pb_2.file_protoc_gen_openapiv2_options_annotations, options_pb_1.file_scalekit_v1_options_options]);
19
+ exports.file_scalekit_v1_roles_roles = (0, codegenv2_1.fileDesc)("Ch1zY2FsZWtpdC92MS9yb2xlcy9yb2xlcy5wcm90bxIRc2NhbGVraXQudjEucm9sZXMikQwKBFJvbGUSdQoCaWQYASABKAlCaZJBYzJIVW5pcXVlIHN5c3RlbS1nZW5lcmF0ZWQgaWRlbnRpZmllciBmb3IgdGhlIHJvbGUuIEltbXV0YWJsZSBvbmNlIGNyZWF0ZWQuShcicm9sZV8xMjM0YWJjZDU2NzhlZmdoIuBBAxKPAQoEbmFtZRgCIAEoCUKAAZJBcTJdVW5pcXVlIG5hbWUgaWRlbnRpZmllciBmb3IgdGhlIHJvbGUuIE11c3QgYmUgYWxwaGFudW1lcmljIHdpdGggdW5kZXJzY29yZXMsIDEtMTAwIGNoYXJhY3RlcnMuShAiY29udGVudF9lZGl0b3IiukgJyAEBcgQQARhkEocBCgxkaXNwbGF5X25hbWUYAyABKAlCcZJBYjJOSHVtYW4tcmVhZGFibGUgZGlzcGxheSBuYW1lIGZvciB0aGUgcm9sZS4gVXNlZCBpbiB1c2VyIGludGVyZmFjZXMgYW5kIHJlcG9ydHMuShAiQ29udGVudCBFZGl0b3IiukgJyAEBcgQQARhkErwBCgtkZXNjcmlwdGlvbhgEIAEoCUKmAZJBogEyVURldGFpbGVkIGRlc2NyaXB0aW9uIG9mIHRoZSByb2xlJ3MgcHVycG9zZSBhbmQgY2FwYWJpbGl0aWVzLiBNYXhpbXVtIDIwMDAgY2hhcmFjdGVycy5KSSJDYW4gY3JlYXRlLCBlZGl0LCBhbmQgcHVibGlzaCBjb250ZW50IGJ1dCBjYW5ub3QgZGVsZXRlIG9yIG1hbmFnZSB1c2VycyISbQoPZGVmYXVsdF9jcmVhdG9yGAYgASgIQlSSQVEySUluZGljYXRlcyBpZiB0aGlzIHJvbGUgaXMgdGhlIGRlZmF1bHQgY3JlYXRvciByb2xlIGZvciBuZXcgb3JnYW5pemF0aW9ucy5KBHRydWUSYwoOZGVmYXVsdF9tZW1iZXIYByABKAhCS5JBSDJASW5kaWNhdGVzIGlmIHRoaXMgcm9sZSBpcyB0aGUgZGVmYXVsdCBtZW1iZXIgcm9sZSBmb3IgbmV3IHVzZXJzLkoEdHJ1ZRKdAQoHZXh0ZW5kcxgIIAEoCUKGAZJBZDJUTmFtZSBvZiB0aGUgYmFzZSByb2xlIHRoYXQgdGhpcyByb2xlIGV4dGVuZHMuIEVuYWJsZXMgaGllcmFyY2hpY2FsIHJvbGUgaW5oZXJpdGFuY2UuSgwiYWRtaW5fcm9sZSK6SBxyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kSACIAQES4gIKC3Blcm1pc3Npb25zGAkgAygLMiEuc2NhbGVraXQudjEucm9sZXMuUm9sZVBlcm1pc3Npb25CqQKSQaUCMnVMaXN0IG9mIHBlcm1pc3Npb25zIHdpdGggcm9sZSBzb3VyY2UgaW5mb3JtYXRpb24uIE9ubHkgaW5jbHVkZWQgd2hlbiAnaW5jbHVkZScgcGFyYW1ldGVyIGlzIHNwZWNpZmllZCBpbiB0aGUgcmVxdWVzdC5KqwFbeyJuYW1lIjogInJlYWQ6Y29udGVudCIsICJkZXNjcmlwdGlvbiI6ICJSZWFkIENvbnRlbnQiLCAicm9sZV9uYW1lIjogImFkbWluX3JvbGUifSwgeyJuYW1lIjogIndyaXRlOmNvbnRlbnQiLCAiZGVzY3JpcHRpb24iOiAiV3JpdGUgQ29udGVudCIsICJyb2xlX25hbWUiOiAiZWRpdG9yX3JvbGUifV0SewoVZGVwZW5kZW50X3JvbGVzX2NvdW50GAogASgFQlySQVkyVE51bWJlciBvZiByb2xlcyB0aGF0IGV4dGVuZCBmcm9tIHRoaXMgcm9sZSAoZGVwZW5kZW50IHJvbGVzIGNvdW50KS4gUmVhZC1vbmx5IGZpZWxkLkoBMxJPCgtpc19vcmdfcm9sZRgLIAEoCEI6kkE3Mi9JbmRpY2F0ZXMgaWYgdGhpcyByb2xlIGlzIGFuIG9yZ2FuaXphdGlvbiByb2xlLkoEdHJ1ZUIKCghfZXh0ZW5kc0oECAUQBiKYCQoKQ3JlYXRlUm9sZRLrAQoEbmFtZRgCIAEoCULcAZJBtgEyoQFVbmlxdWUgbmFtZSBpZGVudGlmaWVyIGZvciB0aGUgcm9sZS4gTXVzdCBiZSBhbHBoYW51bWVyaWMgd2l0aCB1bmRlcnNjb3JlcywgMS02NCBjaGFyYWN0ZXJzLiBUaGlzIG5hbWUgaXMgdXNlZCBpbiBBUEkgY2FsbHMgYW5kIGNhbm5vdCBiZSBjaGFuZ2VkIGFmdGVyIGNyZWF0aW9uLkoQImNvbnRlbnRfZWRpdG9yIrpIH8gBAXIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSQSpQEKDGRpc3BsYXlfbmFtZRgDIAEoCUKOAZJBfzJrSHVtYW4tcmVhZGFibGUgZGlzcGxheSBuYW1lIGZvciB0aGUgcm9sZS4gVXNlZCBpbiB1c2VyIGludGVyZmFjZXMsIHJlcG9ydHMsIGFuZCB1c2VyLWZhY2luZyBjb21tdW5pY2F0aW9ucy5KECJDb250ZW50IEVkaXRvciK6SAnIAQFyBBABGGQS7gEKC2Rlc2NyaXB0aW9uGAQgASgJQtMBkkHHATJqRGV0YWlsZWQgZGVzY3JpcHRpb24gb2YgdGhlIHJvbGUncyBwdXJwb3NlLCBjYXBhYmlsaXRpZXMsIGFuZCBpbnRlbmRlZCB1c2UgY2FzZXMuIE1heGltdW0gMjAwMCBjaGFyYWN0ZXJzLkpZIkNhbiBjcmVhdGUsIGVkaXQsIGFuZCBwdWJsaXNoIGNvbnRlbnQgYnV0IGNhbm5vdCBkZWxldGUgY29udGVudCBvciBtYW5hZ2UgdXNlciBhY2NvdW50cyK6SAVyAxjQD0gAiAEBEtcBCgdleHRlbmRzGAggASgJQsABkkGdATKQAU5hbWUgb2YgdGhlIGJhc2Ugcm9sZSB0aGF0IHRoaXMgcm9sZSBleHRlbmRzLiBFbmFibGVzIGhpZXJhcmNoaWNhbCByb2xlIGluaGVyaXRhbmNlIHdoZXJlIHRoaXMgcm9sZSBpbmhlcml0cyBhbGwgcGVybWlzc2lvbnMgZnJvbSB0aGUgYmFzZSByb2xlLkoIInZpZXdlciK6SBxyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kSAGIAQES+gEKC3Blcm1pc3Npb25zGAkgAygJQuQBkkG+ATKFAUxpc3Qgb2YgcGVybWlzc2lvbiBuYW1lcyB0byBhc3NpZ24gdG8gdGhpcyByb2xlLiBQZXJtaXNzaW9ucyBtdXN0IGV4aXN0IGluIHRoZSBjdXJyZW50IGVudmlyb25tZW50LiBNYXhpbXVtIDEwMCBwZXJtaXNzaW9ucyBwZXIgcm9sZS5KNFsicmVhZDpjb250ZW50IiwgIndyaXRlOmNvbnRlbnQiLCAicHVibGlzaDpjb250ZW50Il26SB+SARwQZCIYchYQARhAMhBeW2EtekEtWjAtOV86XSskQg4KDF9kZXNjcmlwdGlvbkIKCghfZXh0ZW5kc0oECAUQBkoECAYQB0oECAcQCCLuBQoWQ3JlYXRlT3JnYW5pemF0aW9uUm9sZRJuCgRuYW1lGAIgASgJQmCSQTsyJlVuaXF1ZSBuYW1lIG9mIHRoZSBvcmdhbml6YXRpb24ncyByb2xlShEib3JnX3ZpZXdlcl9yb2xlIrpIH8gBAXIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSQSagoMZGlzcGxheV9uYW1lGAMgASgJQlSSQUUyJ0Rpc3BsYXkgbmFtZSBvZiB0aGUgb3JnYW5pemF0aW9uJ3Mgcm9sZUoaIk9yZ2FuaXphdGlvbiBWaWV3ZXIgUm9sZSK6SAnIAQFyBBABGGQSkwEKC2Rlc2NyaXB0aW9uGAQgASgJQnmSQW4yJkRlc2NyaXB0aW9uIG9mIHRoZSBvcmdhbml6YXRpb24ncyByb2xlSkQiT3JnYW5pemF0aW9uIFZpZXdlciBSb2xlIHdpbGwgYmUgdXNlZCBvbmx5IGZvciB2aWV3aW5nIHRoZSBvYmplY3RzIrpIBXIDGNAPSACIAQESbQoHZXh0ZW5kcxgIIAEoCUJXkkE1MiVCYXNlIHJvbGUgbmFtZSBmb3IgaGllcmFyY2hpY2FsIHJvbGVzSgwiYWRtaW5fcm9sZSK6SBxyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kSAGIAQESxAEKC3Blcm1pc3Npb25zGAkgAygJQq4BkkGIATJjTGlzdCBvZiBwZXJtaXNzaW9uIG5hbWVzIHRvIGFzc2lnbiB0byB0aGlzIHJvbGUuIFBlcm1pc3Npb25zIG11c3QgZXhpc3QgaW4gdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQuSiFbInJlYWQ6dXNlcnMiLCAid3JpdGU6ZG9jdW1lbnRzIl26SB+SARwQZCIYchYQARhAMhBeW2EtekEtWjAtOV86XSskQg4KDF9kZXNjcmlwdGlvbkIKCghfZXh0ZW5kc0oECAUQBkoECAYQB0oECAcQCCLWAgoRQ3JlYXRlUm9sZVJlcXVlc3QSugIKBHJvbGUYAiABKAsyHS5zY2FsZWtpdC52MS5yb2xlcy5DcmVhdGVSb2xlQowCkkGCAjJsUm9sZSBjb25maWd1cmF0aW9uIGRldGFpbHMgaW5jbHVkaW5nIG5hbWUsIGRpc3BsYXkgbmFtZSwgZGVzY3JpcHRpb24sIHBlcm1pc3Npb25zLCBhbmQgaW5oZXJpdGFuY2Ugc2V0dGluZ3MuSpEBeyJuYW1lIjogImNvbnRlbnRfZWRpdG9yIiwgImRpc3BsYXlfbmFtZSI6ICJDb250ZW50IEVkaXRvciIsICJkZXNjcmlwdGlvbiI6ICJDYW4gZWRpdCBjb250ZW50IiwgInBlcm1pc3Npb25zIjogWyJyZWFkOmNvbnRlbnQiLCAid3JpdGU6Y29udGVudCJdfbpIA8gBAUoECAEQAiKUAgoSQ3JlYXRlUm9sZVJlc3BvbnNlEv0BCgRyb2xlGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZULVAZJB0QEyT1RoZSBjcmVhdGVkIHJvbGUgb2JqZWN0IHdpdGggc3lzdGVtLWdlbmVyYXRlZCBJRCBhbmQgYWxsIGNvbmZpZ3VyYXRpb24gZGV0YWlscy5KfnsiaWQiOiAicm9sZV8xMjM0YWJjZDU2NzhlZmdoIiwgIm5hbWUiOiAiY29udGVudF9lZGl0b3IiLCAiZGlzcGxheV9uYW1lIjogIkNvbnRlbnQgRWRpdG9yIiwgImRlc2NyaXB0aW9uIjogIkNhbiBlZGl0IGNvbnRlbnQifSLUAwoOR2V0Um9sZVJlcXVlc3QStAEKCXJvbGVfbmFtZRgCIAEoCUKgAZJBezJnVW5pcXVlIG5hbWUgaWRlbnRpZmllciBvZiB0aGUgcm9sZSB0byByZXRyaWV2ZS4gTXVzdCBiZSBhbHBoYW51bWVyaWMgd2l0aCB1bmRlcnNjb3JlcywgMS02NCBjaGFyYWN0ZXJzLkoQImNvbnRlbnRfZWRpdG9yIrpIH8gBAXIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSQS+AEKB2luY2x1ZGUYAyABKAlC4QGSQbgBMqYBSW5jbHVkZSBhZGRpdGlvbmFsIGRhdGEgaW4gdGhlIHJlc3BvbnNlLiBWYWxpZCB2YWx1ZXM6ICdwZXJtaXNzaW9ucycgKGRpcmVjdCBwZXJtaXNzaW9ucyBvbmx5KSwgJ3Blcm1pc3Npb25zOmFsbCcgKGluY2x1ZGVzIGluaGVyaXRlZCBwZXJtaXNzaW9ucyBmcm9tIHJvbGUgaGllcmFyY2h5KUoNInBlcm1pc3Npb25zIrpIInIgUgBSC3Blcm1pc3Npb25zUg9wZXJtaXNzaW9uczphbGxIAIgBAUIKCghfaW5jbHVkZUoECAEQAiK4AgoPR2V0Um9sZVJlc3BvbnNlEqQCCgRyb2xlGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZUL8AZJB+AEyUVRoZSBjb21wbGV0ZSByb2xlIG9iamVjdCB3aXRoIGFsbCBtZXRhZGF0YSwgcGVybWlzc2lvbnMsIGFuZCBpbmhlcml0YW5jZSBkZXRhaWxzLkqiAXsiaWQiOiAicm9sZV8xMjM0YWJjZDU2NzhlZmdoIiwgIm5hbWUiOiAiY29udGVudF9lZGl0b3IiLCAiZGlzcGxheV9uYW1lIjogIkNvbnRlbnQgRWRpdG9yIiwgInBlcm1pc3Npb25zIjogW3sibmFtZSI6ICJyZWFkOmNvbnRlbnQifV0sICJkZXBlbmRlbnRfcm9sZXNfY291bnQiOiAyfSKfAgoQTGlzdFJvbGVzUmVxdWVzdBL4AQoHaW5jbHVkZRgCIAEoCULhAZJBuAEypgFJbmNsdWRlIGFkZGl0aW9uYWwgZGF0YSBpbiB0aGUgcmVzcG9uc2UuIFZhbGlkIHZhbHVlczogJ3Blcm1pc3Npb25zJyAoZGlyZWN0IHBlcm1pc3Npb25zIG9ubHkpLCAncGVybWlzc2lvbnM6YWxsJyAoaW5jbHVkZXMgaW5oZXJpdGVkIHBlcm1pc3Npb25zIGZyb20gcm9sZSBoaWVyYXJjaHkpSg0icGVybWlzc2lvbnMiukgiciBSAFILcGVybWlzc2lvbnNSD3Blcm1pc3Npb25zOmFsbEgAiAEBQgoKCF9pbmNsdWRlSgQIARACIsICChFMaXN0Um9sZXNSZXNwb25zZRKsAgoFcm9sZXMYASADKAsyFy5zY2FsZWtpdC52MS5yb2xlcy5Sb2xlQoMCkkH/ATJaTGlzdCBvZiBhbGwgcm9sZXMgaW4gdGhlIGVudmlyb25tZW50IHdpdGggdGhlaXIgbWV0YWRhdGEgYW5kIG9wdGlvbmFsbHkgdGhlaXIgcGVybWlzc2lvbnMuSqABW3siaWQiOiAicm9sZV8xMjM0YWJjZDU2NzhlZmdoIiwgIm5hbWUiOiAiYWRtaW4iLCAiZGlzcGxheV9uYW1lIjogIkFkbWluaXN0cmF0b3IifSwgeyJpZCI6ICJyb2xlXzk4NzZ6eXh3NTQzMnZ1dHMiLCAibmFtZSI6ICJ2aWV3ZXIiLCAiZGlzcGxheV9uYW1lIjogIlZpZXdlciJ9XSKtCAoKVXBkYXRlUm9sZRKvAQoMZGlzcGxheV9uYW1lGAEgASgJQpMBkkGGATJrSHVtYW4tcmVhZGFibGUgZGlzcGxheSBuYW1lIGZvciB0aGUgcm9sZS4gVXNlZCBpbiB1c2VyIGludGVyZmFjZXMsIHJlcG9ydHMsIGFuZCB1c2VyLWZhY2luZyBjb21tdW5pY2F0aW9ucy5KFyJTZW5pb3IgQ29udGVudCBFZGl0b3IiukgGcgQQARhkSACIAQES9wEKC2Rlc2NyaXB0aW9uGAIgASgJQtwBkkHOATJqRGV0YWlsZWQgZGVzY3JpcHRpb24gb2YgdGhlIHJvbGUncyBwdXJwb3NlLCBjYXBhYmlsaXRpZXMsIGFuZCBpbnRlbmRlZCB1c2UgY2FzZXMuIE1heGltdW0gMjAwMCBjaGFyYWN0ZXJzLkpgIkNhbiBjcmVhdGUsIGVkaXQsIHB1Ymxpc2gsIGFuZCBhcHByb3ZlIGNvbnRlbnQuIENhbm5vdCBkZWxldGUgY29udGVudCBvciBtYW5hZ2UgdXNlciBhY2NvdW50cy4iukgHcgUQARjQD0gBiAEBEt8BCgdleHRlbmRzGAYgASgJQsgBkkGlATKQAU5hbWUgb2YgdGhlIGJhc2Ugcm9sZSB0aGF0IHRoaXMgcm9sZSBleHRlbmRzLiBFbmFibGVzIGhpZXJhcmNoaWNhbCByb2xlIGluaGVyaXRhbmNlIHdoZXJlIHRoaXMgcm9sZSBpbmhlcml0cyBhbGwgcGVybWlzc2lvbnMgZnJvbSB0aGUgYmFzZSByb2xlLkoQImNvbnRlbnRfZWRpdG9yIrpIHHIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSRIAogBARLRAgoLcGVybWlzc2lvbnMYByADKAlCuwKSQZUCMskBTGlzdCBvZiBwZXJtaXNzaW9uIG5hbWVzIHRvIGFzc2lnbiB0byB0aGlzIHJvbGUuIFdoZW4gcHJvdmlkZWQsIHRoaXMgcmVwbGFjZXMgYWxsIGV4aXN0aW5nIHJvbGUtcGVybWlzc2lvbiBtYXBwaW5ncy4gUGVybWlzc2lvbnMgbXVzdCBleGlzdCBpbiB0aGUgY3VycmVudCBlbnZpcm9ubWVudC4gTWF4aW11bSAxMDAgcGVybWlzc2lvbnMgcGVyIHJvbGUuSkdbInJlYWQ6Y29udGVudCIsICJ3cml0ZTpjb250ZW50IiwgInB1Ymxpc2g6Y29udGVudCIsICJhcHByb3ZlOmNvbnRlbnQiXbpIH5IBHBBkIhhyFhABGEAyEF5bYS16QS1aMC05XzpdKyRCDwoNX2Rpc3BsYXlfbmFtZUIOCgxfZGVzY3JpcHRpb25CCgoIX2V4dGVuZHNKBAgDEARKBAgEEAVKBAgFEAYimwMKEVVwZGF0ZVJvbGVSZXF1ZXN0ErIBCglyb2xlX25hbWUYAiABKAlCngGSQXkyZVVuaXF1ZSBuYW1lIGlkZW50aWZpZXIgb2YgdGhlIHJvbGUgdG8gdXBkYXRlLiBNdXN0IGJlIGFscGhhbnVtZXJpYyB3aXRoIHVuZGVyc2NvcmVzLCAxLTY0IGNoYXJhY3RlcnMuShAiY29udGVudF9lZGl0b3IiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JBLKAQoEcm9sZRgDIAEoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZVJvbGVCnAGSQZIBMj5Sb2xlIGZpZWxkcyB0byB1cGRhdGUuIE9ubHkgc3BlY2lmaWVkIGZpZWxkcyB3aWxsIGJlIG1vZGlmaWVkLkpQeyJkaXNwbGF5X25hbWUiOiAiU2VuaW9yIEVkaXRvciIsICJkZXNjcmlwdGlvbiI6ICJDYW4gZWRpdCBhbmQgYXBwcm92ZSBjb250ZW50In26SAPIAQFKBAgBEAIikAIKElVwZGF0ZVJvbGVSZXNwb25zZRL5AQoEcm9sZRgBIAEoCzIXLnNjYWxla2l0LnYxLnJvbGVzLlJvbGVC0QGSQc0BMj9UaGUgdXBkYXRlZCByb2xlIG9iamVjdCB3aXRoIGFsbCBjdXJyZW50IGNvbmZpZ3VyYXRpb24gZGV0YWlscy5KiQF7ImlkIjogInJvbGVfMTIzNGFiY2Q1Njc4ZWZnaCIsICJuYW1lIjogImNvbnRlbnRfZWRpdG9yIiwgImRpc3BsYXlfbmFtZSI6ICJTZW5pb3IgRWRpdG9yIiwgImRlc2NyaXB0aW9uIjogIkNhbiBlZGl0IGFuZCBhcHByb3ZlIGNvbnRlbnQifSKOBAoRRGVsZXRlUm9sZVJlcXVlc3QSrAEKCXJvbGVfbmFtZRgCIAEoCUKYAZJBczJlVW5pcXVlIG5hbWUgaWRlbnRpZmllciBvZiB0aGUgcm9sZSB0byBkZWxldGUuIE11c3QgYmUgYWxwaGFudW1lcmljIHdpdGggdW5kZXJzY29yZXMsIDEtNjQgY2hhcmFjdGVycy5KCiJvbGRfcm9sZSK6SB/IAQFyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kEooBChByZWFzc2lnbl9yb2xlX2lkGAMgASgJQmsYAZJBRzI2Um9sZSBuYW1lIHRvIHJlYXNzaWduIHVzZXJzIHRvIHdoZW4gZGVsZXRpbmcgdGhpcyByb2xlSg0ibWVtYmVyX3JvbGUiukgcchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JEgAiAEBEooBChJyZWFzc2lnbl9yb2xlX25hbWUYBCABKAlCaZJBRzI2Um9sZSBuYW1lIHRvIHJlYXNzaWduIHVzZXJzIHRvIHdoZW4gZGVsZXRpbmcgdGhpcyByb2xlSg0ibWVtYmVyX3JvbGUiukgcchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JEgBiAEBQhMKEV9yZWFzc2lnbl9yb2xlX2lkQhUKE19yZWFzc2lnbl9yb2xlX25hbWVKBAgBEAIi3wEKHUNyZWF0ZU9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0El8KBm9yZ19pZBgBIAEoCUJPkkE+MiVVbmlxdWUgaWRlbnRpZmllciBvZiB0aGUgb3JnYW5pemF0aW9uShUib3JnXzEyMTMxMjQzNDEyMzMxMiK6SAtyCRABGCA6A29yZxJdCgRyb2xlGAIgASgLMikuc2NhbGVraXQudjEucm9sZXMuQ3JlYXRlT3JnYW5pemF0aW9uUm9sZUIkkkEbMhlPcmdhbml6YXRpb24gcm9sZSBkZXRhaWxzukgDyAEBIkcKHkNyZWF0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZRIlCgRyb2xlGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZSLRAwoaR2V0T3JnYW5pemF0aW9uUm9sZVJlcXVlc3QSXwoGb3JnX2lkGAEgASgJQk+SQT4yJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KFSJvcmdfMTIxMzEyNDM0MTIzMzEyIrpIC3IJEAEYIDoDb3JnEl8KCXJvbGVfbmFtZRgCIAEoCUJMkkEnMhdVbmlxdWUgbmFtZSBvZiB0aGUgcm9sZUoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JBLkAQoHaW5jbHVkZRgDIAEoCULNAZJBpAEykgFJbmNsdWRlIGFkZGl0aW9uYWwgZGF0YSBpbiB0aGUgcmVzcG9uc2UuIFZhbGlkIHZhbHVlczogJ3Blcm1pc3Npb25zJyAoZGlyZWN0IHBlcm1pc3Npb25zIG9ubHkpLCAncGVybWlzc2lvbnM6YWxsJyAoaW5jbHVkZXMgaW5oZXJpdGVkIHBlcm1pc3Npb25zKUoNInBlcm1pc3Npb25zIrpIInIgUgBSC3Blcm1pc3Npb25zUg9wZXJtaXNzaW9uczphbGxIAIgBAUIKCghfaW5jbHVkZSJEChtHZXRPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2USJQoEcm9sZRgBIAEoCzIXLnNjYWxla2l0LnYxLnJvbGVzLlJvbGUi0gQKHExpc3RPcmdhbml6YXRpb25Sb2xlc1JlcXVlc3QSYgoGb3JnX2lkGAEgASgJQlKSQT4yJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KFSJvcmdfMTIxMzEyNDM0MTIzMzEyIrpIDsgBAXIJEAEYIDoDb3JnEuQBCgdpbmNsdWRlGAIgASgJQs0BkkGkATKSAUluY2x1ZGUgYWRkaXRpb25hbCBkYXRhIGluIHRoZSByZXNwb25zZS4gVmFsaWQgdmFsdWVzOiAncGVybWlzc2lvbnMnIChkaXJlY3QgcGVybWlzc2lvbnMgb25seSksICdwZXJtaXNzaW9uczphbGwnIChpbmNsdWRlcyBpbmhlcml0ZWQgcGVybWlzc2lvbnMpSg0icGVybWlzc2lvbnMiukgiciBSAFILcGVybWlzc2lvbnNSD3Blcm1pc3Npb25zOmFsbEgAiAEBOtoBkkHWAQqwASoXTGlzdCBvcmdhbml6YXRpb24gcm9sZXMyiwFSZXRyaWV2ZXMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBhbGwgcm9sZXMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24uIFVzZSB0aGUgcGFnZV90b2tlbiBmcm9tIHRoZSByZXNwb25zZSB0byBhY2Nlc3Mgc3Vic2VxdWVudCBwYWdlcyBvZiByZXN1bHRz0gEGb3JnX2lkMiF7Im9yZ19pZCIgOiAib3JnXzg3NTY4NjU2ODU3NjIiIH1CCgoIX2luY2x1ZGUiYwodTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2USQgoFcm9sZXMYASADKAsyFy5zY2FsZWtpdC52MS5yb2xlcy5Sb2xlQhqSQRcyFUxpc3Qgb2Ygcm9sZXMgb2JqZWN0cyK0AgodVXBkYXRlT3JnYW5pemF0aW9uUm9sZVJlcXVlc3QSXwoGb3JnX2lkGAEgASgJQk+SQT4yJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KFSJvcmdfMTIxMzEyNDM0MTIzMzEyIrpIC3IJEAEYIDoDb3JnEl8KCXJvbGVfbmFtZRgCIAEoCUJMkkEnMhdVbmlxdWUgbmFtZSBvZiB0aGUgcm9sZUoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JBJRCgRyb2xlGAMgASgLMh0uc2NhbGVraXQudjEucm9sZXMuVXBkYXRlUm9sZUIkkkEbMhlPcmdhbml6YXRpb24gcm9sZSBkZXRhaWxzukgDyAEBIkcKHlVwZGF0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZRIlCgRyb2xlGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZSKFAwodRGVsZXRlT3JnYW5pemF0aW9uUm9sZVJlcXVlc3QSXwoGb3JnX2lkGAEgASgJQk+SQT4yJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KFSJvcmdfMTIxMzEyNDM0MTIzMzEyIrpIC3IJEAEYIDoDb3JnEl8KCXJvbGVfbmFtZRgCIAEoCUJMkkEnMhdVbmlxdWUgbmFtZSBvZiB0aGUgcm9sZUoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JBKKAQoScmVhc3NpZ25fcm9sZV9uYW1lGAMgASgJQmmSQUcyNlJvbGUgbmFtZSB0byByZWFzc2lnbiB1c2VycyB0byB3aGVuIGRlbGV0aW5nIHRoaXMgcm9sZUoNIm1lbWJlcl9yb2xlIrpIHHIaEAEYZDIUXlthLXpBLVowLTlfXXsxLDY0fSRIAIgBAUIVChNfcmVhc3NpZ25fcm9sZV9uYW1lIoEBChhHZXRSb2xlVXNlcnNDb3VudFJlcXVlc3QSXwoJcm9sZV9uYW1lGAIgASgJQkySQScyF1VuaXF1ZSBuYW1lIG9mIHRoZSByb2xlSgwiYWRtaW5fcm9sZSK6SB/IAQFyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kSgQIARACImQKGUdldFJvbGVVc2Vyc0NvdW50UmVzcG9uc2USRwoFY291bnQYASABKANCOJJBLjIoTnVtYmVyIG9mIHVzZXJzIGFzc29jaWF0ZWQgd2l0aCB0aGUgcm9sZUoCMTC6SAQaAiAAIu4BCiRHZXRPcmdhbml6YXRpb25Sb2xlVXNlcnNDb3VudFJlcXVlc3QSWAoGb3JnX2lkGAEgASgJQkiSQTkyJVVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBvcmdhbml6YXRpb25KECJvcmdfMTIzNDU2Nzg5MCK6SAnIAQFyBBABGGQSbAoJcm9sZV9uYW1lGAIgASgJQlmSQTQyJFVuaXF1ZSBuYW1lIG9mIHRoZSBvcmdhbml6YXRpb24gcm9sZUoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JCJ8CiVHZXRPcmdhbml6YXRpb25Sb2xlVXNlcnNDb3VudFJlc3BvbnNlElMKBWNvdW50GAEgASgDQkSSQToyNU51bWJlciBvZiB1c2VycyBhc3NvY2lhdGVkIHdpdGggdGhlIG9yZ2FuaXphdGlvbiByb2xlSgE1ukgEGgIgACKqCQoZVXBkYXRlRGVmYXVsdFJvbGVzUmVxdWVzdBKOAgoPZGVmYXVsdF9jcmVhdG9yGAIgASgLMiQuc2NhbGVraXQudjEucm9sZXMuVXBkYXRlRGVmYXVsdFJvbGVCzgEYAZJByAEySkRlZmF1bHQgY3JlYXRvciByb2xlIChkZXByZWNhdGVkIC0gdXNlIGRlZmF1bHRfY3JlYXRvcl9yb2xlIGZpZWxkIGluc3RlYWQpSnp7ImlkIjogInJvbGVfMTIzNDU2Nzg5MCIsICJuYW1lIjogImNyZWF0b3IiLCAiZGlzcGxheV9uYW1lIjogIkNyZWF0b3IgUm9sZSIsICJkZXNjcmlwdGlvbiI6ICJSb2xlIGZvciBjcmVhdGluZyByZXNvdXJjZXMifRKGAgoOZGVmYXVsdF9tZW1iZXIYAyABKAsyJC5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVEZWZhdWx0Um9sZULHARgBkkHBATJIRGVmYXVsdCBtZW1iZXIgcm9sZSAoZGVwcmVjYXRlZCAtIHVzZSBkZWZhdWx0X21lbWJlcl9yb2xlIGZpZWxkIGluc3RlYWQpSnV7ImlkIjogInJvbGVfMDk4NzY1NDMyMSIsICJuYW1lIjogIm1lbWJlciIsICJkaXNwbGF5X25hbWUiOiAiTWVtYmVyIFJvbGUiLCAiZGVzY3JpcHRpb24iOiAiUm9sZSBmb3IgcmVndWxhciBtZW1iZXJzIn0SogIKFGRlZmF1bHRfY3JlYXRvcl9yb2xlGAQgASgJQv4BkkHbATLNAU5hbWUgb2YgdGhlIHJvbGUgdG8gc2V0IGFzIHRoZSBkZWZhdWx0IGNyZWF0b3Igcm9sZS4gVGhpcyByb2xlIHdpbGwgYmUgYXV0b21hdGljYWxseSBhc3NpZ25lZCB0byB1c2VycyB3aG8gY3JlYXRlIG5ldyByZXNvdXJjZXMgaW4gdGhlIGVudmlyb25tZW50LiBNdXN0IGJlIGEgdmFsaWQgcm9sZSBuYW1lIHRoYXQgZXhpc3RzIGluIHRoZSBlbnZpcm9ubWVudC5KCSJjcmVhdG9yIrpIHHIaEAAYZDIUXlthLXpBLVowLTlfXXsxLDY0fSRIAIgBARKWAgoTZGVmYXVsdF9tZW1iZXJfcm9sZRgFIAEoCULzAZJB0AEywwFOYW1lIG9mIHRoZSByb2xlIHRvIHNldCBhcyB0aGUgZGVmYXVsdCBtZW1iZXIgcm9sZS4gVGhpcyByb2xlIHdpbGwgYmUgYXV0b21hdGljYWxseSBhc3NpZ25lZCB0byBuZXcgdXNlcnMgd2hlbiB0aGV5IGpvaW4gdGhlIGVudmlyb25tZW50LiBNdXN0IGJlIGEgdmFsaWQgcm9sZSBuYW1lIHRoYXQgZXhpc3RzIGluIHRoZSBlbnZpcm9ubWVudC5KCCJtZW1iZXIiukgcchoQABhkMhReW2EtekEtWjAtOV9dezEsNjR9JEgBiAEBQhcKFV9kZWZhdWx0X2NyZWF0b3Jfcm9sZUIWChRfZGVmYXVsdF9tZW1iZXJfcm9sZUoECAEQAiKBAgolVXBkYXRlRGVmYXVsdE9yZ2FuaXphdGlvblJvbGVzUmVxdWVzdBJiCgZvcmdfaWQYASABKAlCUpJBPjIlVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIG9yZ2FuaXphdGlvbkoVIm9yZ18xMjEzMTI0MzQxMjMzMTIiukgOyAEBcgkQARggOgNvcmcSdAoTZGVmYXVsdF9tZW1iZXJfcm9sZRgCIAEoCUJXkkEyMiZVbmlxdWUgbmFtZSBvZiB0aGUgZGVmYXVsdCBtZW1iZXIgcm9sZUoIIm1lbWJlciK6SB/IAQFyGhABGGQyFF5bYS16QS1aMC05X117MSw2NH0kIqcFChpVcGRhdGVEZWZhdWx0Um9sZXNSZXNwb25zZRLGAgoPZGVmYXVsdF9jcmVhdG9yGAEgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZUKTApJBjwIykAFUaGUgcm9sZSB0aGF0IGlzIG5vdyBzZXQgYXMgdGhlIGRlZmF1bHQgY3JlYXRvciByb2xlIGZvciB0aGUgZW52aXJvbm1lbnQuIENvbnRhaW5zIGNvbXBsZXRlIHJvbGUgaW5mb3JtYXRpb24gaW5jbHVkaW5nIHBlcm1pc3Npb25zIGFuZCBtZXRhZGF0YS5KensiaWQiOiAicm9sZV8xMjM0NTY3ODkwIiwgIm5hbWUiOiAiY3JlYXRvciIsICJkaXNwbGF5X25hbWUiOiAiQ3JlYXRvciBSb2xlIiwgImRlc2NyaXB0aW9uIjogIlJvbGUgZm9yIGNyZWF0aW5nIHJlc291cmNlcyJ9Er8CCg5kZWZhdWx0X21lbWJlchgCIAEoCzIXLnNjYWxla2l0LnYxLnJvbGVzLlJvbGVCjQKSQYkCMo8BVGhlIHJvbGUgdGhhdCBpcyBub3cgc2V0IGFzIHRoZSBkZWZhdWx0IG1lbWJlciByb2xlIGZvciB0aGUgZW52aXJvbm1lbnQuIENvbnRhaW5zIGNvbXBsZXRlIHJvbGUgaW5mb3JtYXRpb24gaW5jbHVkaW5nIHBlcm1pc3Npb25zIGFuZCBtZXRhZGF0YS5KdXsiaWQiOiAicm9sZV8wOTg3NjU0MzIxIiwgIm5hbWUiOiAibWVtYmVyIiwgImRpc3BsYXlfbmFtZSI6ICJNZW1iZXIgUm9sZSIsICJkZXNjcmlwdGlvbiI6ICJSb2xlIGZvciByZWd1bGFyIG1lbWJlcnMifSL1AQomVXBkYXRlRGVmYXVsdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2USygEKDmRlZmF1bHRfbWVtYmVyGAIgASgLMhcuc2NhbGVraXQudjEucm9sZXMuUm9sZUKYAZJBlAEyG1VwZGF0ZWQgZGVmYXVsdCBtZW1iZXIgcm9sZUp1eyJpZCI6ICJyb2xlXzA5ODc2NTQzMjEiLCAibmFtZSI6ICJtZW1iZXIiLCAiZGlzcGxheV9uYW1lIjogIk1lbWJlciBSb2xlIiwgImRlc2NyaXB0aW9uIjogIlJvbGUgZm9yIHJlZ3VsYXIgbWVtYmVycyJ9IpQBChFVcGRhdGVEZWZhdWx0Um9sZRIbCgJpZBgBIAEoCUIPukgMcgoQARggOgRyb2xlElkKBG5hbWUYAiABKAlCRpJBJDIXVW5pcXVlIG5hbWUgb2YgdGhlIHJvbGVKCSJjcmVhdG9yIrpIHHIaEAAYZDIUXlthLXpBLVowLTlfXXsxLDY0fSRIAIgBAUIHCgVfbmFtZSLAAgoKUGVybWlzc2lvbhIbCgJpZBgBIAEoCUIPukgMcgoQARggOgRwZXJtEiwKBG5hbWUYAiABKAlCHrpIG8gBAXIWEAEYZDIQXlthLXpBLVowLTlfOl0rJBIdCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMY0A8SLwoLY3JlYXRlX3RpbWUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC3VwZGF0ZV90aW1lGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBJmChZpc19zY2FsZWtpdF9wZXJtaXNzaW9uGAYgASgIQkaSQUMyO0luZGljYXRlcyB3aGV0aGVyIHRoaXMgcGVybWlzc2lvbiBpcyBwcmVkZWZpbmVkIGJ5IFNjYWxla2l0SgR0cnVlIt0CCg5Sb2xlUGVybWlzc2lvbhIbCgJpZBgBIAEoCUIPukgMcgoQARggOgRwZXJtEiwKBG5hbWUYAiABKAlCHrpIG8gBAXIWEAEYZDIQXlthLXpBLVowLTlfOl0rJBIdCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMY0A8SLwoLY3JlYXRlX3RpbWUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi8KC3VwZGF0ZV90aW1lGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBJ/Cglyb2xlX25hbWUYBiABKAlCbJJBRzI3TmFtZSBvZiB0aGUgcm9sZSBmcm9tIHdoaWNoIHRoaXMgcGVybWlzc2lvbiB3YXMgc291cmNlZEoMImFkbWluX3JvbGUiukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JCLuAQoQQ3JlYXRlUGVybWlzc2lvbhJoCgRuYW1lGAEgASgJQlqSQTQyIFVuaXF1ZSBuYW1lL0lEIG9mIHRoZSBwZXJtaXNzaW9uShAicmVhZDpkb2N1bWVudHMiukggyAEBchsQARhkMhVeW2EtekEtWjAtOV86XXsxLDY0fSQScAoLZGVzY3JpcHRpb24YAiABKAlCW5JBUDIdRGVzY3JpcHRpb24gb2YgdGhlIHBlcm1pc3Npb25KLyJBbGxvd3MgdXNlciB0byByZWFkIGRvY3VtZW50cyBmcm9tIHRoZSBzeXN0ZW0iukgFcgMY0A8iWgoXQ3JlYXRlUGVybWlzc2lvblJlcXVlc3QSPwoKcGVybWlzc2lvbhgBIAEoCzIjLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVBlcm1pc3Npb25CBrpIA8gBASJNChhDcmVhdGVQZXJtaXNzaW9uUmVzcG9uc2USMQoKcGVybWlzc2lvbhgBIAEoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb24ieAoUR2V0UGVybWlzc2lvblJlcXVlc3QSYAoPcGVybWlzc2lvbl9uYW1lGAEgASgJQkeSQSYyFk5hbWUgb2YgdGhlIHBlcm1pc3Npb25KDCJyZWFkOnVzZXJzIrpIG8gBAXIWEAEYQDIQXlthLXpBLVowLTlfOl0rJCJKChVHZXRQZXJtaXNzaW9uUmVzcG9uc2USMQoKcGVybWlzc2lvbhgBIAEoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb24ivAEKF1VwZGF0ZVBlcm1pc3Npb25SZXF1ZXN0EmAKD3Blcm1pc3Npb25fbmFtZRgBIAEoCUJHkkEmMhZOYW1lIG9mIHRoZSBwZXJtaXNzaW9uSgwicmVhZF91c2VycyK6SBvIAQFyFhABGEAyEF5bYS16QS1aMC05XzpdKyQSPwoKcGVybWlzc2lvbhgDIAEoCzIjLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVBlcm1pc3Npb25CBrpIA8gBASJNChhVcGRhdGVQZXJtaXNzaW9uUmVzcG9uc2USMQoKcGVybWlzc2lvbhgBIAEoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb24i7gMKFkxpc3RQZXJtaXNzaW9uc1JlcXVlc3QSWQoKcGFnZV90b2tlbhgBIAEoCUJAkkE9MitQYWdlIHRva2VuIHRvIHJldHJpZXZlIG5leHQgcGFnZSBvZiByZXN1bHRzSg4idG9rZW5fYWJjMTIzIkgAiAEBElwKCXBhZ2Vfc2l6ZRgCIAEoDUJEkkE4MjJOdW1iZXIgb2YgcGVybWlzc2lvbnMgdG8gcmV0dXJuIHBlciBwYWdlIChtYXggMTAwKUoCNTC6SAYqBBhkKAFIAYgBARL9AQoEdHlwZRgDIAEoDjIhLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb25UeXBlQssBkkHHATK/AUZpbHRlciBwZXJtaXNzaW9ucyBieSB0eXBlOiBBTEwsIFNDQUxFS0lULCBvciBFTlZJUk9OTUVOVCwgd2hlcmUgU0NBTEVLSVQgYXJlIHByZWRlZmluZWQgU2NhbGVraXQgcGVybWlzc2lvbnMgYW5kIEVOVklST05NRU5UIGFyZSBjdXN0b20gcGVybWlzc2lvbnMgY3JlYXRlZCBpbiB0aGUgZW52aXJvbm1lbnQsIGRlZmF1bHQgaXMgQUxMSgNBTExCDQoLX3BhZ2VfdG9rZW5CDAoKX3BhZ2Vfc2l6ZSLCAgoXTGlzdFBlcm1pc3Npb25zUmVzcG9uc2USMgoLcGVybWlzc2lvbnMYASADKAsyHS5zY2FsZWtpdC52MS5yb2xlcy5QZXJtaXNzaW9uElgKD3ByZXZfcGFnZV90b2tlbhgCIAEoCUI/kkE8MipUb2tlbiB0byByZXRyaWV2ZSBwcmV2aW91cyBwYWdlIG9mIHJlc3VsdHNKDiJ0b2tlbl9kZWY0NTYiElQKD25leHRfcGFnZV90b2tlbhgDIAEoCUI7kkE4MiZUb2tlbiB0byByZXRyaWV2ZSBuZXh0IHBhZ2Ugb2YgcmVzdWx0c0oOInRva2VuX2RlZjQ1NiISQwoKdG90YWxfc2l6ZRgEIAEoDUIvkkEsMiVUb3RhbCBudW1iZXIgb2YgcGVybWlzc2lvbnMgYXZhaWxhYmxlSgMxNTAiewoXRGVsZXRlUGVybWlzc2lvblJlcXVlc3QSYAoPcGVybWlzc2lvbl9uYW1lGAEgASgJQkeSQSYyFk5hbWUgb2YgdGhlIHBlcm1pc3Npb25KDCJyZWFkX3VzZXJzIrpIG8gBAXIWEAEYQDIQXlthLXpBLVowLTlfOl0rJCJrChpMaXN0Um9sZVBlcm1pc3Npb25zUmVxdWVzdBJNCglyb2xlX25hbWUYASABKAlCOpJBGTIQTmFtZSBvZiB0aGUgcm9sZUoFYWRtaW66SBvIAQFyFhABGEAyEF5bYS16QS1aMC05Xy1dKyQiiQEKG0xpc3RSb2xlUGVybWlzc2lvbnNSZXNwb25zZRJqCgtwZXJtaXNzaW9ucxgBIAMoCzIdLnNjYWxla2l0LnYxLnJvbGVzLlBlcm1pc3Npb25CNpJBMzIxTGlzdCBvZiBwZXJtaXNzaW9ucyBkaXJlY3RseSBhc3NpZ25lZCB0byB0aGUgcm9sZSLfAQobQWRkUGVybWlzc2lvbnNUb1JvbGVSZXF1ZXN0Ek0KCXJvbGVfbmFtZRgBIAEoCUI6kkEZMhBOYW1lIG9mIHRoZSByb2xlSgVhZG1pbrpIG8gBAXIWEAEYQDIQXlthLXpBLVowLTlfOl0rJBJxChBwZXJtaXNzaW9uX25hbWVzGAIgAygJQleSQS0yK0xpc3Qgb2YgcGVybWlzc2lvbiBuYW1lcyB0byBhZGQgdG8gdGhlIHJvbGW6SCTIAQGSAR4IARBkIhhyFhABGEAyEF5bYS16QS1aMC05XzpdKyQilQEKHEFkZFBlcm1pc3Npb25zVG9Sb2xlUmVzcG9uc2USdQoLcGVybWlzc2lvbnMYASADKAsyHS5zY2FsZWtpdC52MS5yb2xlcy5QZXJtaXNzaW9uQkGSQT4yPExpc3Qgb2YgYWxsIHBlcm1pc3Npb25zIGJlbG9uZ2luZyB0byB0aGUgcm9sZSBhZnRlciBhZGRpdGlvbiLZAQofUmVtb3ZlUGVybWlzc2lvbkZyb21Sb2xlUmVxdWVzdBJMCglyb2xlX25hbWUYASABKAlCOZJBGTIQTmFtZSBvZiB0aGUgcm9sZUoFYWRtaW66SBrIAQFyFRABGEAyD15bYS16QS1aMC05X10rJBJoCg9wZXJtaXNzaW9uX25hbWUYAiABKAlCT5JBLjIgTmFtZSBvZiB0aGUgcGVybWlzc2lvbiB0byByZW1vdmVKCnJlYWRfdXNlcnO6SBvIAQFyFhABGEAyEF5bYS16QS1aMC05XzpdKyQicwojTGlzdEVmZmVjdGl2ZVJvbGVQZXJtaXNzaW9uc1JlcXVlc3QSTAoJcm9sZV9uYW1lGAEgASgJQjmSQRkyEE5hbWUgb2YgdGhlIHJvbGVKBWFkbWluukgayAEBchUQARhAMg9eW2EtekEtWjAtOV9dKyQirQEKJExpc3RFZmZlY3RpdmVSb2xlUGVybWlzc2lvbnNSZXNwb25zZRKEAQoLcGVybWlzc2lvbnMYASADKAsyHS5zY2FsZWtpdC52MS5yb2xlcy5QZXJtaXNzaW9uQlCSQU0yS0xpc3Qgb2YgYWxsIGVmZmVjdGl2ZSBwZXJtaXNzaW9ucyBpbmNsdWRpbmcgdGhvc2UgaW5oZXJpdGVkIGZyb20gYmFzZSByb2xlcyJuChlMaXN0RGVwZW5kZW50Um9sZXNSZXF1ZXN0ElEKCXJvbGVfbmFtZRgBIAEoCUI+kkEeMhVOYW1lIG9mIHRoZSBiYXNlIHJvbGVKBWFkbWluukgayAEBchUQARhAMg9eW2EtekEtWjAtOV9dKyQiYgoaTGlzdERlcGVuZGVudFJvbGVzUmVzcG9uc2USRAoFcm9sZXMYASADKAsyFy5zY2FsZWtpdC52MS5yb2xlcy5Sb2xlQhySQRkyF0xpc3Qgb2YgZGVwZW5kZW50IHJvbGVzIvMBChVEZWxldGVSb2xlQmFzZVJlcXVlc3QS2QEKCXJvbGVfbmFtZRgBIAEoCULFAZJBpAEykQFVbmlxdWUgbmFtZSBpZGVudGlmaWVyIG9mIHRoZSByb2xlIHdob3NlIGJhc2UgaW5oZXJpdGFuY2UgcmVsYXRpb25zaGlwIHNob3VsZCBiZSByZW1vdmVkLiBNdXN0IGJlIGFscGhhbnVtZXJpYyB3aXRoIHVuZGVyc2NvcmVzLCAxLTY0IGNoYXJhY3RlcnMuSg5jb250ZW50X2VkaXRvcrpIGsgBAXIVEAEYQDIPXlthLXpBLVowLTlfXSskIvcBCiFEZWxldGVPcmdhbml6YXRpb25Sb2xlQmFzZVJlcXVlc3QSXgoGb3JnX2lkGAEgASgJQk6SQT0yJFVuaXF1ZSBpZGVudGlmaWVyIHRvIGFuIE9yZ2FuaXphdGlvbkoVIm9yZ18xMjEzMTI0MzQxMjMzMTIiukgLcgkQARggOgNvcmcScgoJcm9sZV9uYW1lGAIgASgJQl+SQToyMU5hbWUgb2YgdGhlIG9yZ2FuaXphdGlvbiByb2xlIHRvIHJlbW92ZSBiYXNlIGZyb21KBWFkbWluukgfyAEBchoQARhkMhReW2EtekEtWjAtOV9dezEsNjR9JCo4Cg5QZXJtaXNzaW9uVHlwZRIHCgNBTEwQABIMCghTQ0FMRUtJVBABEg8KC0VOVklST05NRU5UEAIyk7wBCgxSb2xlc1NlcnZpY2USzwUKCkNyZWF0ZVJvbGUSJC5zY2FsZWtpdC52MS5yb2xlcy5DcmVhdGVSb2xlUmVxdWVzdBolLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVJvbGVSZXNwb25zZSLzBJJBzgQKBVJvbGVzEh5DcmVhdGUgbmV3IHJvbGUgaW4gZW52aXJvbm1lbnQaiANDcmVhdGVzIGEgbmV3IHJvbGUgd2l0aGluIHRoZSBlbnZpcm9ubWVudCB3aXRoIHNwZWNpZmllZCBwZXJtaXNzaW9ucyBhbmQgbWV0YWRhdGEuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGRlZmluZSBjdXN0b20gcm9sZXMgdGhhdCBjYW4gYmUgYXNzaWduZWQgdG8gdXNlcnMgb3IgZ3JvdXBzLiBZb3UgY2FuIGNyZWF0ZSBoaWVyYXJjaGljYWwgcm9sZXMgYnkgZXh0ZW5kaW5nIGV4aXN0aW5nIHJvbGVzLCBhc3NpZ24gc3BlY2lmaWMgcGVybWlzc2lvbnMsIGFuZCBjb25maWd1cmUgZGlzcGxheSBpbmZvcm1hdGlvbi4gUm9sZXMgYXJlIHRoZSBmb3VuZGF0aW9uIG9mIHlvdXIgYWNjZXNzIGNvbnRyb2wgc3lzdGVtIGFuZCBkZXRlcm1pbmUgd2hhdCBhY3Rpb25zIHVzZXJzIGNhbiBwZXJmb3JtLkqZAQoDMjAxEpEBCmRSb2xlIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5LiBSZXR1cm5zIHRoZSBjb21wbGV0ZSByb2xlIG9iamVjdCB3aXRoIHN5c3RlbS1nZW5lcmF0ZWQgSUQgYW5kIHRpbWVzdGFtcHMuEikKJxolLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVJvbGVSZXNwb25zZYK1GAIYRILT5JMCFToEcm9sZSINL2FwaS92MS9yb2xlcxKyBQoKVXBkYXRlUm9sZRIkLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZVJvbGVSZXF1ZXN0GiUuc2NhbGVraXQudjEucm9sZXMuVXBkYXRlUm9sZVJlc3BvbnNlItYEkkGlBAoFUm9sZXMSF1VwZGF0ZSByb2xlIGluZm9ybWF0aW9uGvYCTW9kaWZpZXMgYW4gZXhpc3Rpbmcgcm9sZSdzIHByb3BlcnRpZXMgaW5jbHVkaW5nIGRpc3BsYXkgbmFtZSwgZGVzY3JpcHRpb24sIHBlcm1pc3Npb25zLCBhbmQgaW5oZXJpdGFuY2UuIFVzZSB0aGlzIGVuZHBvaW50IHRvIHVwZGF0ZSByb2xlIG1ldGFkYXRhLCBjaGFuZ2UgcGVybWlzc2lvbiBhc3NpZ25tZW50cywgb3IgbW9kaWZ5IHJvbGUgaGllcmFyY2h5LiBPbmx5IHRoZSBmaWVsZHMgeW91IHNwZWNpZnkgd2lsbCBiZSB1cGRhdGVkLCBsZWF2aW5nIG90aGVyIHByb3BlcnRpZXMgdW5jaGFuZ2VkLiBXaGVuIHVwZGF0aW5nIHBlcm1pc3Npb25zLCB0aGUgbmV3IGxpc3QgcmVwbGFjZXMgYWxsIGV4aXN0aW5nIHBlcm1pc3Npb25zIGZvciB0aGUgcm9sZS5KiQEKAzIwMBKBAQpUUm9sZSB1cGRhdGVkIHN1Y2Nlc3NmdWxseS4gUmV0dXJucyB0aGUgbW9kaWZpZWQgcm9sZSBvYmplY3Qgd2l0aCB1cGRhdGVkIHRpbWVzdGFtcHMuEikKJxolLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZVJvbGVSZXNwb25zZYK1GAIYRILT5JMCIToEcm9sZRoZL2FwaS92MS9yb2xlcy97cm9sZV9uYW1lfRL/BAoHR2V0Um9sZRIhLnNjYWxla2l0LnYxLnJvbGVzLkdldFJvbGVSZXF1ZXN0GiIuc2NhbGVraXQudjEucm9sZXMuR2V0Um9sZVJlc3BvbnNlIqwEkkGBBAoFUm9sZXMSEEdldCByb2xlIGRldGFpbHMaqQJSZXRyaWV2ZXMgY29tcGxldGUgaW5mb3JtYXRpb24gZm9yIGEgc3BlY2lmaWMgcm9sZSBpbmNsdWRpbmcgbWV0YWRhdGEgYW5kIGluaGVyaXRhbmNlIGRldGFpbHMgKGJhc2Ugcm9sZSBhbmQgZGVwZW5kZW50IHJvbGUgY291bnQpLiBVc2UgdGhpcyBlbmRwb2ludCB0byBhdWRpdCByb2xlIGNvbmZpZ3VyYXRpb24gYW5kIHVuZGVyc3RhbmQgdGhlIHJvbGUncyBwbGFjZSBpbiB0aGUgaGllcmFyY2h5LiBUbyB2aWV3IHRoZSByb2xlJ3MgcGVybWlzc2lvbnMsIHVzZSB0aGUgTGlzdFJvbGVQZXJtaXNzaW9ucyBlbmRwb2ludC5KuQEKAzIwMBKxAQqGAVN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgcm9sZSBkZXRhaWxzLiBSZXR1cm5zIHRoZSByb2xlIG9iamVjdCBpbmNsdWRpbmcgbWV0YWRhdGEgYW5kIGluaGVyaXRhbmNlIGRldGFpbHMuIFBlcm1pc3Npb25zIGFyZSBub3QgaW5jbHVkZWQuEiYKJBoiLnNjYWxla2l0LnYxLnJvbGVzLkdldFJvbGVSZXNwb25zZYK1GAIYRILT5JMCGxIZL2FwaS92MS9yb2xlcy97cm9sZV9uYW1lfRKJBgoJTGlzdFJvbGVzEiMuc2NhbGVraXQudjEucm9sZXMuTGlzdFJvbGVzUmVxdWVzdBokLnNjYWxla2l0LnYxLnJvbGVzLkxpc3RSb2xlc1Jlc3BvbnNlIrAFkkGRBQoFUm9sZXMSHUxpc3QgYWxsIHJvbGVzIGluIGVudmlyb25tZW50GsQDUmV0cmlldmVzIGEgY29tcHJlaGVuc2l2ZSBsaXN0IG9mIGFsbCByb2xlcyBhdmFpbGFibGUgd2l0aGluIHRoZSBzcGVjaWZpZWQgZW52aXJvbm1lbnQgaW5jbHVkaW5nIG9yZ2FuaXphdGlvbiByb2xlcy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdmlldyBhbGwgcm9sZSBkZWZpbml0aW9ucywgaW5jbHVkaW5nIGN1c3RvbSByb2xlcyBhbmQgdGhlaXIgY29uZmlndXJhdGlvbnMuIFlvdSBjYW4gb3B0aW9uYWxseSBpbmNsdWRlIHBlcm1pc3Npb24gZGV0YWlscyBmb3IgZWFjaCByb2xlIHRvIHVuZGVyc3RhbmQgdGhlaXIgY2FwYWJpbGl0aWVzLiBUaGlzIGlzIHVzZWZ1bCBmb3Igcm9sZSBtYW5hZ2VtZW50LCBhdWRpdGluZyBvcmdhbml6YXRpb24gYWNjZXNzIGNvbnRyb2xzLCBvciB1bmRlcnN0YW5kaW5nIHRoZSBhdmFpbGFibGUgYWNjZXNzIGxldmVscyB3aXRoaW4gdGhlIG9yZ2FuaXphdGlvbi5KoQEKAzIwMBKZAQptU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBsaXN0IG9mIHJvbGVzLiBSZXR1cm5zIGFsbCByb2xlcyB3aXRoIHRoZWlyIG1ldGFkYXRhIGFuZCBvcHRpb25hbGx5IHRoZWlyIHBlcm1pc3Npb25zLhIoCiYaJC5zY2FsZWtpdC52MS5yb2xlcy5MaXN0Um9sZXNSZXNwb25zZYK1GAIYZILT5JMCDxINL2FwaS92MS9yb2xlcxKsBgoKRGVsZXRlUm9sZRIkLnNjYWxla2l0LnYxLnJvbGVzLkRlbGV0ZVJvbGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5It8FkkG0BQoFUm9sZXMSHkRlbGV0ZSByb2xlIGFuZCByZWFzc2lnbiB1c2Vycxq7BFBlcm1hbmVudGx5IHJlbW92ZXMgYSByb2xlIGZyb20gdGhlIGVudmlyb25tZW50IGFuZCByZWFzc2lnbnMgdXNlcnMgd2hvIGhhZCB0aGF0IHJvbGUgdG8gYSBkaWZmZXJlbnQgcm9sZS4gVXNlIHRoaXMgZW5kcG9pbnQgd2hlbiB5b3UgbmVlZCB0byBjbGVhbiB1cCB1bnVzZWQgcm9sZXMgb3IgcmVzdHJ1Y3R1cmUgeW91ciBhY2Nlc3MgY29udHJvbCBzeXN0ZW0uIFRoZSByb2xlIGNhbm5vdCBiZSBkZWxldGVkIGlmIGl0IGhhcyBkZXBlbmRlbnQgcm9sZXMgKHJvbGVzIHRoYXQgZXh0ZW5kIGl0KSB1bmxlc3MgeW91IHNwZWNpZnkgYSByZXBsYWNlbWVudCByb2xlLiBJZiB1c2VycyBhcmUgYXNzaWduZWQgdG8gdGhlIHJvbGUgYmVpbmcgZGVsZXRlZCwgeW91IG11c3QgcHJvdmlkZSBhIHJlYXNzaWduX3JvbGVfbmFtZSB0byBtb3ZlIHRob3NlIHVzZXJzIHRvIGEgZGlmZmVyZW50IHJvbGUgYmVmb3JlIGRlbGV0aW9uIGNhbiBwcm9jZWVkLiBUaGlzIGFjdGlvbiBjYW5ub3QgYmUgdW5kb25lLCBzbyBlbnN1cmUgbm8gY3JpdGljYWwgdXNlcnMgZGVwZW5kIG9uIHRoZSByb2xlIGJlZm9yZSBkZWxldGlvbi5KTQoDMjAwEkYKRFJvbGUgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQgYW5kIHVzZXJzIHJlYXNzaWduZWQuIE5vIGNvbnRlbnQgcmV0dXJuZWQugrUYAhhEgtPkkwIbKhkvYXBpL3YxL3JvbGVzL3tyb2xlX25hbWV9EtwGChZDcmVhdGVPcmdhbml6YXRpb25Sb2xlEjAuc2NhbGVraXQudjEucm9sZXMuQ3JlYXRlT3JnYW5pemF0aW9uUm9sZVJlcXVlc3QaMS5zY2FsZWtpdC52MS5yb2xlcy5DcmVhdGVPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2Ui3AWSQaAFCgVSb2xlcxIYQ3JlYXRlIG9yZ2FuaXphdGlvbiByb2xlGscDQ3JlYXRlcyBhIG5ldyByb2xlIHdpdGhpbiB0aGUgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbiB3aXRoIGJhc2ljIGNvbmZpZ3VyYXRpb24gaW5jbHVkaW5nIG5hbWUsIGRpc3BsYXkgbmFtZSwgZGVzY3JpcHRpb24sIGFuZCBwZXJtaXNzaW9ucy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gZGVmaW5lIGN1c3RvbSByb2xlcyB0aGF0IGNhbiBiZSBhc3NpZ25lZCB0byB1c2VycyB3aXRoaW4gdGhlIG9yZ2FuaXphdGlvbi4gWW91IGNhbiBjcmVhdGUgaGllcmFyY2hpY2FsIHJvbGVzIGJ5IGV4dGVuZGluZyBleGlzdGluZyByb2xlcyBhbmQgYXNzaWduIHNwZWNpZmljIHBlcm1pc3Npb25zIHRvIGNvbnRyb2wgYWNjZXNzIGxldmVscy4gVGhlIHJvbGUgd2lsbCBiZSBzY29wZWQgdG8gdGhlIG9yZ2FuaXphdGlvbiBhbmQgY2FuIGJlIHVzZWQgZm9yIG9yZ2FuaXphdGlvbi1zcGVjaWZpYyBhY2Nlc3MgY29udHJvbC5KsgEKAzIwMRKqAQpxT3JnYW5pemF0aW9uIHJvbGUgY3JlYXRlZCBzdWNjZXNzZnVsbHkuIFJldHVybnMgdGhlIGNvbXBsZXRlIHJvbGUgb2JqZWN0IHdpdGggc3lzdGVtLWdlbmVyYXRlZCBJRCBhbmQgdGltZXN0YW1wcy4SNQozGjEuc2NhbGVraXQudjEucm9sZXMuQ3JlYXRlT3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlgrUYAhhEgtPkkwIsOgRyb2xlIiQvYXBpL3YxL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMStQYKFlVwZGF0ZU9yZ2FuaXphdGlvblJvbGUSMC5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBoxLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZSK1BZJB7QQKBVJvbGVzEhhVcGRhdGUgb3JnYW5pemF0aW9uIHJvbGUapANNb2RpZmllcyBhbiBleGlzdGluZyBvcmdhbml6YXRpb24gcm9sZSdzIHByb3BlcnRpZXMgaW5jbHVkaW5nIGRpc3BsYXkgbmFtZSwgZGVzY3JpcHRpb24sIHBlcm1pc3Npb25zLCBhbmQgaW5oZXJpdGFuY2Ugc2V0dGluZ3MuIFVzZSB0aGlzIGVuZHBvaW50IHRvIHVwZGF0ZSByb2xlIG1ldGFkYXRhLCBjaGFuZ2UgcGVybWlzc2lvbiBhc3NpZ25tZW50cywgb3IgbW9kaWZ5IHJvbGUgaGllcmFyY2h5IHdpdGhpbiB0aGUgb3JnYW5pemF0aW9uLiBPbmx5IHRoZSBmaWVsZHMgeW91IHNwZWNpZnkgd2lsbCBiZSB1cGRhdGVkLCBsZWF2aW5nIG90aGVyIHByb3BlcnRpZXMgdW5jaGFuZ2VkLiBXaGVuIHVwZGF0aW5nIHBlcm1pc3Npb25zLCB0aGUgbmV3IGxpc3QgcmVwbGFjZXMgYWxsIGV4aXN0aW5nIHBlcm1pc3Npb25zIGZvciB0aGUgcm9sZS5KogEKAzIwMBKaAQphT3JnYW5pemF0aW9uIHJvbGUgdXBkYXRlZCBzdWNjZXNzZnVsbHkuIFJldHVybnMgdGhlIG1vZGlmaWVkIHJvbGUgb2JqZWN0IHdpdGggdXBkYXRlZCB0aW1lc3RhbXBzLhI1CjMaMS5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2WCtRgCGESC0+STAjg6BHJvbGUaMC9hcGkvdjEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9yb2xlcy97cm9sZV9uYW1lfRK0BwoTR2V0T3JnYW5pemF0aW9uUm9sZRItLnNjYWxla2l0LnYxLnJvbGVzLkdldE9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0Gi4uc2NhbGVraXQudjEucm9sZXMuR2V0T3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIr0GkkHnBQoFUm9sZXMSHUdldCBvcmdhbml6YXRpb24gcm9sZSBkZXRhaWxzGr8DUmV0cmlldmVzIGNvbXBsZXRlIGluZm9ybWF0aW9uIGZvciBhIHNwZWNpZmljIG9yZ2FuaXphdGlvbiByb2xlIGluY2x1ZGluZyBtZXRhZGF0YSwgaW5oZXJpdGFuY2UgZGV0YWlscywgYW5kIG9wdGlvbmFsbHkgcGVybWlzc2lvbnMuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGF1ZGl0IHJvbGUgY29uZmlndXJhdGlvbiBhbmQgdW5kZXJzdGFuZCB0aGUgcm9sZSdzIHBsYWNlIGluIHRoZSBvcmdhbml6YXRpb24ncyByb2xlIGhpZXJhcmNoeS4gWW91IGNhbiBpbmNsdWRlIHBlcm1pc3Npb24gZGV0YWlscyB0byBzZWUgd2hhdCBjYXBhYmlsaXRpZXMgdGhlIHJvbGUgcHJvdmlkZXMuIFRoaXMgb3BlcmF0aW9uIGlzIHVzZWZ1bCBmb3Igcm9sZSBtYW5hZ2VtZW50LCB1c2VyIGFzc2lnbm1lbnQgZGVjaXNpb25zLCBvciB1bmRlcnN0YW5kaW5nIG9yZ2FuaXphdGlvbiBhY2Nlc3MgY29udHJvbHMuSvwBCgMyMDAS9AEKvQFTdWNjZXNzZnVsbHkgcmV0cmlldmVkIG9yZ2FuaXphdGlvbiByb2xlIGRldGFpbHMuIFJldHVybnMgdGhlIHJvbGUgb2JqZWN0IGluY2x1ZGluZyBtZXRhZGF0YSBhbmQgaW5oZXJpdGFuY2UgZGV0YWlscy4gUGVybWlzc2lvbnMgYXJlIGluY2x1ZGVkIG9ubHkgd2hlbiByZXF1ZXN0ZWQgdmlhIHRoZSBpbmNsdWRlIHBhcmFtZXRlci4SMgowGi4uc2NhbGVraXQudjEucm9sZXMuR2V0T3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlgrUYFgoSb3JnYW5pemF0aW9uc19yZWFkGHSC0+STAjISMC9hcGkvdjEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9yb2xlcy97cm9sZV9uYW1lfRK3BgoVTGlzdE9yZ2FuaXphdGlvblJvbGVzEi8uc2NhbGVraXQudjEucm9sZXMuTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVxdWVzdBowLnNjYWxla2l0LnYxLnJvbGVzLkxpc3RPcmdhbml6YXRpb25Sb2xlc1Jlc3BvbnNlIroFkkHwBAoFUm9sZXMSF0xpc3Qgb3JnYW5pemF0aW9uIHJvbGVzGpADUmV0cmlldmVzIGFsbCBlbnZpcm9ubWVudCByb2xlcyBhbmQgb3JnYW5pemF0aW9uIHNwZWNpZmljIHJvbGVzLiBVc2UgdGhpcyBlbmRwb2ludCB0byB2aWV3IGFsbCByb2xlIGRlZmluaXRpb25zLCBpbmNsdWRpbmcgY3VzdG9tIHJvbGVzIGFuZCB0aGVpciBjb25maWd1cmF0aW9ucy4gWW91IGNhbiBvcHRpb25hbGx5IGluY2x1ZGUgcGVybWlzc2lvbiBkZXRhaWxzIGZvciBlYWNoIHJvbGUgdG8gdW5kZXJzdGFuZCB0aGVpciBjYXBhYmlsaXRpZXMuIFRoaXMgaXMgdXNlZnVsIGZvciByb2xlIG1hbmFnZW1lbnQsIGF1ZGl0aW5nIG9yZ2FuaXphdGlvbiBhY2Nlc3MgY29udHJvbHMsIG9yIHVuZGVyc3RhbmRpbmcgdGhlIGF2YWlsYWJsZSBhY2Nlc3MgbGV2ZWxzIHdpdGhpbiB0aGUgb3JnYW5pemF0aW9uLkq6AQoDMjAwErIBCnpTdWNjZXNzZnVsbHkgcmV0cmlldmVkIGxpc3Qgb2Ygb3JnYW5pemF0aW9uIHJvbGVzLiBSZXR1cm5zIGFsbCByb2xlcyB3aXRoIHRoZWlyIG1ldGFkYXRhIGFuZCBvcHRpb25hbGx5IHRoZWlyIHBlcm1pc3Npb25zLhI0CjIaMC5zY2FsZWtpdC52MS5yb2xlcy5MaXN0T3JnYW5pemF0aW9uUm9sZXNSZXNwb25zZYK1GBYKEm9yZ2FuaXphdGlvbnNfcmVhZBh0gtPkkwImEiQvYXBpL3YxL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMSigYKFkRlbGV0ZU9yZ2FuaXphdGlvblJvbGUSMC5zY2FsZWtpdC52MS5yb2xlcy5EZWxldGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSKlBZJB4wQKBVJvbGVzEhhEZWxldGUgb3JnYW5pemF0aW9uIHJvbGUa1gNQZXJtYW5lbnRseSByZW1vdmVzIGEgcm9sZSBmcm9tIHRoZSBvcmdhbml6YXRpb24gYW5kIG9wdGlvbmFsbHkgcmVhc3NpZ25zIHVzZXJzIHdobyBoYWQgdGhhdCByb2xlIHRvIGEgZGlmZmVyZW50IHJvbGUuIFVzZSB0aGlzIGVuZHBvaW50IHdoZW4geW91IG5lZWQgdG8gY2xlYW4gdXAgdW51c2VkIHJvbGVzIG9yIHJlc3RydWN0dXJlIHlvdXIgb3JnYW5pemF0aW9uJ3MgYWNjZXNzIGNvbnRyb2wgc3lzdGVtLiBJZiB1c2VycyBhcmUgYXNzaWduZWQgdG8gdGhlIHJvbGUgYmVpbmcgZGVsZXRlZCwgeW91IGNhbiBwcm92aWRlIGEgcmVhc3NpZ25fcm9sZV9uYW1lIHRvIG1vdmUgdGhvc2UgdXNlcnMgdG8gYSBkaWZmZXJlbnQgcm9sZSBiZWZvcmUgZGVsZXRpb24uIFRoaXMgYWN0aW9uIGNhbm5vdCBiZSB1bmRvbmUsIHNvIGVuc3VyZSBubyBjcml0aWNhbCB1c2VycyBkZXBlbmQgb24gdGhlIHJvbGUgYmVmb3JlIGRlbGV0aW9uLkpnCgMyMDASYApeT3JnYW5pemF0aW9uIHJvbGUgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQgYW5kIHVzZXJzIHJlYXNzaWduZWQgaWYgc3BlY2lmaWVkLiBObyBjb250ZW50IHJldHVybmVkLoK1GAIYRILT5JMCMiowL2FwaS92MS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzL3tyb2xlX25hbWV9EtsIChFHZXRSb2xlVXNlcnNDb3VudBIrLnNjYWxla2l0LnYxLnJvbGVzLkdldFJvbGVVc2Vyc0NvdW50UmVxdWVzdBosLnNjYWxla2l0LnYxLnJvbGVzLkdldFJvbGVVc2Vyc0NvdW50UmVzcG9uc2Ui6geSQbMHCgVSb2xlcxIcUmV0cmlldmUgdXNlciBjb3VudCBmb3Igcm9sZRqTBVJldHJpZXZlcyB0aGUgdG90YWwgbnVtYmVyIG9mIHVzZXJzIGN1cnJlbnRseSBhc3NpZ25lZCB0byB0aGUgc3BlY2lmaWVkIHJvbGUgd2l0aGluIHRoZSBlbnZpcm9ubWVudC4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gbW9uaXRvciByb2xlIHVzYWdlLCBlbmZvcmNlIHVzZXIgbGltaXRzLCBvciB1bmRlcnN0YW5kIHRoZSBzY29wZSBvZiByb2xlIGFzc2lnbm1lbnRzLiBQcm92aWRlIHRoZSByb2xlJ3MgdW5pcXVlIG5hbWUgYXMgYSBwYXRoIHBhcmFtZXRlciwgYW5kIHRoZSByZXNwb25zZSB3aWxsIGluY2x1ZGUgdGhlIGN1cnJlbnQgdXNlciBjb3VudCBmb3IgdGhhdCByb2xlLiBUaGlzIG9wZXJhdGlvbiBpcyByZWFkLW9ubHkgYW5kIGRvZXMgbm90IG1vZGlmeSBhbnkgZGF0YSBvciB1c2VyIGFzc2lnbm1lbnRzLiBUaGUgY291bnQgcmVmbGVjdHMgYWxsIHVzZXJzIHdobyBoYXZlIHRoZSByb2xlIGVpdGhlciBkaXJlY3RseSBhc3NpZ25lZCBvciBpbmhlcml0ZWQgdGhyb3VnaCBvcmdhbml6YXRpb24gbWVtYmVyc2hpcC4gVGhpcyBpbmZvcm1hdGlvbiBpcyB1c2VmdWwgZm9yIGNhcGFjaXR5IHBsYW5uaW5nLCBzZWN1cml0eSBhdWRpdGluZywgb3IgdW5kZXJzdGFuZGluZyB0aGUgaW1wYWN0IG9mIHJvbGUgY2hhbmdlcyBhY3Jvc3MgeW91ciB1c2VyIGJhc2UuSvUBCgMyMDAS7QEKuAFTdWNjZXNzZnVsbHkgcmV0cmlldmVkIHVzZXIgY291bnQgZm9yIHRoZSBzcGVjaWZpZWQgcm9sZS4gUmV0dXJucyB0aGUgdG90YWwgbnVtYmVyIG9mIHVzZXJzIGN1cnJlbnRseSBhc3NpZ25lZCB0byB0aGUgcm9sZSwgaW5jbHVkaW5nIGJvdGggZGlyZWN0IGFzc2lnbm1lbnRzIGFuZCBpbmhlcml0ZWQgYXNzaWdubWVudHMuEjAKLhosLnNjYWxla2l0LnYxLnJvbGVzLkdldFJvbGVVc2Vyc0NvdW50UmVzcG9uc2WCtRgCGESC0+STAicSJS9hcGkvdjEvcm9sZXMve3JvbGVfbmFtZX0vdXNlcnM6Y291bnQSsgcKHUdldE9yZ2FuaXphdGlvblJvbGVVc2Vyc0NvdW50Ejcuc2NhbGVraXQudjEucm9sZXMuR2V0T3JnYW5pemF0aW9uUm9sZVVzZXJzQ291bnRSZXF1ZXN0Gjguc2NhbGVraXQudjEucm9sZXMuR2V0T3JnYW5pemF0aW9uUm9sZVVzZXJzQ291bnRSZXNwb25zZSKdBpJBwAUKBVJvbGVzEiBHZXQgb3JnYW5pemF0aW9uIHJvbGUgdXNlciBjb3VudBrAA1JldHJpZXZlcyB0aGUgdG90YWwgbnVtYmVyIG9mIHVzZXJzIGN1cnJlbnRseSBhc3NpZ25lZCB0byB0aGUgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbiByb2xlLiBVc2UgdGhpcyBlbmRwb2ludCB0byBtb25pdG9yIG9yZ2FuaXphdGlvbiByb2xlIHVzYWdlLCBlbmZvcmNlIHVzZXIgbGltaXRzLCBvciB1bmRlcnN0YW5kIHRoZSBzY29wZSBvZiByb2xlIGFzc2lnbm1lbnRzIHdpdGhpbiB0aGUgb3JnYW5pemF0aW9uLiBQcm92aWRlIHRoZSBvcmdhbml6YXRpb24gSUQgYW5kIHJvbGUgbmFtZSBhcyBwYXRoIHBhcmFtZXRlcnMuIFRoZSByZXNwb25zZSBpbmNsdWRlcyB0aGUgdXNlciBjb3VudCBmb3IgdGhlIHJlcXVlc3RlZCBvcmdhbml6YXRpb24gcm9sZS4gVGhpcyBvcGVyYXRpb24gaXMgcmVhZC1vbmx5IGFuZCBkb2VzIG5vdCBtb2RpZnkgYW55IGRhdGEgb3IgdXNlciBhc3NpZ25tZW50cy5K0QEKAzIwMBLJAQqIAVN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgdXNlciBjb3VudCBmb3IgdGhlIHNwZWNpZmllZCBvcmdhbml6YXRpb24gcm9sZS4gUmV0dXJucyB0aGUgdG90YWwgbnVtYmVyIG9mIHVzZXJzIGN1cnJlbnRseSBhc3NpZ25lZCB0byB0aGUgcm9sZS4SPAo6Gjguc2NhbGVraXQudjEucm9sZXMuR2V0T3JnYW5pemF0aW9uUm9sZVVzZXJzQ291bnRSZXNwb25zZYK1GAIYZPrS5JMCCRIHUFJFVklFV4LT5JMCPhI8L2FwaS92MS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzL3tyb2xlX25hbWV9L3VzZXJzOmNvdW50Ep4GChJVcGRhdGVEZWZhdWx0Um9sZXMSLC5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVEZWZhdWx0Um9sZXNSZXF1ZXN0Gi0uc2NhbGVraXQudjEucm9sZXMuVXBkYXRlRGVmYXVsdFJvbGVzUmVzcG9uc2UiqgWSQd8ECgVSb2xlcxIkU2V0IGRlZmF1bHQgY3JlYXRvciBhbmQgbWVtYmVyIHJvbGVzGs8DVXBkYXRlcyB0aGUgZGVmYXVsdCBjcmVhdG9yIGFuZCBtZW1iZXIgcm9sZXMgZm9yIHRoZSBjdXJyZW50IGVudmlyb25tZW50LiBVc2UgdGhpcyBlbmRwb2ludCB0byBjb25maWd1cmUgd2hpY2ggcm9sZXMgYXJlIGF1dG9tYXRpY2FsbHkgYXNzaWduZWQgdG8gbmV3IHVzZXJzIHdoZW4gdGhleSBqb2luIHRoZSBlbnZpcm9ubWVudC4gWW91IGNhbiBzcGVjaWZ5IHJvbGUgbmFtZXMgZm9yIGJvdGggY3JlYXRvciBhbmQgbWVtYmVyIGRlZmF1bHQgcm9sZXMuIFRoZSBzeXN0ZW0gd2lsbCB2YWxpZGF0ZSB0aGF0IHRoZSBzcGVjaWZpZWQgcm9sZXMgZXhpc3QgYW5kIHVwZGF0ZSB0aGUgZW52aXJvbm1lbnQgc2V0dGluZ3MgYWNjb3JkaW5nbHkuIFJldHVybnMgdGhlIHVwZGF0ZWQgZGVmYXVsdCByb2xlIG9iamVjdHMgaW5jbHVkaW5nIHRoZWlyIGNvbXBsZXRlIHJvbGUgaW5mb3JtYXRpb24gYW5kIHBlcm1pc3Npb25zLkpeCgMyMDASVwoiRGVmYXVsdCByb2xlcyB1cGRhdGVkIHN1Y2Nlc3NmdWxseRIxCi8aLS5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVEZWZhdWx0Um9sZXNSZXNwb25zZYK1GAIYRILT5JMCOzoBKloaOgEqMhUvYXBpL3YxL3JvbGVzL2RlZmF1bHQyGi9hcGkvdjEvcm9sZXM6c2V0X2RlZmF1bHRzEssGCh5VcGRhdGVEZWZhdWx0T3JnYW5pemF0aW9uUm9sZXMSOC5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVEZWZhdWx0T3JnYW5pemF0aW9uUm9sZXNSZXF1ZXN0Gjkuc2NhbGVraXQudjEucm9sZXMuVXBkYXRlRGVmYXVsdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2UiswWSQe0ECgVSb2xlcxIeU2V0IGRlZmF1bHQgb3JnYW5pemF0aW9uIHJvbGVzGvgCVXBkYXRlcyB0aGUgZGVmYXVsdCBtZW1iZXIgcm9sZSBmb3IgdGhlIHNwZWNpZmllZCBvcmdhbml6YXRpb24uIFVzZSB0aGlzIGVuZHBvaW50IHRvIGNvbmZpZ3VyZSB3aGljaCByb2xlIGlzIGF1dG9tYXRpY2FsbHkgYXNzaWduZWQgdG8gbmV3IHVzZXJzIHdoZW4gdGhleSBqb2luIHRoZSBvcmdhbml6YXRpb24uIFRoZSBzeXN0ZW0gd2lsbCB2YWxpZGF0ZSB0aGF0IHRoZSBzcGVjaWZpZWQgcm9sZSBleGlzdHMgYW5kIHVwZGF0ZSB0aGUgb3JnYW5pemF0aW9uIHNldHRpbmdzIGFjY29yZGluZ2x5LiBUaGlzIGNvbmZpZ3VyYXRpb24gYWZmZWN0cyBhbGwgbmV3IHVzZXIgaW52aXRhdGlvbnMgYW5kIG1lbWJlcnNoaXBzIHdpdGhpbiB0aGUgb3JnYW5pemF0aW9uLkrIAQoDMjAwEsABCn9EZWZhdWx0IG9yZ2FuaXphdGlvbiByb2xlcyB1cGRhdGVkIHN1Y2Nlc3NmdWxseS4gUmV0dXJucyB0aGUgdXBkYXRlZCBkZWZhdWx0IG1lbWJlciByb2xlIG9iamVjdCB3aXRoIGNvbXBsZXRlIHJvbGUgaW5mb3JtYXRpb24uEj0KOxo5LnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZURlZmF1bHRPcmdhbml6YXRpb25Sb2xlc1Jlc3BvbnNlgrUYAhhEgtPkkwI2OgEqMjEvYXBpL3YxL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXM6c2V0X2RlZmF1bHRzEqQIChJMaXN0RGVwZW5kZW50Um9sZXMSLC5zY2FsZWtpdC52MS5yb2xlcy5MaXN0RGVwZW5kZW50Um9sZXNSZXF1ZXN0Gi0uc2NhbGVraXQudjEucm9sZXMuTGlzdERlcGVuZGVudFJvbGVzUmVzcG9uc2UisAeSQfoGCgVSb2xlcxIUTGlzdCBkZXBlbmRlbnQgcm9sZXMa/ARSZXRyaWV2ZXMgYWxsIHJvbGVzIHRoYXQgZGlyZWN0bHkgZXh0ZW5kIHRoZSBzcGVjaWZpZWQgYmFzZSByb2xlIHRocm91Z2ggaW5oZXJpdGFuY2UuIFVzZSB0aGlzIGVuZHBvaW50IHRvIHVuZGVyc3RhbmQgdGhlIHJvbGUgaGllcmFyY2h5IGFuZCBpZGVudGlmeSB3aGljaCByb2xlcyBpbmhlcml0IHBlcm1pc3Npb25zIGZyb20gYSBwYXJ0aWN1bGFyIGJhc2Ugcm9sZS4gUHJvdmlkZSB0aGUgYmFzZSByb2xlIG5hbWUgYXMgYSBwYXRoIHBhcmFtZXRlciwgYW5kIHRoZSByZXNwb25zZSB3aWxsIGluY2x1ZGUgYWxsIGRlcGVuZGVudCByb2xlcyB3aXRoIHRoZWlyIG1ldGFkYXRhIGFuZCBwZXJtaXNzaW9uIGluZm9ybWF0aW9uLiBUaGlzIG9wZXJhdGlvbiBpcyB1c2VmdWwgZm9yIGF1ZGl0aW5nIHJvbGUgaW5oZXJpdGFuY2UgcmVsYXRpb25zaGlwcywgdW5kZXJzdGFuZGluZyB0aGUgaW1wYWN0IG9mIGNoYW5nZXMgdG8gYmFzZSByb2xlcywgb3IgbWFuYWdpbmcgcm9sZSBoaWVyYXJjaGllcyBlZmZlY3RpdmVseS4gUmV0dXJucyBhIGxpc3Qgb2YgZGVwZW5kZW50IHJvbGUgb2JqZWN0cyBpbmNsdWRpbmcgdGhlaXIgbmFtZXMsIGRpc3BsYXkgbmFtZXMsIGRlc2NyaXB0aW9ucywgYW5kIHBlcm1pc3Npb24gZGV0YWlscy5K2wEKAzIwMBLTAQqdAVN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgZGVwZW5kZW50IHJvbGVzLiBSZXR1cm5zIGEgbGlzdCBvZiBhbGwgcm9sZXMgdGhhdCBleHRlbmQgdGhlIHNwZWNpZmllZCBiYXNlIHJvbGUsIGluY2x1ZGluZyB0aGVpciBtZXRhZGF0YSBhbmQgcGVybWlzc2lvbiBpbmZvcm1hdGlvbi4SMQovGi0uc2NhbGVraXQudjEucm9sZXMuTGlzdERlcGVuZGVudFJvbGVzUmVzcG9uc2WCtRgCGGSC0+STAiYSJC9hcGkvdjEvcm9sZXMve3JvbGVfbmFtZX0vZGVwZW5kZW50cxK3BgoORGVsZXRlUm9sZUJhc2USKC5zY2FsZWtpdC52MS5yb2xlcy5EZWxldGVSb2xlQmFzZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHki4gWSQbIFCgVSb2xlcxIkRGVsZXRlIHJvbGUgaW5oZXJpdGFuY2UgcmVsYXRpb25zaGlwGoYEUmVtb3ZlcyB0aGUgYmFzZSByb2xlIGluaGVyaXRhbmNlIHJlbGF0aW9uc2hpcCBmb3IgYSBzcGVjaWZpZWQgcm9sZSwgZWZmZWN0aXZlbHkgZWxpbWluYXRpbmcgYWxsIGluaGVyaXRlZCBwZXJtaXNzaW9ucyBmcm9tIHRoZSBiYXNlIHJvbGUuIFVzZSB0aGlzIGVuZHBvaW50IHdoZW4geW91IHdhbnQgdG8gYnJlYWsgdGhlIGhpZXJhcmNoaWNhbCByZWxhdGlvbnNoaXAgYmV0d2VlbiByb2xlcyBhbmQgcmVtb3ZlIGluaGVyaXRlZCBwZXJtaXNzaW9ucy4gVGhlIHJvbGUgd2lsbCByZXRhaW4gb25seSBpdHMgZGlyZWN0bHkgYXNzaWduZWQgcGVybWlzc2lvbnMgYWZ0ZXIgdGhpcyBvcGVyYXRpb24uIFRoaXMgYWN0aW9uIGNhbm5vdCBiZSB1bmRvbmUsIHNvIGVuc3VyZSB0aGUgcm9sZSBoYXMgc3VmZmljaWVudCBkaXJlY3QgcGVybWlzc2lvbnMgYmVmb3JlIHJlbW92aW5nIGluaGVyaXRhbmNlLiBSZXR1cm5zIG5vIGNvbnRlbnQgb24gc3VjY2Vzc2Z1bCByZW1vdmFsIG9mIHRoZSBiYXNlIHJlbGF0aW9uc2hpcC5KegoDMjAwEnMKcUJhc2Ugcm9sZSBpbmhlcml0YW5jZSByZWxhdGlvbnNoaXAgc3VjY2Vzc2Z1bGx5IHJlbW92ZWQuIFRoZSByb2xlIG5vdyBoYXMgb25seSBpdHMgZGlyZWN0bHkgYXNzaWduZWQgcGVybWlzc2lvbnMugrUYAhhEgtPkkwIgKh4vYXBpL3YxL3JvbGVzL3tyb2xlX25hbWV9L2Jhc2US5gYKGkRlbGV0ZU9yZ2FuaXphdGlvblJvbGVCYXNlEjQuc2NhbGVraXQudjEucm9sZXMuRGVsZXRlT3JnYW5pemF0aW9uUm9sZUJhc2VSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IvkFkkGjBQoFUm9sZXMSJFJlbW92ZSBvcmdhbml6YXRpb24gcm9sZSBpbmhlcml0YW5jZRroA1JlbW92ZXMgdGhlIGJhc2Ugcm9sZSBpbmhlcml0YW5jZSByZWxhdGlvbnNoaXAgZm9yIGEgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbiByb2xlLCBlZmZlY3RpdmVseSBlbGltaW5hdGluZyBhbGwgaW5oZXJpdGVkIHBlcm1pc3Npb25zIGZyb20gdGhlIGJhc2Ugcm9sZS4gVXNlIHRoaXMgZW5kcG9pbnQgd2hlbiB5b3Ugd2FudCB0byBicmVhayB0aGUgaGllcmFyY2hpY2FsIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHJvbGVzIGFuZCByZW1vdmUgaW5oZXJpdGVkIHBlcm1pc3Npb25zIHdpdGhpbiB0aGUgb3JnYW5pemF0aW9uLiBUaGUgcm9sZSB3aWxsIHJldGFpbiBvbmx5IGl0cyBkaXJlY3RseSBhc3NpZ25lZCBwZXJtaXNzaW9ucyBhZnRlciB0aGlzIG9wZXJhdGlvbi4gVGhpcyBhY3Rpb24gY2Fubm90IGJlIHVuZG9uZSwgc28gZW5zdXJlIHRoZSByb2xlIGhhcyBzdWZmaWNpZW50IGRpcmVjdCBwZXJtaXNzaW9ucyBiZWZvcmUgcmVtb3ZpbmcgaW5oZXJpdGFuY2UuSogBCgMyMDASgAEKfk9yZ2FuaXphdGlvbiByb2xlIGJhc2UgaW5oZXJpdGFuY2UgcmVsYXRpb25zaGlwIHN1Y2Nlc3NmdWxseSByZW1vdmVkLiBUaGUgcm9sZSBub3cgaGFzIG9ubHkgaXRzIGRpcmVjdGx5IGFzc2lnbmVkIHBlcm1pc3Npb25zLoK1GAIYRPrS5JMCCRIHUFJFVklFV4LT5JMCNyo1L2FwaS92MS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzL3tyb2xlX25hbWV9L2Jhc2USzwcKEENyZWF0ZVBlcm1pc3Npb24SKi5zY2FsZWtpdC52MS5yb2xlcy5DcmVhdGVQZXJtaXNzaW9uUmVxdWVzdBorLnNjYWxla2l0LnYxLnJvbGVzLkNyZWF0ZVBlcm1pc3Npb25SZXNwb25zZSLhBpJBsAYKC1Blcm1pc3Npb25zEhVDcmVhdGUgbmV3IHBlcm1pc3Npb24axgRDcmVhdGVzIGEgbmV3IHBlcm1pc3Npb24gdGhhdCByZXByZXNlbnRzIGEgc3BlY2lmaWMgYWN0aW9uIHVzZXJzIGNhbiBwZXJmb3JtIHdpdGhpbiB0aGUgZW52aXJvbm1lbnQuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGRlZmluZSBncmFudWxhciBhY2Nlc3MgY29udHJvbHMgZm9yIHlvdXIgUkJBQyBzeXN0ZW0uIFlvdSBjYW4gcHJvdmlkZSBhIHVuaXF1ZSBwZXJtaXNzaW9uIG5hbWUgZm9sbG93aW5nIHRoZSBmb3JtYXQgJ2FjdGlvbjpyZXNvdXJjZScgKGZvciBleGFtcGxlLCAncmVhZDpkb2N1bWVudHMnLCAnd3JpdGU6dXNlcnMnKSBhbmQgYW4gb3B0aW9uYWwgZGVzY3JpcHRpb24gZXhwbGFpbmluZyB0aGUgcGVybWlzc2lvbidzIHB1cnBvc2UuIFRoZSBwZXJtaXNzaW9uIG5hbWUgbXVzdCBiZSB1bmlxdWUgYWNyb3NzIHRoZSBlbnZpcm9ubWVudCBhbmQgZm9sbG93cyBhbHBoYW51bWVyaWMgbmFtaW5nIGNvbnZlbnRpb25zIHdpdGggY29sb25zIGFuZCB1bmRlcnNjb3Jlcy4gUmV0dXJucyB0aGUgY3JlYXRlZCBwZXJtaXNzaW9uIG9iamVjdCBpbmNsdWRpbmcgc3lzdGVtLWdlbmVyYXRlZCBJRCBhbmQgdGltZXN0YW1wcy5KwAEKAzIwMRK4AQqEAVBlcm1pc3Npb24gY3JlYXRlZCBzdWNjZXNzZnVsbHkuIFJldHVybnMgdGhlIGNvbXBsZXRlIHBlcm1pc3Npb24gb2JqZWN0IHdpdGggc3lzdGVtLWdlbmVyYXRlZCBJRCwgbmFtZSwgZGVzY3JpcHRpb24sIGFuZCB0aW1lc3RhbXBzLhIvCi0aKy5zY2FsZWtpdC52MS5yb2xlcy5DcmVhdGVQZXJtaXNzaW9uUmVzcG9uc2WCtRgCGESC0+STAiE6CnBlcm1pc3Npb24iEy9hcGkvdjEvcGVybWlzc2lvbnMSvQcKDUdldFBlcm1pc3Npb24SJy5zY2FsZWtpdC52MS5yb2xlcy5HZXRQZXJtaXNzaW9uUmVxdWVzdBooLnNjYWxla2l0LnYxLnJvbGVzLkdldFBlcm1pc3Npb25SZXNwb25zZSLYBpJBoQYKC1Blcm1pc3Npb25zEhtSZXRyaWV2ZSBwZXJtaXNzaW9uIGRldGFpbHMaqgRSZXRyaWV2ZXMgY29tcGxldGUgaW5mb3JtYXRpb24gZm9yIGEgc3BlY2lmaWMgcGVybWlzc2lvbiBieSBpdHMgdW5pcXVlIG5hbWUgaWRlbnRpZmllci4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdmlldyBwZXJtaXNzaW9uIGRldGFpbHMgaW5jbHVkaW5nIGRlc2NyaXB0aW9uLCBjcmVhdGlvbiB0aW1lLCBhbmQgbGFzdCB1cGRhdGUgdGltZS4gUHJvdmlkZSB0aGUgcGVybWlzc2lvbiBuYW1lIGluIHRoZSBwYXRoIHBhcmFtZXRlciBmb2xsb3dpbmcgdGhlIGZvcm1hdCAnYWN0aW9uOnJlc291cmNlJyAoZm9yIGV4YW1wbGUsICdyZWFkOmRvY3VtZW50cycpLiBUaGlzIG9wZXJhdGlvbiBpcyB1c2VmdWwgZm9yIGF1ZGl0aW5nIHBlcm1pc3Npb24gZGVmaW5pdGlvbnMsIHVuZGVyc3RhbmRpbmcgcGVybWlzc2lvbiBwdXJwb3Nlcywgb3IgdmVyaWZ5aW5nIHBlcm1pc3Npb24gZXhpc3RlbmNlIGJlZm9yZSBhc3NpZ25tZW50LiBSZXR1cm5zIHRoZSBjb21wbGV0ZSBwZXJtaXNzaW9uIG9iamVjdCB3aXRoIGFsbCBtZXRhZGF0YSBhbmQgc3lzdGVtLWdlbmVyYXRlZCB0aW1lc3RhbXBzLkrHAQoDMjAwEr8BCo4BU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBwZXJtaXNzaW9uIGRldGFpbHMuIFJldHVybnMgdGhlIGNvbXBsZXRlIHBlcm1pc3Npb24gb2JqZWN0IGluY2x1ZGluZyBuYW1lLCBkZXNjcmlwdGlvbiwgY3JlYXRpb24gdGltZSwgYW5kIHVwZGF0ZSB0aW1lLhIsCioaKC5zY2FsZWtpdC52MS5yb2xlcy5HZXRQZXJtaXNzaW9uUmVzcG9uc2WCtRgCGESC0+STAicSJS9hcGkvdjEvcGVybWlzc2lvbnMve3Blcm1pc3Npb25fbmFtZX0SgwgKEFVwZGF0ZVBlcm1pc3Npb24SKi5zY2FsZWtpdC52MS5yb2xlcy5VcGRhdGVQZXJtaXNzaW9uUmVxdWVzdBorLnNjYWxla2l0LnYxLnJvbGVzLlVwZGF0ZVBlcm1pc3Npb25SZXNwb25zZSKVB5JB0gYKC1Blcm1pc3Npb25zEhlVcGRhdGUgcGVybWlzc2lvbiBkZXRhaWxzGvkETW9kaWZpZXMgYW4gZXhpc3RpbmcgcGVybWlzc2lvbidzIGF0dHJpYnV0ZXMgaW5jbHVkaW5nIGRlc2NyaXB0aW9uIGFuZCBtZXRhZGF0YS4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdXBkYXRlIHBlcm1pc3Npb24gZGVzY3JpcHRpb25zIG9yIGNsYXJpZnkgcGVybWlzc2lvbiBwdXJwb3NlcyBhZnRlciBjcmVhdGlvbi4gVGhlIHBlcm1pc3Npb24gaXMgaWRlbnRpZmllZCBieSBpdHMgdW5pcXVlIG5hbWUgaW4gdGhlIHBhdGggcGFyYW1ldGVyLCBhbmQgb25seSB0aGUgZmllbGRzIHlvdSBzcGVjaWZ5IGluIHRoZSByZXF1ZXN0IGJvZHkgd2lsbCBiZSB1cGRhdGVkLiBOb3RlIHRoYXQgdGhlIHBlcm1pc3Npb24gbmFtZSBpdHNlbGYgY2Fubm90IGJlIGNoYW5nZWQgYXMgaXQgc2VydmVzIGFzIHRoZSBpbW11dGFibGUgaWRlbnRpZmllci4gVGhpcyBvcGVyYXRpb24gaXMgdXNlZnVsIGZvciBtYWludGFpbmluZyBjbGVhciBkb2N1bWVudGF0aW9uIG9mIHBlcm1pc3Npb24gcHVycG9zZXMgb3IgdXBkYXRpbmcgZGVzY3JpcHRpb25zIHRvIHJlZmxlY3QgY2hhbmdlcyBpbiBzeXN0ZW0gZnVuY3Rpb25hbGl0eS4gUmV0dXJucyB0aGUgdXBkYXRlZCBwZXJtaXNzaW9uIG9iamVjdCB3aXRoIG1vZGlmaWVkIHRpbWVzdGFtcHMuSqsBCgMyMDASowEKcFBlcm1pc3Npb24gdXBkYXRlZCBzdWNjZXNzZnVsbHkuIFJldHVybnMgdGhlIG1vZGlmaWVkIHBlcm1pc3Npb24gb2JqZWN0IHdpdGggdXBkYXRlZCBkZXNjcmlwdGlvbiBhbmQgdGltZXN0YW1wcy4SLwotGisuc2NhbGVraXQudjEucm9sZXMuVXBkYXRlUGVybWlzc2lvblJlc3BvbnNlgrUYAhhEgtPkkwIzOgpwZXJtaXNzaW9uGiUvYXBpL3YxL3Blcm1pc3Npb25zL3twZXJtaXNzaW9uX25hbWV9EvEHCg9MaXN0UGVybWlzc2lvbnMSKS5zY2FsZWtpdC52MS5yb2xlcy5MaXN0UGVybWlzc2lvbnNSZXF1ZXN0Giouc2NhbGVraXQudjEucm9sZXMuTGlzdFBlcm1pc3Npb25zUmVzcG9uc2UihgeSQeEGCgtQZXJtaXNzaW9ucxIUTGlzdCBhbGwgcGVybWlzc2lvbnMa6wRSZXRyaWV2ZXMgYSBjb21wcmVoZW5zaXZlLCBwYWdpbmF0ZWQgbGlzdCBvZiBhbGwgcGVybWlzc2lvbnMgYXZhaWxhYmxlIHdpdGhpbiB0aGUgZW52aXJvbm1lbnQuIFVzZSB0aGlzIGVuZHBvaW50IHRvIHZpZXcgYWxsIHBlcm1pc3Npb24gZGVmaW5pdGlvbnMgZm9yIGF1ZGl0aW5nLCByb2xlIG1hbmFnZW1lbnQsIG9yIHVuZGVyc3RhbmRpbmcgdGhlIGNvbXBsZXRlIHNldCBvZiBhdmFpbGFibGUgYWNjZXNzIGNvbnRyb2xzLiBUaGUgcmVzcG9uc2UgaW5jbHVkZXMgcGFnaW5hdGlvbiB0b2tlbnMgdG8gbmF2aWdhdGUgdGhyb3VnaCBsYXJnZSBzZXRzIG9mIHBlcm1pc3Npb25zIGVmZmljaWVudGx5LiBFYWNoIHBlcm1pc3Npb24gb2JqZWN0IGNvbnRhaW5zIHRoZSBwZXJtaXNzaW9uIG5hbWUsIGRlc2NyaXB0aW9uLCBjcmVhdGlvbiB0aW1lLCBhbmQgbGFzdCB1cGRhdGUgdGltZS4gVGhpcyBvcGVyYXRpb24gaXMgdXNlZnVsIGZvciBidWlsZGluZyBwZXJtaXNzaW9uIHNlbGVjdGlvbiBpbnRlcmZhY2VzLCBhdWRpdGluZyBwZXJtaXNzaW9uIHVzYWdlLCBvciB1bmRlcnN0YW5kaW5nIHRoZSBzY29wZSBvZiBhdmFpbGFibGUgYWNjZXNzIGNvbnRyb2xzIGluIHlvdXIgUkJBQyBzeXN0ZW0uSs0BCgMyMDASxQEKkgFTdWNjZXNzZnVsbHkgcmV0cmlldmVkIHRoZSBsaXN0IG9mIHBlcm1pc3Npb25zLiBSZXR1cm5zIGEgcGFnaW5hdGVkIGxpc3Qgb2YgcGVybWlzc2lvbiBvYmplY3RzIHdpdGggbWV0YWRhdGEgYW5kIHBhZ2luYXRpb24gdG9rZW5zIGZvciBuYXZpZ2F0aW9uLhIuCiwaKi5zY2FsZWtpdC52MS5yb2xlcy5MaXN0UGVybWlzc2lvbnNSZXNwb25zZYK1GAIYRILT5JMCFRITL2FwaS92MS9wZXJtaXNzaW9ucxLQBgoQRGVsZXRlUGVybWlzc2lvbhIqLnNjYWxla2l0LnYxLnJvbGVzLkRlbGV0ZVBlcm1pc3Npb25SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IvcFkkHABQoLUGVybWlzc2lvbnMSEURlbGV0ZSBwZXJtaXNzaW9uGt0EUGVybWFuZW50bHkgcmVtb3ZlcyBhIHBlcm1pc3Npb24gZnJvbSB0aGUgZW52aXJvbm1lbnQgdXNpbmcgaXRzIHVuaXF1ZSBuYW1lIGlkZW50aWZpZXIuIFVzZSB0aGlzIGVuZHBvaW50IHdoZW4geW91IG5lZWQgdG8gY2xlYW4gdXAgdW51c2VkIHBlcm1pc3Npb25zIG9yIHJlbW92ZSBhY2Nlc3MgY29udHJvbHMgdGhhdCBhcmUgbm8gbG9uZ2VyIHJlbGV2YW50LiBUaGUgcGVybWlzc2lvbiBpcyBpZGVudGlmaWVkIGJ5IGl0cyBuYW1lIGluIHRoZSBwYXRoIHBhcmFtZXRlciBmb2xsb3dpbmcgdGhlIGZvcm1hdCAnYWN0aW9uOnJlc291cmNlJy4gVGhpcyBvcGVyYXRpb24gY2Fubm90IGJlIHVuZG9uZSwgc28gZW5zdXJlIG5vIGFjdGl2ZSByb2xlcyBkZXBlbmQgb24gdGhlIHBlcm1pc3Npb24gYmVmb3JlIGRlbGV0aW9uLiBJZiB0aGUgcGVybWlzc2lvbiBpcyBjdXJyZW50bHkgYXNzaWduZWQgdG8gYW55IHJvbGVzLCB5b3UgbWF5IG5lZWQgdG8gcmVtb3ZlIHRob3NlIGFzc2lnbm1lbnRzIGZpcnN0IG9yIHVwZGF0ZSB0aGUgcm9sZXMgdG8gdXNlIGFsdGVybmF0aXZlIHBlcm1pc3Npb25zLiBSZXR1cm5zIG5vIGNvbnRlbnQgb24gc3VjY2Vzc2Z1bCBkZWxldGlvbi5KPgoDMjAwEjcKNVBlcm1pc3Npb24gc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQuIE5vIGNvbnRlbnQgcmV0dXJuZWQugrUYAhhEgtPkkwInKiUvYXBpL3YxL3Blcm1pc3Npb25zL3twZXJtaXNzaW9uX25hbWV9EoAJChNMaXN0Um9sZVBlcm1pc3Npb25zEi0uc2NhbGVraXQudjEucm9sZXMuTGlzdFJvbGVQZXJtaXNzaW9uc1JlcXVlc3QaLi5zY2FsZWtpdC52MS5yb2xlcy5MaXN0Um9sZVBlcm1pc3Npb25zUmVzcG9uc2UiiQiSQdIHCgVSb2xlcxIZTGlzdCBwZXJtaXNzaW9ucyBmb3Igcm9sZRrXBVJldHJpZXZlcyBhbGwgcGVybWlzc2lvbnMgZGlyZWN0bHkgYXNzaWduZWQgdG8gdGhlIHNwZWNpZmllZCByb2xlLCBleGNsdWRpbmcgcGVybWlzc2lvbnMgaW5oZXJpdGVkIGZyb20gYmFzZSByb2xlcy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gdmlldyB0aGUgZXhwbGljaXQgcGVybWlzc2lvbiBhc3NpZ25tZW50cyBmb3IgYSByb2xlLCB3aGljaCBpcyB1c2VmdWwgZm9yIHVuZGVyc3RhbmRpbmcgZGlyZWN0IHJvbGUgY2FwYWJpbGl0aWVzLCBhdWRpdGluZyBwZXJtaXNzaW9uIGFzc2lnbm1lbnRzLCBvciBtYW5hZ2luZyByb2xlLXBlcm1pc3Npb24gcmVsYXRpb25zaGlwcy4gUHJvdmlkZSB0aGUgcm9sZSBuYW1lIGFzIGEgcGF0aCBwYXJhbWV0ZXIsIGFuZCB0aGUgcmVzcG9uc2Ugd2lsbCBpbmNsdWRlIG9ubHkgdGhlIHBlcm1pc3Npb25zIHRoYXQgYXJlIGRpcmVjdGx5IGFzc2lnbmVkIHRvIHRoYXQgcm9sZS4gVGhpcyBvcGVyYXRpb24gZG9lcyBub3QgaW5jbHVkZSBpbmhlcml0ZWQgcGVybWlzc2lvbnMgZnJvbSByb2xlIGhpZXJhcmNoaWVzIC0gdXNlIExpc3RFZmZlY3RpdmVSb2xlUGVybWlzc2lvbnMgdG8gc2VlIHRoZSBjb21wbGV0ZSBzZXQgb2YgcGVybWlzc2lvbnMgaW5jbHVkaW5nIGluaGVyaXRhbmNlLiBSZXR1cm5zIGEgbGlzdCBvZiBwZXJtaXNzaW9uIG9iamVjdHMgd2l0aCB0aGVpciBuYW1lcywgZGVzY3JpcHRpb25zLCBhbmQgYXNzaWdubWVudCBtZXRhZGF0YS5K0wEKAzIwMBLLAQqUAVN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgcm9sZSBwZXJtaXNzaW9ucy4gUmV0dXJucyBhIGxpc3Qgb2YgYWxsIHBlcm1pc3Npb25zIGRpcmVjdGx5IGFzc2lnbmVkIHRvIHRoZSBzcGVjaWZpZWQgcm9sZSwgZXhjbHVkaW5nIGluaGVyaXRlZCBwZXJtaXNzaW9ucy4SMgowGi4uc2NhbGVraXQudjEucm9sZXMuTGlzdFJvbGVQZXJtaXNzaW9uc1Jlc3BvbnNlgrUYAhhEgtPkkwInEiUvYXBpL3YxL3JvbGVzL3tyb2xlX25hbWV9L3Blcm1pc3Npb25zEvoIChRBZGRQZXJtaXNzaW9uc1RvUm9sZRIuLnNjYWxla2l0LnYxLnJvbGVzLkFkZFBlcm1pc3Npb25zVG9Sb2xlUmVxdWVzdBovLnNjYWxla2l0LnYxLnJvbGVzLkFkZFBlcm1pc3Npb25zVG9Sb2xlUmVzcG9uc2UigAiSQcYHCgVSb2xlcxIXQWRkIHBlcm1pc3Npb25zIHRvIHJvbGUavQVBZGRzIG9uZSBvciBtb3JlIHBlcm1pc3Npb25zIHRvIHRoZSBzcGVjaWZpZWQgcm9sZSB3aGlsZSBwcmVzZXJ2aW5nIGV4aXN0aW5nIHBlcm1pc3Npb24gYXNzaWdubWVudHMuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGdyYW50IGFkZGl0aW9uYWwgY2FwYWJpbGl0aWVzIHRvIGEgcm9sZSB3aXRob3V0IGFmZmVjdGluZyBpdHMgY3VycmVudCBwZXJtaXNzaW9uIHNldC4gUHJvdmlkZSB0aGUgcm9sZSBuYW1lIGFzIGEgcGF0aCBwYXJhbWV0ZXIgYW5kIGEgbGlzdCBvZiBwZXJtaXNzaW9uIG5hbWVzIGluIHRoZSByZXF1ZXN0IGJvZHkuIFRoZSBzeXN0ZW0gd2lsbCB2YWxpZGF0ZSB0aGF0IGFsbCBzcGVjaWZpZWQgcGVybWlzc2lvbnMgZXhpc3QgaW4gdGhlIGVudmlyb25tZW50IGFuZCBhZGQgdGhlbSB0byB0aGUgcm9sZS4gRXhpc3RpbmcgcGVybWlzc2lvbiBhc3NpZ25tZW50cyByZW1haW4gdW5jaGFuZ2VkLCBtYWtpbmcgdGhpcyBvcGVyYXRpb24gc2FmZSBmb3IgaW5jcmVtZW50YWwgcGVybWlzc2lvbiBtYW5hZ2VtZW50LiBUaGlzIGlzIHVzZWZ1bCBmb3IgZ3JhZHVhbGx5IGV4cGFuZGluZyByb2xlIGNhcGFiaWxpdGllcyBvciBhZGRpbmcgbmV3IHBlcm1pc3Npb25zIGFzIHlvdXIgc3lzdGVtIGV2b2x2ZXMuIFJldHVybnMgdGhlIHVwZGF0ZWQgbGlzdCBvZiBhbGwgcGVybWlzc2lvbnMgbm93IGFzc2lnbmVkIHRvIHRoZSByb2xlLkrjAQoDMjAwEtsBCqMBUGVybWlzc2lvbnMgYWRkZWQgdG8gcm9sZSBzdWNjZXNzZnVsbHkuIFJldHVybnMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgYWxsIHBlcm1pc3Npb25zIG5vdyBhc3NpZ25lZCB0byB0aGUgcm9sZSwgaW5jbHVkaW5nIGJvdGggZXhpc3RpbmcgYW5kIG5ld2x5IGFkZGVkIHBlcm1pc3Npb25zLhIzCjEaLy5zY2FsZWtpdC52MS5yb2xlcy5BZGRQZXJtaXNzaW9uc1RvUm9sZVJlc3BvbnNlgrUYAhhEgtPkkwIqOgEqIiUvYXBpL3YxL3JvbGVzL3tyb2xlX25hbWV9L3Blcm1pc3Npb25zErcHChhSZW1vdmVQZXJtaXNzaW9uRnJvbVJvbGUSMi5zY2FsZWtpdC52MS5yb2xlcy5SZW1vdmVQZXJtaXNzaW9uRnJvbVJvbGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Is4GkkGFBgoFUm9sZXMSG1JlbW92ZSBwZXJtaXNzaW9uIGZyb20gcm9sZRqUBVJlbW92ZXMgYSBzcGVjaWZpYyBwZXJtaXNzaW9uIGZyb20gdGhlIHNwZWNpZmllZCByb2xlLCByZXZva2luZyB0aGF0IGNhcGFiaWxpdHkgZnJvbSBhbGwgdXNlcnMgYXNzaWduZWQgdG8gdGhlIHJvbGUuIFVzZSB0aGlzIGVuZHBvaW50IHRvIHJlc3RyaWN0IHJvbGUgY2FwYWJpbGl0aWVzIG9yIHJlbW92ZSB1bm5lY2Vzc2FyeSBwZXJtaXNzaW9ucy4gUHJvdmlkZSBib3RoIHRoZSByb2xlIG5hbWUgYW5kIHBlcm1pc3Npb24gbmFtZSBhcyBwYXRoIHBhcmFtZXRlcnMuIFRoaXMgb3BlcmF0aW9uIG9ubHkgYWZmZWN0cyB0aGUgZGlyZWN0IHBlcm1pc3Npb24gYXNzaWdubWVudCBhbmQgZG9lcyBub3QgaW1wYWN0IHBlcm1pc3Npb25zIGluaGVyaXRlZCBmcm9tIGJhc2Ugcm9sZXMuIElmIHRoZSBwZXJtaXNzaW9uIGlzIGluaGVyaXRlZCB0aHJvdWdoIHJvbGUgaGllcmFyY2h5LCB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHRoZSBiYXNlIHJvbGUgaW5zdGVhZC4gVGhpcyBpcyB1c2VmdWwgZm9yIGZpbmUtdHVuaW5nIHJvbGUgcGVybWlzc2lvbnMsIGltcGxlbWVudGluZyBsZWFzdC1wcml2aWxlZ2UgYWNjZXNzIGNvbnRyb2xzLCBvciByZW1vdmluZyBkZXByZWNhdGVkIHBlcm1pc3Npb25zLiBSZXR1cm5zIG5vIGNvbnRlbnQgb24gc3VjY2Vzc2Z1bCByZW1vdmFsLkpICgMyMDASQQo/UGVybWlzc2lvbiByZW1vdmVkIGZyb20gcm9sZSBzdWNjZXNzZnVsbHkuIE5vIGNvbnRlbnQgcmV0dXJuZWQugrUYAhhEgtPkkwI5KjcvYXBpL3YxL3JvbGVzL3tyb2xlX25hbWV9L3Blcm1pc3Npb25zL3twZXJtaXNzaW9uX25hbWV9Et8JChxMaXN0RWZmZWN0aXZlUm9sZVBlcm1pc3Npb25zEjYuc2NhbGVraXQudjEucm9sZXMuTGlzdEVmZmVjdGl2ZVJvbGVQZXJtaXNzaW9uc1JlcXVlc3QaNy5zY2FsZWtpdC52MS5yb2xlcy5MaXN0RWZmZWN0aXZlUm9sZVBlcm1pc3Npb25zUmVzcG9uc2UizQiSQZIICgVSb2xlcxIjTGlzdCBlZmZlY3RpdmUgcGVybWlzc2lvbnMgZm9yIHJvbGUa2QVSZXRyaWV2ZXMgdGhlIGNvbXBsZXRlIHNldCBvZiBlZmZlY3RpdmUgcGVybWlzc2lvbnMgZm9yIGEgcm9sZSwgaW5jbHVkaW5nIGJvdGggZGlyZWN0bHkgYXNzaWduZWQgcGVybWlzc2lvbnMgYW5kIHBlcm1pc3Npb25zIGluaGVyaXRlZCBmcm9tIGJhc2Ugcm9sZXMgdGhyb3VnaCB0aGUgcm9sZSBoaWVyYXJjaHkuIFVzZSB0aGlzIGVuZHBvaW50IHRvIHVuZGVyc3RhbmQgdGhlIGZ1bGwgc2NvcGUgb2YgY2FwYWJpbGl0aWVzIGF2YWlsYWJsZSB0byB1c2VycyBhc3NpZ25lZCB0byBhIHNwZWNpZmljIHJvbGUuIFByb3ZpZGUgdGhlIHJvbGUgbmFtZSBhcyBhIHBhdGggcGFyYW1ldGVyLCBhbmQgdGhlIHJlc3BvbnNlIHdpbGwgaW5jbHVkZSBhbGwgcGVybWlzc2lvbnMgdGhhdCBhcHBseSB0byB0aGUgcm9sZSwgYWNjb3VudGluZyBmb3IgaW5oZXJpdGFuY2UgcmVsYXRpb25zaGlwcy4gVGhpcyBvcGVyYXRpb24gaXMgZXNzZW50aWFsIGZvciBhdWRpdGluZyByb2xlIGNhcGFiaWxpdGllcywgdW5kZXJzdGFuZGluZyBwZXJtaXNzaW9uIGluaGVyaXRhbmNlLCBvciB2ZXJpZnlpbmcgdGhlIGNvbXBsZXRlIGFjY2VzcyBzY29wZSBiZWZvcmUgcm9sZSBhc3NpZ25tZW50LiBSZXR1cm5zIGEgY29tcHJlaGVuc2l2ZSBsaXN0IG9mIHBlcm1pc3Npb24gbmFtZXMgcmVwcmVzZW50aW5nIHRoZSBmdWxsIHNldCBvZiBlZmZlY3RpdmUgcGVybWlzc2lvbnMgZm9yIHRoZSBzcGVjaWZpZWQgcm9sZS5KhwIKAzIwMBL/AQq/AVN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgZWZmZWN0aXZlIHBlcm1pc3Npb25zLiBSZXR1cm5zIHRoZSBjb21wbGV0ZSBsaXN0IG9mIGFsbCBwZXJtaXNzaW9ucyB0aGF0IGFwcGx5IHRvIHRoZSByb2xlLCBpbmNsdWRpbmcgYm90aCBkaXJlY3QgYXNzaWdubWVudHMgYW5kIGluaGVyaXRlZCBwZXJtaXNzaW9ucyBmcm9tIGJhc2Ugcm9sZXMuEjsKORo3LnNjYWxla2l0LnYxLnJvbGVzLkxpc3RFZmZlY3RpdmVSb2xlUGVybWlzc2lvbnNSZXNwb25zZYK1GAIYRILT5JMCKxIpL2FwaS92MS9yb2xlcy97cm9sZV9uYW1lfS9wZXJtaXNzaW9uczphbGwa4gKSQd4CCgVSb2xlcxLUAlJvbGUtYmFzZWQgYWNjZXNzIGNvbnRyb2wgKFJCQUMpIGZvciBkZWZpbmluZyBhbmQgbWFuYWdpbmcgcGVybWlzc2lvbnMgaW4gYW4gZW52aXJvbm1lbnQuIENyZWF0ZSBhbmQgdXBkYXRlIGN1c3RvbSByb2xlcyB3aXRoIGV4cGxpY2l0IHBlcm1pc3Npb25zLCBtb2RlbCByb2xlIGhpZXJhcmNoaWVzIHRocm91Z2ggaW5oZXJpdGFuY2UsIHZpZXcgZGVwZW5kZW50IHJvbGVzLCBtYW5hZ2Ugcm9sZS1wZXJtaXNzaW9uIGFzc2lnbm1lbnRzLCBhbmQgbGlzdCByb2xlcyBhbmQgcGVybWlzc2lvbnMuIEFsc28gcHJvdmlkZXMgYSB1dGlsaXR5IHRvIGNvdW50IHVzZXJzIGFzc2lnbmVkIHRvIGEgcm9sZS5CMVovZ2l0aHViLmNvbS9zY2FsZWtpdC1pbmMvc2NhbGVraXQvcGtnL2dycGMvcm9sZXNiBnByb3RvMw", [validate_pb_1.file_buf_validate_validate, annotations_pb_1.file_google_api_annotations, field_behavior_pb_1.file_google_api_field_behavior, visibility_pb_1.file_google_api_visibility, wkt_1.file_google_protobuf_empty, wkt_1.file_google_protobuf_timestamp, annotations_pb_2.file_protoc_gen_openapiv2_options_annotations, options_pb_1.file_scalekit_v1_options_options]);
20
20
  /**
21
21
  * Describes the message scalekit.v1.roles.Role.
22
22
  * Use `create(RoleSchema)` to create a new message.
@@ -1 +1 @@
1
- {"version":3,"file":"roles_pb.js","sourceRoot":"","sources":["../../../../../../src/pkg/grpc/scalekit/v1/roles/roles_pb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"roles_pb.js","sourceRoot":"","sources":["../../../../../../src/pkg/grpc/scalekit/v1/roles/roles_pb.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ const options_pb_1 = require("../options/options_pb");
13
13
  /**
14
14
  * Describes the file scalekit/v1/sessions/sessions.proto.
15
15
  */
16
- exports.file_scalekit_v1_sessions_sessions = (0, codegenv2_1.fileDesc)("CiNzY2FsZWtpdC92MS9zZXNzaW9ucy9zZXNzaW9ucy5wcm90bxIUc2NhbGVraXQudjEuc2Vzc2lvbnMiogEKFVNlc3Npb25EZXRhaWxzUmVxdWVzdBKIAQoKc2Vzc2lvbl9pZBgBIAEoCUJ0kkFbMkFVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHNlc3Npb24uIE11c3Qgc3RhcnQgd2l0aCAnc2VzXycgcHJlZml4LkoWInNlc18xMjM0NTY3ODkwMTIzNDU2IrpIE8gBAXIOMgxec2VzX1swLTldKyQiowcKGVVzZXJTZXNzaW9uRGV0YWlsc1JlcXVlc3QSngEKB3VzZXJfaWQYASABKAlCjAGSQXMyWVVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgdXNlciB3aG9zZSBzZXNzaW9ucyB0byByZXRyaWV2ZS4gTXVzdCBzdGFydCB3aXRoICd1c3JfJyBwcmVmaXguShYidXNyXzEyMzQ1Njc4OTAxMjM0NTYiukgTyAEBcg4yDF51c3JfWzAtOV0rJBLqAQoJcGFnZV9zaXplGAIgASgNQtYBkkHSATLLAU1heGltdW0gbnVtYmVyIG9mIHNlc3Npb25zIHRvIHJldHVybiBpbiBhIHNpbmdsZSBwYWdlLiBPcHRpb25hbCBwYXJhbWV0ZXIuIElmIG5vdCBzcGVjaWZpZWQsIGRlZmF1bHRzIHRvIGEgc2VydmVyLWRlZmluZWQgbGltaXQuIFVzZSBzbWFsbGVyIHZhbHVlcyBmb3IgZmFzdGVyIHJlc3BvbnNlcywgbGFyZ2VyIHZhbHVlcyBmb3IgZmV3ZXIgcmVxdWVzdHMuSgI1MBKQAgoKcGFnZV90b2tlbhgDIAEoCUL7AZJB9wEywAFQYWdpbmF0aW9uIHRva2VuIGZyb20gdGhlIHByZXZpb3VzIHJlc3BvbnNlIGZvciByZXRyaWV2aW5nIHRoZSBuZXh0IHBhZ2Ugb2YgcmVzdWx0cy4gTGVhdmUgZW1wdHkgZm9yIHRoZSBmaXJzdCBwYWdlLiBVc2UgdGhlIG5leHRfcGFnZV90b2tlbiBmcm9tIGEgcHJldmlvdXMgcmVzcG9uc2UgdG8gZmV0Y2ggc3Vic2VxdWVudCBwYWdlcy5KMiJleUp3WVdkbElqb2dNaXdnSW14aGMzUmZhV1FpT2lBaWMyVnpYekV5TXpRMUluMD0iEuQBCgZmaWx0ZXIYBCABKAsyJy5zY2FsZWtpdC52MS5zZXNzaW9ucy5Vc2VyU2Vzc2lvbkZpbHRlckKqAZJBpgEyowFPcHRpb25hbCBmaWx0ZXIgY3JpdGVyaWEgdG8gbmFycm93IHNlc3Npb24gcmVzdWx0cy4gQ2FuIGZpbHRlciBieSBvbmUgb3IgbW9yZSBzdGF0dXNlcyBhbmQvb3IgYSB0aW1lIHJhbmdlIG9mIGNyZWF0aW9uIGRhdGVzLiBMZWF2ZSBlbXB0eSB0byByZXRyaWV2ZSBhbGwgc2Vzc2lvbnMuIpQGChFVc2VyU2Vzc2lvbkZpbHRlchKnAgoGc3RhdHVzGAEgAygJQpYCkkGSAjKDAkZpbHRlciBzZXNzaW9ucyBieSBvbmUgb3IgbW9yZSBzdGF0dXMgdmFsdWVzLiBQb3NzaWJsZSB2YWx1ZXM6ICdhY3RpdmUnLCAnZXhwaXJlZCcsICdyZXZva2VkJywgJ2xvZ291dCcuIExlYXZlIGVtcHR5IHRvIGluY2x1ZGUgYWxsIHN0YXR1c2VzLiBNdWx0aXBsZSB2YWx1ZXMgdXNlIE9SIGxvZ2ljIChlLmcuLCBzdGF0dXM9WydhY3RpdmUnLCAnZXhwaXJlZCddIHJldHVybnMgc2Vzc2lvbnMgdGhhdCBhcmUgZWl0aGVyIGFjdGl2ZSBPUiBleHBpcmVkKS5KClsiYWN0aXZlIl0S7wEKCnN0YXJ0X3RpbWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQr4BkkG6ATKfAUZpbHRlciB0byBpbmNsdWRlIG9ubHkgc2Vzc2lvbnMgY3JlYXRlZCBvbiBvciBhZnRlciB0aGlzIHRpbWVzdGFtcC4gT3B0aW9uYWwuIFVzZXMgUkZDIDMzMzkgZm9ybWF0LiBVc2VmdWwgZm9yIHF1ZXJ5aW5nIHNlc3Npb25zIHdpdGhpbiBhIHNwZWNpZmljIHRpbWUgd2luZG93LkoWIjIwMjUtMDEtMDFUMDA6MDA6MDBaIhLiAQoIZW5kX3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQrMBkkGvATKUAUZpbHRlciB0byBpbmNsdWRlIG9ubHkgc2Vzc2lvbnMgY3JlYXRlZCBvbiBvciBiZWZvcmUgdGhpcyB0aW1lc3RhbXAuIE9wdGlvbmFsLiBVc2VzIFJGQyAzMzM5IGZvcm1hdC4gTXVzdCBiZSBhZnRlciBzdGFydF90aW1lIGlmIGJvdGggYXJlIHNwZWNpZmllZC5KFiIyMDI1LTEyLTMxVDIzOjU5OjU5WiIiqwEKFFJldm9rZVNlc3Npb25SZXF1ZXN0EpIBCgpzZXNzaW9uX2lkGAEgASgJQn6SQWUyS1VuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgc2Vzc2lvbiB0byByZXZva2UuIE11c3Qgc3RhcnQgd2l0aCAnc2VzXycgcHJlZml4LkoWInNlc18xMjM0NTY3ODkwMTIzNDU2IrpIE8gBAXIOMgxec2VzX1swLTldKyQi5gEKFVJldm9rZVNlc3Npb25SZXNwb25zZRLMAQoPcmV2b2tlZF9zZXNzaW9uGAEgASgLMisuc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlZFNlc3Npb25EZXRhaWxzQoUBkkGBATJ/RGV0YWlscyBvZiB0aGUgcmV2b2tlZCBzZXNzaW9uIGluY2x1ZGluZyBzZXNzaW9uIElELCB1c2VyIElELCBjcmVhdGlvbiBhbmQgcmV2b2NhdGlvbiB0aW1lc3RhbXBzLCBhbmQgZmluYWwgZGV2aWNlIGluZm9ybWF0aW9uLiLHAQocUmV2b2tlQWxsVXNlclNlc3Npb25zUmVxdWVzdBKmAQoHdXNlcl9pZBgBIAEoCUKUAZJBezJhVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSB1c2VyIHdob3NlIGFsbCBzZXNzaW9ucyB3aWxsIGJlIHJldm9rZWQuIE11c3Qgc3RhcnQgd2l0aCAndXNyXycgcHJlZml4LkoWInVzcl8xMjM0NTY3ODkwMTIzNDU2IrpIE8gBAXIOMgxedXNyX1swLTldKyQi9wIKHVJldm9rZUFsbFVzZXJTZXNzaW9uc1Jlc3BvbnNlEtgBChByZXZva2VkX3Nlc3Npb25zGAEgAygLMisuc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlZFNlc3Npb25EZXRhaWxzQpABkkGMATKJAUxpc3Qgb2YgYWxsIHNlc3Npb25zIHRoYXQgd2VyZSByZXZva2VkLCBpbmNsdWRpbmcgZGV0YWlsZWQgaW5mb3JtYXRpb24gZm9yIGVhY2ggcmV2b2tlZCBzZXNzaW9uIHdpdGggSURzLCB0aW1lc3RhbXBzLCBhbmQgZGV2aWNlIGRldGFpbHMuEnsKDXRvdGFsX3Jldm9rZWQYAiABKA1CZJJBYTJcVG90YWwgY291bnQgb2YgYWN0aXZlIHNlc3Npb25zIHRoYXQgd2VyZSByZXZva2VkLiBVc2VmdWwgZm9yIGNvbmZpcm1hdGlvbiBhbmQgYXVkaXQgbG9nZ2luZy5KATUi/gYKElVzZXJTZXNzaW9uRGV0YWlscxLQAQoIc2Vzc2lvbnMYASADKAsyJC5zY2FsZWtpdC52MS5zZXNzaW9ucy5TZXNzaW9uRGV0YWlsc0KXAZJBkwEykAFBcnJheSBvZiBzZXNzaW9uIG9iamVjdHMgZm9yIHRoZSByZXF1ZXN0ZWQgdXNlci4gTWF5IGNvbnRhaW4gZmV3ZXIgZW50cmllcyB0aGFuIHRoZSByZXF1ZXN0ZWQgcGFnZV9zaXplIHdoZW4gcmVhY2hpbmcgdGhlIGZpbmFsIHBhZ2Ugb2YgcmVzdWx0cy4S5AEKD25leHRfcGFnZV90b2tlbhgCIAEoCULKAZJBxgEyjwFQYWdpbmF0aW9uIHRva2VuIGZvciByZXRyaWV2aW5nIHRoZSBuZXh0IHBhZ2Ugb2YgcmVzdWx0cy4gRW1wdHkgc3RyaW5nIGlmIHRoZXJlIGFyZSBubyBtb3JlIHBhZ2VzICh5b3UgaGF2ZSByZWFjaGVkIHRoZSBmaW5hbCBwYWdlIG9mIHJlc3VsdHMpLkoyImV5SndZV2RsSWpvZ01pd2dJbXhoYzNSZmFXUWlPaUFpYzJWelh6RXlNelExSW4wPSIS5wEKD3ByZXZfcGFnZV90b2tlbhgDIAEoCULNAZJByQEykgFQYWdpbmF0aW9uIHRva2VuIGZvciByZXRyaWV2aW5nIHRoZSBwcmV2aW91cyBwYWdlIG9mIHJlc3VsdHMuIEVtcHR5IHN0cmluZyBmb3IgdGhlIGZpcnN0IHBhZ2UuIFVzZSB0aGlzIHRvIG5hdmlnYXRlIGJhY2t3YXJkIHRocm91Z2ggcmVzdWx0IHBhZ2VzLkoyImV5SndZV2RsSWpvZ01Dd2dJbVpwY25OMFgybGtJam9nSW5ObGMxODNPVEF4SW4wPSISwwEKCnRvdGFsX3NpemUYBCABKA1CrgGSQaoBMqMBVG90YWwgbnVtYmVyIG9mIHNlc3Npb25zIG1hdGNoaW5nIHRoZSBhcHBsaWVkIGZpbHRlciBjcml0ZXJpYSwgcmVnYXJkbGVzcyBvZiBwYWdpbmF0aW9uLiBUaGlzIHJlcHJlc2VudHMgdGhlIGNvbXBsZXRlIHJlc3VsdCBzZXQgc2l6ZSBiZWZvcmUgcGFnaW5hdGlvbiBpcyBhcHBsaWVkLkoCNDIihBsKDlNlc3Npb25EZXRhaWxzEpUBCgpzZXNzaW9uX2lkGAEgASgJQoABkkF9MmNVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHNlc3Npb24uIFN5c3RlbS1nZW5lcmF0ZWQgcmVhZC1vbmx5IGZpZWxkIHVzZWQgdG8gcmVmZXJlbmNlIHRoaXMgc2Vzc2lvbi5KFiJzZXNfMTIzNDU2Nzg5MDEyMzQ1NiISfwoHdXNlcl9pZBgCIAEoCUJukkFrMlFVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHVzZXIgd2hvIG93bnMgYW5kIGlzIGF1dGhlbnRpY2F0ZWQgd2l0aGluIHRoaXMgc2Vzc2lvbi5KFiJ1c3JfMTIzNDU2Nzg5MDEyMzQ1NiISgAIKG2F1dGhlbnRpY2F0ZWRfb3JnYW5pemF0aW9ucxgDIAMoCULaAZJB1gEyuwFMaXN0IG9mIG9yZ2FuaXphdGlvbiBJRHMgdGhhdCBoYXZlIGJlZW4gYXV0aGVudGljYXRlZCBmb3IgdGhpcyB1c2VyIHdpdGhpbiB0aGUgY3VycmVudCBzZXNzaW9uLiBDb250YWlucyBhbGwgb3JnYW5pemF0aW9ucyB3aGVyZSB0aGUgdXNlciBoYXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZCBTU08gb3IgYXV0aGVudGljYXRpb24uShZbIm9yZ18xMjMiLCAib3JnXzQ1NiJdEtgBCg9vcmdhbml6YXRpb25faWQYBCABKAlCvgGSQboBMp8BT3JnYW5pemF0aW9uIElEIGZvciB0aGUgdXNlcidzIG1vc3QgcmVjZW50bHkgYWN0aXZlIG9yZ2FuaXphdGlvbiB3aXRoaW4gdGhpcyBzZXNzaW9uLiBUaGlzIHJlcHJlc2VudHMgdGhlIHByaW1hcnkgb3JnYW5pemF0aW9uIGNvbnRleHQgZm9yIHRoZSBjdXJyZW50IHNlc3Npb24uShYib3JnXzEyMzQ1Njc4OTAxMjM0NTYiEt0BCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEKsAZJBqAEyjQFUaW1lc3RhbXAgaW5kaWNhdGluZyB3aGVuIHRoZSBzZXNzaW9uIHdhcyBjcmVhdGVkLiBUaGlzIGlzIHNldCBvbmNlIGF0IHNlc3Npb24gY3JlYXRpb24gYW5kIHJlbWFpbnMgY29uc3RhbnQgdGhyb3VnaG91dCB0aGUgc2Vzc2lvbiBsaWZldGltZS5KFiIyMDI1LTAxLTE1VDEwOjMwOjAwWiIS6AEKCnVwZGF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQrcBkkGzATKYAVRpbWVzdGFtcCBpbmRpY2F0aW5nIHdoZW4gdGhlIHNlc3Npb24gd2FzIGxhc3QgdXBkYXRlZC4gVXBkYXRlZCB3aGVuZXZlciBzZXNzaW9uIHN0YXRlIGNoYW5nZXMgc3VjaCBhcyBvcmdhbml6YXRpb24gY29udGV4dCBjaGFuZ2VzIG9yIG1ldGFkYXRhIHVwZGF0ZXMuShYiMjAyNS0wMS0xNVQxMDo0NTowMFoiEqsCCg9pZGxlX2V4cGlyZXNfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQvUBkkHxATLWAVByb2plY3RlZCBleHBpcmF0aW9uIHRpbWVzdGFtcCBpZiB0aGUgc2Vzc2lvbiByZW1haW5zIGlkbGUgd2l0aG91dCB1c2VyIGFjdGl2aXR5LiBUaGlzIHRpbWVzdGFtcCBpcyByZWNhbGN1bGF0ZWQgd2l0aCBlYWNoIHVzZXIgYWN0aXZpdHkuIFNlc3Npb24gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHRlcm1pbmF0ZWQgYXQgdGhpcyB0aW1lIGlmIG5vIGFjdGl2aXR5IG9jY3Vycy5KFiIyMDI1LTAxLTE1VDExOjMwOjAwWiISkQIKE2Fic29sdXRlX2V4cGlyZXNfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQtcBkkHTATK4AUhhcmQgZXhwaXJhdGlvbiB0aW1lc3RhbXAgZm9yIHRoZSBzZXNzaW9uIHJlZ2FyZGxlc3Mgb2YgdXNlciBhY3Rpdml0eS4gVGhlIHNlc3Npb24gd2lsbCBiZSBmb3JjaWJseSB0ZXJtaW5hdGVkIGF0IHRoaXMgdGltZS4gVGhpcyByZXByZXNlbnRzIHRoZSBtYXhpbXVtIHNlc3Npb24gbGlmZXRpbWUgZnJvbSBjcmVhdGlvbi5KFiIyMDI1LTAxLTIyVDEwOjMwOjAwWiIS2QIKCmV4cGlyZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQqgCkkGkAjKJAlRpbWVzdGFtcCB3aGVuIHRoZSBzZXNzaW9uIHdhcyB0ZXJtaW5hdGVkLiBOdWxsIGlmIHRoZSBzZXNzaW9uIGlzIHN0aWxsIGFjdGl2ZS4gU2V0IHdoZW4gdGhlIHNlc3Npb24gZXhwaXJlcyBkdWUgdG8gcmVhY2hpbmcgaWRsZV9leHBpcmVzX2F0IG9yIGFic29sdXRlX2V4cGlyZXNfYXQgdGltZW91dCwgb3Igd2hlbiBhZG1pbmlzdHJhdGl2ZWx5IHJldm9rZWQuIE5vdCBzZXQgZm9yIHVzZXItaW5pdGlhdGVkIGxvZ291dCAoc2VlIGxvZ291dF9hdCBpbnN0ZWFkKS5KFiIyMDI1LTAxLTE1VDEyOjAwOjAwWiISigIKCWxvZ291dF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBC2gGSQdYBMrsBVGltZXN0YW1wIHdoZW4gdGhlIHVzZXIgZXhwbGljaXRseSBsb2dnZWQgb3V0IGZyb20gdGhlIHNlc3Npb24uIE51bGwgaWYgdGhlIHVzZXIgaGFzIG5vdCBsb2dnZWQgb3V0LiBXaGVuIHNldCwgaW5kaWNhdGVzIHRoZSBzZXNzaW9uIGVuZGVkIGR1ZSB0byBleHBsaWNpdCB1c2VyIGxvZ291dCByYXRoZXIgdGhhbiB0aW1lb3V0LkoWIjIwMjUtMDEtMTVUMTQ6MDA6MDBaIhLvAgoGc3RhdHVzGAsgASgJQt4CkkHaAjLNAkN1cnJlbnQgb3BlcmF0aW9uYWwgc3RhdHVzIG9mIHRoZSBzZXNzaW9uLiBQb3NzaWJsZSB2YWx1ZXM6ICdhY3RpdmUnIChzZXNzaW9uIGlzIHZhbGlkIGFuZCByZXF1ZXN0cyBhcmUgYWxsb3dlZCksICdleHBpcmVkJyAoc2Vzc2lvbiB0ZXJtaW5hdGVkIGR1ZSB0byBpZGxlIG9yIGFic29sdXRlIHRpbWVvdXQpLCAncmV2b2tlZCcgKHNlc3Npb24gd2FzIGFkbWluaXN0cmF0aXZlbHkgcmV2b2tlZCksICdsb2dvdXQnICh1c2VyIGV4cGxpY2l0bHkgbG9nZ2VkIG91dCkuIFVzZSB0aGlzIHRvIGRldGVybWluZSBpZiB0aGUgc2Vzc2lvbiBjYW4gYmUgdXNlZCBmb3IgbmV3IHJlcXVlc3RzLkoIImFjdGl2ZSIS0QEKBmRldmljZRgMIAEoCzIjLnNjYWxla2l0LnYxLnNlc3Npb25zLkRldmljZURldGFpbHNCmwGSQZcBMpQBQ29tcGxldGUgZGV2aWNlIG1ldGFkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGlzIHNlc3Npb24gaW5jbHVkaW5nIGJyb3dzZXIsIG9wZXJhdGluZyBzeXN0ZW0sIGRldmljZSB0eXBlLCBhbmQgZ2VvZ3JhcGhpYyBsb2NhdGlvbiBiYXNlZCBvbiBJUCBhZGRyZXNzLhKRAgoObGFzdF9hY3RpdmVfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQtwBkkHYATK9AVRpbWVzdGFtcCBvZiB0aGUgbW9zdCByZWNlbnQgdXNlciBhY3Rpdml0eSBkZXRlY3RlZCBpbiB0aGlzIHNlc3Npb24uIFVwZGF0ZWQgb24gZWFjaCBBUEkgcmVxdWVzdCBvciB1c2VyIGludGVyYWN0aW9uLiBVc2VkIHRvIGRldGVybWluZSBpZiBhIHNlc3Npb24gaGFzIGV4Y2VlZGVkIHRoZSBpZGxlIHRpbWVvdXQgdGhyZXNob2xkLkoWIjIwMjUtMDEtMTVUMTA6NTU6MzBaIhKqAQoVYXV0aGVudGljYXRlZF9jbGllbnRzGA4gAygLMiouc2NhbGVraXQudjEuc2Vzc2lvbnMuQXV0aGVudGljYXRlZENsaWVudHNCX5JBXDJaRGV0YWlscyBvZiB0aGUgYXV0aGVudGljYXRlZCBjbGllbnRzIGZvciB0aGlzIHNlc3Npb246IGNsaWVudCBJRCBhbmQgb3JnYW5pemF0aW9uIGNvbnRleHQuIp8NCg1EZXZpY2VEZXRhaWxzEtcCCgp1c2VyX2FnZW50GAwgASgJQsICkkG+AjLCAUNvbXBsZXRlIEhUVFAgVXNlci1BZ2VudCBoZWFkZXIgc3RyaW5nIGZyb20gdGhlIGNsaWVudCByZXF1ZXN0LiBDb250YWlucyBicm93c2VyIHR5cGUsIHZlcnNpb24sIGFuZCBvcGVyYXRpbmcgc3lzdGVtIGluZm9ybWF0aW9uLiBVc2VkIGZvciBkZXRhaWxlZCBkZXZpY2UgZmluZ2VycHJpbnRpbmcgYW5kIHVzZXIgYWdlbnQgYW5hbHlzaXMuSnciTW96aWxsYS81LjAgKE1hY2ludG9zaDsgSW50ZWwgTWFjIE9TIFggMTBfMTVfNykgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEyMC4wLjAuMCBTYWZhcmkvNTM3LjM2IhKSAQoCb3MYDSABKAlChQGSQYEBMnZPcGVyYXRpbmcgc3lzdGVtIG5hbWUgZXh0cmFjdGVkIGZyb20gdGhlIHVzZXIgYWdlbnQgYW5kIGRldmljZSBoZWFkZXJzLiBFeGFtcGxlczogbWFjT1MsIFdpbmRvd3MsIExpbnV4LCBpT1MsIEFuZHJvaWQuSgcibWFjT1MiEnsKCm9zX3ZlcnNpb24YDiABKAlCZ5JBZDJaVmVyc2lvbiBvZiB0aGUgb3BlcmF0aW5nIHN5c3RlbS4gUmVwcmVzZW50cyB0aGUgc3BlY2lmaWMgT1MgcmVsZWFzZSB0aGUgZGV2aWNlIGlzIHJ1bm5pbmcuSgYiMTQuMiISjgEKB2Jyb3dzZXIYDyABKAlCfZJBejJuQnJvd3NlciBuYW1lIGFuZCBmYW1pbHkgZXh0cmFjdGVkIGZyb20gdGhlIHVzZXIgYWdlbnQuIEV4YW1wbGVzOiBDaHJvbWUsIFNhZmFyaSwgRmlyZWZveCwgRWRnZSwgTW9iaWxlIFNhZmFyaS5KCCJDaHJvbWUiEpEBCg9icm93c2VyX3ZlcnNpb24YECABKAlCeJJBdTJmVmVyc2lvbiBvZiB0aGUgYnJvd3NlciBhcHBsaWNhdGlvbi4gUmVwcmVzZW50cyB0aGUgc3BlY2lmaWMgcmVsZWFzZSB2ZXJzaW9uIG9mIHRoZSBicm93c2VyIGJlaW5nIHVzZWQuSgsiMTIwLjAuMC4wIhKOAgoLZGV2aWNlX3R5cGUYESABKAlC+AGSQfQBMuYBQ2F0ZWdvcml6ZWQgZGV2aWNlIHR5cGUgY2xhc3NpZmljYXRpb24uIFBvc3NpYmxlIHZhbHVlczogJ2Rlc2t0b3AnICh0cmFkaXRpb25hbCBjb21wdXRlcnMpLCAnbW9iaWxlJyAoc21hcnRwaG9uZXMgYW5kIHNtYWxsIHRhYmxldHMpLCAndGFibGV0JyAobGFyZ2UgdGFibGV0cyksICdvdGhlcicuIFVzZWZ1bCBmb3IgZGlzcGxheWluZyBzZXNzaW9uIGluZm9ybWF0aW9uIGJ5IGRldmljZSBjYXRlZ29yeS5KCSJkZXNrdG9wIhLfAQoCaXAYEyABKAlC0gGSQc4BMr4BSVAgYWRkcmVzcyBvZiB0aGUgZGV2aWNlIHRoYXQgaW5pdGlhdGVkIHRoZSBzZXNzaW9uLiBUaGlzIGlzIHRoZSBwdWJsaWMtZmFjaW5nIElQIGFkZHJlc3MgdXNlZCB0byBjb25uZWN0IHRvIHRoZSBhcHBsaWNhdGlvbi4gVXNlZnVsIGZvciBzZWN1cml0eSBhdWRpdHMgYW5kIGdlb2dyYXBoaWMgZGlzdHJpYnV0aW9uIGFuYWx5c2lzLkoLIjE5Mi4wLjIuMSISiQIKCGxvY2F0aW9uGBQgASgLMh4uc2NhbGVraXQudjEuc2Vzc2lvbnMuTG9jYXRpb25C1gGSQdIBMs8BR2VvZ3JhcGhpYyBsb2NhdGlvbiBpbmZvcm1hdGlvbiBkZXJpdmVkIGZyb20gSVAgYWRkcmVzcyBnZW9sb2NhdGlvbi4gSW5jbHVkZXMgY291bnRyeSwgcmVnaW9uLCBjaXR5LCBhbmQgY29vcmRpbmF0ZXMuIE5vdGU6IEJhc2VkIG9uIElQIGxvY2F0aW9uIGRhdGEgYW5kIG1heSBub3QgcmVwcmVzZW50IHRoZSB1c2VyJ3MgZXhhY3QgcGh5c2ljYWwgbG9jYXRpb24uItEOChVSZXZva2VkU2Vzc2lvbkRldGFpbHMSfQoKc2Vzc2lvbl9pZBgBIAEoCUJpkkFmMkxVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHJldm9rZWQgc2Vzc2lvbi4gU3lzdGVtLWdlbmVyYXRlZCByZWFkLW9ubHkgZmllbGQuShYic2VzXzEyMzQ1Njc4OTAxMjM0NTYiEmQKB3VzZXJfaWQYAiABKAlCU5JBUDI2VW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSB1c2VyIHdobyBvd25lZCB0aGlzIHNlc3Npb24uShYidXNyXzEyMzQ1Njc4OTAxMjM0NTYiEpwBCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEJskkFpMk9UaW1lc3RhbXAgaW5kaWNhdGluZyB3aGVuIHRoZSBzZXNzaW9uIHdhcyBvcmlnaW5hbGx5IGNyZWF0ZWQgYmVmb3JlIHJldm9jYXRpb24uShYiMjAyNS0wMS0xNVQxMDozMDowMFoiEpcBCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEJnkkFkMkpUaW1lc3RhbXAgaW5kaWNhdGluZyB3aGVuIHRoZSBzZXNzaW9uIHdhcyBsYXN0IG1vZGlmaWVkIGJlZm9yZSByZXZvY2F0aW9uLkoWIjIwMjUtMDEtMTVUMTA6NDU6MDBaIhLsAQoPaWRsZV9leHBpcmVzX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEK2AZJBsgEylwFUaGUgaWRsZSBleHBpcmF0aW9uIHRpbWVzdGFtcCB0aGF0IHdhcyBjb25maWd1cmVkIGZvciB0aGlzIHNlc3Npb24gYmVmb3JlIHJldm9jYXRpb24uIFJlcHJlc2VudHMgd2hlbiB0aGUgc2Vzc2lvbiB3b3VsZCBoYXZlIGV4cGlyZWQgZHVlIHRvIGluYWN0aXZpdHkuShYiMjAyNS0wMS0xNVQxMTozMDowMFoiEucBChNhYnNvbHV0ZV9leHBpcmVzX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEKtAZJBqQEyjgFUaGUgYWJzb2x1dGUgZXhwaXJhdGlvbiB0aW1lc3RhbXAgdGhhdCB3YXMgY29uZmlndXJlZCBmb3IgdGhpcyBzZXNzaW9uIGJlZm9yZSByZXZvY2F0aW9uLiBSZXByZXNlbnRzIHRoZSBoYXJkIGRlYWRsaW5lIHJlZ2FyZGxlc3Mgb2YgYWN0aXZpdHkuShYiMjAyNS0wMS0yMlQxMDozMDowMFoiEroBCgpleHBpcmVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEKJAZJBhQEya1RpbWVzdGFtcCB3aGVuIHRoZSBzZXNzaW9uIHdhcyBhY3R1YWxseSB0ZXJtaW5hdGVkLiBTZXQgdG8gdGhlIHJldm9jYXRpb24gdGltZSB3aGVuIHRoZSBzZXNzaW9uIGlzIHJldm9rZWQuShYiMjAyNS0wMS0xNVQxMjowMDowMFoiEsIBCglsb2dvdXRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQpIBkkGOATJ0VGltZXN0YW1wIHdoZW4gdGhlIHVzZXIgZXhwbGljaXRseSBsb2dnZWQgb3V0IChpZiBhcHBsaWNhYmxlKS4gTnVsbCBpZiB0aGUgc2Vzc2lvbiB3YXMgcmV2b2tlZCB3aXRob3V0IHByaW9yIGxvZ291dC5KFiIyMDI1LTAxLTE1VDE0OjAwOjAwWiIS5AEKBnN0YXR1cxgLIAEoCULTAZJBzwEywQFTdGF0dXMgb2YgdGhlIHNlc3Npb24gYWZ0ZXIgcmV2b2NhdGlvbi4gQWx3YXlzICdyZXZva2VkJyBzaW5jZSBvbmx5IGFjdGl2ZSBzZXNzaW9ucyBjYW4gYmUgcmV2b2tlZC4gU2Vzc2lvbnMgdGhhdCB3ZXJlIGFscmVhZHkgZXhwaXJlZCBvciBsb2dnZWQgb3V0IGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIHJldm9jYXRpb24gcmVzcG9uc2UuSgkicmV2b2tlZCIS1wEKDmxhc3RfYWN0aXZlX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEKiAZJBngEygwFUaW1lc3RhbXAgb2YgdGhlIGxhc3QgcmVjb3JkZWQgdXNlciBhY3Rpdml0eSBpbiB0aGlzIHNlc3Npb24gYmVmb3JlIHJldm9jYXRpb24uIEhlbHBzIGlkZW50aWZ5IGluYWN0aXZlIHNlc3Npb25zIHRoYXQgd2VyZSByZXZva2VkLkoWIjIwMjUtMDEtMTVUMTA6NTU6MzBaIiLoBgoITG9jYXRpb24SpAEKBnJlZ2lvbhgBIAEoCUKTAZJBjwEyfEdlb2dyYXBoaWMgcmVnaW9uIG5hbWUgZGVyaXZlZCBmcm9tIElQIGdlb2xvY2F0aW9uLiBSZXByZXNlbnRzIHRoZSBjb3VudHJ5LWxldmVsIGxvY2F0aW9uIChlLmcuLCAnVW5pdGVkIFN0YXRlcycsICdGcmFuY2UnKS5KDyJVbml0ZWQgU3RhdGVzIhKqAQoScmVnaW9uX3N1YmRpdmlzaW9uGAIgASgJQo0BkkGJATKAAVJlZ2lvbmFsIHN1YmRpdmlzaW9uIGNvZGUgb3IgbmFtZSAoZS5nLiwgc3RhdGUgYWJicmV2aWF0aW9uIGZvciBVUywgcHJvdmluY2UgZm9yIENhbmFkYSkuIFR3by1sZXR0ZXIgSVNPIGZvcm1hdCB3aGVuIGFwcGxpY2FibGUuSgQiQ0EiEpMBCgRjaXR5GAMgASgJQoQBkkGAATJtQ2l0eSBuYW1lIHdoZXJlIHRoZSBzZXNzaW9uIG9yaWdpbmF0ZWQgYmFzZWQgb24gSVAgZ2VvbG9jYXRpb24uIEFwcHJveGltYXRlIGxvY2F0aW9uIGRlcml2ZWQgZnJvbSBJUCBhZGRyZXNzLkoPIlNhbiBGcmFuY2lzY28iErQBCghsYXRpdHVkZRgEIAEoCUKhAZJBnQEyjwFMYXRpdHVkZSBjb29yZGluYXRlIG9mIHRoZSBlc3RpbWF0ZWQgbG9jYXRpb24uIERlY2ltYWwgZm9ybWF0IChlLmcuLCAnMzcuNzc0OScpLiBOb3RlOiBSZXByZXNlbnRzIElQIGdlb2xvY2F0aW9uIGNlbnRlciBhbmQgbWF5IG5vdCBiZSBwcmVjaXNlLkoJIjM3Ljc3NDkiEroBCglsb25naXR1ZGUYBSABKAlCpgGSQaIBMpIBTG9uZ2l0dWRlIGNvb3JkaW5hdGUgb2YgdGhlIGVzdGltYXRlZCBsb2NhdGlvbi4gRGVjaW1hbCBmb3JtYXQgKGUuZy4sICctMTIyLjQxOTQnKS4gTm90ZTogUmVwcmVzZW50cyBJUCBnZW9sb2NhdGlvbiBjZW50ZXIgYW5kIG1heSBub3QgYmUgcHJlY2lzZS5KCyItMTIyLjQxOTQiIv0BChRBdXRoZW50aWNhdGVkQ2xpZW50cxJkCgljbGllbnRfaWQYASABKAlCUZJBTjI6VW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGF1dGhlbnRpY2F0ZWQgY2xpZW50IGFwcGxpY2F0aW9uLkoQInNrY18xMjM0NTY3ODkwIhJ/Cg9vcmdhbml6YXRpb25faWQYAiABKAlCZpJBYzJPQWN0aXZlIG9yIGxhc3QgYWN0aXZlIE9yZ2FuaXphdGlvbiBJRCBhc3NvY2lhdGVkIHdpdGggdGhlIGF1dGhlbnRpY2F0ZWQgY2xpZW50LkoQIm9yZ18xMjM0NTY3ODkwIjLIHwoOU2Vzc2lvblNlcnZpY2US2wYKCkdldFNlc3Npb24SKy5zY2FsZWtpdC52MS5zZXNzaW9ucy5TZXNzaW9uRGV0YWlsc1JlcXVlc3QaJC5zY2FsZWtpdC52MS5zZXNzaW9ucy5TZXNzaW9uRGV0YWlscyL5BZJBygUKCFNlc3Npb25zEhNHZXQgc2Vzc2lvbiBkZXRhaWxzGs0EUmV0cmlldmVzIGNvbXByZWhlbnNpdmUgZGV0YWlscyBmb3IgYSBzcGVjaWZpYyB1c2VyIHNlc3Npb24gaW5jbHVkaW5nIGF1dGhlbnRpY2F0aW9uIHN0YXR1cywgZGV2aWNlIGluZm9ybWF0aW9uLCBhbmQgZXhwaXJhdGlvbiB0aW1lbGluZXMuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGZldGNoIGN1cnJlbnQgc2Vzc2lvbiBtZXRhZGF0YSBmb3Igc2VjdXJpdHkgYXVkaXRzLCBzZXNzaW9uIHZhbGlkYXRpb24sIG9yIHRvIGRpc3BsYXkgc2Vzc2lvbiBpbmZvcm1hdGlvbiBpbiB1c2VyIGFjY291bnQgbWFuYWdlbWVudCBpbnRlcmZhY2VzLiBSZXR1cm5zIGFsbCBzZXNzaW9uIHByb3BlcnRpZXMgaW5jbHVkaW5nIHRoZSB1c2VyIElELCBhdXRoZW50aWNhdGVkIG9yZ2FuaXphdGlvbnMsIGRldmljZSBkZXRhaWxzIHdpdGggYnJvd3Nlci9PUyBpbmZvcm1hdGlvbiwgSVAgYWRkcmVzcyBhbmQgZ2VvbG9jYXRpb24sIGFuZCBhbGwgcmVsZXZhbnQgdGltZXN0YW1wcyAoY3JlYXRpb24sIGxhc3QgYWN0aXZpdHksIGlkbGUgZXhwaXJhdGlvbiwgYWJzb2x1dGUgZXhwaXJhdGlvbiwgYW5kIGFjdHVhbCBleHBpcmF0aW9uIGlmIGFwcGxpY2FibGUpLkpZCgMyMDASUgomU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBzZXNzaW9uIGRldGFpbHMSKAomGiQuc2NhbGVraXQudjEuc2Vzc2lvbnMuU2Vzc2lvbkRldGFpbHOCtRgCGESC0+STAh8SHS9hcGkvdjEvc2Vzc2lvbnMve3Nlc3Npb25faWR9EqIGCg1SZXZva2VTZXNzaW9uEiouc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlU2Vzc2lvblJlcXVlc3QaKy5zY2FsZWtpdC52MS5zZXNzaW9ucy5SZXZva2VTZXNzaW9uUmVzcG9uc2UitwWSQYEFCghTZXNzaW9ucxITUmV2b2tlIHVzZXIgc2Vzc2lvbhreA0ltbWVkaWF0ZWx5IGludmFsaWRhdGVzIGEgc3BlY2lmaWMgdXNlciBzZXNzaW9uIGJ5IHNlc3Npb24gSUQsIHNldHRpbmcgaXRzIHN0YXR1cyB0byAncmV2b2tlZCcuIE9uY2UgcmV2b2tlZCwgdGhlIHNlc3Npb24gY2Fubm90IGJlIHVzZWQgZm9yIGFueSBmdXR1cmUgQVBJIHJlcXVlc3RzIG9yIGFwcGxpY2F0aW9uIGFjY2Vzcy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gaW1wbGVtZW50IHNlc3Npb24tbGV2ZWwgbG9nb3V0LCBmb3JjZSBhIHVzZXIgdG8gcmVhdXRoZW50aWNhdGUgb24gYSBzcGVjaWZpYyBkZXZpY2UsIG9yIHRlcm1pbmF0ZSBzdXNwaWNpb3VzIHNlc3Npb25zLiBUaGUgcmV2b2NhdGlvbiBpcyBpbnN0YW50YW5lb3VzIGFuZCBpcnJldmVyc2libGUuIFJldHVybnMgdGhlIHJldm9rZWQgc2Vzc2lvbiBkZXRhaWxzIGluY2x1ZGluZyB0aGUgc2Vzc2lvbiBJRCwgdXNlciBJRCwgYW5kIHRoZSByZXZvY2F0aW9uIHRpbWVzdGFtcC5KfwoDMjAwEngKRVN1Y2Nlc3NmdWxseSByZXZva2VkIHRoZSBzZXNzaW9uLiBSZXR1cm5zIHRoZSByZXZva2VkIHNlc3Npb24gZGV0YWlscxIvCi0aKy5zY2FsZWtpdC52MS5zZXNzaW9ucy5SZXZva2VTZXNzaW9uUmVzcG9uc2WCtRgCGESC0+STAiYiJC9hcGkvdjEvc2Vzc2lvbnMve3Nlc3Npb25faWR9L3Jldm9rZRKwBwoPR2V0VXNlclNlc3Npb25zEi8uc2NhbGVraXQudjEuc2Vzc2lvbnMuVXNlclNlc3Npb25EZXRhaWxzUmVxdWVzdBooLnNjYWxla2l0LnYxLnNlc3Npb25zLlVzZXJTZXNzaW9uRGV0YWlscyLBBpJBjwYKCFNlc3Npb25zEhJMaXN0IHVzZXIgc2Vzc2lvbnMa1wRSZXRyaWV2ZXMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBhbGwgc2Vzc2lvbnMgYXNzb2NpYXRlZCB3aXRoIGEgc3BlY2lmaWMgdXNlciBhY3Jvc3MgYWxsIGRldmljZXMgYW5kIGJyb3dzZXJzLiBVc2UgdGhpcyBlbmRwb2ludCB0byBhdWRpdCB1c2VyIGFjdGl2aXR5LCBkaXNwbGF5IGFsbCBhY3RpdmUgc2Vzc2lvbnMgaW4gYWNjb3VudCBtYW5hZ2VtZW50IGludGVyZmFjZXMsIG9yIHZlcmlmeSB1c2VyIGF1dGhlbnRpY2F0aW9uIHN0YXR1cyBhY3Jvc3MgZGV2aWNlcy4gU3VwcG9ydHMgZmlsdGVyaW5nIGJ5IHNlc3Npb24gc3RhdHVzIChhY3RpdmUsIGV4cGlyZWQsIHJldm9rZWQsIGxvZ291dCkgYW5kIHRpbWUgcmFuZ2UgKGNyZWF0aW9uIGRhdGUpLiBSZXR1cm5zIHNlc3Npb24gZGV0YWlscyBmb3IgZWFjaCBzZXNzaW9uIGluY2x1ZGluZyBkZXZpY2UgaW5mb3JtYXRpb24sIElQIGFkZHJlc3MsIGdlb2xvY2F0aW9uLCBhbmQgY3VycmVudCBzdGF0dXMuIFRoZSByZXNwb25zZSBpbmNsdWRlcyBwYWdpbmF0aW9uIG1ldGFkYXRhIChwYWdlIHRva2VucyBhbmQgdG90YWwgY291bnQpIHRvIGhhbmRsZSBsYXJnZSBzZXNzaW9uIGxpc3RzIGVmZmljaWVudGx5LkqUAQoDMjAwEowBClxTdWNjZXNzZnVsbHkgcmV0cmlldmVkIHVzZXIgc2Vzc2lvbnMuIFJldHVybnMgYSBsaXN0IG9mIHNlc3Npb25zIHdpdGggcGFnaW5hdGlvbiBpbmZvcm1hdGlvbhIsCioaKC5zY2FsZWtpdC52MS5zZXNzaW9ucy5Vc2VyU2Vzc2lvbkRldGFpbHOCtRgCGESC0+STAiISIC9hcGkvdjEvdXNlcnMve3VzZXJfaWR9L3Nlc3Npb25zEr4HChVSZXZva2VBbGxVc2VyU2Vzc2lvbnMSMi5zY2FsZWtpdC52MS5zZXNzaW9ucy5SZXZva2VBbGxVc2VyU2Vzc2lvbnNSZXF1ZXN0GjMuc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlQWxsVXNlclNlc3Npb25zUmVzcG9uc2UiuwaSQYIGCghTZXNzaW9ucxIYUmV2b2tlIGFsbCB1c2VyIHNlc3Npb25zGrkESW1tZWRpYXRlbHkgaW52YWxpZGF0ZXMgYWxsIGFjdGl2ZSBzZXNzaW9ucyBmb3IgYSBzcGVjaWZpYyB1c2VyIGFjcm9zcyBhbGwgZGV2aWNlcyBhbmQgYnJvd3NlcnMsIHNldHRpbmcgdGhlaXIgc3RhdHVzIHRvICdyZXZva2VkJy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gaW1wbGVtZW50IGdsb2JhbCBsb2dvdXQgZnVuY3Rpb25hbGl0eSwgZm9yY2UgcmUtYXV0aGVudGljYXRpb24gYWZ0ZXIgc2VjdXJpdHkgaW5jaWRlbnRzLCBvciB0ZXJtaW5hdGUgYWxsIHNlc3Npb25zIGZvbGxvd2luZyBhIHBhc3N3b3JkIHJlc2V0IG9yIGNyZWRlbnRpYWwgY29tcHJvbWlzZS4gT25seSBhY3RpdmUgc2Vzc2lvbnMgYXJlIHJldm9rZWQ7IGFscmVhZHkgZXhwaXJlZCwgbG9nb3V0LCBvciBwcmV2aW91c2x5IHJldm9rZWQgc2Vzc2lvbnMgcmVtYWluIHVuY2hhbmdlZC4gVGhlIHJldm9jYXRpb24gaXMgYXRvbWljIGFuZCBpbnN0YW50YW5lb3VzLiBSZXR1cm5zIGEgbGlzdCBvZiBhbGwgcmV2b2tlZCBzZXNzaW9ucyB3aXRoIHRoZWlyIGRldGFpbHMgYW5kIGEgdG90YWwgY291bnQgb2Ygc2Vzc2lvbnMgcmV2b2tlZC5KnwEKAzIwMBKXAQpcU3VjY2Vzc2Z1bGx5IHJldm9rZWQgYWxsIHVzZXIgc2Vzc2lvbnMuIFJldHVybnMgdGhlIGxpc3Qgb2YgcmV2b2tlZCBzZXNzaW9ucyBhbmQgdG90YWwgY291bnQSNwo1GjMuc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlQWxsVXNlclNlc3Npb25zUmVzcG9uc2WCtRgCGESC0+STAikiJy9hcGkvdjEvdXNlcnMve3VzZXJfaWR9L3Nlc3Npb25zL3Jldm9rZRq+A5JBugMKCFNlc3Npb25zEq0DQ29tcHJlaGVuc2l2ZSBzZXNzaW9uIG1hbmFnZW1lbnQgZm9yIHVzZXIgYXV0aGVudGljYXRpb24gYW5kIGF1dGhvcml6YXRpb24uIFRoaXMgc2VydmljZSBwcm92aWRlcyBlbmRwb2ludHMgZm9yIHJldHJpZXZpbmcgc2Vzc2lvbiBkZXRhaWxzLCBtYW5hZ2luZyB1c2VyIHNlc3Npb25zIGFjcm9zcyBkZXZpY2VzLCByZXZva2luZyBpbmRpdmlkdWFsIHNlc3Npb25zLCBhbmQgdGVybWluYXRpbmcgYWxsIGFjdGl2ZSBzZXNzaW9ucyBmb3IgYSB1c2VyLiBJdCBzdXBwb3J0cyBzZXNzaW9uIGF1ZGl0aW5nLCBkZXZpY2UgdHJhY2tpbmcsIGFuZCBzZWN1cml0eSBtb25pdG9yaW5nIHdpdGggZGV0YWlsZWQgc2Vzc2lvbiBtZXRhZGF0YSBpbmNsdWRpbmcgZGV2aWNlIGluZm9ybWF0aW9uLCBJUCBnZW9sb2NhdGlvbiwgYW5kIGFjdGl2aXR5IHRpbWVzdGFtcHMuQjRaMmdpdGh1Yi5jb20vc2NhbGVraXQtaW5jL3NjYWxla2l0L3BrZy9ncnBjL3Nlc3Npb25zYgZwcm90bzM", [validate_pb_1.file_buf_validate_validate, annotations_pb_1.file_google_api_annotations, wkt_1.file_google_protobuf_timestamp, annotations_pb_2.file_protoc_gen_openapiv2_options_annotations, options_pb_1.file_scalekit_v1_options_options]);
16
+ exports.file_scalekit_v1_sessions_sessions = (0, codegenv2_1.fileDesc)("CiNzY2FsZWtpdC92MS9zZXNzaW9ucy9zZXNzaW9ucy5wcm90bxIUc2NhbGVraXQudjEuc2Vzc2lvbnMiogEKFVNlc3Npb25EZXRhaWxzUmVxdWVzdBKIAQoKc2Vzc2lvbl9pZBgBIAEoCUJ0kkFbMkFVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHNlc3Npb24uIE11c3Qgc3RhcnQgd2l0aCAnc2VzXycgcHJlZml4LkoWInNlc18xMjM0NTY3ODkwMTIzNDU2IrpIE8gBAXIOMgxec2VzX1swLTldKyQiowcKGVVzZXJTZXNzaW9uRGV0YWlsc1JlcXVlc3QSngEKB3VzZXJfaWQYASABKAlCjAGSQXMyWVVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgdXNlciB3aG9zZSBzZXNzaW9ucyB0byByZXRyaWV2ZS4gTXVzdCBzdGFydCB3aXRoICd1c3JfJyBwcmVmaXguShYidXNyXzEyMzQ1Njc4OTAxMjM0NTYiukgTyAEBcg4yDF51c3JfWzAtOV0rJBLqAQoJcGFnZV9zaXplGAIgASgNQtYBkkHSATLLAU1heGltdW0gbnVtYmVyIG9mIHNlc3Npb25zIHRvIHJldHVybiBpbiBhIHNpbmdsZSBwYWdlLiBPcHRpb25hbCBwYXJhbWV0ZXIuIElmIG5vdCBzcGVjaWZpZWQsIGRlZmF1bHRzIHRvIGEgc2VydmVyLWRlZmluZWQgbGltaXQuIFVzZSBzbWFsbGVyIHZhbHVlcyBmb3IgZmFzdGVyIHJlc3BvbnNlcywgbGFyZ2VyIHZhbHVlcyBmb3IgZmV3ZXIgcmVxdWVzdHMuSgI1MBKQAgoKcGFnZV90b2tlbhgDIAEoCUL7AZJB9wEywAFQYWdpbmF0aW9uIHRva2VuIGZyb20gdGhlIHByZXZpb3VzIHJlc3BvbnNlIGZvciByZXRyaWV2aW5nIHRoZSBuZXh0IHBhZ2Ugb2YgcmVzdWx0cy4gTGVhdmUgZW1wdHkgZm9yIHRoZSBmaXJzdCBwYWdlLiBVc2UgdGhlIG5leHRfcGFnZV90b2tlbiBmcm9tIGEgcHJldmlvdXMgcmVzcG9uc2UgdG8gZmV0Y2ggc3Vic2VxdWVudCBwYWdlcy5KMiJleUp3WVdkbElqb2dNaXdnSW14aGMzUmZhV1FpT2lBaWMyVnpYekV5TXpRMUluMD0iEuQBCgZmaWx0ZXIYBCABKAsyJy5zY2FsZWtpdC52MS5zZXNzaW9ucy5Vc2VyU2Vzc2lvbkZpbHRlckKqAZJBpgEyowFPcHRpb25hbCBmaWx0ZXIgY3JpdGVyaWEgdG8gbmFycm93IHNlc3Npb24gcmVzdWx0cy4gQ2FuIGZpbHRlciBieSBvbmUgb3IgbW9yZSBzdGF0dXNlcyBhbmQvb3IgYSB0aW1lIHJhbmdlIG9mIGNyZWF0aW9uIGRhdGVzLiBMZWF2ZSBlbXB0eSB0byByZXRyaWV2ZSBhbGwgc2Vzc2lvbnMuIpQGChFVc2VyU2Vzc2lvbkZpbHRlchKnAgoGc3RhdHVzGAEgAygJQpYCkkGSAjKDAkZpbHRlciBzZXNzaW9ucyBieSBvbmUgb3IgbW9yZSBzdGF0dXMgdmFsdWVzLiBQb3NzaWJsZSB2YWx1ZXM6ICdhY3RpdmUnLCAnZXhwaXJlZCcsICdyZXZva2VkJywgJ2xvZ291dCcuIExlYXZlIGVtcHR5IHRvIGluY2x1ZGUgYWxsIHN0YXR1c2VzLiBNdWx0aXBsZSB2YWx1ZXMgdXNlIE9SIGxvZ2ljIChlLmcuLCBzdGF0dXM9WydhY3RpdmUnLCAnZXhwaXJlZCddIHJldHVybnMgc2Vzc2lvbnMgdGhhdCBhcmUgZWl0aGVyIGFjdGl2ZSBPUiBleHBpcmVkKS5KClsiYWN0aXZlIl0S7wEKCnN0YXJ0X3RpbWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQr4BkkG6ATKfAUZpbHRlciB0byBpbmNsdWRlIG9ubHkgc2Vzc2lvbnMgY3JlYXRlZCBvbiBvciBhZnRlciB0aGlzIHRpbWVzdGFtcC4gT3B0aW9uYWwuIFVzZXMgUkZDIDMzMzkgZm9ybWF0LiBVc2VmdWwgZm9yIHF1ZXJ5aW5nIHNlc3Npb25zIHdpdGhpbiBhIHNwZWNpZmljIHRpbWUgd2luZG93LkoWIjIwMjUtMDEtMDFUMDA6MDA6MDBaIhLiAQoIZW5kX3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQrMBkkGvATKUAUZpbHRlciB0byBpbmNsdWRlIG9ubHkgc2Vzc2lvbnMgY3JlYXRlZCBvbiBvciBiZWZvcmUgdGhpcyB0aW1lc3RhbXAuIE9wdGlvbmFsLiBVc2VzIFJGQyAzMzM5IGZvcm1hdC4gTXVzdCBiZSBhZnRlciBzdGFydF90aW1lIGlmIGJvdGggYXJlIHNwZWNpZmllZC5KFiIyMDI1LTEyLTMxVDIzOjU5OjU5WiIiqwEKFFJldm9rZVNlc3Npb25SZXF1ZXN0EpIBCgpzZXNzaW9uX2lkGAEgASgJQn6SQWUyS1VuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgc2Vzc2lvbiB0byByZXZva2UuIE11c3Qgc3RhcnQgd2l0aCAnc2VzXycgcHJlZml4LkoWInNlc18xMjM0NTY3ODkwMTIzNDU2IrpIE8gBAXIOMgxec2VzX1swLTldKyQi5gEKFVJldm9rZVNlc3Npb25SZXNwb25zZRLMAQoPcmV2b2tlZF9zZXNzaW9uGAEgASgLMisuc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlZFNlc3Npb25EZXRhaWxzQoUBkkGBATJ/RGV0YWlscyBvZiB0aGUgcmV2b2tlZCBzZXNzaW9uIGluY2x1ZGluZyBzZXNzaW9uIElELCB1c2VyIElELCBjcmVhdGlvbiBhbmQgcmV2b2NhdGlvbiB0aW1lc3RhbXBzLCBhbmQgZmluYWwgZGV2aWNlIGluZm9ybWF0aW9uLiLHAQocUmV2b2tlQWxsVXNlclNlc3Npb25zUmVxdWVzdBKmAQoHdXNlcl9pZBgBIAEoCUKUAZJBezJhVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSB1c2VyIHdob3NlIGFsbCBzZXNzaW9ucyB3aWxsIGJlIHJldm9rZWQuIE11c3Qgc3RhcnQgd2l0aCAndXNyXycgcHJlZml4LkoWInVzcl8xMjM0NTY3ODkwMTIzNDU2IrpIE8gBAXIOMgxedXNyX1swLTldKyQi9wIKHVJldm9rZUFsbFVzZXJTZXNzaW9uc1Jlc3BvbnNlEtgBChByZXZva2VkX3Nlc3Npb25zGAEgAygLMisuc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlZFNlc3Npb25EZXRhaWxzQpABkkGMATKJAUxpc3Qgb2YgYWxsIHNlc3Npb25zIHRoYXQgd2VyZSByZXZva2VkLCBpbmNsdWRpbmcgZGV0YWlsZWQgaW5mb3JtYXRpb24gZm9yIGVhY2ggcmV2b2tlZCBzZXNzaW9uIHdpdGggSURzLCB0aW1lc3RhbXBzLCBhbmQgZGV2aWNlIGRldGFpbHMuEnsKDXRvdGFsX3Jldm9rZWQYAiABKA1CZJJBYTJcVG90YWwgY291bnQgb2YgYWN0aXZlIHNlc3Npb25zIHRoYXQgd2VyZSByZXZva2VkLiBVc2VmdWwgZm9yIGNvbmZpcm1hdGlvbiBhbmQgYXVkaXQgbG9nZ2luZy5KATUi/gYKElVzZXJTZXNzaW9uRGV0YWlscxLQAQoIc2Vzc2lvbnMYASADKAsyJC5zY2FsZWtpdC52MS5zZXNzaW9ucy5TZXNzaW9uRGV0YWlsc0KXAZJBkwEykAFBcnJheSBvZiBzZXNzaW9uIG9iamVjdHMgZm9yIHRoZSByZXF1ZXN0ZWQgdXNlci4gTWF5IGNvbnRhaW4gZmV3ZXIgZW50cmllcyB0aGFuIHRoZSByZXF1ZXN0ZWQgcGFnZV9zaXplIHdoZW4gcmVhY2hpbmcgdGhlIGZpbmFsIHBhZ2Ugb2YgcmVzdWx0cy4S5AEKD25leHRfcGFnZV90b2tlbhgCIAEoCULKAZJBxgEyjwFQYWdpbmF0aW9uIHRva2VuIGZvciByZXRyaWV2aW5nIHRoZSBuZXh0IHBhZ2Ugb2YgcmVzdWx0cy4gRW1wdHkgc3RyaW5nIGlmIHRoZXJlIGFyZSBubyBtb3JlIHBhZ2VzICh5b3UgaGF2ZSByZWFjaGVkIHRoZSBmaW5hbCBwYWdlIG9mIHJlc3VsdHMpLkoyImV5SndZV2RsSWpvZ01pd2dJbXhoYzNSZmFXUWlPaUFpYzJWelh6RXlNelExSW4wPSIS5wEKD3ByZXZfcGFnZV90b2tlbhgDIAEoCULNAZJByQEykgFQYWdpbmF0aW9uIHRva2VuIGZvciByZXRyaWV2aW5nIHRoZSBwcmV2aW91cyBwYWdlIG9mIHJlc3VsdHMuIEVtcHR5IHN0cmluZyBmb3IgdGhlIGZpcnN0IHBhZ2UuIFVzZSB0aGlzIHRvIG5hdmlnYXRlIGJhY2t3YXJkIHRocm91Z2ggcmVzdWx0IHBhZ2VzLkoyImV5SndZV2RsSWpvZ01Dd2dJbVpwY25OMFgybGtJam9nSW5ObGMxODNPVEF4SW4wPSISwwEKCnRvdGFsX3NpemUYBCABKA1CrgGSQaoBMqMBVG90YWwgbnVtYmVyIG9mIHNlc3Npb25zIG1hdGNoaW5nIHRoZSBhcHBsaWVkIGZpbHRlciBjcml0ZXJpYSwgcmVnYXJkbGVzcyBvZiBwYWdpbmF0aW9uLiBUaGlzIHJlcHJlc2VudHMgdGhlIGNvbXBsZXRlIHJlc3VsdCBzZXQgc2l6ZSBiZWZvcmUgcGFnaW5hdGlvbiBpcyBhcHBsaWVkLkoCNDIihBsKDlNlc3Npb25EZXRhaWxzEpUBCgpzZXNzaW9uX2lkGAEgASgJQoABkkF9MmNVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHNlc3Npb24uIFN5c3RlbS1nZW5lcmF0ZWQgcmVhZC1vbmx5IGZpZWxkIHVzZWQgdG8gcmVmZXJlbmNlIHRoaXMgc2Vzc2lvbi5KFiJzZXNfMTIzNDU2Nzg5MDEyMzQ1NiISfwoHdXNlcl9pZBgCIAEoCUJukkFrMlFVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHVzZXIgd2hvIG93bnMgYW5kIGlzIGF1dGhlbnRpY2F0ZWQgd2l0aGluIHRoaXMgc2Vzc2lvbi5KFiJ1c3JfMTIzNDU2Nzg5MDEyMzQ1NiISgAIKG2F1dGhlbnRpY2F0ZWRfb3JnYW5pemF0aW9ucxgDIAMoCULaAZJB1gEyuwFMaXN0IG9mIG9yZ2FuaXphdGlvbiBJRHMgdGhhdCBoYXZlIGJlZW4gYXV0aGVudGljYXRlZCBmb3IgdGhpcyB1c2VyIHdpdGhpbiB0aGUgY3VycmVudCBzZXNzaW9uLiBDb250YWlucyBhbGwgb3JnYW5pemF0aW9ucyB3aGVyZSB0aGUgdXNlciBoYXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZCBTU08gb3IgYXV0aGVudGljYXRpb24uShZbIm9yZ18xMjMiLCAib3JnXzQ1NiJdEtgBCg9vcmdhbml6YXRpb25faWQYBCABKAlCvgGSQboBMp8BT3JnYW5pemF0aW9uIElEIGZvciB0aGUgdXNlcidzIG1vc3QgcmVjZW50bHkgYWN0aXZlIG9yZ2FuaXphdGlvbiB3aXRoaW4gdGhpcyBzZXNzaW9uLiBUaGlzIHJlcHJlc2VudHMgdGhlIHByaW1hcnkgb3JnYW5pemF0aW9uIGNvbnRleHQgZm9yIHRoZSBjdXJyZW50IHNlc3Npb24uShYib3JnXzEyMzQ1Njc4OTAxMjM0NTYiEt0BCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEKsAZJBqAEyjQFUaW1lc3RhbXAgaW5kaWNhdGluZyB3aGVuIHRoZSBzZXNzaW9uIHdhcyBjcmVhdGVkLiBUaGlzIGlzIHNldCBvbmNlIGF0IHNlc3Npb24gY3JlYXRpb24gYW5kIHJlbWFpbnMgY29uc3RhbnQgdGhyb3VnaG91dCB0aGUgc2Vzc2lvbiBsaWZldGltZS5KFiIyMDI1LTAxLTE1VDEwOjMwOjAwWiIS6AEKCnVwZGF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQrcBkkGzATKYAVRpbWVzdGFtcCBpbmRpY2F0aW5nIHdoZW4gdGhlIHNlc3Npb24gd2FzIGxhc3QgdXBkYXRlZC4gVXBkYXRlZCB3aGVuZXZlciBzZXNzaW9uIHN0YXRlIGNoYW5nZXMgc3VjaCBhcyBvcmdhbml6YXRpb24gY29udGV4dCBjaGFuZ2VzIG9yIG1ldGFkYXRhIHVwZGF0ZXMuShYiMjAyNS0wMS0xNVQxMDo0NTowMFoiEqsCCg9pZGxlX2V4cGlyZXNfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQvUBkkHxATLWAVByb2plY3RlZCBleHBpcmF0aW9uIHRpbWVzdGFtcCBpZiB0aGUgc2Vzc2lvbiByZW1haW5zIGlkbGUgd2l0aG91dCB1c2VyIGFjdGl2aXR5LiBUaGlzIHRpbWVzdGFtcCBpcyByZWNhbGN1bGF0ZWQgd2l0aCBlYWNoIHVzZXIgYWN0aXZpdHkuIFNlc3Npb24gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHRlcm1pbmF0ZWQgYXQgdGhpcyB0aW1lIGlmIG5vIGFjdGl2aXR5IG9jY3Vycy5KFiIyMDI1LTAxLTE1VDExOjMwOjAwWiISkQIKE2Fic29sdXRlX2V4cGlyZXNfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQtcBkkHTATK4AUhhcmQgZXhwaXJhdGlvbiB0aW1lc3RhbXAgZm9yIHRoZSBzZXNzaW9uIHJlZ2FyZGxlc3Mgb2YgdXNlciBhY3Rpdml0eS4gVGhlIHNlc3Npb24gd2lsbCBiZSBmb3JjaWJseSB0ZXJtaW5hdGVkIGF0IHRoaXMgdGltZS4gVGhpcyByZXByZXNlbnRzIHRoZSBtYXhpbXVtIHNlc3Npb24gbGlmZXRpbWUgZnJvbSBjcmVhdGlvbi5KFiIyMDI1LTAxLTIyVDEwOjMwOjAwWiIS2QIKCmV4cGlyZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQqgCkkGkAjKJAlRpbWVzdGFtcCB3aGVuIHRoZSBzZXNzaW9uIHdhcyB0ZXJtaW5hdGVkLiBOdWxsIGlmIHRoZSBzZXNzaW9uIGlzIHN0aWxsIGFjdGl2ZS4gU2V0IHdoZW4gdGhlIHNlc3Npb24gZXhwaXJlcyBkdWUgdG8gcmVhY2hpbmcgaWRsZV9leHBpcmVzX2F0IG9yIGFic29sdXRlX2V4cGlyZXNfYXQgdGltZW91dCwgb3Igd2hlbiBhZG1pbmlzdHJhdGl2ZWx5IHJldm9rZWQuIE5vdCBzZXQgZm9yIHVzZXItaW5pdGlhdGVkIGxvZ291dCAoc2VlIGxvZ291dF9hdCBpbnN0ZWFkKS5KFiIyMDI1LTAxLTE1VDEyOjAwOjAwWiISigIKCWxvZ291dF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBC2gGSQdYBMrsBVGltZXN0YW1wIHdoZW4gdGhlIHVzZXIgZXhwbGljaXRseSBsb2dnZWQgb3V0IGZyb20gdGhlIHNlc3Npb24uIE51bGwgaWYgdGhlIHVzZXIgaGFzIG5vdCBsb2dnZWQgb3V0LiBXaGVuIHNldCwgaW5kaWNhdGVzIHRoZSBzZXNzaW9uIGVuZGVkIGR1ZSB0byBleHBsaWNpdCB1c2VyIGxvZ291dCByYXRoZXIgdGhhbiB0aW1lb3V0LkoWIjIwMjUtMDEtMTVUMTQ6MDA6MDBaIhLvAgoGc3RhdHVzGAsgASgJQt4CkkHaAjLNAkN1cnJlbnQgb3BlcmF0aW9uYWwgc3RhdHVzIG9mIHRoZSBzZXNzaW9uLiBQb3NzaWJsZSB2YWx1ZXM6ICdhY3RpdmUnIChzZXNzaW9uIGlzIHZhbGlkIGFuZCByZXF1ZXN0cyBhcmUgYWxsb3dlZCksICdleHBpcmVkJyAoc2Vzc2lvbiB0ZXJtaW5hdGVkIGR1ZSB0byBpZGxlIG9yIGFic29sdXRlIHRpbWVvdXQpLCAncmV2b2tlZCcgKHNlc3Npb24gd2FzIGFkbWluaXN0cmF0aXZlbHkgcmV2b2tlZCksICdsb2dvdXQnICh1c2VyIGV4cGxpY2l0bHkgbG9nZ2VkIG91dCkuIFVzZSB0aGlzIHRvIGRldGVybWluZSBpZiB0aGUgc2Vzc2lvbiBjYW4gYmUgdXNlZCBmb3IgbmV3IHJlcXVlc3RzLkoIImFjdGl2ZSIS0QEKBmRldmljZRgMIAEoCzIjLnNjYWxla2l0LnYxLnNlc3Npb25zLkRldmljZURldGFpbHNCmwGSQZcBMpQBQ29tcGxldGUgZGV2aWNlIG1ldGFkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGlzIHNlc3Npb24gaW5jbHVkaW5nIGJyb3dzZXIsIG9wZXJhdGluZyBzeXN0ZW0sIGRldmljZSB0eXBlLCBhbmQgZ2VvZ3JhcGhpYyBsb2NhdGlvbiBiYXNlZCBvbiBJUCBhZGRyZXNzLhKRAgoObGFzdF9hY3RpdmVfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQtwBkkHYATK9AVRpbWVzdGFtcCBvZiB0aGUgbW9zdCByZWNlbnQgdXNlciBhY3Rpdml0eSBkZXRlY3RlZCBpbiB0aGlzIHNlc3Npb24uIFVwZGF0ZWQgb24gZWFjaCBBUEkgcmVxdWVzdCBvciB1c2VyIGludGVyYWN0aW9uLiBVc2VkIHRvIGRldGVybWluZSBpZiBhIHNlc3Npb24gaGFzIGV4Y2VlZGVkIHRoZSBpZGxlIHRpbWVvdXQgdGhyZXNob2xkLkoWIjIwMjUtMDEtMTVUMTA6NTU6MzBaIhKqAQoVYXV0aGVudGljYXRlZF9jbGllbnRzGA4gAygLMiouc2NhbGVraXQudjEuc2Vzc2lvbnMuQXV0aGVudGljYXRlZENsaWVudHNCX5JBXDJaRGV0YWlscyBvZiB0aGUgYXV0aGVudGljYXRlZCBjbGllbnRzIGZvciB0aGlzIHNlc3Npb246IGNsaWVudCBJRCBhbmQgb3JnYW5pemF0aW9uIGNvbnRleHQuIp8NCg1EZXZpY2VEZXRhaWxzEtcCCgp1c2VyX2FnZW50GAwgASgJQsICkkG+AjLCAUNvbXBsZXRlIEhUVFAgVXNlci1BZ2VudCBoZWFkZXIgc3RyaW5nIGZyb20gdGhlIGNsaWVudCByZXF1ZXN0LiBDb250YWlucyBicm93c2VyIHR5cGUsIHZlcnNpb24sIGFuZCBvcGVyYXRpbmcgc3lzdGVtIGluZm9ybWF0aW9uLiBVc2VkIGZvciBkZXRhaWxlZCBkZXZpY2UgZmluZ2VycHJpbnRpbmcgYW5kIHVzZXIgYWdlbnQgYW5hbHlzaXMuSnciTW96aWxsYS81LjAgKE1hY2ludG9zaDsgSW50ZWwgTWFjIE9TIFggMTBfMTVfNykgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEyMC4wLjAuMCBTYWZhcmkvNTM3LjM2IhKSAQoCb3MYDSABKAlChQGSQYEBMnZPcGVyYXRpbmcgc3lzdGVtIG5hbWUgZXh0cmFjdGVkIGZyb20gdGhlIHVzZXIgYWdlbnQgYW5kIGRldmljZSBoZWFkZXJzLiBFeGFtcGxlczogbWFjT1MsIFdpbmRvd3MsIExpbnV4LCBpT1MsIEFuZHJvaWQuSgcibWFjT1MiEnsKCm9zX3ZlcnNpb24YDiABKAlCZ5JBZDJaVmVyc2lvbiBvZiB0aGUgb3BlcmF0aW5nIHN5c3RlbS4gUmVwcmVzZW50cyB0aGUgc3BlY2lmaWMgT1MgcmVsZWFzZSB0aGUgZGV2aWNlIGlzIHJ1bm5pbmcuSgYiMTQuMiISjgEKB2Jyb3dzZXIYDyABKAlCfZJBejJuQnJvd3NlciBuYW1lIGFuZCBmYW1pbHkgZXh0cmFjdGVkIGZyb20gdGhlIHVzZXIgYWdlbnQuIEV4YW1wbGVzOiBDaHJvbWUsIFNhZmFyaSwgRmlyZWZveCwgRWRnZSwgTW9iaWxlIFNhZmFyaS5KCCJDaHJvbWUiEpEBCg9icm93c2VyX3ZlcnNpb24YECABKAlCeJJBdTJmVmVyc2lvbiBvZiB0aGUgYnJvd3NlciBhcHBsaWNhdGlvbi4gUmVwcmVzZW50cyB0aGUgc3BlY2lmaWMgcmVsZWFzZSB2ZXJzaW9uIG9mIHRoZSBicm93c2VyIGJlaW5nIHVzZWQuSgsiMTIwLjAuMC4wIhKOAgoLZGV2aWNlX3R5cGUYESABKAlC+AGSQfQBMuYBQ2F0ZWdvcml6ZWQgZGV2aWNlIHR5cGUgY2xhc3NpZmljYXRpb24uIFBvc3NpYmxlIHZhbHVlczogJ2Rlc2t0b3AnICh0cmFkaXRpb25hbCBjb21wdXRlcnMpLCAnbW9iaWxlJyAoc21hcnRwaG9uZXMgYW5kIHNtYWxsIHRhYmxldHMpLCAndGFibGV0JyAobGFyZ2UgdGFibGV0cyksICdvdGhlcicuIFVzZWZ1bCBmb3IgZGlzcGxheWluZyBzZXNzaW9uIGluZm9ybWF0aW9uIGJ5IGRldmljZSBjYXRlZ29yeS5KCSJkZXNrdG9wIhLfAQoCaXAYEyABKAlC0gGSQc4BMr4BSVAgYWRkcmVzcyBvZiB0aGUgZGV2aWNlIHRoYXQgaW5pdGlhdGVkIHRoZSBzZXNzaW9uLiBUaGlzIGlzIHRoZSBwdWJsaWMtZmFjaW5nIElQIGFkZHJlc3MgdXNlZCB0byBjb25uZWN0IHRvIHRoZSBhcHBsaWNhdGlvbi4gVXNlZnVsIGZvciBzZWN1cml0eSBhdWRpdHMgYW5kIGdlb2dyYXBoaWMgZGlzdHJpYnV0aW9uIGFuYWx5c2lzLkoLIjE5Mi4wLjIuMSISiQIKCGxvY2F0aW9uGBQgASgLMh4uc2NhbGVraXQudjEuc2Vzc2lvbnMuTG9jYXRpb25C1gGSQdIBMs8BR2VvZ3JhcGhpYyBsb2NhdGlvbiBpbmZvcm1hdGlvbiBkZXJpdmVkIGZyb20gSVAgYWRkcmVzcyBnZW9sb2NhdGlvbi4gSW5jbHVkZXMgY291bnRyeSwgcmVnaW9uLCBjaXR5LCBhbmQgY29vcmRpbmF0ZXMuIE5vdGU6IEJhc2VkIG9uIElQIGxvY2F0aW9uIGRhdGEgYW5kIG1heSBub3QgcmVwcmVzZW50IHRoZSB1c2VyJ3MgZXhhY3QgcGh5c2ljYWwgbG9jYXRpb24uItEOChVSZXZva2VkU2Vzc2lvbkRldGFpbHMSfQoKc2Vzc2lvbl9pZBgBIAEoCUJpkkFmMkxVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHJldm9rZWQgc2Vzc2lvbi4gU3lzdGVtLWdlbmVyYXRlZCByZWFkLW9ubHkgZmllbGQuShYic2VzXzEyMzQ1Njc4OTAxMjM0NTYiEmQKB3VzZXJfaWQYAiABKAlCU5JBUDI2VW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSB1c2VyIHdobyBvd25lZCB0aGlzIHNlc3Npb24uShYidXNyXzEyMzQ1Njc4OTAxMjM0NTYiEpwBCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEJskkFpMk9UaW1lc3RhbXAgaW5kaWNhdGluZyB3aGVuIHRoZSBzZXNzaW9uIHdhcyBvcmlnaW5hbGx5IGNyZWF0ZWQgYmVmb3JlIHJldm9jYXRpb24uShYiMjAyNS0wMS0xNVQxMDozMDowMFoiEpcBCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEJnkkFkMkpUaW1lc3RhbXAgaW5kaWNhdGluZyB3aGVuIHRoZSBzZXNzaW9uIHdhcyBsYXN0IG1vZGlmaWVkIGJlZm9yZSByZXZvY2F0aW9uLkoWIjIwMjUtMDEtMTVUMTA6NDU6MDBaIhLsAQoPaWRsZV9leHBpcmVzX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEK2AZJBsgEylwFUaGUgaWRsZSBleHBpcmF0aW9uIHRpbWVzdGFtcCB0aGF0IHdhcyBjb25maWd1cmVkIGZvciB0aGlzIHNlc3Npb24gYmVmb3JlIHJldm9jYXRpb24uIFJlcHJlc2VudHMgd2hlbiB0aGUgc2Vzc2lvbiB3b3VsZCBoYXZlIGV4cGlyZWQgZHVlIHRvIGluYWN0aXZpdHkuShYiMjAyNS0wMS0xNVQxMTozMDowMFoiEucBChNhYnNvbHV0ZV9leHBpcmVzX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEKtAZJBqQEyjgFUaGUgYWJzb2x1dGUgZXhwaXJhdGlvbiB0aW1lc3RhbXAgdGhhdCB3YXMgY29uZmlndXJlZCBmb3IgdGhpcyBzZXNzaW9uIGJlZm9yZSByZXZvY2F0aW9uLiBSZXByZXNlbnRzIHRoZSBoYXJkIGRlYWRsaW5lIHJlZ2FyZGxlc3Mgb2YgYWN0aXZpdHkuShYiMjAyNS0wMS0yMlQxMDozMDowMFoiEroBCgpleHBpcmVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEKJAZJBhQEya1RpbWVzdGFtcCB3aGVuIHRoZSBzZXNzaW9uIHdhcyBhY3R1YWxseSB0ZXJtaW5hdGVkLiBTZXQgdG8gdGhlIHJldm9jYXRpb24gdGltZSB3aGVuIHRoZSBzZXNzaW9uIGlzIHJldm9rZWQuShYiMjAyNS0wMS0xNVQxMjowMDowMFoiEsIBCglsb2dvdXRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQpIBkkGOATJ0VGltZXN0YW1wIHdoZW4gdGhlIHVzZXIgZXhwbGljaXRseSBsb2dnZWQgb3V0IChpZiBhcHBsaWNhYmxlKS4gTnVsbCBpZiB0aGUgc2Vzc2lvbiB3YXMgcmV2b2tlZCB3aXRob3V0IHByaW9yIGxvZ291dC5KFiIyMDI1LTAxLTE1VDE0OjAwOjAwWiIS5AEKBnN0YXR1cxgLIAEoCULTAZJBzwEywQFTdGF0dXMgb2YgdGhlIHNlc3Npb24gYWZ0ZXIgcmV2b2NhdGlvbi4gQWx3YXlzICdyZXZva2VkJyBzaW5jZSBvbmx5IGFjdGl2ZSBzZXNzaW9ucyBjYW4gYmUgcmV2b2tlZC4gU2Vzc2lvbnMgdGhhdCB3ZXJlIGFscmVhZHkgZXhwaXJlZCBvciBsb2dnZWQgb3V0IGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIHJldm9jYXRpb24gcmVzcG9uc2UuSgkicmV2b2tlZCIS1wEKDmxhc3RfYWN0aXZlX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEKiAZJBngEygwFUaW1lc3RhbXAgb2YgdGhlIGxhc3QgcmVjb3JkZWQgdXNlciBhY3Rpdml0eSBpbiB0aGlzIHNlc3Npb24gYmVmb3JlIHJldm9jYXRpb24uIEhlbHBzIGlkZW50aWZ5IGluYWN0aXZlIHNlc3Npb25zIHRoYXQgd2VyZSByZXZva2VkLkoWIjIwMjUtMDEtMTVUMTA6NTU6MzBaIiLoBgoITG9jYXRpb24SpAEKBnJlZ2lvbhgBIAEoCUKTAZJBjwEyfEdlb2dyYXBoaWMgcmVnaW9uIG5hbWUgZGVyaXZlZCBmcm9tIElQIGdlb2xvY2F0aW9uLiBSZXByZXNlbnRzIHRoZSBjb3VudHJ5LWxldmVsIGxvY2F0aW9uIChlLmcuLCAnVW5pdGVkIFN0YXRlcycsICdGcmFuY2UnKS5KDyJVbml0ZWQgU3RhdGVzIhKqAQoScmVnaW9uX3N1YmRpdmlzaW9uGAIgASgJQo0BkkGJATKAAVJlZ2lvbmFsIHN1YmRpdmlzaW9uIGNvZGUgb3IgbmFtZSAoZS5nLiwgc3RhdGUgYWJicmV2aWF0aW9uIGZvciBVUywgcHJvdmluY2UgZm9yIENhbmFkYSkuIFR3by1sZXR0ZXIgSVNPIGZvcm1hdCB3aGVuIGFwcGxpY2FibGUuSgQiQ0EiEpMBCgRjaXR5GAMgASgJQoQBkkGAATJtQ2l0eSBuYW1lIHdoZXJlIHRoZSBzZXNzaW9uIG9yaWdpbmF0ZWQgYmFzZWQgb24gSVAgZ2VvbG9jYXRpb24uIEFwcHJveGltYXRlIGxvY2F0aW9uIGRlcml2ZWQgZnJvbSBJUCBhZGRyZXNzLkoPIlNhbiBGcmFuY2lzY28iErQBCghsYXRpdHVkZRgEIAEoCUKhAZJBnQEyjwFMYXRpdHVkZSBjb29yZGluYXRlIG9mIHRoZSBlc3RpbWF0ZWQgbG9jYXRpb24uIERlY2ltYWwgZm9ybWF0IChlLmcuLCAnMzcuNzc0OScpLiBOb3RlOiBSZXByZXNlbnRzIElQIGdlb2xvY2F0aW9uIGNlbnRlciBhbmQgbWF5IG5vdCBiZSBwcmVjaXNlLkoJIjM3Ljc3NDkiEroBCglsb25naXR1ZGUYBSABKAlCpgGSQaIBMpIBTG9uZ2l0dWRlIGNvb3JkaW5hdGUgb2YgdGhlIGVzdGltYXRlZCBsb2NhdGlvbi4gRGVjaW1hbCBmb3JtYXQgKGUuZy4sICctMTIyLjQxOTQnKS4gTm90ZTogUmVwcmVzZW50cyBJUCBnZW9sb2NhdGlvbiBjZW50ZXIgYW5kIG1heSBub3QgYmUgcHJlY2lzZS5KCyItMTIyLjQxOTQiIv0BChRBdXRoZW50aWNhdGVkQ2xpZW50cxJkCgljbGllbnRfaWQYASABKAlCUZJBTjI6VW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGF1dGhlbnRpY2F0ZWQgY2xpZW50IGFwcGxpY2F0aW9uLkoQInNrY18xMjM0NTY3ODkwIhJ/Cg9vcmdhbml6YXRpb25faWQYAiABKAlCZpJBYzJPQWN0aXZlIG9yIGxhc3QgYWN0aXZlIE9yZ2FuaXphdGlvbiBJRCBhc3NvY2lhdGVkIHdpdGggdGhlIGF1dGhlbnRpY2F0ZWQgY2xpZW50LkoQIm9yZ18xMjM0NTY3ODkwIjLIHwoOU2Vzc2lvblNlcnZpY2US2wYKCkdldFNlc3Npb24SKy5zY2FsZWtpdC52MS5zZXNzaW9ucy5TZXNzaW9uRGV0YWlsc1JlcXVlc3QaJC5zY2FsZWtpdC52MS5zZXNzaW9ucy5TZXNzaW9uRGV0YWlscyL5BZJBygUKCFNlc3Npb25zEhNHZXQgc2Vzc2lvbiBkZXRhaWxzGs0EUmV0cmlldmVzIGNvbXByZWhlbnNpdmUgZGV0YWlscyBmb3IgYSBzcGVjaWZpYyB1c2VyIHNlc3Npb24gaW5jbHVkaW5nIGF1dGhlbnRpY2F0aW9uIHN0YXR1cywgZGV2aWNlIGluZm9ybWF0aW9uLCBhbmQgZXhwaXJhdGlvbiB0aW1lbGluZXMuIFVzZSB0aGlzIGVuZHBvaW50IHRvIGZldGNoIGN1cnJlbnQgc2Vzc2lvbiBtZXRhZGF0YSBmb3Igc2VjdXJpdHkgYXVkaXRzLCBzZXNzaW9uIHZhbGlkYXRpb24sIG9yIHRvIGRpc3BsYXkgc2Vzc2lvbiBpbmZvcm1hdGlvbiBpbiB1c2VyIGFjY291bnQgbWFuYWdlbWVudCBpbnRlcmZhY2VzLiBSZXR1cm5zIGFsbCBzZXNzaW9uIHByb3BlcnRpZXMgaW5jbHVkaW5nIHRoZSB1c2VyIElELCBhdXRoZW50aWNhdGVkIG9yZ2FuaXphdGlvbnMsIGRldmljZSBkZXRhaWxzIHdpdGggYnJvd3Nlci9PUyBpbmZvcm1hdGlvbiwgSVAgYWRkcmVzcyBhbmQgZ2VvbG9jYXRpb24sIGFuZCBhbGwgcmVsZXZhbnQgdGltZXN0YW1wcyAoY3JlYXRpb24sIGxhc3QgYWN0aXZpdHksIGlkbGUgZXhwaXJhdGlvbiwgYWJzb2x1dGUgZXhwaXJhdGlvbiwgYW5kIGFjdHVhbCBleHBpcmF0aW9uIGlmIGFwcGxpY2FibGUpLkpZCgMyMDASUgomU3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBzZXNzaW9uIGRldGFpbHMSKAomGiQuc2NhbGVraXQudjEuc2Vzc2lvbnMuU2Vzc2lvbkRldGFpbHOCtRgCGESC0+STAh8SHS9hcGkvdjEvc2Vzc2lvbnMve3Nlc3Npb25faWR9EqIGCg1SZXZva2VTZXNzaW9uEiouc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlU2Vzc2lvblJlcXVlc3QaKy5zY2FsZWtpdC52MS5zZXNzaW9ucy5SZXZva2VTZXNzaW9uUmVzcG9uc2UitwWSQYEFCghTZXNzaW9ucxITUmV2b2tlIHVzZXIgc2Vzc2lvbhreA0ltbWVkaWF0ZWx5IGludmFsaWRhdGVzIGEgc3BlY2lmaWMgdXNlciBzZXNzaW9uIGJ5IHNlc3Npb24gSUQsIHNldHRpbmcgaXRzIHN0YXR1cyB0byAncmV2b2tlZCcuIE9uY2UgcmV2b2tlZCwgdGhlIHNlc3Npb24gY2Fubm90IGJlIHVzZWQgZm9yIGFueSBmdXR1cmUgQVBJIHJlcXVlc3RzIG9yIGFwcGxpY2F0aW9uIGFjY2Vzcy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gaW1wbGVtZW50IHNlc3Npb24tbGV2ZWwgbG9nb3V0LCBmb3JjZSBhIHVzZXIgdG8gcmVhdXRoZW50aWNhdGUgb24gYSBzcGVjaWZpYyBkZXZpY2UsIG9yIHRlcm1pbmF0ZSBzdXNwaWNpb3VzIHNlc3Npb25zLiBUaGUgcmV2b2NhdGlvbiBpcyBpbnN0YW50YW5lb3VzIGFuZCBpcnJldmVyc2libGUuIFJldHVybnMgdGhlIHJldm9rZWQgc2Vzc2lvbiBkZXRhaWxzIGluY2x1ZGluZyB0aGUgc2Vzc2lvbiBJRCwgdXNlciBJRCwgYW5kIHRoZSByZXZvY2F0aW9uIHRpbWVzdGFtcC5KfwoDMjAwEngKRVN1Y2Nlc3NmdWxseSByZXZva2VkIHRoZSBzZXNzaW9uLiBSZXR1cm5zIHRoZSByZXZva2VkIHNlc3Npb24gZGV0YWlscxIvCi0aKy5zY2FsZWtpdC52MS5zZXNzaW9ucy5SZXZva2VTZXNzaW9uUmVzcG9uc2WCtRgCGFSC0+STAiYiJC9hcGkvdjEvc2Vzc2lvbnMve3Nlc3Npb25faWR9L3Jldm9rZRKwBwoPR2V0VXNlclNlc3Npb25zEi8uc2NhbGVraXQudjEuc2Vzc2lvbnMuVXNlclNlc3Npb25EZXRhaWxzUmVxdWVzdBooLnNjYWxla2l0LnYxLnNlc3Npb25zLlVzZXJTZXNzaW9uRGV0YWlscyLBBpJBjwYKCFNlc3Npb25zEhJMaXN0IHVzZXIgc2Vzc2lvbnMa1wRSZXRyaWV2ZXMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBhbGwgc2Vzc2lvbnMgYXNzb2NpYXRlZCB3aXRoIGEgc3BlY2lmaWMgdXNlciBhY3Jvc3MgYWxsIGRldmljZXMgYW5kIGJyb3dzZXJzLiBVc2UgdGhpcyBlbmRwb2ludCB0byBhdWRpdCB1c2VyIGFjdGl2aXR5LCBkaXNwbGF5IGFsbCBhY3RpdmUgc2Vzc2lvbnMgaW4gYWNjb3VudCBtYW5hZ2VtZW50IGludGVyZmFjZXMsIG9yIHZlcmlmeSB1c2VyIGF1dGhlbnRpY2F0aW9uIHN0YXR1cyBhY3Jvc3MgZGV2aWNlcy4gU3VwcG9ydHMgZmlsdGVyaW5nIGJ5IHNlc3Npb24gc3RhdHVzIChhY3RpdmUsIGV4cGlyZWQsIHJldm9rZWQsIGxvZ291dCkgYW5kIHRpbWUgcmFuZ2UgKGNyZWF0aW9uIGRhdGUpLiBSZXR1cm5zIHNlc3Npb24gZGV0YWlscyBmb3IgZWFjaCBzZXNzaW9uIGluY2x1ZGluZyBkZXZpY2UgaW5mb3JtYXRpb24sIElQIGFkZHJlc3MsIGdlb2xvY2F0aW9uLCBhbmQgY3VycmVudCBzdGF0dXMuIFRoZSByZXNwb25zZSBpbmNsdWRlcyBwYWdpbmF0aW9uIG1ldGFkYXRhIChwYWdlIHRva2VucyBhbmQgdG90YWwgY291bnQpIHRvIGhhbmRsZSBsYXJnZSBzZXNzaW9uIGxpc3RzIGVmZmljaWVudGx5LkqUAQoDMjAwEowBClxTdWNjZXNzZnVsbHkgcmV0cmlldmVkIHVzZXIgc2Vzc2lvbnMuIFJldHVybnMgYSBsaXN0IG9mIHNlc3Npb25zIHdpdGggcGFnaW5hdGlvbiBpbmZvcm1hdGlvbhIsCioaKC5zY2FsZWtpdC52MS5zZXNzaW9ucy5Vc2VyU2Vzc2lvbkRldGFpbHOCtRgCGFSC0+STAiISIC9hcGkvdjEvdXNlcnMve3VzZXJfaWR9L3Nlc3Npb25zEr4HChVSZXZva2VBbGxVc2VyU2Vzc2lvbnMSMi5zY2FsZWtpdC52MS5zZXNzaW9ucy5SZXZva2VBbGxVc2VyU2Vzc2lvbnNSZXF1ZXN0GjMuc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlQWxsVXNlclNlc3Npb25zUmVzcG9uc2UiuwaSQYIGCghTZXNzaW9ucxIYUmV2b2tlIGFsbCB1c2VyIHNlc3Npb25zGrkESW1tZWRpYXRlbHkgaW52YWxpZGF0ZXMgYWxsIGFjdGl2ZSBzZXNzaW9ucyBmb3IgYSBzcGVjaWZpYyB1c2VyIGFjcm9zcyBhbGwgZGV2aWNlcyBhbmQgYnJvd3NlcnMsIHNldHRpbmcgdGhlaXIgc3RhdHVzIHRvICdyZXZva2VkJy4gVXNlIHRoaXMgZW5kcG9pbnQgdG8gaW1wbGVtZW50IGdsb2JhbCBsb2dvdXQgZnVuY3Rpb25hbGl0eSwgZm9yY2UgcmUtYXV0aGVudGljYXRpb24gYWZ0ZXIgc2VjdXJpdHkgaW5jaWRlbnRzLCBvciB0ZXJtaW5hdGUgYWxsIHNlc3Npb25zIGZvbGxvd2luZyBhIHBhc3N3b3JkIHJlc2V0IG9yIGNyZWRlbnRpYWwgY29tcHJvbWlzZS4gT25seSBhY3RpdmUgc2Vzc2lvbnMgYXJlIHJldm9rZWQ7IGFscmVhZHkgZXhwaXJlZCwgbG9nb3V0LCBvciBwcmV2aW91c2x5IHJldm9rZWQgc2Vzc2lvbnMgcmVtYWluIHVuY2hhbmdlZC4gVGhlIHJldm9jYXRpb24gaXMgYXRvbWljIGFuZCBpbnN0YW50YW5lb3VzLiBSZXR1cm5zIGEgbGlzdCBvZiBhbGwgcmV2b2tlZCBzZXNzaW9ucyB3aXRoIHRoZWlyIGRldGFpbHMgYW5kIGEgdG90YWwgY291bnQgb2Ygc2Vzc2lvbnMgcmV2b2tlZC5KnwEKAzIwMBKXAQpcU3VjY2Vzc2Z1bGx5IHJldm9rZWQgYWxsIHVzZXIgc2Vzc2lvbnMuIFJldHVybnMgdGhlIGxpc3Qgb2YgcmV2b2tlZCBzZXNzaW9ucyBhbmQgdG90YWwgY291bnQSNwo1GjMuc2NhbGVraXQudjEuc2Vzc2lvbnMuUmV2b2tlQWxsVXNlclNlc3Npb25zUmVzcG9uc2WCtRgCGESC0+STAikiJy9hcGkvdjEvdXNlcnMve3VzZXJfaWR9L3Nlc3Npb25zL3Jldm9rZRq+A5JBugMKCFNlc3Npb25zEq0DQ29tcHJlaGVuc2l2ZSBzZXNzaW9uIG1hbmFnZW1lbnQgZm9yIHVzZXIgYXV0aGVudGljYXRpb24gYW5kIGF1dGhvcml6YXRpb24uIFRoaXMgc2VydmljZSBwcm92aWRlcyBlbmRwb2ludHMgZm9yIHJldHJpZXZpbmcgc2Vzc2lvbiBkZXRhaWxzLCBtYW5hZ2luZyB1c2VyIHNlc3Npb25zIGFjcm9zcyBkZXZpY2VzLCByZXZva2luZyBpbmRpdmlkdWFsIHNlc3Npb25zLCBhbmQgdGVybWluYXRpbmcgYWxsIGFjdGl2ZSBzZXNzaW9ucyBmb3IgYSB1c2VyLiBJdCBzdXBwb3J0cyBzZXNzaW9uIGF1ZGl0aW5nLCBkZXZpY2UgdHJhY2tpbmcsIGFuZCBzZWN1cml0eSBtb25pdG9yaW5nIHdpdGggZGV0YWlsZWQgc2Vzc2lvbiBtZXRhZGF0YSBpbmNsdWRpbmcgZGV2aWNlIGluZm9ybWF0aW9uLCBJUCBnZW9sb2NhdGlvbiwgYW5kIGFjdGl2aXR5IHRpbWVzdGFtcHMuQjRaMmdpdGh1Yi5jb20vc2NhbGVraXQtaW5jL3NjYWxla2l0L3BrZy9ncnBjL3Nlc3Npb25zYgZwcm90bzM", [validate_pb_1.file_buf_validate_validate, annotations_pb_1.file_google_api_annotations, wkt_1.file_google_protobuf_timestamp, annotations_pb_2.file_protoc_gen_openapiv2_options_annotations, options_pb_1.file_scalekit_v1_options_options]);
17
17
  /**
18
18
  * Describes the message scalekit.v1.sessions.SessionDetailsRequest.
19
19
  * Use `create(SessionDetailsRequestSchema)` to create a new message.