• TriLUG Digest, Vol 4304, Issue 1

    From via TriLUG@trilug@trilug.org to trilug@trilug.org on Mon Jul 7 12:00:01 2025
    U2VuZCBUcmlMVUcgbWFpbGluZyBsaXN0IHN1Ym1pc3Npb25zIHRvCgl0cmlsdWdAdHJpbHVnLm9y ZwoKVG8gc3Vic2NyaWJlIG9yIHVuc3Vic2NyaWJlIHZpYSB0aGUgV29ybGQgV2lkZSBXZWIsIHZp c2l0CglodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vbGlzdGluZm8vdHJpbHVnCm9yLCB2 aWEgZW1haWwsIHNlbmQgYSBtZXNzYWdlIHdpdGggc3ViamVjdCBvciBib2R5ICdoZWxwJyB0bwoJ dHJpbHVnLXJlcXVlc3RAdHJpbHVnLm9yZwoKWW91IGNhbiByZWFjaCB0aGUgcGVyc29uIG1hbmFn aW5nIHRoZSBsaXN0IGF0Cgl0cmlsdWctb3duZXJAdHJpbHVnLm9yZwoKV2hlbiByZXBseWluZywg cGxlYXNlIGVkaXQgeW91ciBTdWJqZWN0IGxpbmUgc28gaXQgaXMgbW9yZSBzcGVjaWZpYwp0aGFu ICJSZTogQ29udGVudHMgb2YgVHJpTFVHIGRpZ2VzdC4uLiIKCgpUb2RheSdzIFRvcGljczoKCiAg IDEuIFJlOiBDb21tZXJjaWFsIExpbnV4IEhlbHAgKFJvbiBCZWxjaGVyIHZpYSBUcmlMVUcpCiAg IDIuIFJlOiBDb21tZXJjaWFsIExpbnV4IEhlbHAgKHZpYSBUcmlMVUcpCiAgIDMuIFJlOiBDb21t ZXJjaWFsIExpbnV4IEhlbHAgKEJpbGwgV2VpbmVsIHZpYSBUcmlMVUcpCiAgIDQuIFJlOiBDb21t ZXJjaWFsIExpbnV4IEhlbHAgKFN0ZXBoZW4gV2lsZXkgdmlhIFRyaUxVRykKICAgNS4gUmU6IENv bW1lcmNpYWwgTGludXggSGVscCAoU3RlcGhlbiBXaWxleSB2aWEgVHJpTFVHKQogICA2LiBSZTog Q29tbWVyY2lhbCBMaW51eCBIZWxwIChKb3NlcGggTWFjayBOQTNUIHZpYSBUcmlMVUcpCiAgIDcu IFJlOiBDb21tZXJjaWFsIExpbnV4IEhlbHAgKFN0ZXBoZW4gUC4gU2NoYWVmZXIgdmlhIFRyaUxV RykKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiAxCkRhdGU6IFN1biwgNiBKdWwgMjAyNSAxNTo1 OTo1MCAtMDQwMApGcm9tOiBSb24gQmVsY2hlciB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9y Zz4KVG86IEpvc2VwaCBNYWNrIE5BM1QgPGptYWNrQHRyaWx1Zy5vcmc+LCBUcmlhbmdsZSBMaW51 eCBVc2VycyBHcm91cAoJR2VuZXJhbCBEaXNjdXNzaW9uIDx0cmlsdWdAdHJpbHVnLm9yZz4KU3Vi amVjdDogUmU6IFtUcmlMVUddIENvbW1lcmNpYWwgTGludXggSGVscApNZXNzYWdlLUlEOiA8OWQ5 YTI5ZTEtMTYwNC00MDY0LTkxZjMtNjkxNTMyMmE0ZjQ3QEdtYWlsLmNvbT4KQ29udGVudC1UeXBl OiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04OyBmb3JtYXQ9Zmxvd2VkCgpUaGFua3MgZm9yIHJl c3BvbnNlLgoKVHdvIHByaW5jaXBsZSBwcm9ibGVtcyByaWdodCBub3cuwqAgVW5zdXJlIHdoZXRo ZXIgdGhleSBtaWdodCBiZSBmcm9tIHRoZSAKc2FtZSBjYXVzZS7CoCBNeSByZWNhbGwgaXMgdGhh dCB0aGV5IGRpZCBub3Qgc2hvdyB1cCBhdCB0aGUgc2FtZSB0aW1lLgoxPiBDbGlja2luZyBhIGxp bmsgaW4gZW1haWwgb3BlbnMgYSBuZXcgdGFiIGluIG15IG9wZW4gRmlyZWZveCwgYnV0IGl0IApk b2VzIG5vdCBkaXNwbGF5IEZpcmVmb3guwqAgSXQgcmVtYWlucyBvbiB0aGUgVGh1bmRlcmJpcmQg c2NyZWVuLgoyPiBBbGwgdGhlIHNlY3VyaXR5IHByZWZlcmVuY2VzIGFyZSBsb3N0IHdoZW4gVGh1 bmRlcmJpcmQgaXMgcmVzdGFydGVkLsKgIApJIGhhdmUgdG8gcmVzZXQgYWxsIG9mIHRoZW0uCgpV YnVudHUgMjQuMDQuMiB3aXRoIEFkYmxvY2sgUGx1cywgRmlyZWZveCAxNDAuMDIgc25hcCwgVGh1 bmRlcmJpcmQgCjEyOC4xMS4wZXNyKDY0IGJpdCkKCkkgaGF2ZSByZXNlYXJjaGVkIHRoZSBpbnRl cm5ldCBhbmQgZXhhbWluZWQgc29tZSBvZiB0aGUgYWR2YW5jZWQgCnByZWZlcmVuY2VzLgogwqDC oMKgID4gZm9yICMxIEkgaGF2ZSB0cmllZCBjaGFuZ2luZyAKbmV0d29yay5wcm90b2NvbC1oYW5k bGVyLndhcm4tZXh0ZXJuYWwuaHR0cCBhbmQgLi4uLmh0dHBzdG8gbm8gYXZhaWwKIMKgwqDCoCA+ IGZvcsKgwqAgIzIgSSBoYXZlIGZvdW5kIG5vdGhpbmcgdXNlZnVsLgoKSSBjYW4gZ2V0IGFuZCBm b3J3YXJkIGFueSBtb3JlIGRhdGEgdGhhdCBtaWdodCBiZSBuZWVkZWQuwqAgQW55IHBvaW50ZXJz IApvciBhZHZpY2Ugd2lsbCBiZSBtb3N0IGFwcHJlY2lhdGVkCgpyb24KCk9uIDcvNi8yNSA2OjMz IEFNLCBKb3NlcGggTWFjayBOQTNUIHdyb3RlOgo+IE9uIFNhdCwgNSBKdWwgMjAyNSwgUm9uIEJl bGNoZXIgdmlhIFRyaUxVRyB3cm90ZToKPgo+PiBDYW4geW91IHN1Z2dlc3QgYSBjb21wdXRlciBy ZXBhaXIgc2hvcCBuZWFyIE1lYmFuZSwgTkMgdGhhdCBpcyByZWFsbHkgCj4+IGV4cGVydCB3aXRo IExpbnV4Pwo+Cj4gd2hhdCdzIHRoZSBwcm9ibGVtPyBBZHZpY2UgeW91IGdldCBoZXJlIGNvdWxk IHNldCB5b3Ugb24gdGhlIHdheSB0byAKPiBmaXhpbmcgaXQgeW91cnNlbGYuIEF0IGxlYXN0LCBm cm9tIHdoYXQgeW91J3ZlIHNhaWQsIHdlIGRvbnQga25vdyB0aGF0IAo+IGEgY29tcHV0ZXIgcmVw YWlyIHBsYWNlIGlzIG5lZWRlZC4KPgo+IEpvZQo+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCgpNZXNzYWdlOiAyCkRhdGU6IFN1biwgNiBKdWwgMjAyNSAxNzowMzozNCAtMDQwMApG cm9tOiB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4KVG86IFJvbiBCZWxjaGVyIHZpYSBU cmlMVUcgPHRyaWx1Z0B0cmlsdWcub3JnPgpTdWJqZWN0OiBSZTogW1RyaUxVR10gQ29tbWVyY2lh bCBMaW51eCBIZWxwCk1lc3NhZ2UtSUQ6IDw1NTBkNjM3Yy1hODJjLTRhMTctYjYzNS1hNTBiNjEw MmYwNDlAZGVyZWtwYXJyLmNvbT4KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVU Ri04OyBmb3JtYXQ9Zmxvd2VkCgpJZiB5b3UgYXJlIHRoZSBvbmUgdGhhdCBpbnN0YWxsZWQgaXQg b3JpZ2luYWxseSwgaXQgbWlnaHQgZW5kIHVwIGJlaW5nIAplYXNpZXIgdG8ganVzdCByZWluc3Rh bGwgdWJ1bnR1IGZyb20gc2NyYXRjaC4KCkl0IHNvdW5kcyBsaWtlIGEgcGFpbi4uICBidXQgaXQg bWlnaHQgdGFrZSBsZXNzIGVmZm9ydCBhbmQgdGltZSB0aGFuIHlvdSAKaGF2ZSBhbHJlYWR5IHNw ZW50LgoKWW91IG1pZ2h0IGFsc28gd2FudCB0byBsb29rIGF0IHVibG9jayBpbnN0ZWFkIG9mIGFk YmxvY2sgcGx1cy4gICBBbiBlYXN5IApzb2x1dGlvbiBpcyB0byBmaW5kIGFuZCBpbnN0YWxsIGxp YnJld29sZiwgd2hpY2ggaXMgYSBmb3JrIG9mIGZpcmVmb3ggCndpdGggdWJsb2NrIGFuZCBvdGhl ciBwcml2YWN5IGZyaWVuZGx5IGNoYW5nZXMuCgpTZWVtcyBsaWtlIHRoZXJlIGlzIGEgZ3Jvd2lu ZyBtYXJrZXQgZm9yIHBhaWQgaW4gcGVyc29uIGxpbnV4IHN1cHBvcnQuIApJJ3ZlIG5vdGljZWQg dGhpcyBlbHNld2hlcmUuICBJZiBJIGdldCBzb21lIG9mIG15IG90aGVyIHByb2plY3RzIHRha2Vu IApjYXJlIG9mLCBtYXliZSBJJ2xsIHdvcmsgb24gaXQuCgpEZXJlawoKCk9uIDcvNi8yNSAzOjU5 IFBNLCBSb24gQmVsY2hlciB2aWEgVHJpTFVHIHdyb3RlOgo+IFRoYW5rcyBmb3IgcmVzcG9uc2Uu Cj4gCj4gVHdvIHByaW5jaXBsZSBwcm9ibGVtcyByaWdodCBub3cuwqAgVW5zdXJlIHdoZXRoZXIg dGhleSBtaWdodCBiZSBmcm9tIHRoZSAKPiBzYW1lIGNhdXNlLsKgIE15IHJlY2FsbCBpcyB0aGF0 IHRoZXkgZGlkIG5vdCBzaG93IHVwIGF0IHRoZSBzYW1lIHRpbWUuCj4gMT4gQ2xpY2tpbmcgYSBs aW5rIGluIGVtYWlsIG9wZW5zIGEgbmV3IHRhYiBpbiBteSBvcGVuIEZpcmVmb3gsIGJ1dCBpdCAK PiBkb2VzIG5vdCBkaXNwbGF5IEZpcmVmb3guwqAgSXQgcmVtYWlucyBvbiB0aGUgVGh1bmRlcmJp cmQgc2NyZWVuLgo+IDI+IEFsbCB0aGUgc2VjdXJpdHkgcHJlZmVyZW5jZXMgYXJlIGxvc3Qgd2hl biBUaHVuZGVyYmlyZCBpcyByZXN0YXJ0ZWQuIAo+IEkgaGF2ZSB0byByZXNldCBhbGwgb2YgdGhl bS4KPiAKPiBVYnVudHUgMjQuMDQuMiB3aXRoIEFkYmxvY2sgUGx1cywgRmlyZWZveCAxNDAuMDIg c25hcCwgVGh1bmRlcmJpcmQgCj4gMTI4LjExLjBlc3IoNjQgYml0KQo+IAo+IEkgaGF2ZSByZXNl YXJjaGVkIHRoZSBpbnRlcm5ldCBhbmQgZXhhbWluZWQgc29tZSBvZiB0aGUgYWR2YW5jZWQgCj4g cHJlZmVyZW5jZXMuCj4gIMKgwqDCoCA+IGZvciAjMSBJIGhhdmUgdHJpZWQgY2hhbmdpbmcgCj4g bmV0d29yay5wcm90b2NvbC1oYW5kbGVyLndhcm4tZXh0ZXJuYWwuaHR0cCBhbmQgLi4uLmh0dHBz dG8gbm8gYXZhaWwKPiAgwqDCoMKgID4gZm9ywqDCoCAjMiBJIGhhdmUgZm91bmQgbm90aGluZyB1 c2VmdWwuCj4gCj4gSSBjYW4gZ2V0IGFuZCBmb3J3YXJkIGFueSBtb3JlIGRhdGEgdGhhdCBtaWdo dCBiZSBuZWVkZWQuwqAgQW55IHBvaW50ZXJzIAo+IG9yIGFkdmljZSB3aWxsIGJlIG1vc3QgYXBw cmVjaWF0ZWQKPiAKPiByb24KPiAKPiBPbiA3LzYvMjUgNjozMyBBTSwgSm9zZXBoIE1hY2sgTkEz VCB3cm90ZToKPj4gT24gU2F0LCA1IEp1bCAyMDI1LCBSb24gQmVsY2hlciB2aWEgVHJpTFVHIHdy b3RlOgo+Pgo+Pj4gQ2FuIHlvdSBzdWdnZXN0IGEgY29tcHV0ZXIgcmVwYWlyIHNob3AgbmVhciBN ZWJhbmUsIE5DIHRoYXQgaXMgcmVhbGx5IAo+Pj4gZXhwZXJ0IHdpdGggTGludXg/Cj4+Cj4+IHdo YXQncyB0aGUgcHJvYmxlbT8gQWR2aWNlIHlvdSBnZXQgaGVyZSBjb3VsZCBzZXQgeW91IG9uIHRo ZSB3YXkgdG8gCj4+IGZpeGluZyBpdCB5b3Vyc2VsZi4gQXQgbGVhc3QsIGZyb20gd2hhdCB5b3Un dmUgc2FpZCwgd2UgZG9udCBrbm93IHRoYXQgCj4+IGEgY29tcHV0ZXIgcmVwYWlyIHBsYWNlIGlz IG5lZWRlZC4KPj4KPj4gSm9lCj4+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpN ZXNzYWdlOiAzCkRhdGU6IFN1biwgNiBKdWwgMjAyNSAxNzozMTowOCAtMDQwMApGcm9tOiBCaWxs IFdlaW5lbCB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4KVG86IHRyaWx1Z0B0cmlsdWcu b3JnClN1YmplY3Q6IFJlOiBbVHJpTFVHXSBDb21tZXJjaWFsIExpbnV4IEhlbHAKTWVzc2FnZS1J RDogPGFhZGVmMDNjLWE0MWQtNDRlNC1hYWYxLTQ5MGFiYmNkYjdiN0BnbWFpbC5jb20+CkNvbnRl bnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtODsgZm9ybWF0PWZsb3dlZAoKU291bmRz IGxpa2UgeW91IHByb2JhYmx5IGhhdmUgYSBjb3JydXB0ZWQgY29uZmlnIGluIEZpcmVmb3guCgpZ b3Ugc2hvdWxkIGJlIGFibGUgdG8gJ3JlZnJlc2gnIHRoZSBGaXJlZm94IGNvbmZpZyBmcm9tIHRo ZSAiTW9yZSAKVHJvdWJsZXNob290aW5nIiBtZW51IGluIEZpcmVmb3guCiggRmlyZWZveCA+IEhl bHAgPiBNb3JlIFRyb3VibGVzaG9vdGluZyBJbmZvcm1hdGlvbiA+IFJlZnJlc2ggRmlyZWZveCAK QnV0dG9uICkKClRoZSBGaXJlZm94IHJlZnJlc2ggZmVhdHVyZSB3aWxsIHJlbW92ZSBhZGQtb25z IG5vcm1hbGx5IHN0b3JlZCBpbnNpZGUgCnRoZSBGaXJlZm94IHByb2ZpbGUgZm9sZGVyIChzdWNo IGFzIGV4dGVuc2lvbnMgCjxodHRwczovL2FkZG9ucy5tb3ppbGxhLm9yZy9maXJlZm94L2V4dGVu c2lvbnMvPiBhbmQgdGhlbWVzIAo8aHR0cHM6Ly9zdXBwb3J0Lm1vemlsbGEub3JnL2VuLVVTL2ti L3VzZS10aGVtZXMtY2hhbmdlLWxvb2stb2YtZmlyZWZveD4pLgpBZGQtb25zIHN0b3JlZCBpbiBv dGhlciBsb2NhdGlvbnMgYXJlIG5vdCByZW1vdmVkIChhbHRob3VnaCBhbnkgbW9kaWZpZWQgCnBy ZWZlcmVuY2VzIGFyZSByZXNldCkuCgoKICAgIEZpcmVmb3ggd2lsbCBzYXZlIHRoZXNlIGl0ZW1z OgoKICAqIEJvb2ttYXJrcwogICogQnJvd3NpbmcgYW5kIGRvd25sb2FkIGhpc3RvcnkKICAqIFBh c3N3b3JkcwogICogQ29va2llcwogICogV2ViIGZvcm0gYXV0b2ZpbGwgaW5mb3JtYXRpb24KICAq IFBlcnNvbmFsIGRpY3Rpb25hcnkKCgogICAgVGhlc2UgaXRlbXMgYW5kIHNldHRpbmdzIHdpbGwg YmUgcmVtb3ZlZDoKCiAgKiBFeHRlbnNpb25zIGFuZCB0aGVtZXMKICAgIDxodHRwczovL3N1cHBv cnQubW96aWxsYS5vcmcvZW4tVVMva2IvZmluZC1hbmQtaW5zdGFsbC1hZGQtb25zLWFkZC1mZWF0 dXJlcy10by1maXJlZm94PgoKICAqIFdlYnNpdGUgcGVybWlzc2lvbnMKICAqIE1vZGlmaWVkIHBy ZWZlcmVuY2VzCiAgKiBBZGRlZCBzZWFyY2ggZW5naW5lcwogICAgPGh0dHBzOi8vc3VwcG9ydC5t b3ppbGxhLm9yZy9lbi1VUy9rYi9hZGQtb3ItcmVtb3ZlLXNlYXJjaC1lbmdpbmUtZmlyZWZveCN3 X2FkZC1hLXNlYXJjaC1lbmdpbmU+CgogICogRE9NIHN0b3JhZ2UKICAqIFNlY3VyaXR5IGNlcnRp ZmljYXRlCiAgICA8aHR0cHM6Ly9zdXBwb3J0Lm1vemlsbGEub3JnL2VuLVVTL2tiL3NlY3VyZS13 ZWJzaXRlLWNlcnRpZmljYXRlPgogICAgYW5kIGRldmljZSBzZXR0aW5ncwogICogRG93bmxvYWQg YWN0aW9ucwogICAgPGh0dHBzOi8vc3VwcG9ydC5tb3ppbGxhLm9yZy9lbi1VUy9rYi9jaGFuZ2Ut ZmlyZWZveC1iZWhhdmlvci13aGVuLW9wZW4tZmlsZT4KCiAgKiBUb29sYmFyIGN1c3RvbWl6YXRp b25zCiAgICA8aHR0cHM6Ly9zdXBwb3J0Lm1vemlsbGEub3JnL2VuLVVTL2tiL2N1c3RvbWl6ZS1m aXJlZm94LWNvbnRyb2xzLWJ1dHRvbnMtYW5kLXRvb2xiYXJzPgoKICAqIFVzZXIgc3R5bGVzIChj aHJvbWUgc3ViZm9sZGVyIGNvbnRhaW5pbmcgdXNlckNocm9tZSBhbmQvb3IKICAgIHVzZXJDb250 ZW50IENTUyBmaWxlcwogICAgPGh0dHBzOi8vd2lraXBlZGlhLm9yZy93aWtpL0Nhc2NhZGluZ19T dHlsZV9TaGVldHM+LCBpZiBwcmV2aW91c2x5CiAgICBjcmVhdGVkKQoKVXN1YWxseSB0aGUgaXRl bXMgd2hpY2ggYXJlIHJlbW92ZWQgY2FuIGJlIHJlLWNyZWF0ZWQgLi4uYnV0LCBiZSBhd2FyZSAK b2YgdGhlIHJlZnJlc2ggY2hhbmdlcyBkb25lIGluIEZpcmVmb3ggaWYgeW91IGhhdmUgc29tZXRo aW5nIHNwZWNpZmljIAp3aGljaCBuZWVkcyBzYXZpbmcuCgpZb3UgY2FuIGFsc28gcmV2aWV3IHRo ZSBmb2xsb3dpbmcgTW96aWxsYSBVUkwgZm9yIGEgbW9yZSBjb21wbGV0ZSAKZGVzY3JpcHRpb24g b24gd2hhdCBhIEZpcmVmb3ggJ3JlZnJlc2gnIHdpbGwgZG86CgpodHRwczovL3N1cHBvcnQubW96 aWxsYS5vcmcvZW4tVVMva2IvcmVmcmVzaC1maXJlZm94LXJlc2V0LWFkZC1vbnMtYW5kLXNldHRp bmdzCgpBbGwgdGhlIGJlc3QsCkJpbGwKCgpPbiA3LzYvMjUgMTU6NTksIFJvbiBCZWxjaGVyIHZp YSBUcmlMVUcgd3JvdGU6Cj4KPiBUd28gcHJpbmNpcGxlIHByb2JsZW1zIHJpZ2h0IG5vdy7CoCBV bnN1cmUgd2hldGhlciB0aGV5IG1pZ2h0IGJlIGZyb20gCj4gdGhlIHNhbWUgY2F1c2UuwqAgTXkg cmVjYWxsIGlzIHRoYXQgdGhleSBkaWQgbm90IHNob3cgdXAgYXQgdGhlIHNhbWUgdGltZS4KPiAx PiBDbGlja2luZyBhIGxpbmsgaW4gZW1haWwgb3BlbnMgYSBuZXcgdGFiIGluIG15IG9wZW4gRmly ZWZveCwgYnV0IGl0IAo+IGRvZXMgbm90IGRpc3BsYXkgRmlyZWZveC7CoCBJdCByZW1haW5zIG9u IHRoZSBUaHVuZGVyYmlyZCBzY3JlZW4uCj4gMj4gQWxsIHRoZSBzZWN1cml0eSBwcmVmZXJlbmNl cyBhcmUgbG9zdCB3aGVuIFRodW5kZXJiaXJkIGlzIAo+IHJlc3RhcnRlZC7CoCBJIGhhdmUgdG8g cmVzZXQgYWxsIG9mIHRoZW0uCj4KPiBVYnVudHUgMjQuMDQuMiB3aXRoIEFkYmxvY2sgUGx1cywg RmlyZWZveCAxNDAuMDIgc25hcCwgVGh1bmRlcmJpcmQgCj4gMTI4LjExLjBlc3IoNjQgYml0KQo+ Cj4gSSBoYXZlIHJlc2VhcmNoZWQgdGhlIGludGVybmV0IGFuZCBleGFtaW5lZCBzb21lIG9mIHRo ZSBhZHZhbmNlZCAKPiBwcmVmZXJlbmNlcy4KPiDCoMKgwqAgPiBmb3IgIzEgSSBoYXZlIHRyaWVk IGNoYW5naW5nIAo+IG5ldHdvcmsucHJvdG9jb2wtaGFuZGxlci53YXJuLWV4dGVybmFsLmh0dHAg YW5kIC4uLi5odHRwc3RvIG5vIGF2YWlsCj4gwqDCoMKgID4gZm9ywqDCoCAjMiBJIGhhdmUgZm91 bmQgbm90aGluZyB1c2VmdWwuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCk1lc3Nh Z2U6IDQKRGF0ZTogU3VuLCA2IEp1bCAyMDI1IDE3OjQ0OjE0IC0wNDAwCkZyb206IFN0ZXBoZW4g V2lsZXkgdmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+ClRvOiBCaWxsIFdlaW5lbCA8dHVi ZS5yYWRpb0BnbWFpbC5jb20+LCBUcmlhbmdsZSBMaW51eCBVc2VycyBHcm91cAoJR2VuZXJhbCBE aXNjdXNzaW9uIDx0cmlsdWdAdHJpbHVnLm9yZz4KU3ViamVjdDogUmU6IFtUcmlMVUddIENvbW1l cmNpYWwgTGludXggSGVscApNZXNzYWdlLUlEOiA8YUdydUxtUUtudTRjZTNUMEBnZHAuc3dpbGV5 Lm5ldD4KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PWlzby04ODU5LTEKCklmIHlv dSBkb24ndCB3YW50IHRvIGxvc2UgeW91ciBjdXJyZW50IHNldHRpbmdzIHlvdSBjYW4gYWxzbyB0 cnkgd2l0aCBhCmZyZXNoIHByb2ZpbGUgKHN0YXJ0IGZpcmVmb3ggd2l0aCAtLVByb2ZpbGVNYW5h Z2VyICB0byBzZWUgdGhlIEdVSSBmb3IKdGhpcy4pCgpJIHN1c3BlY3QgaXQncyBhbiBpc3N1ZSB3 aXRoIHlvdXIgd2luZG93IG1hbmFnZXIgdGhvdWdoLgoKLS1TdGVwaGVuCgpPbiBTdW4sIEp1bCAw NiwgMjAyNSBhdCAwNTozMTowOFBNIC0wNDAwLCBCaWxsIFdlaW5lbCB2aWEgVHJpTFVHIHdyb3Rl Ogo+IFNvdW5kcyBsaWtlIHlvdSBwcm9iYWJseSBoYXZlIGEgY29ycnVwdGVkIGNvbmZpZyBpbiBG aXJlZm94Lgo+IAo+IFlvdSBzaG91bGQgYmUgYWJsZSB0byAncmVmcmVzaCcgdGhlIEZpcmVmb3gg Y29uZmlnIGZyb20gdGhlICJNb3JlCj4gVHJvdWJsZXNob290aW5nIiBtZW51IGluIEZpcmVmb3gu Cj4gKCBGaXJlZm94ID4gSGVscCA+IE1vcmUgVHJvdWJsZXNob290aW5nIEluZm9ybWF0aW9uID4g UmVmcmVzaCBGaXJlZm94IEJ1dHRvbgo+ICkKPiAKPiBUaGUgRmlyZWZveCByZWZyZXNoIGZlYXR1 cmUgd2lsbCByZW1vdmUgYWRkLW9ucyBub3JtYWxseSBzdG9yZWQgaW5zaWRlIHRoZQo+IEZpcmVm b3ggcHJvZmlsZSBmb2xkZXIgKHN1Y2ggYXMgZXh0ZW5zaW9ucwo+IDxodHRwczovL2FkZG9ucy5t b3ppbGxhLm9yZy9maXJlZm94L2V4dGVuc2lvbnMvPiBhbmQgdGhlbWVzCj4gPGh0dHBzOi8vc3Vw cG9ydC5tb3ppbGxhLm9yZy9lbi1VUy9rYi91c2UtdGhlbWVzLWNoYW5nZS1sb29rLW9mLWZpcmVm b3g+KS4KPiBBZGQtb25zIHN0b3JlZCBpbiBvdGhlciBsb2NhdGlvbnMgYXJlIG5vdCByZW1vdmVk IChhbHRob3VnaCBhbnkgbW9kaWZpZWQKPiBwcmVmZXJlbmNlcyBhcmUgcmVzZXQpLgo+IAo+IAo+ ICAgIEZpcmVmb3ggd2lsbCBzYXZlIHRoZXNlIGl0ZW1zOgo+IAo+ICAqIEJvb2ttYXJrcwo+ICAq IEJyb3dzaW5nIGFuZCBkb3dubG9hZCBoaXN0b3J5Cj4gICogUGFzc3dvcmRzCj4gICogQ29va2ll cwo+ICAqIFdlYiBmb3JtIGF1dG9maWxsIGluZm9ybWF0aW9uCj4gICogUGVyc29uYWwgZGljdGlv bmFyeQo+IAo+IAo+ICAgIFRoZXNlIGl0ZW1zIGFuZCBzZXR0aW5ncyB3aWxsIGJlIHJlbW92ZWQ6 Cj4gCj4gICogRXh0ZW5zaW9ucyBhbmQgdGhlbWVzCj4gICAgPGh0dHBzOi8vc3VwcG9ydC5tb3pp bGxhLm9yZy9lbi1VUy9rYi9maW5kLWFuZC1pbnN0YWxsLWFkZC1vbnMtYWRkLWZlYXR1cmVzLXRv LWZpcmVmb3g+Cj4gCj4gICogV2Vic2l0ZSBwZXJtaXNzaW9ucwo+ICAqIE1vZGlmaWVkIHByZWZl cmVuY2VzCj4gICogQWRkZWQgc2VhcmNoIGVuZ2luZXMKPiAgICA8aHR0cHM6Ly9zdXBwb3J0Lm1v emlsbGEub3JnL2VuLVVTL2tiL2FkZC1vci1yZW1vdmUtc2VhcmNoLWVuZ2luZS1maXJlZm94I3df YWRkLWEtc2VhcmNoLWVuZ2luZT4KPiAKPiAgKiBET00gc3RvcmFnZQo+ICAqIFNlY3VyaXR5IGNl cnRpZmljYXRlCj4gICAgPGh0dHBzOi8vc3VwcG9ydC5tb3ppbGxhLm9yZy9lbi1VUy9rYi9zZWN1 cmUtd2Vic2l0ZS1jZXJ0aWZpY2F0ZT4KPiAgICBhbmQgZGV2aWNlIHNldHRpbmdzCj4gICogRG93 bmxvYWQgYWN0aW9ucwo+ICAgIDxodHRwczovL3N1cHBvcnQubW96aWxsYS5vcmcvZW4tVVMva2Iv Y2hhbmdlLWZpcmVmb3gtYmVoYXZpb3Itd2hlbi1vcGVuLWZpbGU+Cj4gCj4gICogVG9vbGJhciBj dXN0b21pemF0aW9ucwo+ICAgIDxodHRwczovL3N1cHBvcnQubW96aWxsYS5vcmcvZW4tVVMva2Iv Y3VzdG9taXplLWZpcmVmb3gtY29udHJvbHMtYnV0dG9ucy1hbmQtdG9vbGJhcnM+Cj4gCj4gICog VXNlciBzdHlsZXMgKGNocm9tZSBzdWJmb2xkZXIgY29udGFpbmluZyB1c2VyQ2hyb21lIGFuZC9v cgo+ICAgIHVzZXJDb250ZW50IENTUyBmaWxlcwo+ICAgIDxodHRwczovL3dpa2lwZWRpYS5vcmcv d2lraS9DYXNjYWRpbmdfU3R5bGVfU2hlZXRzPiwgaWYgcHJldmlvdXNseQo+ICAgIGNyZWF0ZWQp Cj4gCj4gVXN1YWxseSB0aGUgaXRlbXMgd2hpY2ggYXJlIHJlbW92ZWQgY2FuIGJlIHJlLWNyZWF0 ZWQgLi4uYnV0LCBiZSBhd2FyZSBvZgo+IHRoZSByZWZyZXNoIGNoYW5nZXMgZG9uZSBpbiBGaXJl Zm94IGlmIHlvdSBoYXZlIHNvbWV0aGluZyBzcGVjaWZpYyB3aGljaAo+IG5lZWRzIHNhdmluZy4K PiAKPiBZb3UgY2FuIGFsc28gcmV2aWV3IHRoZSBmb2xsb3dpbmcgTW96aWxsYSBVUkwgZm9yIGEg bW9yZSBjb21wbGV0ZQo+IGRlc2NyaXB0aW9uIG9uIHdoYXQgYSBGaXJlZm94ICdyZWZyZXNoJyB3 aWxsIGRvOgo+IAo+IGh0dHBzOi8vc3VwcG9ydC5tb3ppbGxhLm9yZy9lbi1VUy9rYi9yZWZyZXNo LWZpcmVmb3gtcmVzZXQtYWRkLW9ucy1hbmQtc2V0dGluZ3MKPiAKPiBBbGwgdGhlIGJlc3QsCj4g QmlsbAo+IAo+IAo+IE9uIDcvNi8yNSAxNTo1OSwgUm9uIEJlbGNoZXIgdmlhIFRyaUxVRyB3cm90 ZToKPiA+IAo+ID4gVHdvIHByaW5jaXBsZSBwcm9ibGVtcyByaWdodCBub3cuwqAgVW5zdXJlIHdo ZXRoZXIgdGhleSBtaWdodCBiZSBmcm9tIHRoZQo+ID4gc2FtZSBjYXVzZS7CoCBNeSByZWNhbGwg aXMgdGhhdCB0aGV5IGRpZCBub3Qgc2hvdyB1cCBhdCB0aGUgc2FtZSB0aW1lLgo+ID4gMT4gQ2xp Y2tpbmcgYSBsaW5rIGluIGVtYWlsIG9wZW5zIGEgbmV3IHRhYiBpbiBteSBvcGVuIEZpcmVmb3gs IGJ1dCBpdAo+ID4gZG9lcyBub3QgZGlzcGxheSBGaXJlZm94LsKgIEl0IHJlbWFpbnMgb24gdGhl IFRodW5kZXJiaXJkIHNjcmVlbi4KPiA+IDI+IEFsbCB0aGUgc2VjdXJpdHkgcHJlZmVyZW5jZXMg YXJlIGxvc3Qgd2hlbiBUaHVuZGVyYmlyZCBpcyByZXN0YXJ0ZWQuwqAKPiA+IEkgaGF2ZSB0byBy ZXNldCBhbGwgb2YgdGhlbS4KPiA+IAo+ID4gVWJ1bnR1IDI0LjA0LjIgd2l0aCBBZGJsb2NrIFBs dXMsIEZpcmVmb3ggMTQwLjAyIHNuYXAsIFRodW5kZXJiaXJkCj4gPiAxMjguMTEuMGVzcig2NCBi aXQpCj4gPiAKPiA+IEkgaGF2ZSByZXNlYXJjaGVkIHRoZSBpbnRlcm5ldCBhbmQgZXhhbWluZWQg c29tZSBvZiB0aGUgYWR2YW5jZWQKPiA+IHByZWZlcmVuY2VzLgo+ID4gwqDCoMKgID4gZm9yICMx IEkgaGF2ZSB0cmllZCBjaGFuZ2luZwo+ID4gbmV0d29yay5wcm90b2NvbC1oYW5kbGVyLndhcm4t ZXh0ZXJuYWwuaHR0cCBhbmQgLi4uLmh0dHBzdG8gbm8gYXZhaWwKPiA+IMKgwqDCoCA+IGZvcsKg wqAgIzIgSSBoYXZlIGZvdW5kIG5vdGhpbmcgdXNlZnVsLgo+IC0tIAo+IFRoaXMgbWVzc2FnZSB3 YXMgc2VudCB0bzogU3RlcGhlbiBXaWxleSA8c3dpbGV5QHN3aWxleS5uZXQ+Cj4gVG8gdW5zdWJz Y3JpYmUsIHNlbmQgYSBibGFuayBtZXNzYWdlIHRvIHRyaWx1Zy1sZWF2ZUB0cmlsdWcub3JnIGZy b20gdGhhdCBhZGRyZXNzLgo+IFRyaUxVRyBtYWlsaW5nIGxpc3QgOiBodHRwczovL3d3dy50cmls dWcub3JnL21haWxtYW4vbGlzdGluZm8vdHJpbHVnCj4gVW5zdWJzY3JpYmUgb3IgZWRpdCBvcHRp b25zIG9uIHRoZSB3ZWIJOiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90 cmlsdWcvc3dpbGV5JTQwc3dpbGV5Lm5ldAo+IFdlbGNvbWUgdG8gVHJpTFVHOiBodHRwczovL3Ry aWx1Zy5vcmcvd2VsY29tZQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCk1lc3Nh Z2U6IDUKRGF0ZTogU3VuLCA2IEp1bCAyMDI1IDE4OjIzOjA5IC0wNDAwCkZyb206IFN0ZXBoZW4g V2lsZXkgdmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+ClRvOiBXaWxsIFJpY2hleSA8d2ls bC5yaWNoZXlAYWZ0ZXJub29ubW9vbi5jb20+CkNjOiBUcmlhbmdsZSBMaW51eCBVc2VycyBHcm91 cCBHZW5lcmFsIERpc2N1c3Npb24gPHRyaWx1Z0B0cmlsdWcub3JnPgpTdWJqZWN0OiBSZTogW1Ry aUxVR10gQ29tbWVyY2lhbCBMaW51eCBIZWxwCk1lc3NhZ2UtSUQ6IDxhR3IzVFI5X3NTN1ZnLWRw QGdkcC5zd2lsZXkubmV0PgpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9dXMtYXNj aWkKCkkgYmVsaWV2ZSB0aGUgd2luZG93IG1hbmFnZXIgaXMgbGlrZWx5IHRoZSBjb21wb25lbnQg b2YgdGhlIGRlc2t0b3AKZW52aXJvbm1lbnQgdGhhdCBpcyBjYXVzaW5nIHRoZSBwcm9ibGVtLgoK LS1TdGVwaGVuCgpPbiBTdW4sIEp1bCAwNiwgMjAyNSBhdCAwNjoxOToxM1BNIC0wNDAwLCBXaWxs IFJpY2hleSB3cm90ZToKPiBGWUksIHBlZGFudGljYWxseSwgdGhhdCB3b3VsZCBiZSAiZGVza3Rv cCBlbnZpcm9ubWVudCIsIG5vdCAid2luZG93Cj4gbWFuYWdlciIuICBXaXRoIG1hbnkgZGVza3Rv cCBlbnZpcm9ubWVudHMsIHRoZSB3aW5kb3cgbWFuYWdlciBjb21lcyBidW5kbGVkLAo+IGJ1dCB3 aW5kb3cgbWFuYWdlciBjb3VsZCBiZSBqdXN0IHRoYXQuCj4gCj4gT24gSnVseSA2LCAyMDI1IDU6 NTM6MzMgUE0gU3RlcGhlbiBXaWxleSB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4gd3Jv dGU6Cj4gCj4gPiBJZiB5b3UgZG9uJ3Qgd2FudCB0byBsb3NlIHlvdXIgY3VycmVudCBzZXR0aW5n cyB5b3UgY2FuIGFsc28gdHJ5IHdpdGggYQo+ID4gZnJlc2ggcHJvZmlsZSAoc3RhcnQgZmlyZWZv eCB3aXRoIC0tUHJvZmlsZU1hbmFnZXIgIHRvIHNlZSB0aGUgR1VJIGZvcgo+ID4gdGhpcy4pCj4g PiAKPiA+IEkgc3VzcGVjdCBpdCdzIGFuIGlzc3VlIHdpdGggeW91ciB3aW5kb3cgbWFuYWdlciB0 aG91Z2guCj4gPiAKPiA+IC0tU3RlcGhlbgo+ID4gCj4gPiBPbiBTdW4sIEp1bCAwNiwgMjAyNSBh dCAwNTozMTowOFBNIC0wNDAwLCBCaWxsIFdlaW5lbCB2aWEgVHJpTFVHIHdyb3RlOgo+ID4gPiBT b3VuZHMgbGlrZSB5b3UgcHJvYmFibHkgaGF2ZSBhIGNvcnJ1cHRlZCBjb25maWcgaW4gRmlyZWZv eC4KPiA+ID4gCj4gPiA+IFlvdSBzaG91bGQgYmUgYWJsZSB0byAncmVmcmVzaCcgdGhlIEZpcmVm b3ggY29uZmlnIGZyb20gdGhlICJNb3JlCj4gPiA+IFRyb3VibGVzaG9vdGluZyIgbWVudSBpbiBG aXJlZm94Lgo+ID4gPiAoIEZpcmVmb3ggPiBIZWxwID4gTW9yZSBUcm91Ymxlc2hvb3RpbmcgSW5m b3JtYXRpb24gPiBSZWZyZXNoIEZpcmVmb3ggQnV0dG9uCj4gPiA+ICkKPiA+ID4gCj4gPiA+IFRo ZSBGaXJlZm94IHJlZnJlc2ggZmVhdHVyZSB3aWxsIHJlbW92ZSBhZGQtb25zIG5vcm1hbGx5IHN0 b3JlZCBpbnNpZGUgdGhlCj4gPiA+IEZpcmVmb3ggcHJvZmlsZSBmb2xkZXIgKHN1Y2ggYXMgZXh0 ZW5zaW9ucwo+ID4gPiA8aHR0cHM6Ly9hZGRvbnMubW96aWxsYS5vcmcvZmlyZWZveC9leHRlbnNp b25zLz4gYW5kIHRoZW1lcwo+ID4gPiA8aHR0cHM6Ly9zdXBwb3J0Lm1vemlsbGEub3JnL2VuLVVT L2tiL3VzZS10aGVtZXMtY2hhbmdlLWxvb2stb2YtZmlyZWZveD4pLgo+ID4gPiBBZGQtb25zIHN0 b3JlZCBpbiBvdGhlciBsb2NhdGlvbnMgYXJlIG5vdCByZW1vdmVkIChhbHRob3VnaCBhbnkgbW9k aWZpZWQKPiA+ID4gcHJlZmVyZW5jZXMgYXJlIHJlc2V0KS4KPiA+ID4gCj4gPiA+IAo+ID4gPiAg ICBGaXJlZm94IHdpbGwgc2F2ZSB0aGVzZSBpdGVtczoKPiA+ID4gCj4gPiA+ICAqIEJvb2ttYXJr cwo+ID4gPiAgKiBCcm93c2luZyBhbmQgZG93bmxvYWQgaGlzdG9yeQo+ID4gPiAgKiBQYXNzd29y ZHMKPiA+ID4gICogQ29va2llcwo+ID4gPiAgKiBXZWIgZm9ybSBhdXRvZmlsbCBpbmZvcm1hdGlv bgo+ID4gPiAgKiBQZXJzb25hbCBkaWN0aW9uYXJ5Cj4gPiA+IAo+ID4gPiAKPiA+ID4gICAgVGhl c2UgaXRlbXMgYW5kIHNldHRpbmdzIHdpbGwgYmUgcmVtb3ZlZDoKPiA+ID4gCj4gPiA+ICAqIEV4 dGVuc2lvbnMgYW5kIHRoZW1lcwo+ID4gPiAgICA8aHR0cHM6Ly9zdXBwb3J0Lm1vemlsbGEub3Jn L2VuLVVTL2tiL2ZpbmQtYW5kLWluc3RhbGwtYWRkLW9ucy1hZGQtZmVhdHVyZXMtdG8tZmlyZWZv eD4KPiA+ID4gCj4gPiA+ICAqIFdlYnNpdGUgcGVybWlzc2lvbnMKPiA+ID4gICogTW9kaWZpZWQg cHJlZmVyZW5jZXMKPiA+ID4gICogQWRkZWQgc2VhcmNoIGVuZ2luZXMKPiA+ID4gICAgPGh0dHBz Oi8vc3VwcG9ydC5tb3ppbGxhLm9yZy9lbi1VUy9rYi9hZGQtb3ItcmVtb3ZlLXNlYXJjaC1lbmdp bmUtZmlyZWZveCN3X2FkZC1hLXNlYXJjaC1lbmdpbmU+Cj4gPiA+IAo+ID4gPiAgKiBET00gc3Rv cmFnZQo+ID4gPiAgKiBTZWN1cml0eSBjZXJ0aWZpY2F0ZQo+ID4gPiAgICA8aHR0cHM6Ly9zdXBw b3J0Lm1vemlsbGEub3JnL2VuLVVTL2tiL3NlY3VyZS13ZWJzaXRlLWNlcnRpZmljYXRlPgo+ID4g PiAgICBhbmQgZGV2aWNlIHNldHRpbmdzCj4gPiA+ICAqIERvd25sb2FkIGFjdGlvbnMKPiA+ID4g ICAgPGh0dHBzOi8vc3VwcG9ydC5tb3ppbGxhLm9yZy9lbi1VUy9rYi9jaGFuZ2UtZmlyZWZveC1i ZWhhdmlvci13aGVuLW9wZW4tZmlsZT4KPiA+ID4gCj4gPiA+ICAqIFRvb2xiYXIgY3VzdG9taXph dGlvbnMKPiA+ID4gICAgPGh0dHBzOi8vc3VwcG9ydC5tb3ppbGxhLm9yZy9lbi1VUy9rYi9jdXN0 b21pemUtZmlyZWZveC1jb250cm9scy1idXR0b25zLWFuZC10b29sYmFycz4KPiA+ID4gCj4gPiA+ ICAqIFVzZXIgc3R5bGVzIChjaHJvbWUgc3ViZm9sZGVyIGNvbnRhaW5pbmcgdXNlckNocm9tZSBh bmQvb3IKPiA+ID4gICAgdXNlckNvbnRlbnQgQ1NTIGZpbGVzCj4gPiA+ICAgIDxodHRwczovL3dp a2lwZWRpYS5vcmcvd2lraS9DYXNjYWRpbmdfU3R5bGVfU2hlZXRzPiwgaWYgcHJldmlvdXNseQo+ ID4gPiAgICBjcmVhdGVkKQo+ID4gPiAKPiA+ID4gVXN1YWxseSB0aGUgaXRlbXMgd2hpY2ggYXJl IHJlbW92ZWQgY2FuIGJlIHJlLWNyZWF0ZWQgLi4uYnV0LCBiZSBhd2FyZSBvZgo+ID4gPiB0aGUg cmVmcmVzaCBjaGFuZ2VzIGRvbmUgaW4gRmlyZWZveCBpZiB5b3UgaGF2ZSBzb21ldGhpbmcgc3Bl Y2lmaWMgd2hpY2gKPiA+ID4gbmVlZHMgc2F2aW5nLgo+ID4gPiAKPiA+ID4gWW91IGNhbiBhbHNv IHJldmlldyB0aGUgZm9sbG93aW5nIE1vemlsbGEgVVJMIGZvciBhIG1vcmUgY29tcGxldGUKPiA+ ID4gZGVzY3JpcHRpb24gb24gd2hhdCBhIEZpcmVmb3ggJ3JlZnJlc2gnIHdpbGwgZG86Cj4gPiA+ IAo+ID4gPiBodHRwczovL3N1cHBvcnQubW96aWxsYS5vcmcvZW4tVVMva2IvcmVmcmVzaC1maXJl Zm94LXJlc2V0LWFkZC1vbnMtYW5kLXNldHRpbmdzCj4gPiA+IAo+ID4gPiBBbGwgdGhlIGJlc3Qs Cj4gPiA+IEJpbGwKPiA+ID4gCj4gPiA+IAo+ID4gPiBPbiA3LzYvMjUgMTU6NTksIFJvbiBCZWxj aGVyIHZpYSBUcmlMVUcgd3JvdGU6Cj4gPiA+ID4KPiA+ID4gPiBUd28gcHJpbmNpcGxlIHByb2Js ZW1zIHJpZ2h0IG5vdy4gIFVuc3VyZSB3aGV0aGVyIHRoZXkgbWlnaHQgYmUgZnJvbSB0aGUKPiA+ ID4gPiBzYW1lIGNhdXNlLiAgTXkgcmVjYWxsIGlzIHRoYXQgdGhleSBkaWQgbm90IHNob3cgdXAg YXQgdGhlIHNhbWUgdGltZS4KPiA+ID4gPiAxPiBDbGlja2luZyBhIGxpbmsgaW4gZW1haWwgb3Bl bnMgYSBuZXcgdGFiIGluIG15IG9wZW4gRmlyZWZveCwgYnV0IGl0Cj4gPiA+ID4gZG9lcyBub3Qg ZGlzcGxheSBGaXJlZm94LiAgSXQgcmVtYWlucyBvbiB0aGUgVGh1bmRlcmJpcmQgc2NyZWVuLgo+ ID4gPiA+IDI+IEFsbCB0aGUgc2VjdXJpdHkgcHJlZmVyZW5jZXMgYXJlIGxvc3Qgd2hlbiBUaHVu ZGVyYmlyZCBpcyByZXN0YXJ0ZWQuCj4gPiA+ID4gSSBoYXZlIHRvIHJlc2V0IGFsbCBvZiB0aGVt Lgo+ID4gPiA+Cj4gPiA+ID4gVWJ1bnR1IDI0LjA0LjIgd2l0aCBBZGJsb2NrIFBsdXMsIEZpcmVm b3ggMTQwLjAyIHNuYXAsIFRodW5kZXJiaXJkCj4gPiA+ID4gMTI4LjExLjBlc3IoNjQgYml0KQo+ ID4gPiA+Cj4gPiA+ID4gSSBoYXZlIHJlc2VhcmNoZWQgdGhlIGludGVybmV0IGFuZCBleGFtaW5l ZCBzb21lIG9mIHRoZSBhZHZhbmNlZAo+ID4gPiA+IHByZWZlcmVuY2VzLgo+ID4gPiA+ICAgICA+ IGZvciAjMSBJIGhhdmUgdHJpZWQgY2hhbmdpbmcKPiA+ID4gPiBuZXR3b3JrLnByb3RvY29sLWhh bmRsZXIud2Fybi1leHRlcm5hbC5odHRwIGFuZCAuLi4uaHR0cHN0byBubyBhdmFpbAo+ID4gPiA+ ICAgICA+IGZvciAgICMyIEkgaGF2ZSBmb3VuZCBub3RoaW5nIHVzZWZ1bC4KPiA+ID4gLS0KPiA+ ID4gVGhpcyBtZXNzYWdlIHdhcyBzZW50IHRvOiBTdGVwaGVuIFdpbGV5IDxzd2lsZXlAc3dpbGV5 Lm5ldD4KPiA+ID4gVG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBibGFuayBtZXNzYWdlIHRvIHRyaWx1 Zy1sZWF2ZUB0cmlsdWcub3JnIGZyb20KPiA+ID4gdGhhdCBhZGRyZXNzLgo+ID4gPiBUcmlMVUcg bWFpbGluZyBsaXN0IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3Ry aWx1Zwo+ID4gPiBVbnN1YnNjcmliZSBvciBlZGl0IG9wdGlvbnMgb24gdGhlIHdlYgk6Cj4gPiA+ IGh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9vcHRpb25zL3RyaWx1Zy9zd2lsZXklNDBz d2lsZXkubmV0Cj4gPiA+IFdlbGNvbWUgdG8gVHJpTFVHOiBodHRwczovL3RyaWx1Zy5vcmcvd2Vs Y29tZQo+ID4gCj4gPiAtLQo+ID4gVGhpcyBtZXNzYWdlIHdhcyBzZW50IHRvOiBvc3NAbXVsbS5v cmcgPG9zc0BtdWxtLm9yZz4KPiA+IFRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgYmxhbmsgbWVzc2Fn ZSB0byB0cmlsdWctbGVhdmVAdHJpbHVnLm9yZyBmcm9tCj4gPiB0aGF0IGFkZHJlc3MuCj4gPiBU cmlMVUcgbWFpbGluZyBsaXN0IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL3RyaWx1Zwo+ID4gVW5zdWJzY3JpYmUgb3IgZWRpdCBvcHRpb25zIG9uIHRoZSB3ZWIJOgo+ ID4gaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL29wdGlvbnMvdHJpbHVnL29zcyU0MG11 bG0ub3JnCj4gPiBXZWxjb21lIHRvIFRyaUxVRzogaHR0cHM6Ly90cmlsdWcub3JnL3dlbGNvbWUK PiAKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiA2CkRhdGU6IFN1 biwgNiBKdWwgMjAyNSAyMjozMTo0NyArMDAwMCAoR01UKQpGcm9tOiBKb3NlcGggTWFjayBOQTNU IHZpYSBUcmlMVUcgPHRyaWx1Z0B0cmlsdWcub3JnPgpUbzogVHJpYW5nbGUgTGludXggVXNlcnMg R3JvdXAgR2VuZXJhbCBEaXNjdXNzaW9uIDx0cmlsdWdAdHJpbHVnLm9yZz4KU3ViamVjdDogUmU6 IFtUcmlMVUddIENvbW1lcmNpYWwgTGludXggSGVscApNZXNzYWdlLUlEOiA8YWxwaW5lLkRFQi4y LjAyLjI1MDcwNjIyMjY1MjAuMTY3ODNAcGlsb3QudHJpbHVnLm9yZz4KQ29udGVudC1UeXBlOiBU RVhUL1BMQUlOOyBjaGFyc2V0PVVTLUFTQ0lJOyBmb3JtYXQ9Zmxvd2VkCgpPbiBTdW4sIDYgSnVs IDIwMjUsIHZpYSBUcmlMVUcgd3JvdGU6Cgo+IElmIHlvdSBhcmUgdGhlIG9uZSB0aGF0IGluc3Rh bGxlZCBpdCBvcmlnaW5hbGx5LCBpdCBtaWdodCBlbmQgdXAgYmVpbmcgCj4gZWFzaWVyIHRvIGp1 c3QgcmVpbnN0YWxsIHVidW50dSBmcm9tIHNjcmF0Y2guCj4KPiBJdCBzb3VuZHMgbGlrZSBhIHBh aW4uLiAgYnV0IGl0IG1pZ2h0IHRha2UgbGVzcyBlZmZvcnQgYW5kIHRpbWUgdGhhbiB5b3UgCj4g aGF2ZSBhbHJlYWR5IHNwZW50LgoKZG8geW91IGhhdmUgYmFja3Vwcz8gcmV2ZXJ0IHRvIHRoZSBs YXN0IHdvcmtpbmcgc2V0dXAuCgpXZSBhcmUgYmVob2xkZW4gdG8gdGhlc2Ugc3BlY3RhY3VsYXJs eSBiYWQgcGFpciBvZiBzb2Z0d2FyZXMuIFRoZXJlIHNob3VsZCAKYmUgbm8gd2F5IHRoYXQgeW91 IGNvdWxkIGdldCB0aGlzIHRvIGhhcHBlbiBldmVuIGlmIHlvdSB0cmllZC4KClJlaW5zdGFsbGlu ZyB1YnVudHUgd2lsbCBpbnZvbHZlIHJlLWNyZWF0aW5nIG1hbnkgbW9yZSBmaWxlcyB0aGFuIApy ZS1pbnN0YWxsaW5nIGp1c3QgZmlyZWZveCBhbmQgbW96aWxsYS4gT25jZSB0aGV5J3JlIHdvcmtp bmcsIGJhY2t1cCB0aGUgCnByb2ZpbGVzIGFuZCBleHRlbnNpb25zIGV2ZXJ5IHdlZWsuCgpKb2UK LS0gCkpvc2VwaCBNYWNrIE5BM1QgRU1FKEIsRCksIEZNMDVsdyBOb3J0aCBDYXJvbGluYQpEb24n dCB1cGdyYWRlIGEgd29ya2luZyBtYWNoaW5lIC0gaXQgd29uJ3Qgd29yayBhbnkKYmV0dGVyIC0g aXQgY291bGQgd29yayB3b3JzZTsgaXQgbWF5IG5vdCB3b3JrIGF0IGFsbC4KSG9tZXBhZ2UgaHR0 cDovL3d3dy5hdXN0aW50ZWsuY29tLyBJdCdzIEdOVS9MaW51eCEKCgoKLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiA3CkRhdGU6IFN1biwgNiBKdWwgMjAyNSAyMzo0ODow NSAtMDQwMApGcm9tOiAiU3RlcGhlbiBQLiBTY2hhZWZlciB2aWEgVHJpTFVHIiA8dHJpbHVnQHRy aWx1Zy5vcmc+ClRvOiB0cmlsdWdAdHJpbHVnLm9yZwpTdWJqZWN0OiBSZTogW1RyaUxVR10gQ29t bWVyY2lhbCBMaW51eCBIZWxwCk1lc3NhZ2UtSUQ6IDxkYzJkMmNjNC0zZWQ3LTRiOWQtYmEyZS1h ODMyYWM4YmNkMTBAYWNtLm9yZz4KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVU Ri04OyBmb3JtYXQ9Zmxvd2VkCgpIYXZlIHlvdSBjaGVja2VkIGZvciByZXNvdXJjZSBleGhhdXN0 aW9uPyAgRS5nLiwgZmlsZSBzeXN0ZW0gYXQgMTAwJSAKKHJ1biAiZGYgLWsiKSwgb3V0LW9mLW1l bW9yeSAoT09NKSBjb21wbGFpbnRzIChydW4gImRtZXNnIikuICBBbHNvIGNoZWNrIApvdGhlciBs b2dzIC0gb2Z0ZW4gL3Zhci9sb2cvbWVzc2FnZXMuICBJIGRvbid0IGtub3cgd2hhdCdzIGNvbW11 bmljYXRpbmcgCmJldHdlZW4geW91ciBlLW1haWwgcmVhZGVyIGFuZCBGaXJlZm94LCBidXQgaWYg c29tZXRoaW5nIGxpa2UgZGJ1cywgdGhhdCAKbWlnaHQgbmVlZCB0byBiZSByZXN0YXJ0ZWQgLSB3 aGljaCBtaWdodCBiZSBsb2dvdXQgYW5kIGxvZ2luLCBvciBhIApyZWJvb3QuICBJIGFwb2xvZ2l6 ZSBpZiB0aGVzZSBzdGVwcyBhcmUgaW5zdWx0aW5nbHkgYmFzaWMsIGJ1dCBJIGRvbid0IAprbm93 IHlvdXIgbGV2ZWwgb2Ygc29waGlzdGljYXRpb24uCgogICAgIC0gU3RlcGhlbgoKT24gNy82LzI1 IDE1OjU5LCBSb24gQmVsY2hlciB2aWEgVHJpTFVHIHdyb3RlOgo+IFRoYW5rcyBmb3IgcmVzcG9u c2UuCj4gCj4gVHdvIHByaW5jaXBsZSBwcm9ibGVtcyByaWdodCBub3cuwqAgVW5zdXJlIHdoZXRo ZXIgdGhleSBtaWdodCBiZSBmcm9tIHRoZSAKPiBzYW1lIGNhdXNlLsKgIE15IHJlY2FsbCBpcyB0 aGF0IHRoZXkgZGlkIG5vdCBzaG93IHVwIGF0IHRoZSBzYW1lIHRpbWUuCj4gMT4gQ2xpY2tpbmcg YSBsaW5rIGluIGVtYWlsIG9wZW5zIGEgbmV3IHRhYiBpbiBteSBvcGVuIEZpcmVmb3gsIGJ1dCBp dCAKPiBkb2VzIG5vdCBkaXNwbGF5IEZpcmVmb3guwqAgSXQgcmVtYWlucyBvbiB0aGUgVGh1bmRl cmJpcmQgc2NyZWVuLgo+IDI+IEFsbCB0aGUgc2VjdXJpdHkgcHJlZmVyZW5jZXMgYXJlIGxvc3Qg d2hlbiBUaHVuZGVyYmlyZCBpcyByZXN0YXJ0ZWQuIAo+IEkgaGF2ZSB0byByZXNldCBhbGwgb2Yg dGhlbS4KPiAKPiBVYnVudHUgMjQuMDQuMiB3aXRoIEFkYmxvY2sgUGx1cywgRmlyZWZveCAxNDAu MDIgc25hcCwgVGh1bmRlcmJpcmQgCj4gMTI4LjExLjBlc3IoNjQgYml0KQo+IAo+IEkgaGF2ZSBy ZXNlYXJjaGVkIHRoZSBpbnRlcm5ldCBhbmQgZXhhbWluZWQgc29tZSBvZiB0aGUgYWR2YW5jZWQg Cj4gcHJlZmVyZW5jZXMuCj4gIMKgwqDCoCA+IGZvciAjMSBJIGhhdmUgdHJpZWQgY2hhbmdpbmcg bmV0d29yay5wcm90b2NvbC1oYW5kbGVyLndhcm4tIAo+IGV4dGVybmFsLmh0dHAgYW5kIC4uLi5o dHRwc3RvIG5vIGF2YWlsCj4gIMKgwqDCoCA+IGZvcsKgwqAgIzIgSSBoYXZlIGZvdW5kIG5vdGhp bmcgdXNlZnVsLgo+IAo+IEkgY2FuIGdldCBhbmQgZm9yd2FyZCBhbnkgbW9yZSBkYXRhIHRoYXQg bWlnaHQgYmUgbmVlZGVkLsKgIEFueSBwb2ludGVycyAKPiBvciBhZHZpY2Ugd2lsbCBiZSBtb3N0 IGFwcHJlY2lhdGVkCj4gCj4gcm9uCj4gCj4gT24gNy82LzI1IDY6MzMgQU0sIEpvc2VwaCBNYWNr IE5BM1Qgd3JvdGU6Cj4+IE9uIFNhdCwgNSBKdWwgMjAyNSwgUm9uIEJlbGNoZXIgdmlhIFRyaUxV RyB3cm90ZToKPj4KPj4+IENhbiB5b3Ugc3VnZ2VzdCBhIGNvbXB1dGVyIHJlcGFpciBzaG9wIG5l YXIgTWViYW5lLCBOQyB0aGF0IGlzIHJlYWxseSAKPj4+IGV4cGVydCB3aXRoIExpbnV4Pwo+Pgo+ PiB3aGF0J3MgdGhlIHByb2JsZW0/IEFkdmljZSB5b3UgZ2V0IGhlcmUgY291bGQgc2V0IHlvdSBv biB0aGUgd2F5IHRvIAo+PiBmaXhpbmcgaXQgeW91cnNlbGYuIEF0IGxlYXN0LCBmcm9tIHdoYXQg eW91J3ZlIHNhaWQsIHdlIGRvbnQga25vdyB0aGF0IAo+PiBhIGNvbXB1dGVyIHJlcGFpciBwbGFj ZSBpcyBuZWVkZWQuCj4+Cj4+IEpvZQo+PgoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KClN1YmplY3Q6IERpZ2VzdCBGb290ZXIKCi0tIApUcmlMVUcgbWFpbGluZyBsaXN0ClRyaUxV R0B0cmlsdWcub3JnCmh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9saXN0aW5mby90cmls dWcKVHJpTFVHIE9yZ2FuaXphdGlvbmFsIEZBUSAgOiAtLQpUcmlMVUcgbWFpbGluZyBsaXN0ICAg ICAgICA6IGh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9saXN0aW5mby90cmlsdWcKVHJp TFVHIEZBUSAgOiBodHRwczovL3d3dy50cmlsdWcub3JnL3dpa2kvRnJlcXVlbnRseV9Bc2tlZF9R dWVzdGlvbnMKVHJpTFVHIE1lbWJlciBTZXJ2aWNlcyBGQVEgOiBodHRwczovL3RyaWx1Zy5vcmcv d2lraS9GcmVxdWVudGx5X0Fza2VkX1F1ZXN0aW9ucyNUcmlMVUdfU2VydmljZXMKCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKRW5kIG9mIFRyaUxVRyBEaWdlc3QsIFZvbCA0MzA0LCBJ c3N1ZSAxCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgo=