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mAA2ZMYAZJsANmTHAGSeADZaIwBSUyjIAAAAc7sOAABIVFRQIHJlcXVlc3QgaGFuZGxlciBiYXNlIGNsYXNzLgoKICAgIFRoZSBmb2xsb3dpbmcgZXhwbGFuYXRpb24gb2YgSFRUUCBzZXJ2ZXMgdG8gZ3VpZGUgeW91IHRocm91Z2ggdGhlCiAgICBjb2RlIGFzIHdlbGwgYXMgdG8gZXhwb3NlIGFueSBtaXN1bmRlcnN0YW5kaW5ncyBJIG1heSBoYXZlIGFib3V0CiAgICBIVFRQIChzbyB5b3UgZG9uJ3QgbmVlZCB0byByZWFkIHRoZSBjb2RlIHRvIGZpZ3VyZSBvdXQgSSdtIHdyb25nCiAgICA6LSkuCgogICAgSFRUUCAoSHlwZXJUZXh0IFRyYW5zZmVyIFByb3RvY29sKSBpcyBhbiBleHRlbnNpYmxlIHByb3RvY29sIG9uCiAgICB0b3Agb2YgYSByZWxpYWJsZSBzdHJlYW0gdHJhbnNwb3J0IChlLmcuIFRDUC9JUCkuICBUaGUgcHJvdG9jb2wKICAgIHJlY29nbml6ZXMgdGhyZWUgcGFydHMgdG8gYSByZXF1ZXN0OgoKICAgIDEuIE9uZSBsaW5lIGlkZW50aWZ5aW5nIHRoZSByZXF1ZXN0IHR5cGUgYW5kIHBhdGgKICAgIDIuIEFuIG9wdGlvbmFsIHNldCBvZiBSRkMtODIyLXN0eWxlIGhlYWRlcnMKICAgIDMuIEFuIG9wdGlvbmFsIGRhdGEgcGFydAoKICAgIFRoZSBoZWFkZXJzIGFuZCBkYXRhIGFyZSBzZXBhcmF0ZWQgYnkgYSBibGFuayBsaW5lLgoKICAgIFRoZSBmaXJzdCBsaW5lIG9mIHRoZSByZXF1ZXN0IGhhcyB0aGUgZm9ybQoKICAgIDxjb21tYW5kPiA8cGF0aD4gPHZlcnNpb24+CgogICAgd2hlcmUgPGNvbW1hbmQ+IGlzIGEgKGNhc2Utc2Vuc2l0aXZlKSBrZXl3b3JkIHN1Y2ggYXMgR0VUIG9yIFBPU1QsCiAgICA8cGF0aD4gaXMgYSBzdHJpbmcgY29udGFpbmluZyBwYXRoIGluZm9ybWF0aW9uIGZvciB0aGUgcmVxdWVzdCwKICAgIGFuZCA8dmVyc2lvbj4gc2hvdWxkIGJlIHRoZSBzdHJpbmcgIkhUVFAvMS4wIiBvciAiSFRUUC8xLjEiLgogICAgPHBhdGg+IGlzIGVuY29kZWQgdXNpbmcgdGhlIFVSTCBlbmNvZGluZyBzY2hlbWUgKHVzaW5nICV4eCB0byBzaWduaWZ5CiAgICB0aGUgQVNDSUkgY2hhcmFjdGVyIHdpdGggaGV4IGNvZGUgeHgpLgoKICAgIFRoZSBzcGVjaWZpY2F0aW9uIHNwZWNpZmllcyB0aGF0IGxpbmVzIGFyZSBzZXBhcmF0ZWQgYnkgQ1JMRiBidXQKICAgIGZvciBjb21wYXRpYmlsaXR5IHdpdGggdGhlIHdpZGVzdCByYW5nZSBvZiBjbGllbnRzIHJlY29tbWVuZHMKICAgIHNlcnZlcnMgYWxzbyBoYW5kbGUgTEYuICBTaW1pbGFybHksIHdoaXRlc3BhY2UgaW4gdGhlIHJlcXVlc3QgbGluZQogICAgaXMgdHJlYXRlZCBzZW5zaWJseSAoYWxsb3dpbmcgbXVsdGlwbGUgc3BhY2VzIGJldHdlZW4gY29tcG9uZW50cwogICAgYW5kIGFsbG93aW5nIHRyYWlsaW5nIHdoaXRlc3BhY2UpLgoKICAgIFNpbWlsYXJseSwgZm9yIG91dHB1dCwgbGluZXMgb3VnaHQgdG8gYmUgc2VwYXJhdGVkIGJ5IENSTEYgcGFpcnMKICAgIGJ1dCBtb3N0IGNsaWVudHMgZ3JvayBMRiBjaGFyYWN0ZXJzIGp1c3QgZmluZS4KCiAgICBJZiB0aGUgZmlyc3QgbGluZSBvZiB0aGUgcmVxdWVzdCBoYXMgdGhlIGZvcm0KCiAgICA8Y29tbWFuZD4gPHBhdGg+CgogICAgKGkuZS4gPHZlcnNpb24+IGlzIGxlZnQgb3V0KSB0aGVuIHRoaXMgaXMgYXNzdW1lZCB0byBiZSBhbiBIVFRQCiAgICAwLjkgcmVxdWVzdDsgdGhpcyBmb3JtIGhhcyBubyBvcHRpb25hbCBoZWFkZXJzIGFuZCBkYXRhIHBhcnQgYW5kCiAgICB0aGUgcmVwbHkgY29uc2lzdHMgb2YganVzdCB0aGUgZGF0YS4KCiAgICBUaGUgcmVwbHkgZm9ybSBvZiB0aGUgSFRUUCAxLnggcHJvdG9jb2wgYWdhaW4gaGFzIHRocmVlIHBhcnRzOgoKICAgIDEuIE9uZSBsaW5lIGdpdmluZyB0aGUgcmVzcG9uc2UgY29kZQogICAgMi4gQW4gb3B0aW9uYWwgc2V0IG9mIFJGQy04MjItc3R5bGUgaGVhZGVycwogICAgMy4gVGhlIGRhdGEKCiAgICBBZ2FpbiwgdGhlIGhlYWRlcnMgYW5kIGRhdGEgYXJlIHNlcGFyYXRlZCBieSBhIGJsYW5rIGxpbmUuCgogICAgVGhlIHJlc3BvbnNlIGNvZGUgbGluZSBoYXMgdGhlIGZvcm0KCiAgICA8dmVyc2lvbj4gPHJlc3BvbnNlY29kZT4gPHJlc3BvbnNlc3RyaW5nPgoKICAgIHdoZXJlIDx2ZXJzaW9uPiBpcyB0aGUgcHJvdG9jb2wgdmVyc2lvbiAoIkhUVFAvMS4wIiBvciAiSFRUUC8xLjEiKSwKICAgIDxyZXNwb25zZWNvZGU+IGlzIGEgMy1kaWdpdCByZXNwb25zZSBjb2RlIGluZGljYXRpbmcgc3VjY2VzcyBvcgogICAgZmFpbHVyZSBvZiB0aGUgcmVxdWVzdCwgYW5kIDxyZXNwb25zZXN0cmluZz4gaXMgYW4gb3B0aW9uYWwKICAgIGh1bWFuLXJlYWRhYmxlIHN0cmluZyBleHBsYWluaW5nIHdoYXQgdGhlIHJlc3BvbnNlIGNvZGUgbWVhbnMuCgogICAgVGhpcyBzZXJ2ZXIgcGFyc2VzIHRoZSByZXF1ZXN0IGFuZCB0aGUgaGVhZGVycywgYW5kIHRoZW4gY2FsbHMgYQogICAgZnVuY3Rpb24gc3BlY2lmaWMgdG8gdGhlIHJlcXVlc3QgdHlwZSAoPGNvbW1hbmQ+KS4gIFNwZWNpZmljYWxseSwKICAgIGEgcmVxdWVzdCBTUEFNIHdpbGwgYmUgaGFuZGxlZCBieSBhIG1ldGhvZCBkb19TUEFNKCkuICBJZiBubwogICAgc3VjaCBtZXRob2QgZXhpc3RzIHRoZSBzZXJ2ZXIgc2VuZHMgYW4gZXJyb3IgcmVzcG9uc2UgdG8gdGhlCiAgICBjbGllbnQuICBJZiBpdCBleGlzdHMsIGl0IGlzIGNhbGxlZCB3aXRoIG5vIGFyZ3VtZW50czoKCiAgICBkb19TUEFNKCkKCiAgICBOb3RlIHRoYXQgdGhlIHJlcXVlc3QgbmFtZSBpcyBjYXNlIHNlbnNpdGl2ZSAoaS5lLiBTUEFNIGFuZCBzcGFtCiAgICBhcmUgZGlmZmVyZW50IHJlcXVlc3RzKS4KCiAgICBUaGUgdmFyaW91cyByZXF1ZXN0IGRldGFpbHMgYXJlIHN0b3JlZCBpbiBpbnN0YW5jZSB2YXJpYWJsZXM6CgogICAgLSBjbGllbnRfYWRkcmVzcyBpcyB0aGUgY2xpZW50IElQIGFkZHJlc3MgaW4gdGhlIGZvcm0gKGhvc3QsCiAgICBwb3J0KTsKCiAgICAtIGNvbW1hbmQsIHBhdGggYW5kIHZlcnNpb24gYXJlIHRoZSBicm9rZW4tZG93biByZXF1ZXN0IGxpbmU7CgogICAgLSBoZWFkZXJzIGlzIGFuIGluc3RhbmNlIG9mIG1pbWV0b29scy5NZXNzYWdlIChvciBhIGRlcml2ZWQKICAgIGNsYXNzKSBjb250YWluaW5nIHRoZSBoZWFkZXIgaW5mb3JtYXRpb247CgogICAgLSByZmlsZSBpcyBhIGZpbGUgb2JqZWN0IG9wZW4gZm9yIHJlYWRpbmcgcG9zaXRpb25lZCBhdCB0aGUKICAgIHN0YXJ0IG9mIHRoZSBvcHRpb25hbCBpbnB1dCBkYXRhIHBhcnQ7CgogICAgLSB3ZmlsZSBpcyBhIGZpbGUgb2JqZWN0IG9wZW4gZm9yIHdyaXRpbmcuCgogICAgSVQgSVMgSU1QT1JUQU5UIFRPIEFESEVSRSBUTyBUSEUgUFJPVE9DT0wgRk9SIFdSSVRJTkchCgogICAgVGhlIGZpcnN0IHRoaW5nIHRvIGJlIHdyaXR0ZW4gbXVzdCBiZSB0aGUgcmVzcG9uc2UgbGluZS4gIFRoZW4KICAgIGZvbGxvdyAwIG9yIG1vcmUgaGVhZGVyIGxpbmVzLCB0aGVuIGEgYmxhbmsgbGluZSwgYW5kIHRoZW4gdGhlCiAgICBhY3R1YWwgZGF0YSAoaWYgYW55KS4gIFRoZSBtZWFuaW5nIG9mIHRoZSBoZWFkZXIgbGluZXMgZGVwZW5kcyBvbgogICAgdGhlIGNvbW1hbmQgZXhlY3V0ZWQgYnkgdGhlIHNlcnZlcjsgaW4gbW9zdCBjYXNlcywgd2hlbiBkYXRhIGlzCiAgICByZXR1cm5lZCwgdGhlcmUgc2hvdWxkIGJlIGF0IGxlYXN0IG9uZSBoZWFkZXIgbGluZSBvZiB0aGUgZm9ybQoKICAgIENvbnRlbnQtdHlwZTogPHR5cGU+LzxzdWJ0eXBlPgoKICAgIHdoZXJlIDx0eXBlPiBhbmQgPHN1YnR5cGU+IHNob3VsZCBiZSByZWdpc3RlcmVkIE1JTUUgdHlwZXMsCiAgICBlLmcuICJ0ZXh0L2h0bWwiIG9yICJ0ZXh0L3BsYWluIi4KCiAgICBzBwAAAFB5dGhvbi9pAAAAAHMJAAAAQmFzZUhUVFAvcwgAAABIVFRQLzAuOWMBAAAACQAAAAYAAABDAAAAc4ICAABkFgB8AABfAQB8AABqAgAEfAAAXwMAfQEAZAEAfAAAXwQAfAAAagUAfQIAfAIAagYAZAIAgwEAfQIAfAIAfAAAXwcAfAIAaggAgwAAfQMAdAkAfAMAgwEAZAMAawIAcnkBfAMAXAMAfQQAfQUAfQEAfAEAZAQAIGQFAGsDAHKYAHwAAGoKAGQGAGQHAHwBABaDAgABdAsAU3lkAHwBAGoIAGQIAGQBAIMCAGQBABl9BgB8BgBqCABkCQCDAQB9BwB0CQB8BwCDAQBkCgBrAwBy2wB0DACCAQBuAAB0DQB8BwBkCwAZgwEAdA0AfAcAZAEAGYMBAGYCAH0HAFduLAAEdAwAdA4AZgIAawoAcioBAQEBfAAAagoAZAYAZAcAfAEAFoMCAAF0CwBTWHwHAGQXAGsFAHJSAXwAAGoPAGQMAGsFAHJSAWQLAHwAAF8EAG4AAHwHAGQYAGsFAHLpAXwAAGoKAGQNAGQOAHwGABaDAgABdAsAU25wAHQJAHwDAIMBAGQKAGsCAHLHAXwDAFwCAH0EAH0FAGQBAHwAAF8EAHwEAGQPAGsDAHLpAXwAAGoKAGQGAGQQAHwEABaDAgABdAsAU24iAHwDAHPRAXQLAFN8AABqCgBkBgBkEQB8AgAWgwIAAXQLAFN8BAB8BQB8AQADAnwAAF8BAHwAAF8QAHwAAF8DAHwAAGoRAHwAAGoSAGQLAIMCAHwAAF8TAHwAAGoTAGoUAGQSAGQTAIMCAH0IAHwIAGoVAIMAAGQUAGsCAHJRAmQBAHwAAF8EAG4tAHwIAGoVAIMAAGQVAGsCAHJ+AnwAAGoPAGQMAGsFAHJ+AmQLAHwAAF8EAG4AAHQWAFMoGQAAAHMnAQAAUGFyc2UgYSByZXF1ZXN0IChpbnRlcm5hbCkuCgogICAgICAgIFRoZSByZXF1ZXN0IHNob3VsZCBiZSBzdG9yZWQgaW4gc2VsZi5yYXdfcmVxdWVzdGxpbmU7IHRoZSByZXN1bHRzCiAgICAgICAgYXJlIGluIHNlbGYuY29tbWFuZCwgc2VsZi5wYXRoLCBzZWxmLnJlcXVlc3RfdmVyc2lvbiBhbmQKICAgICAgICBzZWxmLmhlYWRlcnMuCgogICAgICAgIFJldHVybiBUcnVlIGZvciBzdWNjZXNzLCBGYWxzZSBmb3IgZmFpbHVyZTsgb24gZmFpbHVyZSwgYW4KICAgICAgICBlcnJvciBpcyBzZW50IGJhY2suCgogICAgICAgIGkBAAAAcwIAAAANCmkDAAAAaQUAAABzBQAAAEhUVFAvaZABAABzGAAAAEJhZCByZXF1ZXN0IHZlcnNpb24gKCVyKXQBAAAAL3QBAAAALmkCAAAAaQAAAABzCAAAAEhUVFAvMS4xafkBAABzGQAAAEludmFsaWQgSFRUUCBWZXJzaW9uICglcyl0AwAAAEdFVHMeAAAAQmFkIEhUVFAvMC45IHJlcXVlc3QgdHlwZSAoJXIpcxcAAABCYWQgcmVxdWVzdCBzeW50YXggKCVyKXQKAAAAQ29ubmVjdGlvbnQAAAAAdAUAAABjbG9zZXMKAAAAa2VlcC1hbGl2ZU4oAgAAAGkBAAAAaQEAAAAoAgAAAGkCAAAAaQAAAAAoFwAAAHQEAAAATm9uZXQHAAAAY29tbWFuZHQXAAAAZGVmYXVsdF9yZXF1ZXN0X3ZlcnNpb250DwAAAHJlcXVlc3RfdmVyc2lvbnQQAAAAY2xvc2VfY29ubmVjdGlvbnQPAAAAcmF3X3JlcXVlc3RsaW5ldAYAAAByc3RyaXB0CwAAAHJlcXVlc3RsaW5ldAUAAABzcGxpdHQDAAAAbGVudAoAAABzZW5kX2Vycm9ydAUAAABGYWxzZXQKAAAAVmFsdWVFcnJvcnQDAAAAaW50dAoAAABJbmRleEVycm9ydBAAAABwcm90b2NvbF92ZXJzaW9udAQAAABwYXRodAwAAABNZXNzYWdlQ2xhc3N0BQAAAHJmaWxldAcAAABoZWFkZXJzdAMAAABnZXR0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AwAAAFNlcHQDAAAAT2N0dAMAAABOb3Z0AwAAAERlY2MBAAAAAwAAAAIAAABDAAAAcyAAAAB8AABqAABkAQAgXAIAfQEAfQIAdAEAagIAfAEAgwEAUygCAAAAc8MAAABSZXR1cm4gdGhlIGNsaWVudCBhZGRyZXNzIGZvcm1hdHRlZCBmb3IgbG9nZ2luZy4KCiAgICAgICAgVGhpcyB2ZXJzaW9uIGxvb2tzIHVwIHRoZSBmdWxsIGhvc3RuYW1lIHVzaW5nIGdldGhvc3RieWFkZHIoKSwKICAgICAgICBhbmQgdHJpZXMgdG8gZmluZCBhIG5hbWUgdGhhdCBjb250YWlucyBhdCBsZWFzdCBvbmUgZG90LgoKICAgICAgICBpAgAAACgDAAAAUmgAAABSDgAAAFIQAAAAKAMAAABSEwAAAFIUAAAAUhUAAAAoAAAAACgAAAAAc1YAAAAvdG1wL25kay1Vc2VyL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2Rhcndpbi14ODZfNjQvbGliL3B5dGhvbjIuNy9CYXNlSFRUUFNlcnZlci5weXQOAAAAYWRkcmVzc19zdHJpbmfpAQAAcwQAAAAACBMBcwgAAABIVFRQLzEuMHQIAAAAQ29udGludWVzIQAAAFJlcXVlc3QgcmVjZWl2ZWQsIHBsZWFzZSBjb250aW51ZWlkAAAAcxMAAABTd2l0Y2hpbmcgUHJvdG9jb2xzcy4AAABTd2l0Y2hpbmcgdG8gbmV3IHByb3RvY29sOyBvYmV5IFVwZ3JhZGUgaGVhZGVyaWUAAAB0AgAAAE9LcyMAAABSZXF1ZXN0IGZ1bGZpbGxlZCwgZG9jdW1lbnQgZm9sbG93c2nIAAAAdAcAAABDcmVhdGVkcx0AAABEb2N1bWVudCBjcmVhdGVkLCBVUkwgZm9sbG93c2nJAAAAdAgAAABBY2NlcHRlZHMvAAAAUmVxdWVzdCBhY2NlcHRlZCwgcHJvY2Vzc2luZyBjb250aW51ZXMgb2ZmLWxpbmVpygAAAHMdAAAATm9uLUF1dGhvcml0YXRpdmUgSW5mb3JtYXRpb25zHAAAAFJlcXVlc3QgZnVsZmlsbGVkIGZyb20gY2FjaGVpywAAAHMKAAAATm8gQ29udGVudHMiAAAAUmVxdWVzdCBmdWxmaWxsZWQsIG5vdGhpbmcgZm9sbG93c2nMAAAAcw0AAABSZXNldCBDb250ZW50cyMAAABDbGVhciBpbnB1dCBmb3JtIGZvciBmdXJ0aGVyIGlucHV0LmnNAAAAcw8AAABQYXJ0aWFsIENvbnRlbnRzGAAAAFBhcnRpYWwgY29udGVudCBmb2xsb3dzLmnOAAAAcxAAAABNdWx0aXBsZSBDaG9pY2VzcywAAABPYmplY3QgaGFzIHNldmVyYWwgcmVzb3VyY2VzIC0tIHNlZSBVUkkgbGlzdGksAQAAcxEAAABNb3ZlZCBQZXJtYW5lbnRseXMoAAAAT2JqZWN0IG1vdmVkIHBlcm1hbmVudGx5IC0tIHNlZSBVUkkgbGlzdGktAQAAdAUAAABGb3VuZHMoAAAAT2JqZWN0IG1vdmVkIHRlbXBvcmFyaWx5IC0tIHNlZSBVUkkgbGlzdGkuAQAAcwkAAABTZWUgT3RoZXJzJwAAAE9iamVjdCBtb3ZlZCAtLSBzZWUgTWV0aG9kIGFuZCBVUkwgbGlzdGkvAQAAcwwAAABOb3QgTW9kaWZpZWRzKQAAAERvY3VtZW50IGhhcyBub3QgY2hhbmdlZCBzaW5jZSBnaXZlbiB0aW1laTABAABzCQAAAFVzZSBQcm94eXNBAAAAWW91IG11c3QgdXNlIHByb3h5IHNwZWNpZmllZCBpbiBMb2NhdGlvbiB0byBhY2Nlc3MgdGhpcyByZXNvdXJjZS5pMQEAAHMSAAAAVGVtcG9yYXJ5IFJlZGlyZWN0aTMBAABzCwAAAEJhZCBSZXF1ZXN0cygAAABCYWQgcmVxdWVzdCBzeW50YXggb3IgdW5zdXBwb3J0ZWQgbWV0aG9kaZABAAB0DAAAAFVuYXV0aG9yaXplZHMqAAAATm8gcGVybWlzc2lvbiAtLSBzZWUgYXV0aG9yaXphdGlvbiBzY2hlbWVzaZEBAABzEAAAAFBheW1lbnQgUmVxdWlyZWRzIgAAAE5vIHBheW1lbnQgLS0gc2VlIGNoYXJnaW5nIHNjaGVtZXNpkgEAAHQJAAAARm9yYmlkZGVuczAAAABSZXF1ZXN0IGZvcmJpZGRlbiAtLSBhdXRob3JpemF0aW9uIHdpbGwgbm90IGhlbHBpkwEAAHMJAAAATm90IEZvdW5kcx0AAABOb3RoaW5nIG1hdGNoZXMgdGhlIGdpdmVuIFVSSWmUAQAAcxIAAABNZXRob2QgTm90IEFsbG93ZWRzLgAAAFNwZWNpZmllZCBtZXRob2QgaXMgaW52YWxpZCBmb3IgdGhpcyByZXNvdXJjZS5plQEAAHMOAAAATm90IEFjY2VwdGFibGVzJgAAAFVSSSBub3QgYXZhaWxhYmxlIGluIHByZWZlcnJlZCBmb3JtYXQuaZYBAABzHQAAAFByb3h5IEF1dGhlbnRpY2F0aW9uIFJlcXVpcmVkczgAAABZb3UgbXVzdCBhdXRoZW50aWNhdGUgd2l0aCB0aGlzIHByb3h5IGJlZm9yZSBwcm9jZWVkaW5nLmmXAQAAcw8AAABSZXF1ZXN0IFRpbWVvdXRzIwAAAFJlcXVlc3QgdGltZWQgb3V0OyB0cnkgYWdhaW4gbGF0ZXIuaZgBAAB0CAAAAENvbmZsaWN0cxEAAABSZXF1ZXN0IGNvbmZsaWN0LmmZAQAAdAQAAABHb25lczYAAABVUkkgbm8gbG9uZ2VyIGV4aXN0cyBhbmQgaGFzIGJlZW4gcGVybWFuZW50bHkgcmVtb3ZlZC5pmgEAAHMPAAAATGVuZ3RoIFJlcXVpcmVkcyMAAABDbGllbnQgbXVzdCBzcGVjaWZ5IENvbnRlbnQtTGVuZ3RoLmmbAQAAcxMAAABQcmVjb25kaXRpb24gRmFpbGVkcyEAAABQcmVjb25kaXRpb24gaW4gaGVhZGVycyBpcyBmYWxzZS5pnAEAAHMYAAAAUmVxdWVzdCBFbnRpdHkgVG9vIExhcmdlcxQAAABFbnRpdHkgaXMgdG9vIGxhcmdlLmmdAQAAcxQAAABSZXF1ZXN0LVVSSSBUb28gTG9uZ3MQAAAAVVJJIGlzIHRvbyBsb25nLmmeAQAAcxYAAABVbnN1cHBvcnRlZCBNZWRpYSBUeXBlcyIAAABFbnRpdHkgYm9keSBpbiB1bnN1cHBvcnRlZCBmb3JtYXQuaZ8BAABzHwAAAFJlcXVlc3RlZCBSYW5nZSBOb3QgU2F0aXNmaWFibGVzHQAAAENhbm5vdCBzYXRpc2Z5IHJlcXVlc3QgcmFuZ2UuaaABAABzEgAAAEV4cGVjdGF0aW9uIEZhaWxlZHMoAAAARXhwZWN0IGNvbmRpdGlvbiBjb3VsZCBub3QgYmUgc2F0aXNmaWVkLmmhAQAAcxUAAABJbnRlcm5hbCBTZXJ2ZXIgRXJyb3JzHAAAAFNlcnZlciBnb3QgaXRzZWxmIGluIHRyb3VibGVp9AEAAHMPAAAATm90IEltcGxlbWVudGVkcyYAAABTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCB0aGlzIG9wZXJhdGlvbmn1AQAAcwsAAABCYWQgR2F0ZXdheXMsAAAASW52YWxpZCByZXNwb25zZXMgZnJvbSBhbm90aGVyIHNlcnZlci9wcm94eS5p9gEAAHMTAAAAU2VydmljZSBVbmF2YWlsYWJsZXM4AAAAVGhlIHNlcnZlciBjYW5ub3QgcHJvY2VzcyB0aGUgcmVxdWVzdCBkdWUgdG8gYSBoaWdoIGxvYWRp9wEAAHMPAAAAR2F0ZXdheSBUaW1lb3V0czQAAABUaGUgZ2F0ZXdheSBzZXJ2ZXIgZGlkIG5vdCByZWNlaXZlIGEgdGltZWx5IHJlc3BvbnNlafgBAABzGgAAAEhUVFAgVmVyc2lvbiBOb3QgU3VwcG9ydGVkcxcAAABDYW5ub3QgZnVsZmlsbCByZXF1ZXN0Lmn5AQAATigCAAAAUpMAAABzIQAAAFJlcXVlc3QgcmVjZWl2ZWQsIHBsZWFzZSBjb250aW51ZSgCAAAAcxMAAABTd2l0Y2hpbmcgUHJvdG9jb2xzcy4AAABTd2l0Y2hpbmcgdG8gbmV3IHByb3RvY29sOyBvYmV5IFVwZ3JhZGUgaGVhZGVyKAIAAABSlAAAAHMjAAAAUmVxdWVzdCBmdWxmaWxsZWQsIGRvY3VtZW50IGZvbGxvd3MoAgAAAFKVAAAAcx0AAABEb2N1bWVudCBjcmVhdGVkLCBVUkwgZm9sbG93cygCAAAAUpYAAABzLwAAAFJlcXVlc3QgYWNjZXB0ZWQsIHByb2Nlc3NpbmcgY29udGludWVzIG9mZi1saW5lKAIAAABzHQAAAE5vbi1BdXRob3JpdGF0aXZlIEluZm9ybWF0aW9ucxwAAABSZXF1ZXN0IGZ1bGZpbGxlZCBmcm9tIGNhY2hlKAIAAABzCgAAAE5vIENvbnRlbnRzIgAAAFJlcXVlc3QgZnVsZmlsbGVkLCBub3RoaW5nIGZvbGxvd3MoAgAAAHMNAAAAUmVzZXQgQ29udGVudHMjAAAAQ2xlYXIgaW5wdXQgZm9ybSBmb3IgZnVydGhlciBpbnB1dC4oAgAAAHMPAAAAUGFydGlhbCBDb250ZW50cxgAAABQYXJ0aWFsIGNvbnRlbnQgZm9sbG93cy4oAgAAAHMQAAAATXVsdGlwbGUgQ2hvaWNlc3MsAAAAT2JqZWN0IGhhcyBzZXZlcmFsIHJlc291cmNlcyAtLSBzZWUgVVJJIGxpc3QoAgAAAHMRAAAATW92ZWQgUGVybWFuZW50bHlzKAAAAE9iamVjdCBtb3ZlZCBwZXJtYW5lbnRseSAtLSBzZWUgVVJJIGxpc3QoAgAAAFKXAAAAcygAAABPYmplY3QgbW92ZWQgdGVtcG9yYXJpbHkgLS0gc2VlIFVSSSBsaXN0KAIAAABzCQAAAFNlZSBPdGhlcnMnAAAAT2JqZWN0IG1vdmVkIC0tIHNlZSBNZXRob2QgYW5kIFVSTCBsaXN0KAIAAABzDAAAAE5vdCBNb2RpZmllZHMpAAAARG9jdW1lbnQgaGFzIG5vdCBjaGFuZ2VkIHNpbmNlIGdpdmVuIHRpbWUoAgAAAHMJAAAAVXNlIFByb3h5c0EAAABZb3UgbXVzdCB1c2UgcHJveHkgc3BlY2lmaWVkIGluIExvY2F0aW9uIHRvIGFjY2VzcyB0aGlzIHJlc291cmNlLigCAAAAcxIAAABUZW1wb3JhcnkgUmVkaXJlY3RzKAAAAE9iamVjdCBtb3ZlZCB0ZW1wb3JhcmlseSAtLSBzZWUgVVJJIGxpc3QoAgAAAHMLAAAAQmFkIFJlcXVlc3RzKAAAAEJhZCByZXF1ZXN0IHN5bnRheCBvciB1bnN1cHBvcnRlZCBtZXRob2QoAgAAAFKYAAAAcyoAAABObyBwZXJtaXNzaW9uIC0tIHNlZSBhdXRob3JpemF0aW9uIHNjaGVtZXMoAgAAAHMQAAAAUGF5bWVudCBSZXF1aXJlZHMiAAAATm8gcGF5bWVudCAtLSBzZWUgY2hhcmdpbmcgc2NoZW1lcygCAAAAUpkAAABzMAAAAFJlcXVlc3QgZm9yYmlkZGVuIC0tIGF1dGhvcml6YXRpb24gd2lsbCBub3QgaGVscCgCAAAAcwkAAABOb3QgRm91bmRzHQAAAE5vdGhpbmcgbWF0Y2hlcyB0aGUgZ2l2ZW4gVVJJKAIAAABzEgAAAE1ldGhvZCBOb3QgQWxsb3dlZHMuAAAAU3BlY2lmaWVkIG1ldGhvZCBpcyBpbnZhbGlkIGZvciB0aGlzIHJlc291cmNlLigCAAAAcw4AAABOb3QgQWNjZXB0YWJsZXMmAAAAVVJJIG5vdCBhdmFpbGFibGUgaW4gcHJlZmVycmVkIGZvcm1hdC4oAgAAAHMdAAAAUHJveHkgQXV0aGVudGljYXRpb24gUmVxdWlyZWRzOAAAAFlvdSBtdXN0IGF1dGhlbnRpY2F0ZSB3aXRoIHRoaXMgcHJveHkgYmVmb3JlIHByb2NlZWRpbmcuKAIAAABzDwAAAFJlcXVlc3QgVGltZW91dHMjAAAAUmVxdWVzdCB0aW1lZCBvdXQ7IHRyeSBhZ2FpbiBsYXRlci4oAgAAAFKaAAAAcxEAAABSZXF1ZXN0IGNvbmZsaWN0LigCAAAAUpsAAABzNgAAAFVSSSBubyBsb25nZXIgZXhpc3RzIGFuZCBoYXMgYmVlbiBwZXJtYW5lbnRseSByZW1vdmVkLigCAAAAcw8AAABMZW5ndGggUmVxdWlyZWRzIwAAAENsaWVudCBtdXN0IHNwZWNpZnkgQ29udGVudC1MZW5ndGguKAIAAABzEwAAAFByZWNvbmRpdGlvbiBGYWlsZWRzIQAAAFByZWNvbmRpdGlvbiBpbiBoZWFkZXJzIGlzIGZhbHNlLigCAAAAcxgAAABSZXF1ZXN0IEVudGl0eSBUb28gTGFyZ2VzFAAAAEVudGl0eSBpcyB0b28gbGFyZ2UuKAIAAABzFAAAAFJlcXVlc3QtVVJJIFRvbyBMb25ncxAAAABVUkkgaXMgdG9vIGxvbmcuKAIAAABzFgAAAFVuc3VwcG9ydGVkIE1lZGlhIFR5cGVzIgAAAEVudGl0eSBib2R5IGluIHVuc3VwcG9ydGVkIGZvcm1hdC4oAgAAAHMfAAAAUmVxdWVzdGVkIFJhbmdlIE5vdCBTYXRpc2ZpYWJsZXMdAAAAQ2Fubm90IHNhdGlzZnkgcmVxdWVzdCByYW5nZS4oAgAAAHMSAAAARXhwZWN0YXRpb24gRmFpbGVkcygAAABFeHBlY3QgY29uZGl0aW9uIGNvdWxkIG5vdCBiZSBzYXRpc2ZpZWQuKAIAAABzFQAAAEludGVybmFsIFNlcnZlciBFcnJvcnMcAAAAU2VydmVyIGdvdCBpdHNlbGYg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