SGkgQWFyb24sIGhpIGxpc3QsCgoKPiBXZSd2ZSBiZWVuIHdvcmtpbmcgb24gYSBnZW5lcmljIChh bmQgdGhyZWFkZWQgOikgbW9kZWwgZm9yIGFjY2Vzc2luZyBuZXBvbXVrIAo+IGRhdGEuIEl0J3Mg aW4gdGhlIG1hcnQvbmV3TWV0YWRhdGFNb2RlbCBicmFuY2ggb2YgcGxhc21hLW1vYmlsZS4gdGhl IGhvcGUgaXMgCj4gdG8gbW92ZSBpdCBzb21ld2hlcmUgZ2VuZXJpYyAoZS5nLiBuZXBvbXVrLWNv cmUgb3Igc29tZSBzdWNoKSBhbmQgTWFyY28gd3JvdGUgCj4gYW4gZW1haWwgdG8gdGhlIHJlbGV2 YW50IGxpc3RzIGFib3V0IGl0LgoKWWVhaCwgSSd2ZSBzZWVuIHRoaXMgOikgSSBtZW50aW9ubmVk IGl0IGluIG15IGVtYWlsLiBJJ20gcmVhbGx5IGhhcHB5IHRvIHNlZSB0aGlzIGhhcHBlbmluZyA6 KQoKCj4gSSdkIGhpZ2hseSBzdWdnZXN0IHN0YXJ0aW5nIHdpdGggdGhhdCBtb2RlbCBhcyBpdCBh bGxvd3MgeW91IHRvIGFjY2VzcyBuZXBvbXVrIAo+IGRhdGEgZnJvbSBRTUwgdmVyeSBlYXNpbHkg YW5kLCBtb3N0IGltcG9ydGFudGx5IHBlcmhhcHMsIHJlbGlhYmx5LgoKSSdtIGFmcmFpZCBJIGNh bid0IGZvciBub3cuIEknbSB1c2luZyBQeXRob24sIHNvIEknbGwgaGF2ZSB0byB3YWl0IHVudGls IHRoZSBiaW5kaW5ncyBmb3IgdGhpcyBuZXcgbW9kZWwgYmVjb21lcyBhdmFpbGFibGUuCgoKPiBG dXJ0aGVybW9yZSwgSSBkb24ndCBrbm93IGlmIHlvdSBhcmUgYXdhcmUgLyBmYW1pbGlhciB3aXRo IHRoZSBQbGFzbWEgCj4gTWVkaWFjZW50ZXIsIGJ1dCBpdCBtYXkgYmUgc29tZXRoaW5nIHlvdSdk IGxpa2UgdG8gY29vcmRpbmF0ZSB3aXRoIGlmIHlvdSAKPiBoYXZlbnQgYWxyZWFkeS4KCll1cCwg eW91IGFscmVhZHkgdG9sZCBtZSBhYm91dCBpdCBhIGZldyBtb250aHMgYWdvIDopClRoZSAicHJv YmxlbXMiIGlzIHRoYXQgUGxhc21hIE1lZGlhIENlbnRlciBpcyB3cml0dGVuIGluIEMrKyBhbmQg SSBkb24ndCBrbm93IGl0LiBBbmQgc2FkbHksIEkgZG9uJ3QgdGhpbmsgSSdsbCBoYXZlIHRoZSB0 aW1lIHRvIGxlYXJuIGl0LgpNb3Jlb3ZlciwgdGhlIGxhc3QgdGltZSBJIHRvb2sgYSBsb29rIGF0 IGl0LCBpdCBzZWVtZWQgdGhhdCB3ZSBoYWQgYSB2ZXJ5IGRpZmZlcmVudCB2aXNpb24gb2Ygd2hh dCBhIG1lZGlhIGNlbnRlciBzaG91bGQgYmUuIFRoaXMgaXMgd2h5IEkgc3RhcnRlZCBteSBvd24g dGhpbmcuCldlbGwsIHNpbmNlIG15IHByb2plY3Qgd2lsbCBiZSBzdHVjayBmb3IgYSB3aGlsZSwg SSBjb3VsZCBtYXliZSB0cnkgdG8gc2hhcmUgbXkgcG9pbnQgb2YgdmlldyBhZ2FpbiwgYW5kIG1h eWJlIHN0aWNrIHRvIFFNTCBkZXZlbG9wbWVudC4KSSdsbCB0aGluayBhYm91dCBpdCA6KQoKQW55 d2F5LCB0aGFua3MgZm9yIHlvdXIgYW5zd2VyLCB5b3VyIHRpbWUgYW5kIHlvdXIgd29yay4KCkhh dmUgYSBuaWNlIGRheSwKCi0tIApGcmFuw6dvaXMKCgotLSAKQWFyb24gU2VpZ28KLS1uZXh0UGFy dDE1MDQwNTQ1OS5WdkI1UWFLRURlCkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vcGdwLXNpZ25h dHVyZTsgbmFtZT0ic2lnbmF0dXJlLmFzYyIKQ29udGVudC1EZXNjcmlwdGlvbjogVGhpcyBpcyBh IGRpZ2l0YWxseSBzaWduZWQgbWVzc2FnZSBwYXJ0LgoKLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJF LS0tLS0KVmVyc2lvbjogR251UEcgdjIuMC4xOSAoR05VL0xpbnV4KQoKaUVZRUFCRUNBQVlGQWxD dXZGVUFDZ2tRMXJjdXNhZngyMFBOUndDZmFWeXpKZkNoRnZERW1uUXZWMkRYMTV3SQozTlFBbmpR cElKRGZacnQrdkcyWk1tWXFUUW42c1lQQwo9czltQwotLS0tLUVORCBQR1AgU0lHTkFUVVJFLS0t LS0KCi0tbmV4dFBhcnQxNTA0MDU0NTkuVnZCNVFhS0VEZS0tCgoKCj4+IFZpc2l0IGh0dHA6Ly9t YWlsLmtkZS5vcmcvbWFpbG1hbi9saXN0aW5mby9rZGUtZGV2ZWwjdW5zdWIgdG8gdW5zdWJzY3Jp YmUgPDwKCj4+IFZpc2l0IGh0dHA6Ly9tYWlsLmtkZS5vcmcvbWFpbG1hbi9saXN0aW5mby9rZGUt ZGV2ZWwjdW5zdWIgdG8gdW5zdWJzY3JpYmUgPDwK