JElkOiBSRUFETUUuYWhhMTUyeCx2IDEuMiAxOTk5LzEyLzI1IDE1OjMyOjMwIGZpc2NoZXIgRXhwIGZpc2NoZXIgJApBZGFwdGVjIEFIQS0xNTIwLzE1MjIgU0NTSSBkcml2ZXIgZm9yIExpbnV4IChhaGExNTJ4KQoKQ29weXJpZ2h0IDE5OTMtMTk5OSBK/HJnZW4gRmlzY2hlciA8ZmlzY2hlckBub3JiaXQuZGU+ClRDMTU1MCBwYXRjaGVzIGJ5IEx1dWsgdmFuIERpamsgKGxkekB4czRhbGwubmwpCgoKSW4gUmV2aXNpb24gMiB0aGUgZHJpdmVyIHdhcyBtb2RpZmllZCBhIGxvdCAoZXNwZWNpYWxseSB0aGUKYm90dG9tLWhhbGYgaGFuZGxlciBjb21wbGV0ZSgpKS4KClRoZSBkcml2ZXIgaXMgbXVjaCBjbGVhbmVyIG5vdywgaGFzIHN1cHBvcnQgZm9yIHRoZSBuZXcKZXJyb3IgaGFuZGxpbmcgY29kZSBpbiAyLjMsIHByb2R1Y2VkIGxlc3MgY3B1IGxvYWQgKG11Y2gKbGVzcyBwb2xsaW5nIGxvb3BzKSwgaGFzIHNsaWdodGx5IGhpZ2hlciB0aHJvdWdocHV0IChhdApsZWFzdCBvbiBteSBhbmNpZW50IHRlc3QgYm94OyBhIGk0ODYvMzNNaHovMjBNQikuCgoKQ09ORklHVVJBVElPTiBBUkdVTUVOVFM6CgpJT1BPUlQgICAgICAgIGJhc2UgaW8gYWRkcmVzcyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDM0MC8weDE0MCkKSVJRICAgICAgICAgICBpbnRlcnJ1cHQgbGV2ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAoOS0xMjsgZGVmYXVsdCAxMSkKU0NTSV9JRCAgICAgICBzY3NpIGlkIG9mIGNvbnRyb2xsZXIgICAgICAgICAgICAgICAgICAgICAoMC03OyBkZWZhdWx0IDcpClJFQ09OTkVDVCAgICAgYWxsb3cgdGFyZ2V0cyB0byBkaXNjb25uZWN0IGZyb20gdGhlIGJ1cyAgKDAvMTsgZGVmYXVsdCAxIFtvbl0pClBBUklUWSAgICAgICAgZW5hYmxlIHBhcml0eSBjaGVja2luZyAgICAgICAgICAgICAgICAgICAgKDAvMTsgZGVmYXVsdCAxIFtvbl0pClNZTkNIUk9OT1VTICAgZW5hYmxlIHN5bmNocm9ub3VzIHRyYW5zZmVycyAgICAgICAgICAgICAgKDAvMTsgZGVmYXVsdCAxIFtvbl0pCkRFTEFZOiAgICAgICAgYnVzIHJlc2V0IGRlbGF5ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlZmF1bHQgMTAwKQpFWFRfVFJBTlM6ICAgIGVuYWJsZSBleHRlbmRlZCB0cmFuc2xhdGlvbiAgICAgICAgICAgICAgICgwLzE6IGRlZmF1bHQgMCBbb2ZmXSkKICAgICAgICAgICAgICAoc2VlIE5PVEVTKQoKQ09NUElMRSBUSU1FIENPTkZJR1VSQVRJT04gKGdvIGludG8gQUhBMTUyWCBpbiBkcml2ZXJzL3Njc2kvTWFrZWZpbGUpOgoKLURBVVRPQ09ORgogdXNlIGNvbmZpZ3VyYXRpb24gdGhlIGNvbnRyb2xsZXIgcmVwb3J0cyAoQUhBLTE1Mnggb25seSkKCi1EU0tJUF9CSU9TVEVTVAogRG9uJ3QgdGVzdCBmb3IgQklPUyBzaWduYXR1cmUgKEFIQS0xNTEwIG9yIGRpc2FibGVkIEJJT1MpCgotRFNFVFVQMD0ieyBJT1BPUlQsIElSUSwgU0NTSV9JRCwgUkVDT05ORUNULCBQQVJJVFksIFNZTkNIUk9OT1VTLCBERUxBWSwgRVhUX1RSQU5TIH0iCiBvdmVycmlkZSBmb3IgdGhlIGZpcnN0IGNvbnRyb2xsZXIgCgotRFNFVFVQMT0ieyBJT1BPUlQsIElSUSwgU0NTSV9JRCwgUkVDT05ORUNULCBQQVJJVFksIFNZTkNIUk9OT1VTLCBERUxBWSwgRVhUX1RSQU5TIH0iCiBvdmVycmlkZSBmb3IgdGhlIHNlY29uZCBjb250cm9sbGVyCgotREFIQTE1MlhfREVCVUcKIGVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0CgotREFIQTE1MlhfU1RBVAogZW5hYmxlIHNvbWUgc3RhdGlzdGljcwoKCkxJTE8gQ09NTUFORCBMSU5FIE9QVElPTlM6CgphaGExNTJ4PTxJT1BPUlQ+Wyw8SVJRPlssPFNDU0ktSUQ+Wyw8UkVDT05ORUNUPlssPFBBUklUWT5bLDxTWU5DSFJPTk9VUz5bLDxERUxBWT4gWyw8RVhUX1RSQU5TXV1dXV1dXQoKIFRoZSBub3JtYWwgY29uZmlndXJhdGlvbiBjYW4gYmUgb3ZlcnJpZGRlbiBieSBzcGVjaWZ5aW5nIGEgY29tbWFuZCBsaW5lLgogV2hlbiB5b3UgZG8gdGhpcywgdGhlIEJJT1MgdGVzdCBpcyBza2lwcGVkLiBFbnRlcmVkIHZhbHVlcyBoYXZlIHRvIGJlCiB2YWxpZCAoa25vd24pLiAgRG9uJ3QgdXNlIHZhbHVlcyB0aGF0IGFyZW4ndCBzdXBwb3J0ZWQgdW5kZXIgbm9ybWFsCiBvcGVyYXRpb24uICBJZiB5b3UgdGhpbmsgdGhhdCB5b3UgbmVlZCBvdGhlciB2YWx1ZXM6IGNvbnRhY3QgbWUuCiBGb3IgdHdvIGNvbnRyb2xsZXJzIHVzZSB0aGUgYWhhMTUyeCBzdGF0ZW1lbnQgdHdpY2UuCgoKU1lNQk9MUyBGT1IgTU9EVUxFIENPTkZJR1VSQVRJT046CgpDaG9vc2UgZnJvbSAyIGFsdGVybmF0aXZlczoKCjEuIHNwZWNpZnkgZXZlcnl0aGluZyAob2xkKQoKYWhhMTUyeD1JT1BPUlQsSVJRLFNDU0lfSUQsUkVDT05ORUNULFBBUklUWSxTWU5DSFJPTk9VUyxERUxBWSxFWFRfVFJBTlMKICBjb25maWd1cmF0aW9uIG92ZXJyaWRlIGZvciBmaXJzdCBjb250cm9sbGVyCgoKYWhhMTUyeDE9SU9QT1JULElSUSxTQ1NJX0lELFJFQ09OTkVDVCxQQVJJVFksU1lOQ0hST05PVVMsREVMQVksRVhUX1RSQU5TCiAgY29uZmlndXJhdGlvbiBvdmVycmlkZSBmb3Igc2Vjb25kIGNvbnRyb2xsZXIKCjIuIHNwZWNpZnkgb25seSB3aGF0IHlvdSBuZWVkIHRvIChpcnEgb3IgaW8gaXMgcmVxdWlyZWQ7IG5ldykKCmlvPUlPUE9SVDBbLElPUE9SVDFdCiAgSU9QT1JUIGZvciBmaXJzdCBhbmQgc2Vjb25kIGNvbnRyb2xsZXIKCmlycT1JUlEwWyxJUlExXQogIElSUSBmb3IgZmlyc3QgYW5kIHNlY29uZCBjb250cm9sbGVyCgpzY3NpaWQ9U0NTSUlEMFssU0NTSUlEMV0KICBTQ1NJSUQgZm9yIGZpcnN0IGFuZCBzZWNvbmQgY29udHJvbGxlcgoKcmVjb25uZWN0PVJFQ09OTkVDVDBbLFJFQ09OTkVDVDFdCiAgYWxsb3cgdGFyZ2V0cyB0byBkaXNjb25uZWN0IGZvciBmaXJzdCBhbmQgc2Vjb25kIGNvbnRyb2xsZXIKCnBhcml0eT1QQVIwW1BBUjFdCiAgdXNlIHBhcml0eSBmb3IgZmlyc3QgYW5kIHNlY29uZCBjb250cm9sbGVyCgpzeW5jPVNZTkNIUk9OT1VTMFssU1lOQ0hST05PVVMxXQogIGVuYWJsZSBzeW5jaHJvbm91cyB0cmFuc2ZlcnMgZm9yIGZpcnN0IGFuZCBzZWNvbmQgY29udHJvbGxlcgoKZGVsYXk9REVMQVkwWyxERUxBWTFdCiAgcmVzZXQgREVMQVkgZm9yIGZpcnN0IGFuZCBzZWNvbmQgY29udHJvbGxlcgoKZXh0dHJhbnM9RVhUVFJBTlMwWyxFWFRUUkFOUzFdCiAgZW5hYmxlIGV4dGVuZGVkIHRyYW5zbGF0aW9uIGZvciBmaXJzdCBhbmQgc2Vjb25kIGNvbnRyb2xsZXIKCgpJZiB5b3UgdXNlIGJvdGggYWx0ZXJuYXRpdmVzIHRoZSBmaXJzdCB3aWxsIGJlIHRha2VuLgoKCk5PVEVTIE9OIEVYVF9UUkFOUzogCgpTQ1NJIHVzZXMgYmxvY2sgbnVtYmVycyB0byBhZGRyZXNzIGJsb2Nrcy9zZWN0b3JzIG9uIGEgZGV2aWNlLgpUaGUgQklPUyB1c2VzIGEgY3lsaW5kZXIvaGVhZC9zZWN0b3IgYWRkcmVzc2luZyBzY2hlbWUgKEMvSC9TKQpzY2hlbWUgaW5zdGVhZC4gIERPUyBleHBlY3RzIGEgQklPUyBvciBkcml2ZXIgdGhhdCB1bmRlcnN0YW5kcyB0aGlzCkMvSC9TIGFkZHJlc3NpbmcuCgpUaGUgbnVtYmVyIG9mIGN5bGluZGVycy9oZWFkcy9zZWN0b3JzIGlzIGNhbGxlZCBnZW9tZXRyeSBhbmQgaXMgcmVxdWlyZWQKYXMgYmFzZSBmb3IgcmVxdWVzdHMgaW4gQy9IL1MgYWRkcmVzc2luZy4gIFNDU0kgb25seSBrbm93cyBhYm91dCB0aGUKdG90YWwgY2FwYWNpdHkgb2YgZGlza3MgaW4gYmxvY2tzIChzZWN0b3JzKS4KClRoZXJlZm9yZSB0aGUgU0NTSSBCSU9TL0RPUyBkcml2ZXIgaGFzIHRvIGNhbGN1bGF0ZSBhIGxvZ2ljYWwvdmlydHVhbApnZW9tZXRyeSBqdXN0IHRvIGJlIGFibGUgdG8gc3VwcG9ydCB0aGF0IGFkZHJlc3Npbmcgc2NoZW1lLiAgVGhlIGdlb21ldHJ5CnJldHVybmVkIGJ5IHRoZSBTQ1NJIEJJT1MgaXMgYSBwdXJlIGNhbGN1bGF0aW9uIGFuZCBoYXMgbm90aGluZyB0bwpkbyB3aXRoIHRoZSByZWFsL3BoeXNpY2FsIGdlb21ldHJ5IG9mIHRoZSBkaXNrICh3aGljaCBpcyB1c3VhbGx5CmlycmVsZXZhbnQgYW55d2F5KS4KCkJhc2ljYWxseSB0aGlzIGhhcyBubyBpbXBhY3QgYXQgYWxsIG9uIExpbnV4LCBiZWNhdXNlIGl0IGFsc28gdXNlcyBibG9jawppbnN0ZWFkIG9mIEMvSC9TIGFkZHJlc3NpbmcuICBVbmZvcnR1bmF0ZWx5IEMvSC9TIGFkZHJlc3NpbmcgaXMgYWxzbyB1c2VkCmluIHRoZSBwYXJ0aXRpb24gdGFibGUgYW5kIHRoZXJlZm9yZSBldmVyeSBvcGVyYXRpbmcgc3lzdGVtIGhhcyB0byBrbm93CnRoZSByaWdodCBnZW9tZXRyeSB0byBiZSBhYmxlIHRvIGludGVycHJldCBpdC4KCk1vcmVvdmVyIHRoZXJlIGFyZSBjZXJ0YWluIGxpbWl0YXRpb25zIHRvIHRoZSBDL0gvUyBhZGRyZXNzaW5nIHNjaGVtZSwKbmFtZWx5IHRoZSBhZGRyZXNzIHNwYWNlIGlzIGxpbWl0ZWQgdG8gdXB0byAyNTUgaGVhZHMsIHVwdG8gNjMgc2VjdG9ycwphbmQgYSBtYXhpbXVtIG9mIDEwMjMgY3lsaW5kZXJzLgoKVGhlIEFIQS0xNTIyIEJJT1MgY2FsY3VsYXRlcyB0aGUgZ2VvbWV0cnkgYnkgZml4aW5nIHRoZSBudW1iZXIgb2YgaGVhZHMKdG8gNjQsIHRoZSBudW1iZXIgb2Ygc2VjdG9ycyB0byAzMiBhbmQgYnkgY2FsY3VsYXRpbmcgdGhlIG51bWJlciBvZgpjeWxpbmRlcnMgYnkgZGl2aWRpbmcgdGhlIGNhcGFjaXR5IHJlcG9ydGVkIGJ5IHRoZSBkaXNrIGJ5IDY0KjMyICgxIE1CKS4KVGhpcyBpcyBjb25zaWRlcmVkIHRvIGJlIHRoZSBkZWZhdWx0IHRyYW5zbGF0aW9uLgoKV2l0aCByZXNwZWN0IHRvIHRoZSBsaW1pdCBvZiAxMDIzIGN5bGluZGVycyB1c2luZyBDL0gvUyB5b3UgY2FuIG9ubHkKYWRkcmVzcyB0aGUgZmlyc3QgR0Igb2YgeW91ciBkaXNrIGluIHRoZSBwYXJ0aXRpb24gdGFibGUuICBUaGVyZWZvcmUKQklPU2VzIG9mIHNvbWUgbmV3ZXIgY29udHJvbGxlcnMgYmFzZWQgb24gdGhlIEFJQy02MjYwLzYzNjAgc3VwcG9ydApleHRlbmRlZCB0cmFuc2xhdGlvbi4gIFRoaXMgbWVhbnMgdGhhdCB0aGUgQklPUyB1c2VzIDI1NSBmb3IgaGVhZHMsCjYzIGZvciBzZWN0b3JzIGFuZCB0aGVuIGRpdmlkZXMgdGhlIGNhcGFjaXR5IG9mIHRoZSBkaXNrIGJ5IDI1NSo2MwooYWJvdXQgOCBNQiksIGFzIHNvb24gaXQgc2VlcyBhIGRpc2sgZ3JlYXRlciB0aGFuIDEgR0IuICBUaGF0IHJlc3VsdHMKaW4gYSBtYXhpbXVtIG9mIGFib3V0IDggR0IgYWRkcmVzc2FibGUgZGlza3NwYWNlIGluIHRoZSBwYXJ0aXRpb24gdGFibGUKKGJ1dCB0aGVyZSBhcmUgYWxyZWFkeSBiaWdnZXIgZGlza3Mgb3V0IHRoZXJlIHRvZGF5KS4KClRvIG1ha2UgaXQgZXZlbiBtb3JlIGNvbXBsaWNhdGVkIHRoZSB0cmFuc2xhdGlvbiBtb2RlIG1pZ2h0L21pZ2h0Cm5vdCBiZSBjb25maWd1cmFibGUgaW4gY2VydGFpbiBCSU9TIHNldHVwcy4KClRoaXMgZHJpdmVyIGRvZXMgc29tZSBtb3JlIG9yIGxlc3MgZmFpbHNhZmUgZ3Vlc3NpbmcgdG8gZ2V0IHRoZQpnZW9tZXRyeSByaWdodCBpbiBtb3N0IGNhc2VzOgoKLSBmb3IgZGlza3M8MUdCOiB1c2UgZGVmYXVsdCB0cmFuc2xhdGlvbiAoQy8zMi82NCkKCi0gZm9yIGRpc2tzPjFHQjoKICAtIHRha2UgY3VycmVudCBnZW9tZXRyeSBmcm9tIHRoZSBwYXJ0aXRpb24gdGFibGUKICAgICh1c2luZyBzY3NpY2FtX2Jpb3NfcGFyYW0gYW5kIGFjY2VwdCBvbmx5IGB2YWxpZCcgZ2VvbWV0cmllcywKICAgIGllLiBlaXRoZXIgKEMvMzIvNjQpIG9yIChDLzYzLzI1NSkpLiAgVGhpcyBjYW4gYmUgZXh0ZW5kZWQgdHJhbnNsYXRpb24KICAgIGV2ZW4gaWYgaXQncyBub3QgZW5hYmxlZCBpbiB0aGUgZHJpdmVyLgoKICAtIGlmIHRoYXQgZmFpbHMsIHRha2UgZXh0ZW5kZWQgdHJhbnNsYXRpb24gaWYgZW5hYmxlZCBieSBvdmVycmlkZSwKICAgIGtlcm5lbCBvciBtb2R1bGUgcGFyYW1ldGVyLCBvdGhlcndpc2UgdGFrZSBkZWZhdWx0IHRyYW5zbGF0aW9uIGFuZAogICAgYXNrIHRoZSB1c2VyIGZvciB2ZXJpZmljYXRpb24uICBUaGlzIG1pZ2h0IG9uIG5vdCB5ZXQgcGFydGl0aW9uZWQKICAgIGRpc2tzLgoKClJFRkVSRU5DRVMgVVNFRDoKCiAiQUlDLTYyNjAgU0NTSSBDaGlwIFNwZWNpZmljYXRpb24iLCBBZGFwdGVjIENvcnBvcmF0aW9uLgoKICJTQ1NJIENPTVBVVEVSIFNZU1RFTSBJTlRFUkZBQ0UgLSAyIChTQ1NJLTIpIiwgWDNUOS4yLzg2LTEwOSByZXYuIDEwaAoKICJXcml0aW5nIGEgU0NTSSBkZXZpY2UgZHJpdmVyIGZvciBMaW51eCIsIFJpayBGYWl0aCAoZmFpdGhAY3MudW5jLmVkdSkKCiAiS2VybmVsIEhhY2tlcidzIEd1aWRlIiwgTWljaGFlbCBLLiBKb2huc29uIChqb2huc29ubUBzdW5zaXRlLnVuYy5lZHUpCgogIkFkYXB0ZWMgMTUyMC8xNTIyIFVzZXIncyBHdWlkZSIsIEFkYXB0ZWMgQ29ycG9yYXRpb24uCgogTWljaGFlbCBLLiBKb2huc29uIChqb2huc29ubUBzdW5zaXRlLnVuYy5lZHUpCgogRHJldyBFY2toYXJkdCAoZHJld0Bjcy5jb2xvcmFkby5lZHUpCgogRXJpYyBZb3VuZ2RhbGUgKGVyaWNAYW5kYW50ZS5vcmcpIAoKIHNwZWNpYWwgdGhhbmtzIHRvIEVyaWMgWW91bmdkYWxlIGZvciB0aGUgZnJlZSghKSBzdXBwbHlpbmcgdGhlCiBkb2N1bWVudGF0aW9uIG9uIHRoZSBjaGlwLgo=