• TriLUG Digest, Vol 4249, Issue 1

    From via TriLUG@trilug@trilug.org to trilug@trilug.org on Wed Feb 12 12:00:01 2025
    U2VuZCBUcmlMVUcgbWFpbGluZyBsaXN0IHN1Ym1pc3Npb25zIHRvCgl0cmlsdWdAdHJpbHVnLm9y ZwoKVG8gc3Vic2NyaWJlIG9yIHVuc3Vic2NyaWJlIHZpYSB0aGUgV29ybGQgV2lkZSBXZWIsIHZp c2l0CglodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vbGlzdGluZm8vdHJpbHVnCm9yLCB2 aWEgZW1haWwsIHNlbmQgYSBtZXNzYWdlIHdpdGggc3ViamVjdCBvciBib2R5ICdoZWxwJyB0bwoJ dHJpbHVnLXJlcXVlc3RAdHJpbHVnLm9yZwoKWW91IGNhbiByZWFjaCB0aGUgcGVyc29uIG1hbmFn aW5nIHRoZSBsaXN0IGF0Cgl0cmlsdWctb3duZXJAdHJpbHVnLm9yZwoKV2hlbiByZXBseWluZywg cGxlYXNlIGVkaXQgeW91ciBTdWJqZWN0IGxpbmUgc28gaXQgaXMgbW9yZSBzcGVjaWZpYwp0aGFu ICJSZTogQ29udGVudHMgb2YgVHJpTFVHIGRpZ2VzdC4uLiIKCgpUb2RheSdzIFRvcGljczoKCiAg IDEuIHJlY29tbWVuZGF0aW9ucyBmb3Igb24tbGluZSBMaW51eCBWTSAoSm9zZXBoIE1hY2sgTkEz VCB2aWEgVHJpTFVHKQogICAyLiBSZTogcmVjb21tZW5kYXRpb25zIGZvciBvbi1saW5lIExpbnV4 IFZNCiAgICAgIChTdGVwaGVuIFdpbGV5IHZpYSBUcmlMVUcpCiAgIDMuIFJlOiByZWNvbW1lbmRh dGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KICAgICAgKFJlaWQgVGhvbXBzb24gdmlhIFRyaUxV RykKICAgNC4gUmU6IHJlY29tbWVuZGF0aW9ucyBmb3Igb24tbGluZSBMaW51eCBWTQogICAgICAo UmVpZCBUaG9tcHNvbiB2aWEgVHJpTFVHKQogICA1LiBSZTogcmVjb21tZW5kYXRpb25zIGZvciBv bi1saW5lIExpbnV4IFZNIChKb3MgUHVydmlzIHZpYSBUcmlMVUcpCiAgIDYuIFJlOiByZWNvbW1l bmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KICAgICAgKFNjb3R0IEJsYXlkZXMgdmlhIFRy aUxVRykKICAgNy4gUmU6IHJlY29tbWVuZGF0aW9ucyBmb3Igb24tbGluZSBMaW51eCBWTQogICAg ICAoU3RlcGhlbiBXaWxleSB2aWEgVHJpTFVHKQogICA4LiBSZTogcmVjb21tZW5kYXRpb25zIGZv ciBvbi1saW5lIExpbnV4IFZNCiAgICAgIChNYXVyaWNpbyBUYXZhcmVzIHZpYSBUcmlMVUcpCiAg IDkuIFJlOiByZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KICAgICAgKFJlaWQg VGhvbXBzb24gdmlhIFRyaUxVRykKICAxMC4gUmU6IHJlY29tbWVuZGF0aW9ucyBmb3Igb24tbGlu ZSBMaW51eCBWTSAoSm9obiBCcm9vbWUgdmlhIFRyaUxVRykKICAxMS4gUmU6IHJlY29tbWVuZGF0 aW9ucyBmb3Igb24tbGluZSBMaW51eCBWTQogICAgICAoSm9zZXBoIE1hY2sgTkEzVCB2aWEgVHJp TFVHKQogIDEyLiBSZTogcmVjb21tZW5kYXRpb25zIGZvciBvbi1saW5lIExpbnV4IFZNCiAgICAg IChTdGVwaGVuIFdpbGV5IHZpYSBUcmlMVUcpCiAgMTMuIFJlOiByZWNvbW1lbmRhdGlvbnMgZm9y IG9uLWxpbmUgTGludXggVk0gKHNoYXkgd2FsdGVycyB2aWEgVHJpTFVHKQogIDE0LiBSZTogcmVj b21tZW5kYXRpb25zIGZvciBvbi1saW5lIExpbnV4IFZNIChEYXZpZCBCb3RoIHZpYSBUcmlMVUcp CiAgMTUuIFJlOiByZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KICAgICAgKE1h dXJpY2lvIFRhdmFyZXMgdmlhIFRyaUxVRykKICAxNi4gUmU6IHJlY29tbWVuZGF0aW9ucyBmb3Ig b24tbGluZSBMaW51eCBWTQogICAgICAoTWF1cmljaW8gVGF2YXJlcyB2aWEgVHJpTFVHKQogIDE3 LiBSZTogcmVjb21tZW5kYXRpb25zIGZvciBvbi1saW5lIExpbnV4IFZNCiAgICAgIChKb3NlcGgg TWFjayBOQTNUIHZpYSBUcmlMVUcpCiAgMTguIFJlOiByZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxp bmUgTGludXggVk0KICAgICAgKEpvc2VwaCBNYWNrIE5BM1QgdmlhIFRyaUxVRykKICAxOS4gUmU6 IHJlY29tbWVuZGF0aW9ucyBmb3Igb24tbGluZSBMaW51eCBWTQogICAgICAoSm9zZXBoIE1hY2sg TkEzVCB2aWEgVHJpTFVHKQogIDIwLiBSZTogcmVjb21tZW5kYXRpb25zIGZvciBvbi1saW5lIExp bnV4IFZNCiAgICAgIChKb3NlcGggTWFjayBOQTNUIHZpYSBUcmlMVUcpCgoKLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQoKTWVzc2FnZTogMQpEYXRlOiBUdWUsIDExIEZlYiAyMDI1IDIwOjA1OjU3ICswMDAwIChHTVQp CkZyb206IEpvc2VwaCBNYWNrIE5BM1QgdmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+ClRv OiBUcmlMVUcgPHRyaWx1Z0B0cmlsdWcub3JnPgpTdWJqZWN0OiBbVHJpTFVHXSByZWNvbW1lbmRh dGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDogPGFscGluZS5ERUIuMi4wMi4y NTAyMTExOTU2MDUwLjEwMzkyQHBpbG90LnRyaWx1Zy5vcmc+CkNvbnRlbnQtVHlwZTogVEVYVC9Q TEFJTjsgZm9ybWF0PWZsb3dlZDsgY2hhcnNldD1VUy1BU0NJSQoKSSB3YW50IGEgTGludXggbWFj aGluZSBvbi1saW5lLCB0aGF0IEkgY2FuIGxvZ29uIGF0IHRoZSBjb21tYW5kIGxpbmUsIGxpa2Ug CkkgZG8gd2l0aCBteSBob21lIG1hY2hpbmVzLCBhbmQgcGlsb3QuIEkgd2FudCBpdCB0byBydW4g YSBsaWdodGx5IHVzZWQgYSAKd2Vic2l0ZS4gSSBhbHNvIHdhbnQgdG8gYmUgYWJsZSB0byBpbnN0 YWxsIGFuZCByZW1vdmUgZmlsZXMgYXQgd2lsbCBoYWQgCm5vdCBoYXZlIGFueSBibG9ja2VkIHBv cnRzLgoKSSB0cmllZCBsaW5vZGUuY29tIGFuZCBkaWdpdGFsb2NlYW4uY29tLiBUaGVpciB3ZWJw YWdlcyBhcmUgYWxsIG1hcmtldHRpbmcgCmZ1bGwgb2YgInByb2R1Y3RzIiBhbmQgInNvbHV0aW9u cyIuIFRoZXkgYXJlbid0IG9mZmVyaW5nIFZNcy4gTWF5YmUgdGhleSAKYXJlIGJ1dCB0aGV5J3Jl IGJ1cmllZCBiZW5lYXRoIG1hcmtldHRpbmcgKGRpZ2l0YWxvY2VhbiBpcyBvZmZlcmluZyAKZHJv cGxldHMpLCBpbiB3aGljaCBjYXNlIEknbSBub3QgdGhlaXIgdGFyZ2V0LgoKVGhhbmtzIEpvZQoK LS0gCkpvc2VwaCBNYWNrIE5BM1QgRU1FKEIsRCksIEZNMDVsdyBOb3J0aCBDYXJvbGluYQpEb24n dCB1cGdyYWRlIGEgd29ya2luZyBtYWNoaW5lIC0gaXQgd29uJ3Qgd29yayBhbnkKYmV0dGVyIC0g aXQgY291bGQgd29yayB3b3JzZTsgaXQgbWF5IG5vdCB3b3JrIGF0IGFsbC4KSG9tZXBhZ2UgaHR0 cDovL3d3dy5hdXN0aW50ZWsuY29tLyBJdCdzIEdOVS9MaW51eCEKCgoKLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiAyCkRhdGU6IFR1ZSwgMTEgRmViIDIwMjUgMTU6MjM6 MjIgLTA1MDAKRnJvbTogU3RlcGhlbiBXaWxleSB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9y Zz4KVG86IHRyaWx1Z0B0cmlsdWcub3JnClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNvbW1lbmRh dGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDogPFo2dXh1dDZlWmtNT1JLVnpA Z2RwLnN3aWxleS5uZXQ+CkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD11cy1hc2Np aQoKSSBoYXZlIGEgTGlub2RlIFZNIGFuZCB1c2VkIERpZ2l0YWwgb2NlYW4gaW4gY29sbGVnZS4g VGhleSBkZWZpbml0ZWx5CnNlbGwgVk1zICh0aGF0J3Mgd2hhdCAiZHJvcGxldHMiIGFyZSBvbiBE aXRpZ2FsIG9jZWFuLCBpdCdzIGp1c3QgYSBLVk0KaW5zdGFuY2UuIElJUkMgeW91IHVwbG9hZCB5 b3VyIHB1YmxpYyBzc2gga2V5IHZpYSB0aGUgd2ViIEdVSSB3aGVuIHlvdQpjcmVhdGUgdGhlIG1h Y2hpbmUuKQoKVGhleSdyZSBib3RoIGdyZWF0IHByb3ZpZGVycy4gSSdtIHVzaW5nIExpbm9kZSBj dXJyZW50bHkuCgpZb3UncmUgcmlnaHQgdGhvdWdoLCB0aGVpciB3ZWJzaXRlIGlzIHN1cnByaXNp bmdseSBwb29ybHkgZGVzaWduZWQuIEkKaGF2ZW4ndCB2aXNpdGVkIGl0IGluIHllYXJzIGFuZCBy ZW1lbWJlciBzaG9wcGluZyBiZWluZyBtdWNoIG1vcmUKc3RyYWlnaHRmb3J3YXJkLiBUaGUgInNo YXJlZCBDUFUgY29tcHV0ZSIgaXMgd2hhdCB5b3UncmUgbG9va2luZyBmb3IuCkhlcmUncyB0aGUg VVJMIHdpdGggdGhhdDogaHR0cHM6Ly93d3cubGlub2RlLmNvbS9wcmljaW5nLyNyb3ctLWNvbXB1 dGUKVGhlIGFuY2hvciBtYXkgYmUgd3Jvbmcgc28gZG91YmxlIGNoZWNrIHRoZSBoZWFkaW5nIHlv dSdyZSBsb29raW5nIGF0LgoKQm90aCBzaG91bGQgYmUgYWJvdXQgdGhlIHNhbWUgcHJpY2UuIFRo ZSAkNS9tb250aCBvbmUgb24gZWl0aGVyIHdpbGwgYmUKcGxlbnR5IGZvciB3aGF0IHlvdSB3YW50 IHRvIGRvIGFuZCBhdCB0aGF0IHByaWNlIHBvaW50IHlvdSdyZQphcHByb2FjaGluZyB0aGUgY29z dCBvZiBhIG5vbi0uY29tIGRvbWFpbiBuYW1lLgoKLS1TdGVwaGVuCgpPbiBUdWUsIEZlYiAxMSwg MjAyNSBhdCAwODowNTo1N1BNICswMDAwLCBKb3NlcGggTWFjayBOQTNUIHZpYSBUcmlMVUcgd3Jv dGU6Cj4gSSB3YW50IGEgTGludXggbWFjaGluZSBvbi1saW5lLCB0aGF0IEkgY2FuIGxvZ29uIGF0 IHRoZSBjb21tYW5kIGxpbmUsIGxpa2UgSQo+IGRvIHdpdGggbXkgaG9tZSBtYWNoaW5lcywgYW5k IHBpbG90LiBJIHdhbnQgaXQgdG8gcnVuIGEgbGlnaHRseSB1c2VkIGEKPiB3ZWJzaXRlLiBJIGFs c28gd2FudCB0byBiZSBhYmxlIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBmaWxlcyBhdCB3aWxsIGhh ZCBub3QKPiBoYXZlIGFueSBibG9ja2VkIHBvcnRzLgo+IAo+IEkgdHJpZWQgbGlub2RlLmNvbSBh bmQgZGlnaXRhbG9jZWFuLmNvbS4gVGhlaXIgd2VicGFnZXMgYXJlIGFsbCBtYXJrZXR0aW5nCj4g ZnVsbCBvZiAicHJvZHVjdHMiIGFuZCAic29sdXRpb25zIi4gVGhleSBhcmVuJ3Qgb2ZmZXJpbmcg Vk1zLiBNYXliZSB0aGV5IGFyZQo+IGJ1dCB0aGV5J3JlIGJ1cmllZCBiZW5lYXRoIG1hcmtldHRp bmcgKGRpZ2l0YWxvY2VhbiBpcyBvZmZlcmluZyBkcm9wbGV0cyksCj4gaW4gd2hpY2ggY2FzZSBJ J20gbm90IHRoZWlyIHRhcmdldC4KPiAKPiBUaGFua3MgSm9lCj4gCj4gLS0gCj4gSm9zZXBoIE1h Y2sgTkEzVCBFTUUoQixEKSwgRk0wNWx3IE5vcnRoIENhcm9saW5hCj4gRG9uJ3QgdXBncmFkZSBh IHdvcmtpbmcgbWFjaGluZSAtIGl0IHdvbid0IHdvcmsgYW55Cj4gYmV0dGVyIC0gaXQgY291bGQg d29yayB3b3JzZTsgaXQgbWF5IG5vdCB3b3JrIGF0IGFsbC4KPiBIb21lcGFnZSBodHRwOi8vd3d3 LmF1c3RpbnRlay5jb20vIEl0J3MgR05VL0xpbnV4IQo+IAo+IC0tIAo+IFRoaXMgbWVzc2FnZSB3 YXMgc2VudCB0bzogU3RlcGhlbiBXaWxleSA8c3dpbGV5QHN3aWxleS5uZXQ+Cj4gVG8gdW5zdWJz Y3JpYmUsIHNlbmQgYSBibGFuayBtZXNzYWdlIHRvIHRyaWx1Zy1sZWF2ZUB0cmlsdWcub3JnIGZy b20gdGhhdCBhZGRyZXNzLgo+IFRyaUxVRyBtYWlsaW5nIGxpc3QgOiBodHRwczovL3d3dy50cmls dWcub3JnL21haWxtYW4vbGlzdGluZm8vdHJpbHVnCj4gVW5zdWJzY3JpYmUgb3IgZWRpdCBvcHRp b25zIG9uIHRoZSB3ZWIJOiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90 cmlsdWcvc3dpbGV5JTQwc3dpbGV5Lm5ldAo+IFdlbGNvbWUgdG8gVHJpTFVHOiBodHRwczovL3Ry aWx1Zy5vcmcvd2VsY29tZQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCk1lc3Nh Z2U6IDMKRGF0ZTogVHVlLCAxMSBGZWIgMjAyNSAxNjoyMjowMCAtMDUwMApGcm9tOiBSZWlkIFRo b21wc29uIHZpYSBUcmlMVUcgPHRyaWx1Z0B0cmlsdWcub3JnPgpUbzogU3RlcGhlbiBXaWxleSA8 c3dpbGV5QHN3aWxleS5uZXQ+LCAgVHJpYW5nbGUgTGludXggVXNlcnMgR3JvdXAKCUdlbmVyYWwg RGlzY3Vzc2lvbiA8dHJpbHVnQHRyaWx1Zy5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNv bW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDoKCTxDQStXMFVTYWIt MSs9PUdydzN5eUF4ZTRrblJSWFRUQjhBS1lfTWtudXBodTh6MnNPaEFAbWFpbC5nbWFpbC5jb20+ CkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iVVRGLTgiCgpodHRwczovL3d3dy5o ZXR6bmVyLmNvbS93ZWJob3N0aW5nLwoKQ2hlYXBlc3QgJDIgbW9udGggcG9zdGdyZXNxbCBvciBt eXNxbC4gRXRjCmh0dHBzOi8vd3d3LmhldHpuZXIuY29tL3dlYmhvc3RpbmcvbGV2ZWwtMS8KCk9u IFR1ZSwgRmViIDExLCAyMDI1LCAxNTozNCBTdGVwaGVuIFdpbGV5IHZpYSBUcmlMVUcgPHRyaWx1 Z0B0cmlsdWcub3JnPgp3cm90ZToKCj4gSSBoYXZlIGEgTGlub2RlIFZNIGFuZCB1c2VkIERpZ2l0 YWwgb2NlYW4gaW4gY29sbGVnZS4gVGhleSBkZWZpbml0ZWx5Cj4gc2VsbCBWTXMgKHRoYXQncyB3 aGF0ICJkcm9wbGV0cyIgYXJlIG9uIERpdGlnYWwgb2NlYW4sIGl0J3MganVzdCBhIEtWTQo+IGlu c3RhbmNlLiBJSVJDIHlvdSB1cGxvYWQgeW91ciBwdWJsaWMgc3NoIGtleSB2aWEgdGhlIHdlYiBH VUkgd2hlbiB5b3UKPiBjcmVhdGUgdGhlIG1hY2hpbmUuKQo+Cj4gVGhleSdyZSBib3RoIGdyZWF0 IHByb3ZpZGVycy4gSSdtIHVzaW5nIExpbm9kZSBjdXJyZW50bHkuCj4KPiBZb3UncmUgcmlnaHQg dGhvdWdoLCB0aGVpciB3ZWJzaXRlIGlzIHN1cnByaXNpbmdseSBwb29ybHkgZGVzaWduZWQuIEkK PiBoYXZlbid0IHZpc2l0ZWQgaXQgaW4geWVhcnMgYW5kIHJlbWVtYmVyIHNob3BwaW5nIGJlaW5n IG11Y2ggbW9yZQo+IHN0cmFpZ2h0Zm9yd2FyZC4gVGhlICJzaGFyZWQgQ1BVIGNvbXB1dGUiIGlz IHdoYXQgeW91J3JlIGxvb2tpbmcgZm9yLgo+IEhlcmUncyB0aGUgVVJMIHdpdGggdGhhdDogaHR0 cHM6Ly93d3cubGlub2RlLmNvbS9wcmljaW5nLyNyb3ctLWNvbXB1dGUKPiBUaGUgYW5jaG9yIG1h eSBiZSB3cm9uZyBzbyBkb3VibGUgY2hlY2sgdGhlIGhlYWRpbmcgeW91J3JlIGxvb2tpbmcgYXQu Cj4KPiBCb3RoIHNob3VsZCBiZSBhYm91dCB0aGUgc2FtZSBwcmljZS4gVGhlICQ1L21vbnRoIG9u ZSBvbiBlaXRoZXIgd2lsbCBiZQo+IHBsZW50eSBmb3Igd2hhdCB5b3Ugd2FudCB0byBkbyBhbmQg YXQgdGhhdCBwcmljZSBwb2ludCB5b3UncmUKPiBhcHByb2FjaGluZyB0aGUgY29zdCBvZiBhIG5v bi0uY29tIGRvbWFpbiBuYW1lLgo+Cj4gLS1TdGVwaGVuCj4KPiBPbiBUdWUsIEZlYiAxMSwgMjAy NSBhdCAwODowNTo1N1BNICswMDAwLCBKb3NlcGggTWFjayBOQTNUIHZpYSBUcmlMVUcKPiB3cm90 ZToKPiA+IEkgd2FudCBhIExpbnV4IG1hY2hpbmUgb24tbGluZSwgdGhhdCBJIGNhbiBsb2dvbiBh dCB0aGUgY29tbWFuZCBsaW5lLAo+IGxpa2UgSQo+ID4gZG8gd2l0aCBteSBob21lIG1hY2hpbmVz LCBhbmQgcGlsb3QuIEkgd2FudCBpdCB0byBydW4gYSBsaWdodGx5IHVzZWQgYQo+ID4gd2Vic2l0 ZS4gSSBhbHNvIHdhbnQgdG8gYmUgYWJsZSB0byBpbnN0YWxsIGFuZCByZW1vdmUgZmlsZXMgYXQg d2lsbCBoYWQKPiBub3QKPiA+IGhhdmUgYW55IGJsb2NrZWQgcG9ydHMuCj4gPgo+ID4gSSB0cmll ZCBsaW5vZGUuY29tIGFuZCBkaWdpdGFsb2NlYW4uY29tLiBUaGVpciB3ZWJwYWdlcyBhcmUgYWxs Cj4gbWFya2V0dGluZwo+ID4gZnVsbCBvZiAicHJvZHVjdHMiIGFuZCAic29sdXRpb25zIi4gVGhl eSBhcmVuJ3Qgb2ZmZXJpbmcgVk1zLiBNYXliZSB0aGV5Cj4gYXJlCj4gPiBidXQgdGhleSdyZSBi dXJpZWQgYmVuZWF0aCBtYXJrZXR0aW5nIChkaWdpdGFsb2NlYW4gaXMgb2ZmZXJpbmcKPiBkcm9w bGV0cyksCj4gPiBpbiB3aGljaCBjYXNlIEknbSBub3QgdGhlaXIgdGFyZ2V0Lgo+ID4KPiA+IFRo YW5rcyBKb2UKPiA+Cj4gPiAtLQo+ID4gSm9zZXBoIE1hY2sgTkEzVCBFTUUoQixEKSwgRk0wNWx3 IE5vcnRoIENhcm9saW5hCj4gPiBEb24ndCB1cGdyYWRlIGEgd29ya2luZyBtYWNoaW5lIC0gaXQg d29uJ3Qgd29yayBhbnkKPiA+IGJldHRlciAtIGl0IGNvdWxkIHdvcmsgd29yc2U7IGl0IG1heSBu b3Qgd29yayBhdCBhbGwuCj4gPiBIb21lcGFnZSBodHRwOi8vd3d3LmF1c3RpbnRlay5jb20vIEl0 J3MgR05VL0xpbnV4IQo+ID4KPiA+IC0tCj4gPiBUaGlzIG1lc3NhZ2Ugd2FzIHNlbnQgdG86IFN0 ZXBoZW4gV2lsZXkgPHN3aWxleUBzd2lsZXkubmV0Pgo+ID4gVG8gdW5zdWJzY3JpYmUsIHNlbmQg YSBibGFuayBtZXNzYWdlIHRvIHRyaWx1Zy1sZWF2ZUB0cmlsdWcub3JnIGZyb20KPiB0aGF0IGFk ZHJlc3MuCj4gPiBUcmlMVUcgbWFpbGluZyBsaXN0IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9t YWlsbWFuL2xpc3RpbmZvL3RyaWx1Zwo+ID4gVW5zdWJzY3JpYmUgb3IgZWRpdCBvcHRpb25zIG9u IHRoZSB3ZWIgICAgICAgIDoKPiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9u cy90cmlsdWcvc3dpbGV5JTQwc3dpbGV5Lm5ldAo+ID4gV2VsY29tZSB0byBUcmlMVUc6IGh0dHBz Oi8vdHJpbHVnLm9yZy93ZWxjb21lCj4KPiAtLQo+IFRoaXMgbWVzc2FnZSB3YXMgc2VudCB0bzog anJlaWR0aG9tcHNvbkBnbWFpbC5jb20gPGpyZWlkdGhvbXBzb25AZ21haWwuY29tCj4gPgo+IFRv IHVuc3Vic2NyaWJlLCBzZW5kIGEgYmxhbmsgbWVzc2FnZSB0byB0cmlsdWctbGVhdmVAdHJpbHVn Lm9yZyBmcm9tIHRoYXQKPiBhZGRyZXNzLgo+IFRyaUxVRyBtYWlsaW5nIGxpc3QgOiBodHRwczov L3d3dy50cmlsdWcub3JnL21haWxtYW4vbGlzdGluZm8vdHJpbHVnCj4gVW5zdWJzY3JpYmUgb3Ig ZWRpdCBvcHRpb25zIG9uIHRoZSB3ZWIgIDoKPiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxt YW4vb3B0aW9ucy90cmlsdWcvanJlaWR0aG9tcHNvbiU0MGdtYWlsLmNvbQo+IFdlbGNvbWUgdG8g VHJpTFVHOiBodHRwczovL3RyaWx1Zy5vcmcvd2VsY29tZQoKCi0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQoKTWVzc2FnZTogNApEYXRlOiBUdWUsIDExIEZlYiAyMDI1IDE4OjA2OjA4IC0w NTAwCkZyb206IFJlaWQgVGhvbXBzb24gdmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+ClRv OiBTdGVwaGVuIFdpbGV5IDxzd2lsZXlAc3dpbGV5Lm5ldD4sIHRyaWx1Z0B0cmlsdWcub3JnClN1 YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0K TWVzc2FnZS1JRDoKCTxDQStXMFVTYkFFeVgwbTg4LVN4PWdhc1lob2FFdWg0REhKUD1wMFZRMWtl U0pha3FtQ1FAbWFpbC5nbWFpbC5jb20+CkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNl dD0iVVRGLTgiCgpTb3JyeSBmb3Jnb3QgdG8gaGl0IHJlcGx5IGFsbCBvbiBsYXN0IHJlc3BvbnNl CgpPbiBUdWUsIEZlYiAxMSwgMjAyNSwgMTg6MDQgUmVpZCBUaG9tcHNvbiA8anJlaWR0aG9tcHNv bkBnbWFpbC5jb20+IHdyb3RlOgoKPiBBaCwgb2suIFRoZW4gbWF5YmUKPiAgaHR0cHM6Ly93d3cu aGV0em5lci5jb20vY2xvdWQvCj4KPiBBIHZwcy92Q1BVIHN0YXJ0aW5nIGF0ICQ0LjU5Pwo+Cj4g T24gVHVlLCBGZWIgMTEsIDIwMjUsIDE2OjUwIFN0ZXBoZW4gV2lsZXkgPHN3aWxleUBzd2lsZXku bmV0PiB3cm90ZToKPgo+PiBJIGRvbid0IHRoaW5rIHRoYXQncyBhY3R1YWxseSBhIFZNPyBVc3Vh bGx5IG1hbmFnZWQgaG9zdGluZyBtZWFucwo+PiBzb21ldGhpbmcgbGlrZSBhIGNwYW5lbCBpbnN0 YW5jZSBvbiBhIHNoYXJlZCBtYWNoaW5lLiBNYXliZSBJCj4+IG1pc3VuZGVyc3Rvb2Qgd2hhdCBK b3NlcGggd2FzIGxvb2tpbmcgZm9yLgo+Pgo+PiAtLVN0ZXBoZW4KPj4KPj4gT24gVHVlLCBGZWIg MTEsIDIwMjUgYXQgMDQ6MjI6MDBQTSAtMDUwMCwgUmVpZCBUaG9tcHNvbiB3cm90ZToKPj4gPiBo dHRwczovL3d3dy5oZXR6bmVyLmNvbS93ZWJob3N0aW5nLwo+PiA+Cj4+ID4gQ2hlYXBlc3QgJDIg bW9udGggcG9zdGdyZXNxbCBvciBteXNxbC4gRXRjCj4+ID4gaHR0cHM6Ly93d3cuaGV0em5lci5j b20vd2ViaG9zdGluZy9sZXZlbC0xLwo+PiA+Cj4+ID4gT24gVHVlLCBGZWIgMTEsIDIwMjUsIDE1 OjM0IFN0ZXBoZW4gV2lsZXkgdmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmcKPj4gPgo+PiA+ IHdyb3RlOgo+PiA+Cj4+ID4gPiBJIGhhdmUgYSBMaW5vZGUgVk0gYW5kIHVzZWQgRGlnaXRhbCBv Y2VhbiBpbiBjb2xsZWdlLiBUaGV5IGRlZmluaXRlbHkKPj4gPiA+IHNlbGwgVk1zICh0aGF0J3Mg d2hhdCAiZHJvcGxldHMiIGFyZSBvbiBEaXRpZ2FsIG9jZWFuLCBpdCdzIGp1c3QgYSBLVk0KPj4g PiA+IGluc3RhbmNlLiBJSVJDIHlvdSB1cGxvYWQgeW91ciBwdWJsaWMgc3NoIGtleSB2aWEgdGhl IHdlYiBHVUkgd2hlbiB5b3UKPj4gPiA+IGNyZWF0ZSB0aGUgbWFjaGluZS4pCj4+ID4gPgo+PiA+ ID4gVGhleSdyZSBib3RoIGdyZWF0IHByb3ZpZGVycy4gSSdtIHVzaW5nIExpbm9kZSBjdXJyZW50 bHkuCj4+ID4gPgo+PiA+ID4gWW91J3JlIHJpZ2h0IHRob3VnaCwgdGhlaXIgd2Vic2l0ZSBpcyBz dXJwcmlzaW5nbHkgcG9vcmx5IGRlc2lnbmVkLiBJCj4+ID4gPiBoYXZlbid0IHZpc2l0ZWQgaXQg aW4geWVhcnMgYW5kIHJlbWVtYmVyIHNob3BwaW5nIGJlaW5nIG11Y2ggbW9yZQo+PiA+ID4gc3Ry YWlnaHRmb3J3YXJkLiBUaGUgInNoYXJlZCBDUFUgY29tcHV0ZSIgaXMgd2hhdCB5b3UncmUgbG9v a2luZyBmb3IuCj4+ID4gPiBIZXJlJ3MgdGhlIFVSTCB3aXRoIHRoYXQ6Cj4+IGh0dHBzOi8vd3d3 Lmxpbm9kZS5jb20vcHJpY2luZy8jcm93LS1jb21wdXRlCj4+ID4gPiBUaGUgYW5jaG9yIG1heSBi ZSB3cm9uZyBzbyBkb3VibGUgY2hlY2sgdGhlIGhlYWRpbmcgeW91J3JlIGxvb2tpbmcgYXQuCj4+ ID4gPgo+PiA+ID4gQm90aCBzaG91bGQgYmUgYWJvdXQgdGhlIHNhbWUgcHJpY2UuIFRoZSAkNS9t b250aCBvbmUgb24gZWl0aGVyIHdpbGwKPj4gYmUKPj4gPiA+IHBsZW50eSBmb3Igd2hhdCB5b3Ug d2FudCB0byBkbyBhbmQgYXQgdGhhdCBwcmljZSBwb2ludCB5b3UncmUKPj4gPiA+IGFwcHJvYWNo aW5nIHRoZSBjb3N0IG9mIGEgbm9uLS5jb20gZG9tYWluIG5hbWUuCj4+ID4gPgo+PiA+ID4gLS1T dGVwaGVuCj4+ID4gPgo+PiA+ID4gT24gVHVlLCBGZWIgMTEsIDIwMjUgYXQgMDg6MDU6NTdQTSAr MDAwMCwgSm9zZXBoIE1hY2sgTkEzVCB2aWEgVHJpTFVHCj4+ID4gPiB3cm90ZToKPj4gPiA+ID4g SSB3YW50IGEgTGludXggbWFjaGluZSBvbi1saW5lLCB0aGF0IEkgY2FuIGxvZ29uIGF0IHRoZSBj b21tYW5kCj4+IGxpbmUsCj4+ID4gPiBsaWtlIEkKPj4gPiA+ID4gZG8gd2l0aCBteSBob21lIG1h Y2hpbmVzLCBhbmQgcGlsb3QuIEkgd2FudCBpdCB0byBydW4gYSBsaWdodGx5Cj4+IHVzZWQgYQo+ PiA+ID4gPiB3ZWJzaXRlLiBJIGFsc28gd2FudCB0byBiZSBhYmxlIHRvIGluc3RhbGwgYW5kIHJl bW92ZSBmaWxlcyBhdCB3aWxsCj4+IGhhZAo+PiA+ID4gbm90Cj4+ID4gPiA+IGhhdmUgYW55IGJs b2NrZWQgcG9ydHMuCj4+ID4gPiA+Cj4+ID4gPiA+IEkgdHJpZWQgbGlub2RlLmNvbSBhbmQgZGln aXRhbG9jZWFuLmNvbS4gVGhlaXIgd2VicGFnZXMgYXJlIGFsbAo+PiA+ID4gbWFya2V0dGluZwo+ PiA+ID4gPiBmdWxsIG9mICJwcm9kdWN0cyIgYW5kICJzb2x1dGlvbnMiLiBUaGV5IGFyZW4ndCBv ZmZlcmluZyBWTXMuIE1heWJlCj4+IHRoZXkKPj4gPiA+IGFyZQo+PiA+ID4gPiBidXQgdGhleSdy ZSBidXJpZWQgYmVuZWF0aCBtYXJrZXR0aW5nIChkaWdpdGFsb2NlYW4gaXMgb2ZmZXJpbmcKPj4g PiA+IGRyb3BsZXRzKSwKPj4gPiA+ID4gaW4gd2hpY2ggY2FzZSBJJ20gbm90IHRoZWlyIHRhcmdl dC4KPj4gPiA+ID4KPj4gPiA+ID4gVGhhbmtzIEpvZQo+PiA+ID4gPgo+PiA+ID4gPiAtLQo+PiA+ ID4gPiBKb3NlcGggTWFjayBOQTNUIEVNRShCLEQpLCBGTTA1bHcgTm9ydGggQ2Fyb2xpbmEKPj4g PiA+ID4gRG9uJ3QgdXBncmFkZSBhIHdvcmtpbmcgbWFjaGluZSAtIGl0IHdvbid0IHdvcmsgYW55 Cj4+ID4gPiA+IGJldHRlciAtIGl0IGNvdWxkIHdvcmsgd29yc2U7IGl0IG1heSBub3Qgd29yayBh dCBhbGwuCj4+ID4gPiA+IEhvbWVwYWdlIGh0dHA6Ly93d3cuYXVzdGludGVrLmNvbS8gSXQncyBH TlUvTGludXghCj4+ID4gPiA+Cj4+ID4gPiA+IC0tCj4+ID4gPiA+IFRoaXMgbWVzc2FnZSB3YXMg c2VudCB0bzogU3RlcGhlbiBXaWxleSA8c3dpbGV5QHN3aWxleS5uZXQ+Cj4+ID4gPiA+IFRvIHVu c3Vic2NyaWJlLCBzZW5kIGEgYmxhbmsgbWVzc2FnZSB0byB0cmlsdWctbGVhdmVAdHJpbHVnLm9y Zwo+PiBmcm9tCj4+ID4gPiB0aGF0IGFkZHJlc3MuCj4+ID4gPiA+IFRyaUxVRyBtYWlsaW5nIGxp c3QgOgo+PiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vbGlzdGluZm8vdHJpbHVnCj4+ ID4gPiA+IFVuc3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUgd2ViICAgICAgICA6Cj4+ ID4gPiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90cmlsdWcvc3dpbGV5 JTQwc3dpbGV5Lm5ldAo+PiA+ID4gPiBXZWxjb21lIHRvIFRyaUxVRzogaHR0cHM6Ly90cmlsdWcu b3JnL3dlbGNvbWUKPj4gPiA+Cj4+ID4gPiAtLQo+PiA+ID4gVGhpcyBtZXNzYWdlIHdhcyBzZW50 IHRvOiBqcmVpZHRob21wc29uQGdtYWlsLmNvbSA8Cj4+IGpyZWlkdGhvbXBzb25AZ21haWwuY29t Cj4+ID4gPiA+Cj4+ID4gPiBUbyB1bnN1YnNjcmliZSwgc2VuZCBhIGJsYW5rIG1lc3NhZ2UgdG8g dHJpbHVnLWxlYXZlQHRyaWx1Zy5vcmcgZnJvbQo+PiB0aGF0Cj4+ID4gPiBhZGRyZXNzLgo+PiA+ ID4gVHJpTFVHIG1haWxpbmcgbGlzdCA6IGh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9s aXN0aW5mby90cmlsdWcKPj4gPiA+IFVuc3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUg d2ViICA6Cj4+ID4gPgo+PiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90 cmlsdWcvanJlaWR0aG9tcHNvbiU0MGdtYWlsLmNvbQo+PiA+ID4gV2VsY29tZSB0byBUcmlMVUc6 IGh0dHBzOi8vdHJpbHVnLm9yZy93ZWxjb21lCj4+Cj4+CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCgpNZXNzYWdlOiA1CkRhdGU6IFR1ZSwgMTEgRmViIDIwMjUgMTg6MDc6MzAgLTA1 MDAKRnJvbTogSm9zIFB1cnZpcyB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4KVG86ICJS ZWlkIFRob21wc29uIiA8anJlaWR0aG9tcHNvbkBnbWFpbC5jb20+LCBUcmlMVUcKCTx0cmlsdWdA dHJpbHVnLm9yZz4sICJTdGVwaGVuIFdpbGV5IiA8c3dpbGV5QHN3aWxleS5uZXQ+ClN1YmplY3Q6 IFJlOiBbVHJpTFVHXSByZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2Fn ZS1JRDogPDM1NzMwZjU1LTlmZjctNGY4Ny05MzYwLTlhNzU3YWEyMjgzZEBhcHAuZmFzdG1haWwu Y29tPgpDb250ZW50LVR5cGU6IHRleHQvcGxhaW4KClNlY29uZGluZyB0aGUgc3VnZ2VzdGlvbiBm b3IgSGV0em5lcjogSSdtIHVzaW5nIHRoZWlyIHNtYWxsIGNsb3VkIGluc3RhbmNlcyB0byBob3N0 IHZhcmlvdXMgd2Vic2l0ZXMgYW5kIHRvb2xzIGFuZCB0aGV5J3ZlIGJlZW4gdGVycmlmaWMuIFZl cnkgc2V0LWl0LWFuZC1mb3JnZXQtaXQgd2hlbiBpdCBjb21lcyB0byBzZXR1cCwgYW5kIGEgZGVj ZW50IGFycmF5IG9mIGNob2ljZXMgZm9yIE9TIGFzIHdlbGwuCgpJZiB5b3Ugd2FudCBzb21ldGhp bmcgbW9yZSB0aGFuIHRoYXQsIHRoZXkgYWxzbyBzZWxsIHRoZWlyIG9sZGVyIGNsb3VkLWhvc3Rp bmcgc2VydmVycyBhcyBjb2xvIGJveGVzLCBzbyB5b3UgY2FuIGdldCBhIHJlbGF0aXZlbHkgcG93 ZXJmdWwgc2VydmVyIGFscmVhZHkgaW4gdGhlaXIgZGF0YWNlbnRlciBmb3IgYSBmcmFjdGlvbiBv ZiBjb3N0IHdpdGggZnVsbCBjb25zb2xlL3Jvb3QgYWNjZXNzIHRvIGluc3RhbGwgd2hhdGV2ZXIu CgpPbiBUdWUsIEZlYiAxMSwgMjAyNSwgYXQgMTY6MjIsIFJlaWQgVGhvbXBzb24gdmlhIFRyaUxV RyB3cm90ZToKPiBodHRwczovL3d3dy5oZXR6bmVyLmNvbS93ZWJob3N0aW5nLwo+Cj4gQ2hlYXBl c3QgJDIgbW9udGggcG9zdGdyZXNxbCBvciBteXNxbC4gRXRjCj4gaHR0cHM6Ly93d3cuaGV0em5l ci5jb20vd2ViaG9zdGluZy9sZXZlbC0xLwo+Cj4gT24gVHVlLCBGZWIgMTEsIDIwMjUsIDE1OjM0 IFN0ZXBoZW4gV2lsZXkgdmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+Cj4gd3JvdGU6Cj4K Pj4gSSBoYXZlIGEgTGlub2RlIFZNIGFuZCB1c2VkIERpZ2l0YWwgb2NlYW4gaW4gY29sbGVnZS4g VGhleSBkZWZpbml0ZWx5Cj4+IHNlbGwgVk1zICh0aGF0J3Mgd2hhdCAiZHJvcGxldHMiIGFyZSBv biBEaXRpZ2FsIG9jZWFuLCBpdCdzIGp1c3QgYSBLVk0KPj4gaW5zdGFuY2UuIElJUkMgeW91IHVw bG9hZCB5b3VyIHB1YmxpYyBzc2gga2V5IHZpYSB0aGUgd2ViIEdVSSB3aGVuIHlvdQo+PiBjcmVh dGUgdGhlIG1hY2hpbmUuKQo+Pgo+PiBUaGV5J3JlIGJvdGggZ3JlYXQgcHJvdmlkZXJzLiBJJ20g dXNpbmcgTGlub2RlIGN1cnJlbnRseS4KPj4KPj4gWW91J3JlIHJpZ2h0IHRob3VnaCwgdGhlaXIg d2Vic2l0ZSBpcyBzdXJwcmlzaW5nbHkgcG9vcmx5IGRlc2lnbmVkLiBJCj4+IGhhdmVuJ3Qgdmlz aXRlZCBpdCBpbiB5ZWFycyBhbmQgcmVtZW1iZXIgc2hvcHBpbmcgYmVpbmcgbXVjaCBtb3JlCj4+ IHN0cmFpZ2h0Zm9yd2FyZC4gVGhlICJzaGFyZWQgQ1BVIGNvbXB1dGUiIGlzIHdoYXQgeW91J3Jl IGxvb2tpbmcgZm9yLgo+PiBIZXJlJ3MgdGhlIFVSTCB3aXRoIHRoYXQ6IGh0dHBzOi8vd3d3Lmxp bm9kZS5jb20vcHJpY2luZy8jcm93LS1jb21wdXRlCj4+IFRoZSBhbmNob3IgbWF5IGJlIHdyb25n IHNvIGRvdWJsZSBjaGVjayB0aGUgaGVhZGluZyB5b3UncmUgbG9va2luZyBhdC4KPj4KPj4gQm90 aCBzaG91bGQgYmUgYWJvdXQgdGhlIHNhbWUgcHJpY2UuIFRoZSAkNS9tb250aCBvbmUgb24gZWl0 aGVyIHdpbGwgYmUKPj4gcGxlbnR5IGZvciB3aGF0IHlvdSB3YW50IHRvIGRvIGFuZCBhdCB0aGF0 IHByaWNlIHBvaW50IHlvdSdyZQo+PiBhcHByb2FjaGluZyB0aGUgY29zdCBvZiBhIG5vbi0uY29t IGRvbWFpbiBuYW1lLgo+Pgo+PiAtLVN0ZXBoZW4KPj4KPj4gT24gVHVlLCBGZWIgMTEsIDIwMjUg YXQgMDg6MDU6NTdQTSArMDAwMCwgSm9zZXBoIE1hY2sgTkEzVCB2aWEgVHJpTFVHCj4+IHdyb3Rl Ogo+PiA+IEkgd2FudCBhIExpbnV4IG1hY2hpbmUgb24tbGluZSwgdGhhdCBJIGNhbiBsb2dvbiBh dCB0aGUgY29tbWFuZCBsaW5lLAo+PiBsaWtlIEkKPj4gPiBkbyB3aXRoIG15IGhvbWUgbWFjaGlu ZXMsIGFuZCBwaWxvdC4gSSB3YW50IGl0IHRvIHJ1biBhIGxpZ2h0bHkgdXNlZCBhCj4+ID4gd2Vi c2l0ZS4gSSBhbHNvIHdhbnQgdG8gYmUgYWJsZSB0byBpbnN0YWxsIGFuZCByZW1vdmUgZmlsZXMg YXQgd2lsbCBoYWQKPj4gbm90Cj4+ID4gaGF2ZSBhbnkgYmxvY2tlZCBwb3J0cy4KPj4gPgo+PiA+ IEkgdHJpZWQgbGlub2RlLmNvbSBhbmQgZGlnaXRhbG9jZWFuLmNvbS4gVGhlaXIgd2VicGFnZXMg YXJlIGFsbAo+PiBtYXJrZXR0aW5nCj4+ID4gZnVsbCBvZiAicHJvZHVjdHMiIGFuZCAic29sdXRp b25zIi4gVGhleSBhcmVuJ3Qgb2ZmZXJpbmcgVk1zLiBNYXliZSB0aGV5Cj4+IGFyZQo+PiA+IGJ1 dCB0aGV5J3JlIGJ1cmllZCBiZW5lYXRoIG1hcmtldHRpbmcgKGRpZ2l0YWxvY2VhbiBpcyBvZmZl cmluZwo+PiBkcm9wbGV0cyksCj4+ID4gaW4gd2hpY2ggY2FzZSBJJ20gbm90IHRoZWlyIHRhcmdl dC4KPj4gPgo+PiA+IFRoYW5rcyBKb2UKPj4gPgo+PiA+IC0tCj4+ID4gSm9zZXBoIE1hY2sgTkEz VCBFTUUoQixEKSwgRk0wNWx3IE5vcnRoIENhcm9saW5hCj4+ID4gRG9uJ3QgdXBncmFkZSBhIHdv cmtpbmcgbWFjaGluZSAtIGl0IHdvbid0IHdvcmsgYW55Cj4+ID4gYmV0dGVyIC0gaXQgY291bGQg d29yayB3b3JzZTsgaXQgbWF5IG5vdCB3b3JrIGF0IGFsbC4KPj4gPiBIb21lcGFnZSBodHRwOi8v d3d3LmF1c3RpbnRlay5jb20vIEl0J3MgR05VL0xpbnV4IQo+PiA+Cj4+ID4gLS0KPj4gPiBUaGlz IG1lc3NhZ2Ugd2FzIHNlbnQgdG86IFN0ZXBoZW4gV2lsZXkgPHN3aWxleUBzd2lsZXkubmV0Pgo+ PiA+IFRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgYmxhbmsgbWVzc2FnZSB0byB0cmlsdWctbGVhdmVA dHJpbHVnLm9yZyBmcm9tCj4+IHRoYXQgYWRkcmVzcy4KPj4gPiBUcmlMVUcgbWFpbGluZyBsaXN0 IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3RyaWx1Zwo+PiA+IFVu c3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUgd2ViICAgICAgICA6Cj4+IGh0dHBzOi8v d3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9vcHRpb25zL3RyaWx1Zy9zd2lsZXklNDBzd2lsZXkubmV0 Cj4+ID4gV2VsY29tZSB0byBUcmlMVUc6IGh0dHBzOi8vdHJpbHVnLm9yZy93ZWxjb21lCj4+Cj4+ IC0tCj4+IFRoaXMgbWVzc2FnZSB3YXMgc2VudCB0bzoganJlaWR0aG9tcHNvbkBnbWFpbC5jb20g PGpyZWlkdGhvbXBzb25AZ21haWwuY29tCj4+ID4KPj4gVG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBi bGFuayBtZXNzYWdlIHRvIHRyaWx1Zy1sZWF2ZUB0cmlsdWcub3JnIGZyb20gdGhhdAo+PiBhZGRy ZXNzLgo+PiBUcmlMVUcgbWFpbGluZyBsaXN0IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWls bWFuL2xpc3RpbmZvL3RyaWx1Zwo+PiBVbnN1YnNjcmliZSBvciBlZGl0IG9wdGlvbnMgb24gdGhl IHdlYiAgOgo+PiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90cmlsdWcv anJlaWR0aG9tcHNvbiU0MGdtYWlsLmNvbQo+PiBXZWxjb21lIHRvIFRyaUxVRzogaHR0cHM6Ly90 cmlsdWcub3JnL3dlbGNvbWUKPiAtLSAKPiBUaGlzIG1lc3NhZ2Ugd2FzIHNlbnQgdG86IHB1cnZp c0BtZWxldGUub3JnIDxwdXJ2aXNAbWVsZXRlLm9yZz4KPiBUbyB1bnN1YnNjcmliZSwgc2VuZCBh IGJsYW5rIG1lc3NhZ2UgdG8gdHJpbHVnLWxlYXZlQHRyaWx1Zy5vcmcgZnJvbSAKPiB0aGF0IGFk ZHJlc3MuCj4gVHJpTFVHIG1haWxpbmcgbGlzdCA6IGh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFp bG1hbi9saXN0aW5mby90cmlsdWcKPiBVbnN1YnNjcmliZSBvciBlZGl0IG9wdGlvbnMgb24gdGhl IHdlYgk6IAo+IGh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9vcHRpb25zL3RyaWx1Zy9w dXJ2aXMlNDBtZWxldGUub3JnCj4gV2VsY29tZSB0byBUcmlMVUc6IGh0dHBzOi8vdHJpbHVnLm9y Zy93ZWxjb21lCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiA2CkRh dGU6IFR1ZSwgMTEgRmViIDIwMjUgMTk6MDI6MzEgLTA1MDAKRnJvbTogU2NvdHQgQmxheWRlcyB2 aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4KVG86IEpvcyBQdXJ2aXMgPHB1cnZpc0BtZWxl dGUub3JnPiwgVHJpYW5nbGUgTGludXggVXNlcnMgR3JvdXAgR2VuZXJhbAoJRGlzY3Vzc2lvbiA8 dHJpbHVnQHRyaWx1Zy5vcmc+LCBSZWlkIFRob21wc29uCgk8anJlaWR0aG9tcHNvbkBnbWFpbC5j b20+LCBTdGVwaGVuIFdpbGV5IDxzd2lsZXlAc3dpbGV5Lm5ldD4KU3ViamVjdDogUmU6IFtUcmlM VUddIHJlY29tbWVuZGF0aW9ucyBmb3Igb24tbGluZSBMaW51eCBWTQpNZXNzYWdlLUlEOiA8NWJk OGY5MTI3ZTNlYzRkMzZjZDk3YzhmNGMyMDU5ZDYzODFjNTk3Yi5jYW1lbEBuZXR0ZWsuaW8+CkNv bnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iVVRGLTgiCgpOb3cgSSB2ZXJ5IG9waW5p b25hdGVkIGFib3V0IHRoaXMuIFdvcmtlZCBpbiB0aGUgd2ViIGhvc3RpbmcgaW5kdXN0cnkKZm9y IGEgYml0LgoKT25lIGJpZyBxdWVzdGlvbiBpcywgd2lsbCB5b3UgYmUgaG9zdGluZyBlbWFpbCBv biB0aGUgdGhlIFZQUy9WTT8KCklmIHllcywgaXQgbmFycm93cyBkb3duIHdobyB5b3UgY2FuIHVz ZS4gRGlnaXRhbCBPY2VhbiwgT1ZILCBhbmQKSGV0em5lciBkb24ndCBoYXZlIGhlYWx0aHkgSVAg cmVwdXRhdGlvbnMuIAoKTGlub2RlIHdvcmtzIHdlbGwsIGJ1dCBkb2VzIGhhdmUgc29tZSBiYWQg SVBzIHRvby4gSXQgaXMgYSByb2xsIG9mIHRoZQpkaWNlIGFzIHRvIGhvdyBncmVhdCB0aGUgSVAg eW91IHdpbGwgZ2V0LgoKSWYgeW91IHdpbGwgbmV2ZXIgcnVuIGEgbWFpbCBzZXJ2ZXIgZnJvbSBp dCwgSSBzdGlsbCBjYXV0aW9uIHlvdSBmcm9tCnVzaW5nIE9WSCwgSGV0em5lciwgYW5kIERpZ2l0 YWwgT2NlYW4uIFRoZWlyIGFidXNlIHN0YWZmIHNlZW1zIHRvIGJlCmJhY2tlZCB1cCBhbmQgaXQg bWFrZXMgZm9yIGEgYmFkIG5ldHdvcmsgY2l0aXplbi4gTGlub2RlLCBWdWx0ciwgYW5kCkFSUCBO ZXR3b3JrcyBhbGwgbWFrZSBnb29kIFZQUy9WTXMgZm9yIGdlbmVyYWwgdXNlLgoKTm93IEkgaGF2 ZSB0d28gYmFyZSBtZXRhbCBzZXJ2ZXJzIHRoYXQgSSBzZWN0aW9uIHVwIGludG8gVlBTZXMsIHVz aW5nClByb3htb3guIFRob3NlIHR3byBhcmUgdGhyb3VnaCBXaG9sZXNhbGUgSW50ZXJuZXQvTm9j aXguIEJlZW4gaGFwcHkKd2l0aCB0aGVtLCBidXQgaXQgaXMgYSBiaXQgZGlmZmVyZW50IHRoYW4g d2hhdCB5b3UgYXJlIGFza2luZyBmb3IuCgpPbmx5IGJlZW4gaGVyZSBzaW5jZSBKdWx5LCBidXQg d2FzIGxvb2tpbmcgaW50byByZW50aW5nIGhhbGYgYSByYWNrCnB1dHRpbmcgYSBmZXcgc2VydmVy cyBpbiBpdC4gSSBoYXZlbid0IHNob3BwZWQgYSBsb3QsIGJ1dCBsb29raW5nIGF0CiQ2MDAtODAw IGZyb20gVGllclBvaW50LiBBbnlvbmUgaW50ZXJlc3RlZCBpbiBnb2luZyBpbiBvbiBoYWxmIGEg cmFjaz8KCkkgY291bGQgZ28gb24gbW9yZSwgYnV0IEkgYW0gdGlyZWQgb2YgdHlwaW5nLgoKRmVl bCBmcmVlIHRvIGVtYWlsIG1lIGlmIHlvdSB3YW50IHRvIGRpc2N1c3Mgb2ZmIGxpc3QuLi5vciBh cmd1ZSBvbgpsaXN0LCBJIGRvbid0IGNhcmUuCgpUaGFuayB5b3UsClNjb3R0IEJsYXlkZXMKCk9u IFR1ZSwgMjAyNS0wMi0xMSBhdCAxODowNyAtMDUwMCwgSm9zIFB1cnZpcyB2aWEgVHJpTFVHIHdy b3RlOgo+IFNlY29uZGluZyB0aGUgc3VnZ2VzdGlvbiBmb3IgSGV0em5lcjogSSdtIHVzaW5nIHRo ZWlyIHNtYWxsIGNsb3VkCj4gaW5zdGFuY2VzIHRvIGhvc3QgdmFyaW91cyB3ZWJzaXRlcyBhbmQg dG9vbHMgYW5kIHRoZXkndmUgYmVlbgo+IHRlcnJpZmljLiBWZXJ5IHNldC1pdC1hbmQtZm9yZ2V0 LWl0IHdoZW4gaXQgY29tZXMgdG8gc2V0dXAsIGFuZCBhCj4gZGVjZW50IGFycmF5IG9mIGNob2lj ZXMgZm9yIE9TIGFzIHdlbGwuCj4gCj4gSWYgeW91IHdhbnQgc29tZXRoaW5nIG1vcmUgdGhhbiB0 aGF0LCB0aGV5IGFsc28gc2VsbCB0aGVpciBvbGRlcgo+IGNsb3VkLWhvc3Rpbmcgc2VydmVycyBh cyBjb2xvIGJveGVzLCBzbyB5b3UgY2FuIGdldCBhIHJlbGF0aXZlbHkKPiBwb3dlcmZ1bCBzZXJ2 ZXIgYWxyZWFkeSBpbiB0aGVpciBkYXRhY2VudGVyIGZvciBhIGZyYWN0aW9uIG9mIGNvc3QKPiB3 aXRoIGZ1bGwgY29uc29sZS9yb290IGFjY2VzcyB0byBpbnN0YWxsIHdoYXRldmVyLgo+IAo+IE9u IFR1ZSwgRmViIDExLCAyMDI1LCBhdCAxNjoyMiwgUmVpZCBUaG9tcHNvbiB2aWEgVHJpTFVHIHdy b3RlOgo+ID4gaHR0cHM6Ly93d3cuaGV0em5lci5jb20vd2ViaG9zdGluZy8KPiA+IAo+ID4gQ2hl YXBlc3QgJDIgbW9udGggcG9zdGdyZXNxbCBvciBteXNxbC4gRXRjCj4gPiBodHRwczovL3d3dy5o ZXR6bmVyLmNvbS93ZWJob3N0aW5nL2xldmVsLTEvCj4gPiAKPiA+IE9uIFR1ZSwgRmViIDExLCAy MDI1LCAxNTozNCBTdGVwaGVuIFdpbGV5IHZpYSBUcmlMVUcKPiA+IDx0cmlsdWdAdHJpbHVnLm9y Zz4KPiA+IHdyb3RlOgo+ID4gCj4gPiA+IEkgaGF2ZSBhIExpbm9kZSBWTSBhbmQgdXNlZCBEaWdp dGFsIG9jZWFuIGluIGNvbGxlZ2UuIFRoZXkKPiA+ID4gZGVmaW5pdGVseQo+ID4gPiBzZWxsIFZN cyAodGhhdCdzIHdoYXQgImRyb3BsZXRzIiBhcmUgb24gRGl0aWdhbCBvY2VhbiwgaXQncyBqdXN0 Cj4gPiA+IGEgS1ZNCj4gPiA+IGluc3RhbmNlLiBJSVJDIHlvdSB1cGxvYWQgeW91ciBwdWJsaWMg c3NoIGtleSB2aWEgdGhlIHdlYiBHVUkKPiA+ID4gd2hlbiB5b3UKPiA+ID4gY3JlYXRlIHRoZSBt YWNoaW5lLikKPiA+ID4gCj4gPiA+IFRoZXkncmUgYm90aCBncmVhdCBwcm92aWRlcnMuIEknbSB1 c2luZyBMaW5vZGUgY3VycmVudGx5Lgo+ID4gPiAKPiA+ID4gWW91J3JlIHJpZ2h0IHRob3VnaCwg dGhlaXIgd2Vic2l0ZSBpcyBzdXJwcmlzaW5nbHkgcG9vcmx5Cj4gPiA+IGRlc2lnbmVkLiBJCj4g PiA+IGhhdmVuJ3QgdmlzaXRlZCBpdCBpbiB5ZWFycyBhbmQgcmVtZW1iZXIgc2hvcHBpbmcgYmVp bmcgbXVjaCBtb3JlCj4gPiA+IHN0cmFpZ2h0Zm9yd2FyZC4gVGhlICJzaGFyZWQgQ1BVIGNvbXB1 dGUiIGlzIHdoYXQgeW91J3JlIGxvb2tpbmcKPiA+ID4gZm9yLgo+ID4gPiBIZXJlJ3MgdGhlIFVS TCB3aXRoIHRoYXQ6Cj4gPiA+IGh0dHBzOi8vd3d3Lmxpbm9kZS5jb20vcHJpY2luZy8jcm93LS1j b21wdXRlCj4gPiA+IFRoZSBhbmNob3IgbWF5IGJlIHdyb25nIHNvIGRvdWJsZSBjaGVjayB0aGUg aGVhZGluZyB5b3UncmUKPiA+ID4gbG9va2luZyBhdC4KPiA+ID4gCj4gPiA+IEJvdGggc2hvdWxk IGJlIGFib3V0IHRoZSBzYW1lIHByaWNlLiBUaGUgJDUvbW9udGggb25lIG9uIGVpdGhlcgo+ID4g PiB3aWxsIGJlCj4gPiA+IHBsZW50eSBmb3Igd2hhdCB5b3Ugd2FudCB0byBkbyBhbmQgYXQgdGhh dCBwcmljZSBwb2ludCB5b3UncmUKPiA+ID4gYXBwcm9hY2hpbmcgdGhlIGNvc3Qgb2YgYSBub24t LmNvbSBkb21haW4gbmFtZS4KPiA+ID4gCj4gPiA+IC0tU3RlcGhlbgo+ID4gPiAKPiA+ID4gT24g VHVlLCBGZWIgMTEsIDIwMjUgYXQgMDg6MDU6NTdQTSArMDAwMCwgSm9zZXBoIE1hY2sgTkEzVCB2 aWEKPiA+ID4gVHJpTFVHCj4gPiA+IHdyb3RlOgo+ID4gPiA+IEkgd2FudCBhIExpbnV4IG1hY2hp bmUgb24tbGluZSwgdGhhdCBJIGNhbiBsb2dvbiBhdCB0aGUgY29tbWFuZAo+ID4gPiA+IGxpbmUs Cj4gPiA+IGxpa2UgSQo+ID4gPiA+IGRvIHdpdGggbXkgaG9tZSBtYWNoaW5lcywgYW5kIHBpbG90 LiBJIHdhbnQgaXQgdG8gcnVuIGEgbGlnaHRseQo+ID4gPiA+IHVzZWQgYQo+ID4gPiA+IHdlYnNp dGUuIEkgYWxzbyB3YW50IHRvIGJlIGFibGUgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIGZpbGVzIGF0 Cj4gPiA+ID4gd2lsbCBoYWQKPiA+ID4gbm90Cj4gPiA+ID4gaGF2ZSBhbnkgYmxvY2tlZCBwb3J0 cy4KPiA+ID4gPiAKPiA+ID4gPiBJIHRyaWVkIGxpbm9kZS5jb20gYW5kIGRpZ2l0YWxvY2Vhbi5j b20uIFRoZWlyIHdlYnBhZ2VzIGFyZSBhbGwKPiA+ID4gbWFya2V0dGluZwo+ID4gPiA+IGZ1bGwg b2YgInByb2R1Y3RzIiBhbmQgInNvbHV0aW9ucyIuIFRoZXkgYXJlbid0IG9mZmVyaW5nIFZNcy4K PiA+ID4gPiBNYXliZSB0aGV5Cj4gPiA+IGFyZQo+ID4gPiA+IGJ1dCB0aGV5J3JlIGJ1cmllZCBi ZW5lYXRoIG1hcmtldHRpbmcgKGRpZ2l0YWxvY2VhbiBpcyBvZmZlcmluZwo+ID4gPiBkcm9wbGV0 cyksCj4gPiA+ID4gaW4gd2hpY2ggY2FzZSBJJ20gbm90IHRoZWlyIHRhcmdldC4KPiA+ID4gPiAK PiA+ID4gPiBUaGFua3MgSm9lCj4gPiA+ID4gCj4gPiA+ID4gLS0KPiA+ID4gPiBKb3NlcGggTWFj ayBOQTNUIEVNRShCLEQpLCBGTTA1bHcgTm9ydGggQ2Fyb2xpbmEKPiA+ID4gPiBEb24ndCB1cGdy YWRlIGEgd29ya2luZyBtYWNoaW5lIC0gaXQgd29uJ3Qgd29yayBhbnkKPiA+ID4gPiBiZXR0ZXIg LSBpdCBjb3VsZCB3b3JrIHdvcnNlOyBpdCBtYXkgbm90IHdvcmsgYXQgYWxsLgo+ID4gPiA+IEhv bWVwYWdlIGh0dHA6Ly93d3cuYXVzdGludGVrLmNvbS/CoEl0J3MgR05VL0xpbnV4IQo+ID4gPiA+ IAo+ID4gPiA+IC0tCj4gPiA+ID4gVGhpcyBtZXNzYWdlIHdhcyBzZW50IHRvOiBTdGVwaGVuIFdp bGV5IDxzd2lsZXlAc3dpbGV5Lm5ldD4KPiA+ID4gPiBUbyB1bnN1YnNjcmliZSwgc2VuZCBhIGJs YW5rIG1lc3NhZ2UgdG8KPiA+ID4gPiB0cmlsdWctbGVhdmVAdHJpbHVnLm9yZ8KgZnJvbQo+ID4g PiB0aGF0IGFkZHJlc3MuCj4gPiA+ID4gVHJpTFVHIG1haWxpbmcgbGlzdCA6Cj4gPiA+ID4gaHR0 cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3RyaWx1Zwo+ID4gPiA+IFVuc3Vi c2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUgd2ViwqDCoMKgwqDCoMKgwqAgOgo+ID4gPiBo dHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90cmlsdWcvc3dpbGV5JTQwc3dp bGV5Lm5ldAo+ID4gPiA+IFdlbGNvbWUgdG8gVHJpTFVHOiBodHRwczovL3RyaWx1Zy5vcmcvd2Vs Y29tZQo+ID4gPiAKPiA+ID4gLS0KPiA+ID4gVGhpcyBtZXNzYWdlIHdhcyBzZW50IHRvOgo+ID4g PiBqcmVpZHRob21wc29uQGdtYWlsLmNvbcKgPGpyZWlkdGhvbXBzb25AZ21haWwuY29tCj4gPiA+ ID4gCj4gPiA+IFRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgYmxhbmsgbWVzc2FnZSB0bwo+ID4gPiB0 cmlsdWctbGVhdmVAdHJpbHVnLm9yZ8KgZnJvbSB0aGF0Cj4gPiA+IGFkZHJlc3MuCj4gPiA+IFRy aUxVRyBtYWlsaW5nIGxpc3QgOgo+ID4gPiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4v bGlzdGluZm8vdHJpbHVnCj4gPiA+IFVuc3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUg d2ViwqAgOgo+ID4gPiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90cmls dWcvanJlaWR0aG9tcHNvbiU0MGdtYWlsLmNvbQo+ID4gPiBXZWxjb21lIHRvIFRyaUxVRzogaHR0 cHM6Ly90cmlsdWcub3JnL3dlbGNvbWUKPiA+IC0tIAo+ID4gVGhpcyBtZXNzYWdlIHdhcyBzZW50 IHRvOiBwdXJ2aXNAbWVsZXRlLm9yZ8KgPHB1cnZpc0BtZWxldGUub3JnPgo+ID4gVG8gdW5zdWJz Y3JpYmUsIHNlbmQgYSBibGFuayBtZXNzYWdlIHRvCj4gPiB0cmlsdWctbGVhdmVAdHJpbHVnLm9y Z8KgZnJvbSAKPiA+IHRoYXQgYWRkcmVzcy4KPiA+IFRyaUxVRyBtYWlsaW5nIGxpc3QgOgo+ID4g aHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3RyaWx1Zwo+ID4gVW5zdWJz Y3JpYmUgb3IgZWRpdCBvcHRpb25zIG9uIHRoZSB3ZWIJOiAKPiA+IGh0dHBzOi8vd3d3LnRyaWx1 Zy5vcmcvbWFpbG1hbi9vcHRpb25zL3RyaWx1Zy9wdXJ2aXMlNDBtZWxldGUub3JnCj4gPiBXZWxj b21lIHRvIFRyaUxVRzogaHR0cHM6Ly90cmlsdWcub3JnL3dlbGNvbWUKCgoKLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiA3CkRhdGU6IFR1ZSwgMTEgRmViIDIwMjUgMTk6 MTM6MjQgLTA1MDAKRnJvbTogU3RlcGhlbiBXaWxleSB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVn Lm9yZz4KVG86IFNjb3R0IEJsYXlkZXMgPHNjb3R0QG5ldHRlay5pbz4KQ2M6IFRyaWFuZ2xlIExp bnV4IFVzZXJzIEdyb3VwIEdlbmVyYWwgRGlzY3Vzc2lvbiA8dHJpbHVnQHRyaWx1Zy5vcmc+LAoJ Sm9zIFB1cnZpcyA8cHVydmlzQG1lbGV0ZS5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNv bW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDogPFo2dm5wQndrd3hS S2VrdXFAZ2RwLnN3aWxleS5uZXQ+CkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1p c28tODg1OS0xCgpJIGhhdmUgdG8gd29uZGVyIGlmIGNvbG9jYXRpb24gaXMgcmVhbGx5IHdvcnRo IGl0IGF0IHNpemVzIGxpa2UgdGhlc2UuIEEKcXVpY2sgd2ViIHNlYXJjaCBtYWtlcyBpdCBsb29r IGxpa2UgY29tY2FzdCBidWlzbmVzcyBpbnRlcm5ldCBpc24ndApwYXJ0aWN1bGFybHkgZXhwZW5z aXZlLiBJZiB5b3UncmUgbm90IG1vdmluZyAqYSBsb3QqIG9mIGRhdGEgSSBoYXZlIHRvCmltYWdp bmUgeW91IGRvbid0IHJlYWxseSBuZWVkIHRoZSBwZWVyaW5nLiBJIGNhbid0IGltYWdpbmUgdGhl IFNMQSBpcwp0aGF0IGltcG9ydGFudCBmb3IgaG9iYmllc3QvY29uc3VsdGFudCB3ZWIgc2l0ZXMg ZWl0aGVyLgoKQnV0IEkgYWx3YXlzIHJlbnQgdGhpcyBzdHVmZi4KCi0tU3RlcGhlbgoKT24gVHVl LCBGZWIgMTEsIDIwMjUgYXQgMDc6MDI6MzFQTSAtMDUwMCwgU2NvdHQgQmxheWRlcyB3cm90ZToK PiBOb3cgSSB2ZXJ5IG9waW5pb25hdGVkIGFib3V0IHRoaXMuIFdvcmtlZCBpbiB0aGUgd2ViIGhv c3RpbmcgaW5kdXN0cnkKPiBmb3IgYSBiaXQuCj4gCj4gT25lIGJpZyBxdWVzdGlvbiBpcywgd2ls bCB5b3UgYmUgaG9zdGluZyBlbWFpbCBvbiB0aGUgdGhlIFZQUy9WTT8KPiAKPiBJZiB5ZXMsIGl0 IG5hcnJvd3MgZG93biB3aG8geW91IGNhbiB1c2UuIERpZ2l0YWwgT2NlYW4sIE9WSCwgYW5kCj4g SGV0em5lciBkb24ndCBoYXZlIGhlYWx0aHkgSVAgcmVwdXRhdGlvbnMuIAo+IAo+IExpbm9kZSB3 b3JrcyB3ZWxsLCBidXQgZG9lcyBoYXZlIHNvbWUgYmFkIElQcyB0b28uIEl0IGlzIGEgcm9sbCBv ZiB0aGUKPiBkaWNlIGFzIHRvIGhvdyBncmVhdCB0aGUgSVAgeW91IHdpbGwgZ2V0Lgo+IAo+IElm IHlvdSB3aWxsIG5ldmVyIHJ1biBhIG1haWwgc2VydmVyIGZyb20gaXQsIEkgc3RpbGwgY2F1dGlv biB5b3UgZnJvbQo+IHVzaW5nIE9WSCwgSGV0em5lciwgYW5kIERpZ2l0YWwgT2NlYW4uIFRoZWly IGFidXNlIHN0YWZmIHNlZW1zIHRvIGJlCj4gYmFja2VkIHVwIGFuZCBpdCBtYWtlcyBmb3IgYSBi YWQgbmV0d29yayBjaXRpemVuLiBMaW5vZGUsIFZ1bHRyLCBhbmQKPiBBUlAgTmV0d29ya3MgYWxs IG1ha2UgZ29vZCBWUFMvVk1zIGZvciBnZW5lcmFsIHVzZS4KPiAKPiBOb3cgSSBoYXZlIHR3byBi YXJlIG1ldGFsIHNlcnZlcnMgdGhhdCBJIHNlY3Rpb24gdXAgaW50byBWUFNlcywgdXNpbmcKPiBQ cm94bW94LiBUaG9zZSB0d28gYXJlIHRocm91Z2ggV2hvbGVzYWxlIEludGVybmV0L05vY2l4LiBC ZWVuIGhhcHB5Cj4gd2l0aCB0aGVtLCBidXQgaXQgaXMgYSBiaXQgZGlmZmVyZW50IHRoYW4gd2hh dCB5b3UgYXJlIGFza2luZyBmb3IuCj4gCj4gT25seSBiZWVuIGhlcmUgc2luY2UgSnVseSwgYnV0 IHdhcyBsb29raW5nIGludG8gcmVudGluZyBoYWxmIGEgcmFjawo+IHB1dHRpbmcgYSBmZXcgc2Vy dmVycyBpbiBpdC4gSSBoYXZlbid0IHNob3BwZWQgYSBsb3QsIGJ1dCBsb29raW5nIGF0Cj4gJDYw MC04MDAgZnJvbSBUaWVyUG9pbnQuIEFueW9uZSBpbnRlcmVzdGVkIGluIGdvaW5nIGluIG9uIGhh bGYgYSByYWNrPwo+IAo+IEkgY291bGQgZ28gb24gbW9yZSwgYnV0IEkgYW0gdGlyZWQgb2YgdHlw aW5nLgo+IAo+IEZlZWwgZnJlZSB0byBlbWFpbCBtZSBpZiB5b3Ugd2FudCB0byBkaXNjdXNzIG9m ZiBsaXN0Li4ub3IgYXJndWUgb24KPiBsaXN0LCBJIGRvbid0IGNhcmUuCj4gCj4gVGhhbmsgeW91 LAo+IFNjb3R0IEJsYXlkZXMKPiAKPiBPbiBUdWUsIDIwMjUtMDItMTEgYXQgMTg6MDcgLTA1MDAs IEpvcyBQdXJ2aXMgdmlhIFRyaUxVRyB3cm90ZToKPiA+IFNlY29uZGluZyB0aGUgc3VnZ2VzdGlv biBmb3IgSGV0em5lcjogSSdtIHVzaW5nIHRoZWlyIHNtYWxsIGNsb3VkCj4gPiBpbnN0YW5jZXMg dG8gaG9zdCB2YXJpb3VzIHdlYnNpdGVzIGFuZCB0b29scyBhbmQgdGhleSd2ZSBiZWVuCj4gPiB0 ZXJyaWZpYy4gVmVyeSBzZXQtaXQtYW5kLWZvcmdldC1pdCB3aGVuIGl0IGNvbWVzIHRvIHNldHVw LCBhbmQgYQo+ID4gZGVjZW50IGFycmF5IG9mIGNob2ljZXMgZm9yIE9TIGFzIHdlbGwuCj4gPiAK PiA+IElmIHlvdSB3YW50IHNvbWV0aGluZyBtb3JlIHRoYW4gdGhhdCwgdGhleSBhbHNvIHNlbGwg dGhlaXIgb2xkZXIKPiA+IGNsb3VkLWhvc3Rpbmcgc2VydmVycyBhcyBjb2xvIGJveGVzLCBzbyB5 b3UgY2FuIGdldCBhIHJlbGF0aXZlbHkKPiA+IHBvd2VyZnVsIHNlcnZlciBhbHJlYWR5IGluIHRo ZWlyIGRhdGFjZW50ZXIgZm9yIGEgZnJhY3Rpb24gb2YgY29zdAo+ID4gd2l0aCBmdWxsIGNvbnNv bGUvcm9vdCBhY2Nlc3MgdG8gaW5zdGFsbCB3aGF0ZXZlci4KPiA+IAo+ID4gT24gVHVlLCBGZWIg MTEsIDIwMjUsIGF0IDE2OjIyLCBSZWlkIFRob21wc29uIHZpYSBUcmlMVUcgd3JvdGU6Cj4gPiA+ IGh0dHBzOi8vd3d3LmhldHpuZXIuY29tL3dlYmhvc3RpbmcvCj4gPiA+IAo+ID4gPiBDaGVhcGVz dCAkMiBtb250aCBwb3N0Z3Jlc3FsIG9yIG15c3FsLiBFdGMKPiA+ID4gaHR0cHM6Ly93d3cuaGV0 em5lci5jb20vd2ViaG9zdGluZy9sZXZlbC0xLwo+ID4gPiAKPiA+ID4gT24gVHVlLCBGZWIgMTEs IDIwMjUsIDE1OjM0IFN0ZXBoZW4gV2lsZXkgdmlhIFRyaUxVRwo+ID4gPiA8dHJpbHVnQHRyaWx1 Zy5vcmc+Cj4gPiA+IHdyb3RlOgo+ID4gPiAKPiA+ID4gPiBJIGhhdmUgYSBMaW5vZGUgVk0gYW5k IHVzZWQgRGlnaXRhbCBvY2VhbiBpbiBjb2xsZWdlLiBUaGV5Cj4gPiA+ID4gZGVmaW5pdGVseQo+ ID4gPiA+IHNlbGwgVk1zICh0aGF0J3Mgd2hhdCAiZHJvcGxldHMiIGFyZSBvbiBEaXRpZ2FsIG9j ZWFuLCBpdCdzIGp1c3QKPiA+ID4gPiBhIEtWTQo+ID4gPiA+IGluc3RhbmNlLiBJSVJDIHlvdSB1 cGxvYWQgeW91ciBwdWJsaWMgc3NoIGtleSB2aWEgdGhlIHdlYiBHVUkKPiA+ID4gPiB3aGVuIHlv dQo+ID4gPiA+IGNyZWF0ZSB0aGUgbWFjaGluZS4pCj4gPiA+ID4gCj4gPiA+ID4gVGhleSdyZSBi b3RoIGdyZWF0IHByb3ZpZGVycy4gSSdtIHVzaW5nIExpbm9kZSBjdXJyZW50bHkuCj4gPiA+ID4g Cj4gPiA+ID4gWW91J3JlIHJpZ2h0IHRob3VnaCwgdGhlaXIgd2Vic2l0ZSBpcyBzdXJwcmlzaW5n bHkgcG9vcmx5Cj4gPiA+ID4gZGVzaWduZWQuIEkKPiA+ID4gPiBoYXZlbid0IHZpc2l0ZWQgaXQg aW4geWVhcnMgYW5kIHJlbWVtYmVyIHNob3BwaW5nIGJlaW5nIG11Y2ggbW9yZQo+ID4gPiA+IHN0 cmFpZ2h0Zm9yd2FyZC4gVGhlICJzaGFyZWQgQ1BVIGNvbXB1dGUiIGlzIHdoYXQgeW91J3JlIGxv b2tpbmcKPiA+ID4gPiBmb3IuCj4gPiA+ID4gSGVyZSdzIHRoZSBVUkwgd2l0aCB0aGF0Ogo+ID4g PiA+IGh0dHBzOi8vd3d3Lmxpbm9kZS5jb20vcHJpY2luZy8jcm93LS1jb21wdXRlCj4gPiA+ID4g VGhlIGFuY2hvciBtYXkgYmUgd3Jvbmcgc28gZG91YmxlIGNoZWNrIHRoZSBoZWFkaW5nIHlvdSdy ZQo+ID4gPiA+IGxvb2tpbmcgYXQuCj4gPiA+ID4gCj4gPiA+ID4gQm90aCBzaG91bGQgYmUgYWJv dXQgdGhlIHNhbWUgcHJpY2UuIFRoZSAkNS9tb250aCBvbmUgb24gZWl0aGVyCj4gPiA+ID4gd2ls bCBiZQo+ID4gPiA+IHBsZW50eSBmb3Igd2hhdCB5b3Ugd2FudCB0byBkbyBhbmQgYXQgdGhhdCBw cmljZSBwb2ludCB5b3UncmUKPiA+ID4gPiBhcHByb2FjaGluZyB0aGUgY29zdCBvZiBhIG5vbi0u Y29tIGRvbWFpbiBuYW1lLgo+ID4gPiA+IAo+ID4gPiA+IC0tU3RlcGhlbgo+ID4gPiA+IAo+ID4g PiA+IE9uIFR1ZSwgRmViIDExLCAyMDI1IGF0IDA4OjA1OjU3UE0gKzAwMDAsIEpvc2VwaCBNYWNr IE5BM1QgdmlhCj4gPiA+ID4gVHJpTFVHCj4gPiA+ID4gd3JvdGU6Cj4gPiA+ID4gPiBJIHdhbnQg YSBMaW51eCBtYWNoaW5lIG9uLWxpbmUsIHRoYXQgSSBjYW4gbG9nb24gYXQgdGhlIGNvbW1hbmQK PiA+ID4gPiA+IGxpbmUsCj4gPiA+ID4gbGlrZSBJCj4gPiA+ID4gPiBkbyB3aXRoIG15IGhvbWUg bWFjaGluZXMsIGFuZCBwaWxvdC4gSSB3YW50IGl0IHRvIHJ1biBhIGxpZ2h0bHkKPiA+ID4gPiA+ IHVzZWQgYQo+ID4gPiA+ID4gd2Vic2l0ZS4gSSBhbHNvIHdhbnQgdG8gYmUgYWJsZSB0byBpbnN0 YWxsIGFuZCByZW1vdmUgZmlsZXMgYXQKPiA+ID4gPiA+IHdpbGwgaGFkCj4gPiA+ID4gbm90Cj4g PiA+ID4gPiBoYXZlIGFueSBibG9ja2VkIHBvcnRzLgo+ID4gPiA+ID4gCj4gPiA+ID4gPiBJIHRy aWVkIGxpbm9kZS5jb20gYW5kIGRpZ2l0YWxvY2Vhbi5jb20uIFRoZWlyIHdlYnBhZ2VzIGFyZSBh bGwKPiA+ID4gPiBtYXJrZXR0aW5nCj4gPiA+ID4gPiBmdWxsIG9mICJwcm9kdWN0cyIgYW5kICJz b2x1dGlvbnMiLiBUaGV5IGFyZW4ndCBvZmZlcmluZyBWTXMuCj4gPiA+ID4gPiBNYXliZSB0aGV5 Cj4gPiA+ID4gYXJlCj4gPiA+ID4gPiBidXQgdGhleSdyZSBidXJpZWQgYmVuZWF0aCBtYXJrZXR0 aW5nIChkaWdpdGFsb2NlYW4gaXMgb2ZmZXJpbmcKPiA+ID4gPiBkcm9wbGV0cyksCj4gPiA+ID4g PiBpbiB3aGljaCBjYXNlIEknbSBub3QgdGhlaXIgdGFyZ2V0Lgo+ID4gPiA+ID4gCj4gPiA+ID4g PiBUaGFua3MgSm9lCj4gPiA+ID4gPiAKPiA+ID4gPiA+IC0tCj4gPiA+ID4gPiBKb3NlcGggTWFj ayBOQTNUIEVNRShCLEQpLCBGTTA1bHcgTm9ydGggQ2Fyb2xpbmEKPiA+ID4gPiA+IERvbid0IHVw Z3JhZGUgYSB3b3JraW5nIG1hY2hpbmUgLSBpdCB3b24ndCB3b3JrIGFueQo+ID4gPiA+ID4gYmV0 dGVyIC0gaXQgY291bGQgd29yayB3b3JzZTsgaXQgbWF5IG5vdCB3b3JrIGF0IGFsbC4KPiA+ID4g PiA+IEhvbWVwYWdlIGh0dHA6Ly93d3cuYXVzdGludGVrLmNvbS/CoEl0J3MgR05VL0xpbnV4IQo+ ID4gPiA+ID4gCj4gPiA+ID4gPiAtLQo+ID4gPiA+ID4gVGhpcyBtZXNzYWdlIHdhcyBzZW50IHRv OiBTdGVwaGVuIFdpbGV5IDxzd2lsZXlAc3dpbGV5Lm5ldD4KPiA+ID4gPiA+IFRvIHVuc3Vic2Ny aWJlLCBzZW5kIGEgYmxhbmsgbWVzc2FnZSB0bwo+ID4gPiA+ID4gdHJpbHVnLWxlYXZlQHRyaWx1 Zy5vcmfCoGZyb20KPiA+ID4gPiB0aGF0IGFkZHJlc3MuCj4gPiA+ID4gPiBUcmlMVUcgbWFpbGlu ZyBsaXN0IDoKPiA+ID4gPiA+IGh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9saXN0aW5m by90cmlsdWcKPiA+ID4gPiA+IFVuc3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUgd2Vi wqDCoMKgwqDCoMKgwqAgOgo+ID4gPiA+IGh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9v cHRpb25zL3RyaWx1Zy9zd2lsZXklNDBzd2lsZXkubmV0Cj4gPiA+ID4gPiBXZWxjb21lIHRvIFRy aUxVRzogaHR0cHM6Ly90cmlsdWcub3JnL3dlbGNvbWUKPiA+ID4gPiAKPiA+ID4gPiAtLQo+ID4g PiA+IFRoaXMgbWVzc2FnZSB3YXMgc2VudCB0bzoKPiA+ID4gPiBqcmVpZHRob21wc29uQGdtYWls LmNvbcKgPGpyZWlkdGhvbXBzb25AZ21haWwuY29tCj4gPiA+ID4gPiAKPiA+ID4gPiBUbyB1bnN1 YnNjcmliZSwgc2VuZCBhIGJsYW5rIG1lc3NhZ2UgdG8KPiA+ID4gPiB0cmlsdWctbGVhdmVAdHJp bHVnLm9yZ8KgZnJvbSB0aGF0Cj4gPiA+ID4gYWRkcmVzcy4KPiA+ID4gPiBUcmlMVUcgbWFpbGlu ZyBsaXN0IDoKPiA+ID4gPiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vbGlzdGluZm8v dHJpbHVnCj4gPiA+ID4gVW5zdWJzY3JpYmUgb3IgZWRpdCBvcHRpb25zIG9uIHRoZSB3ZWLCoCA6 Cj4gPiA+ID4gaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL29wdGlvbnMvdHJpbHVnL2py ZWlkdGhvbXBzb24lNDBnbWFpbC5jb20KPiA+ID4gPiBXZWxjb21lIHRvIFRyaUxVRzogaHR0cHM6 Ly90cmlsdWcub3JnL3dlbGNvbWUKPiA+ID4gLS0gCj4gPiA+IFRoaXMgbWVzc2FnZSB3YXMgc2Vu dCB0bzogcHVydmlzQG1lbGV0ZS5vcmfCoDxwdXJ2aXNAbWVsZXRlLm9yZz4KPiA+ID4gVG8gdW5z dWJzY3JpYmUsIHNlbmQgYSBibGFuayBtZXNzYWdlIHRvCj4gPiA+IHRyaWx1Zy1sZWF2ZUB0cmls dWcub3JnwqBmcm9tIAo+ID4gPiB0aGF0IGFkZHJlc3MuCj4gPiA+IFRyaUxVRyBtYWlsaW5nIGxp c3QgOgo+ID4gPiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vbGlzdGluZm8vdHJpbHVn Cj4gPiA+IFVuc3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUgd2ViCTogCj4gPiA+IGh0 dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9vcHRpb25zL3RyaWx1Zy9wdXJ2aXMlNDBtZWxl dGUub3JnCj4gPiA+IFdlbGNvbWUgdG8gVHJpTFVHOiBodHRwczovL3RyaWx1Zy5vcmcvd2VsY29t ZQo+IAoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCk1lc3NhZ2U6IDgKRGF0ZTog VHVlLCAxMSBGZWIgMjAyNSAxOToyMTozMCAtMDUwMApGcm9tOiBNYXVyaWNpbyBUYXZhcmVzIHZp YSBUcmlMVUcgPHRyaWx1Z0B0cmlsdWcub3JnPgpUbzogUmVpZCBUaG9tcHNvbiA8anJlaWR0aG9t cHNvbkBnbWFpbC5jb20+LCAgVHJpYW5nbGUgTGludXggVXNlcnMKCUdyb3VwIEdlbmVyYWwgRGlz Y3Vzc2lvbiA8dHJpbHVnQHRyaWx1Zy5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNvbW1l bmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDoKCTxDQUhFS1lWN2VlWkQt OC1NRXdWSz15TExNPWZHeEJoa2dhS09jU0JoYmF0ejl6cmc1aWdAbWFpbC5nbWFpbC5jb20+CkNv bnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iVVRGLTgiCgpPbiBUdWUsIEZlYiAxMSwg MjAyNSBhdCA0OjI04oCvUE0gUmVpZCBUaG9tcHNvbiB2aWEgVHJpTFVHCjx0cmlsdWdAdHJpbHVn Lm9yZz4gd3JvdGU6Cj4KPiBodHRwczovL3d3dy5oZXR6bmVyLmNvbS93ZWJob3N0aW5nLwo+Cj4g Q2hlYXBlc3QgJDIgbW9udGggcG9zdGdyZXNxbCBvciBteXNxbC4gRXRjCj4gaHR0cHM6Ly93d3cu aGV0em5lci5jb20vd2ViaG9zdGluZy9sZXZlbC0xLwo+CiAgICAgIFRoaW5rIGFib3V0IHRoYXQg aXMgaXQgaXMgZXhwb3NlZCB0byB0aGUgb3V0c2lkZSwgYW5kIHlvdSBoYXZlCm5vIGFjY2VzcyB0 byBteS5jbmYsIGJlIGl0IG1hbnVhbGx5IG9yIHRocm91Z2ggYSB3ZWIgaW50ZXJmYWNlLCB0bwpj b250cm9sIHdobyBjYW4gcmVhY2ggaXQuIFNvdXJjZTogbWUgd2l0aCBhIHdvcmRwcmVzcyBzaXRl IHRoZXJlCgo+IE9uIFR1ZSwgRmViIDExLCAyMDI1LCAxNTozNCBTdGVwaGVuIFdpbGV5IHZpYSBU cmlMVUcgPHRyaWx1Z0B0cmlsdWcub3JnPgo+IHdyb3RlOgo+Cj4gPiBJIGhhdmUgYSBMaW5vZGUg Vk0gYW5kIHVzZWQgRGlnaXRhbCBvY2VhbiBpbiBjb2xsZWdlLiBUaGV5IGRlZmluaXRlbHkKPiA+ IHNlbGwgVk1zICh0aGF0J3Mgd2hhdCAiZHJvcGxldHMiIGFyZSBvbiBEaXRpZ2FsIG9jZWFuLCBp dCdzIGp1c3QgYSBLVk0KPiA+IGluc3RhbmNlLiBJSVJDIHlvdSB1cGxvYWQgeW91ciBwdWJsaWMg c3NoIGtleSB2aWEgdGhlIHdlYiBHVUkgd2hlbiB5b3UKPiA+IGNyZWF0ZSB0aGUgbWFjaGluZS4p Cj4gPgo+ID4gVGhleSdyZSBib3RoIGdyZWF0IHByb3ZpZGVycy4gSSdtIHVzaW5nIExpbm9kZSBj dXJyZW50bHkuCj4gPgo+ID4gWW91J3JlIHJpZ2h0IHRob3VnaCwgdGhlaXIgd2Vic2l0ZSBpcyBz dXJwcmlzaW5nbHkgcG9vcmx5IGRlc2lnbmVkLiBJCj4gPiBoYXZlbid0IHZpc2l0ZWQgaXQgaW4g eWVhcnMgYW5kIHJlbWVtYmVyIHNob3BwaW5nIGJlaW5nIG11Y2ggbW9yZQo+ID4gc3RyYWlnaHRm b3J3YXJkLiBUaGUgInNoYXJlZCBDUFUgY29tcHV0ZSIgaXMgd2hhdCB5b3UncmUgbG9va2luZyBm b3IuCj4gPiBIZXJlJ3MgdGhlIFVSTCB3aXRoIHRoYXQ6IGh0dHBzOi8vd3d3Lmxpbm9kZS5jb20v cHJpY2luZy8jcm93LS1jb21wdXRlCj4gPiBUaGUgYW5jaG9yIG1heSBiZSB3cm9uZyBzbyBkb3Vi bGUgY2hlY2sgdGhlIGhlYWRpbmcgeW91J3JlIGxvb2tpbmcgYXQuCj4gPgo+ID4gQm90aCBzaG91 bGQgYmUgYWJvdXQgdGhlIHNhbWUgcHJpY2UuIFRoZSAkNS9tb250aCBvbmUgb24gZWl0aGVyIHdp bGwgYmUKPiA+IHBsZW50eSBmb3Igd2hhdCB5b3Ugd2FudCB0byBkbyBhbmQgYXQgdGhhdCBwcmlj ZSBwb2ludCB5b3UncmUKPiA+IGFwcHJvYWNoaW5nIHRoZSBjb3N0IG9mIGEgbm9uLS5jb20gZG9t YWluIG5hbWUuCj4gPgo+ID4gLS1TdGVwaGVuCj4gPgo+ID4gT24gVHVlLCBGZWIgMTEsIDIwMjUg YXQgMDg6MDU6NTdQTSArMDAwMCwgSm9zZXBoIE1hY2sgTkEzVCB2aWEgVHJpTFVHCj4gPiB3cm90 ZToKPiA+ID4gSSB3YW50IGEgTGludXggbWFjaGluZSBvbi1saW5lLCB0aGF0IEkgY2FuIGxvZ29u IGF0IHRoZSBjb21tYW5kIGxpbmUsCj4gPiBsaWtlIEkKPiA+ID4gZG8gd2l0aCBteSBob21lIG1h Y2hpbmVzLCBhbmQgcGlsb3QuIEkgd2FudCBpdCB0byBydW4gYSBsaWdodGx5IHVzZWQgYQo+ID4g PiB3ZWJzaXRlLiBJIGFsc28gd2FudCB0byBiZSBhYmxlIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBm aWxlcyBhdCB3aWxsIGhhZAo+ID4gbm90Cj4gPiA+IGhhdmUgYW55IGJsb2NrZWQgcG9ydHMuCj4g PiA+Cj4gPiA+IEkgdHJpZWQgbGlub2RlLmNvbSBhbmQgZGlnaXRhbG9jZWFuLmNvbS4gVGhlaXIg d2VicGFnZXMgYXJlIGFsbAo+ID4gbWFya2V0dGluZwo+ID4gPiBmdWxsIG9mICJwcm9kdWN0cyIg YW5kICJzb2x1dGlvbnMiLiBUaGV5IGFyZW4ndCBvZmZlcmluZyBWTXMuIE1heWJlIHRoZXkKPiA+ IGFyZQo+ID4gPiBidXQgdGhleSdyZSBidXJpZWQgYmVuZWF0aCBtYXJrZXR0aW5nIChkaWdpdGFs b2NlYW4gaXMgb2ZmZXJpbmcKPiA+IGRyb3BsZXRzKSwKPiA+ID4gaW4gd2hpY2ggY2FzZSBJJ20g bm90IHRoZWlyIHRhcmdldC4KPiA+ID4KPiA+ID4gVGhhbmtzIEpvZQo+ID4gPgo+ID4gPiAtLQo+ ID4gPiBKb3NlcGggTWFjayBOQTNUIEVNRShCLEQpLCBGTTA1bHcgTm9ydGggQ2Fyb2xpbmEKPiA+ ID4gRG9uJ3QgdXBncmFkZSBhIHdvcmtpbmcgbWFjaGluZSAtIGl0IHdvbid0IHdvcmsgYW55Cj4g PiA+IGJldHRlciAtIGl0IGNvdWxkIHdvcmsgd29yc2U7IGl0IG1heSBub3Qgd29yayBhdCBhbGwu Cj4gPiA+IEhvbWVwYWdlIGh0dHA6Ly93d3cuYXVzdGludGVrLmNvbS8gSXQncyBHTlUvTGludXgh Cj4gPiA+Cj4gPiA+IC0tCj4gPiA+IFRoaXMgbWVzc2FnZSB3YXMgc2VudCB0bzogU3RlcGhlbiBX aWxleSA8c3dpbGV5QHN3aWxleS5uZXQ+Cj4gPiA+IFRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgYmxh bmsgbWVzc2FnZSB0byB0cmlsdWctbGVhdmVAdHJpbHVnLm9yZyBmcm9tCj4gPiB0aGF0IGFkZHJl c3MuCj4gPiA+IFRyaUxVRyBtYWlsaW5nIGxpc3QgOiBodHRwczovL3d3dy50cmlsdWcub3JnL21h aWxtYW4vbGlzdGluZm8vdHJpbHVnCj4gPiA+IFVuc3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBv biB0aGUgd2ViICAgICAgICA6Cj4gPiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0 aW9ucy90cmlsdWcvc3dpbGV5JTQwc3dpbGV5Lm5ldAo+ID4gPiBXZWxjb21lIHRvIFRyaUxVRzog aHR0cHM6Ly90cmlsdWcub3JnL3dlbGNvbWUKPiA+Cj4gPiAtLQo+ID4gVGhpcyBtZXNzYWdlIHdh cyBzZW50IHRvOiBqcmVpZHRob21wc29uQGdtYWlsLmNvbSA8anJlaWR0aG9tcHNvbkBnbWFpbC5j b20KPiA+ID4KPiA+IFRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgYmxhbmsgbWVzc2FnZSB0byB0cmls dWctbGVhdmVAdHJpbHVnLm9yZyBmcm9tIHRoYXQKPiA+IGFkZHJlc3MuCj4gPiBUcmlMVUcgbWFp bGluZyBsaXN0IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3RyaWx1 Zwo+ID4gVW5zdWJzY3JpYmUgb3IgZWRpdCBvcHRpb25zIG9uIHRoZSB3ZWIgIDoKPiA+IGh0dHBz Oi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9vcHRpb25zL3RyaWx1Zy9qcmVpZHRob21wc29uJTQw Z21haWwuY29tCj4gPiBXZWxjb21lIHRvIFRyaUxVRzogaHR0cHM6Ly90cmlsdWcub3JnL3dlbGNv bWUKPiAtLQo+IFRoaXMgbWVzc2FnZSB3YXMgc2VudCB0bzogcmF1YnZvZ2VsQGdtYWlsLmNvbSA8 cmF1YnZvZ2VsQGdtYWlsLmNvbT4KPiBUbyB1bnN1YnNjcmliZSwgc2VuZCBhIGJsYW5rIG1lc3Nh Z2UgdG8gdHJpbHVnLWxlYXZlQHRyaWx1Zy5vcmcgZnJvbSB0aGF0IGFkZHJlc3MuCj4gVHJpTFVH IG1haWxpbmcgbGlzdCA6IGh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9saXN0aW5mby90 cmlsdWcKPiBVbnN1YnNjcmliZSBvciBlZGl0IG9wdGlvbnMgb24gdGhlIHdlYiAgOiBodHRwczov L3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90cmlsdWcvcmF1YnZvZ2VsJTQwZ21haWwu Y29tCj4gV2VsY29tZSB0byBUcmlMVUc6IGh0dHBzOi8vdHJpbHVnLm9yZy93ZWxjb21lCgoKLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiA5CkRhdGU6IFR1ZSwgMTEgRmVi IDIwMjUgMTk6Mzk6MTIgLTA1MDAKRnJvbTogUmVpZCBUaG9tcHNvbiB2aWEgVHJpTFVHIDx0cmls dWdAdHJpbHVnLm9yZz4KQ2M6IFRyaWFuZ2xlIExpbnV4IFVzZXJzIEdyb3VwIEdlbmVyYWwgRGlz Y3Vzc2lvbiA8dHJpbHVnQHRyaWx1Zy5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNvbW1l bmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDoKCTxDQStXMFVTYkxhLWVy QmpOaGg5Y2NWalFGQXJldDJIQV8rN2tzVzhvaFpuaERQRnU3akFAbWFpbC5nbWFpbC5jb20+CkNv bnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iVVRGLTgiCgpJT05PUyBoYXMgYmVlbiBh cm91bmQgZm9yIGEgbG9uZyB0aW1lIGFsc28KCmh0dHBzOi8vd3d3Lmlvbm9zLmNvbS9zZXJ2ZXJz L3Zwcz9fX3NlbmRpbmdkYXRhPTEmZGF0YWNlbnRlcklkPXVzJTJGbWNpJmNhcnQuYWN0aW9uPWFk ZCZjYXJ0LmFydGljbGU9Y29yZS12cHMtZGF0YWNlbnRlci1ld3ImcGFja2FnZXNlbGVjdGlvbj1j b3N0cyZzPWZhbHNlI3BhY2thZ2VzCgpPbiBUdWUsIEZlYiAxMSwgMjAyNSwgMTk6MjEgTWF1cmlj aW8gVGF2YXJlcyA8cmF1YnZvZ2VsQGdtYWlsLmNvbT4gd3JvdGU6Cgo+IE9uIFR1ZSwgRmViIDEx LCAyMDI1IGF0IDQ6MjTigK9QTSBSZWlkIFRob21wc29uIHZpYSBUcmlMVUcKPiA8dHJpbHVnQHRy aWx1Zy5vcmc+IHdyb3RlOgo+ID4KPiA+IGh0dHBzOi8vd3d3LmhldHpuZXIuY29tL3dlYmhvc3Rp bmcvCj4gPgo+ID4gQ2hlYXBlc3QgJDIgbW9udGggcG9zdGdyZXNxbCBvciBteXNxbC4gRXRjCj4g PiBodHRwczovL3d3dy5oZXR6bmVyLmNvbS93ZWJob3N0aW5nL2xldmVsLTEvCj4gPgo+ICAgICAg IFRoaW5rIGFib3V0IHRoYXQgaXMgaXQgaXMgZXhwb3NlZCB0byB0aGUgb3V0c2lkZSwgYW5kIHlv dSBoYXZlCj4gbm8gYWNjZXNzIHRvIG15LmNuZiwgYmUgaXQgbWFudWFsbHkgb3IgdGhyb3VnaCBh IHdlYiBpbnRlcmZhY2UsIHRvCj4gY29udHJvbCB3aG8gY2FuIHJlYWNoIGl0LiBTb3VyY2U6IG1l IHdpdGggYSB3b3JkcHJlc3Mgc2l0ZSB0aGVyZQo+Cj4gPiBPbiBUdWUsIEZlYiAxMSwgMjAyNSwg MTU6MzQgU3RlcGhlbiBXaWxleSB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4KPiA+IHdy b3RlOgo+ID4KPiA+ID4gSSBoYXZlIGEgTGlub2RlIFZNIGFuZCB1c2VkIERpZ2l0YWwgb2NlYW4g aW4gY29sbGVnZS4gVGhleSBkZWZpbml0ZWx5Cj4gPiA+IHNlbGwgVk1zICh0aGF0J3Mgd2hhdCAi ZHJvcGxldHMiIGFyZSBvbiBEaXRpZ2FsIG9jZWFuLCBpdCdzIGp1c3QgYSBLVk0KPiA+ID4gaW5z dGFuY2UuIElJUkMgeW91IHVwbG9hZCB5b3VyIHB1YmxpYyBzc2gga2V5IHZpYSB0aGUgd2ViIEdV SSB3aGVuIHlvdQo+ID4gPiBjcmVhdGUgdGhlIG1hY2hpbmUuKQo+ID4gPgo+ID4gPiBUaGV5J3Jl IGJvdGggZ3JlYXQgcHJvdmlkZXJzLiBJJ20gdXNpbmcgTGlub2RlIGN1cnJlbnRseS4KPiA+ID4K PiA+ID4gWW91J3JlIHJpZ2h0IHRob3VnaCwgdGhlaXIgd2Vic2l0ZSBpcyBzdXJwcmlzaW5nbHkg cG9vcmx5IGRlc2lnbmVkLiBJCj4gPiA+IGhhdmVuJ3QgdmlzaXRlZCBpdCBpbiB5ZWFycyBhbmQg cmVtZW1iZXIgc2hvcHBpbmcgYmVpbmcgbXVjaCBtb3JlCj4gPiA+IHN0cmFpZ2h0Zm9yd2FyZC4g VGhlICJzaGFyZWQgQ1BVIGNvbXB1dGUiIGlzIHdoYXQgeW91J3JlIGxvb2tpbmcgZm9yLgo+ID4g PiBIZXJlJ3MgdGhlIFVSTCB3aXRoIHRoYXQ6IGh0dHBzOi8vd3d3Lmxpbm9kZS5jb20vcHJpY2lu Zy8jcm93LS1jb21wdXRlCj4gPiA+IFRoZSBhbmNob3IgbWF5IGJlIHdyb25nIHNvIGRvdWJsZSBj aGVjayB0aGUgaGVhZGluZyB5b3UncmUgbG9va2luZyBhdC4KPiA+ID4KPiA+ID4gQm90aCBzaG91 bGQgYmUgYWJvdXQgdGhlIHNhbWUgcHJpY2UuIFRoZSAkNS9tb250aCBvbmUgb24gZWl0aGVyIHdp bGwgYmUKPiA+ID4gcGxlbnR5IGZvciB3aGF0IHlvdSB3YW50IHRvIGRvIGFuZCBhdCB0aGF0IHBy aWNlIHBvaW50IHlvdSdyZQo+ID4gPiBhcHByb2FjaGluZyB0aGUgY29zdCBvZiBhIG5vbi0uY29t IGRvbWFpbiBuYW1lLgo+ID4gPgo+ID4gPiAtLVN0ZXBoZW4KPiA+ID4KPiA+ID4gT24gVHVlLCBG ZWIgMTEsIDIwMjUgYXQgMDg6MDU6NTdQTSArMDAwMCwgSm9zZXBoIE1hY2sgTkEzVCB2aWEgVHJp TFVHCj4gPiA+IHdyb3RlOgo+ID4gPiA+IEkgd2FudCBhIExpbnV4IG1hY2hpbmUgb24tbGluZSwg dGhhdCBJIGNhbiBsb2dvbiBhdCB0aGUgY29tbWFuZCBsaW5lLAo+ID4gPiBsaWtlIEkKPiA+ID4g PiBkbyB3aXRoIG15IGhvbWUgbWFjaGluZXMsIGFuZCBwaWxvdC4gSSB3YW50IGl0IHRvIHJ1biBh IGxpZ2h0bHkgdXNlZAo+IGEKPiA+ID4gPiB3ZWJzaXRlLiBJIGFsc28gd2FudCB0byBiZSBhYmxl IHRvIGluc3RhbGwgYW5kIHJlbW92ZSBmaWxlcyBhdCB3aWxsCj4gaGFkCj4gPiA+IG5vdAo+ID4g PiA+IGhhdmUgYW55IGJsb2NrZWQgcG9ydHMuCj4gPiA+ID4KPiA+ID4gPiBJIHRyaWVkIGxpbm9k ZS5jb20gYW5kIGRpZ2l0YWxvY2Vhbi5jb20uIFRoZWlyIHdlYnBhZ2VzIGFyZSBhbGwKPiA+ID4g bWFya2V0dGluZwo+ID4gPiA+IGZ1bGwgb2YgInByb2R1Y3RzIiBhbmQgInNvbHV0aW9ucyIuIFRo ZXkgYXJlbid0IG9mZmVyaW5nIFZNcy4gTWF5YmUKPiB0aGV5Cj4gPiA+IGFyZQo+ID4gPiA+IGJ1 dCB0aGV5J3JlIGJ1cmllZCBiZW5lYXRoIG1hcmtldHRpbmcgKGRpZ2l0YWxvY2VhbiBpcyBvZmZl cmluZwo+ID4gPiBkcm9wbGV0cyksCj4gPiA+ID4gaW4gd2hpY2ggY2FzZSBJJ20gbm90IHRoZWly IHRhcmdldC4KPiA+ID4gPgo+ID4gPiA+IFRoYW5rcyBKb2UKPiA+ID4gPgo+ID4gPiA+IC0tCj4g PiA+ID4gSm9zZXBoIE1hY2sgTkEzVCBFTUUoQixEKSwgRk0wNWx3IE5vcnRoIENhcm9saW5hCj4g PiA+ID4gRG9uJ3QgdXBncmFkZSBhIHdvcmtpbmcgbWFjaGluZSAtIGl0IHdvbid0IHdvcmsgYW55 Cj4gPiA+ID4gYmV0dGVyIC0gaXQgY291bGQgd29yayB3b3JzZTsgaXQgbWF5IG5vdCB3b3JrIGF0 IGFsbC4KPiA+ID4gPiBIb21lcGFnZSBodHRwOi8vd3d3LmF1c3RpbnRlay5jb20vIEl0J3MgR05V L0xpbnV4IQo+ID4gPiA+Cj4gPiA+ID4gLS0KPiA+ID4gPiBUaGlzIG1lc3NhZ2Ugd2FzIHNlbnQg dG86IFN0ZXBoZW4gV2lsZXkgPHN3aWxleUBzd2lsZXkubmV0Pgo+ID4gPiA+IFRvIHVuc3Vic2Ny aWJlLCBzZW5kIGEgYmxhbmsgbWVzc2FnZSB0byB0cmlsdWctbGVhdmVAdHJpbHVnLm9yZyBmcm9t Cj4gPiA+IHRoYXQgYWRkcmVzcy4KPiA+ID4gPiBUcmlMVUcgbWFpbGluZyBsaXN0IDogaHR0cHM6 Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3RyaWx1Zwo+ID4gPiA+IFVuc3Vic2Ny aWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUgd2ViICAgICAgICA6Cj4gPiA+IGh0dHBzOi8vd3d3 LnRyaWx1Zy5vcmcvbWFpbG1hbi9vcHRpb25zL3RyaWx1Zy9zd2lsZXklNDBzd2lsZXkubmV0Cj4g PiA+ID4gV2VsY29tZSB0byBUcmlMVUc6IGh0dHBzOi8vdHJpbHVnLm9yZy93ZWxjb21lCj4gPiA+ Cj4gPiA+IC0tCj4gPiA+IFRoaXMgbWVzc2FnZSB3YXMgc2VudCB0bzoganJlaWR0aG9tcHNvbkBn bWFpbC5jb20gPAo+IGpyZWlkdGhvbXBzb25AZ21haWwuY29tCj4gPiA+ID4KPiA+ID4gVG8gdW5z dWJzY3JpYmUsIHNlbmQgYSBibGFuayBtZXNzYWdlIHRvIHRyaWx1Zy1sZWF2ZUB0cmlsdWcub3Jn IGZyb20KPiB0aGF0Cj4gPiA+IGFkZHJlc3MuCj4gPiA+IFRyaUxVRyBtYWlsaW5nIGxpc3QgOiBo dHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vbGlzdGluZm8vdHJpbHVnCj4gPiA+IFVuc3Vi c2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUgd2ViICA6Cj4gPiA+Cj4gaHR0cHM6Ly93d3cu dHJpbHVnLm9yZy9tYWlsbWFuL29wdGlvbnMvdHJpbHVnL2pyZWlkdGhvbXBzb24lNDBnbWFpbC5j b20KPiA+ID4gV2VsY29tZSB0byBUcmlMVUc6IGh0dHBzOi8vdHJpbHVnLm9yZy93ZWxjb21lCj4g PiAtLQo+ID4gVGhpcyBtZXNzYWdlIHdhcyBzZW50IHRvOiByYXVidm9nZWxAZ21haWwuY29tIDxy YXVidm9nZWxAZ21haWwuY29tPgo+ID4gVG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBibGFuayBtZXNz YWdlIHRvIHRyaWx1Zy1sZWF2ZUB0cmlsdWcub3JnIGZyb20KPiB0aGF0IGFkZHJlc3MuCj4gPiBU cmlMVUcgbWFpbGluZyBsaXN0IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL3RyaWx1Zwo+ID4gVW5zdWJzY3JpYmUgb3IgZWRpdCBvcHRpb25zIG9uIHRoZSB3ZWIgIDoK PiBodHRwczovL3d3dy50cmlsdWcub3JnL21haWxtYW4vb3B0aW9ucy90cmlsdWcvcmF1YnZvZ2Vs JTQwZ21haWwuY29tCj4gPiBXZWxjb21lIHRvIFRyaUxVRzogaHR0cHM6Ly90cmlsdWcub3JnL3dl bGNvbWUKPgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKTWVzc2FnZTogMTAKRGF0 ZTogVHVlLCAxMSBGZWIgMjAyNSAxOTo1MToyNyAtMDUwMApGcm9tOiBKb2huIEJyb29tZSB2aWEg VHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4KVG86IEpvc2VwaCBNYWNrIE5BM1QgPGptYWNrQHRy aWx1Zy5vcmc+LCAgVHJpYW5nbGUgTGludXggVXNlcnMgR3JvdXAKCUdlbmVyYWwgRGlzY3Vzc2lv biA8dHJpbHVnQHRyaWx1Zy5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNvbW1lbmRhdGlv bnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDoKCTxDQSt1M0MyaytLd0NBRXhWbV9y dUZrdXdSaEdrS2ZWQ3dIMVVrZDdDR2tnaXdaT25reHdAbWFpbC5nbWFpbC5jb20+CkNvbnRlbnQt VHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iVVRGLTgiCgpodHRwczovL2xvd2VuZGJveC5jb20K Ck9yLCBvbmUgSSBoYXZlIGV4cGVyaWVuY2Ugd2l0aCBmcm9tIGJhY2sgd2hlbiB0aGV5IHdlcmUg Y2FsbCBwcmdtciBhbmQKb2ZmZXJlZCBhIExPUFNBIGRpc2NvdW50OgpodHRwczovL3Rvcm5hZG92 cHMuY29tCgoKCk9uIFR1ZSwgRmViIDExLCAyMDI1IGF0IDE1OjA2IEpvc2VwaCBNYWNrIE5BM1Qg dmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+Cndyb3RlOgoKPiBJIHdhbnQgYSBMaW51eCBt YWNoaW5lIG9uLWxpbmUsIHRoYXQgSSBjYW4gbG9nb24gYXQgdGhlIGNvbW1hbmQgbGluZSwgbGlr ZQo+IEkgZG8gd2l0aCBteSBob21lIG1hY2hpbmVzLCBhbmQgcGlsb3QuIEkgd2FudCBpdCB0byBy dW4gYSBsaWdodGx5IHVzZWQgYQo+IHdlYnNpdGUuIEkgYWxzbyB3YW50IHRvIGJlIGFibGUgdG8g aW5zdGFsbCBhbmQgcmVtb3ZlIGZpbGVzIGF0IHdpbGwgaGFkCj4gbm90IGhhdmUgYW55IGJsb2Nr ZWQgcG9ydHMuCj4KPiBJIHRyaWVkIGxpbm9kZS5jb20gYW5kIGRpZ2l0YWxvY2Vhbi5jb20uIFRo ZWlyIHdlYnBhZ2VzIGFyZSBhbGwKPiBtYXJrZXR0aW5nCj4gZnVsbCBvZiAicHJvZHVjdHMiIGFu ZCAic29sdXRpb25zIi4gVGhleSBhcmVuJ3Qgb2ZmZXJpbmcgVk1zLiBNYXliZSB0aGV5Cj4gYXJl IGJ1dCB0aGV5J3JlIGJ1cmllZCBiZW5lYXRoIG1hcmtldHRpbmcgKGRpZ2l0YWxvY2VhbiBpcyBv ZmZlcmluZwo+IGRyb3BsZXRzKSwgaW4gd2hpY2ggY2FzZSBJJ20gbm90IHRoZWlyIHRhcmdldC4K Pgo+IFRoYW5rcyBKb2UKPgo+IC0tCj4gSm9zZXBoIE1hY2sgTkEzVCBFTUUoQixEKSwgRk0wNWx3 IE5vcnRoIENhcm9saW5hCj4gRG9uJ3QgdXBncmFkZSBhIHdvcmtpbmcgbWFjaGluZSAtIGl0IHdv bid0IHdvcmsgYW55Cj4gYmV0dGVyIC0gaXQgY291bGQgd29yayB3b3JzZTsgaXQgbWF5IG5vdCB3 b3JrIGF0IGFsbC4KPiBIb21lcGFnZSBodHRwOi8vd3d3LmF1c3RpbnRlay5jb20vIEl0J3MgR05V L0xpbnV4IQo+Cj4gLS0KPiBUaGlzIG1lc3NhZ2Ugd2FzIHNlbnQgdG86IEpvaG4gQnJvb21lIDxq YnJvb21lQGdtYWlsLmNvbT4KPiBUbyB1bnN1YnNjcmliZSwgc2VuZCBhIGJsYW5rIG1lc3NhZ2Ug dG8gdHJpbHVnLWxlYXZlQHRyaWx1Zy5vcmcgZnJvbSB0aGF0Cj4gYWRkcmVzcy4KPiBUcmlMVUcg bWFpbGluZyBsaXN0IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3Ry aWx1Zwo+IFVuc3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0aGUgd2ViICA6Cj4gaHR0cHM6 Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL29wdGlvbnMvdHJpbHVnL2picm9vbWUlNDBnbWFpbC5j b20KPiBXZWxjb21lIHRvIFRyaUxVRzogaHR0cHM6Ly90cmlsdWcub3JnL3dlbGNvbWUKCgotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCk1lc3NhZ2U6IDExCkRhdGU6IFdlZCwgMTIgRmVi IDIwMjUgMTE6NTE6MzMgKzAwMDAgKEdNVCkKRnJvbTogSm9zZXBoIE1hY2sgTkEzVCB2aWEgVHJp TFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4KVG86IFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+ClN1 YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0K TWVzc2FnZS1JRDogPGFscGluZS5ERUIuMi4wMi4yNTAyMTIxMDU5MjEwLjczMDFAcGlsb3QudHJp bHVnLm9yZz4KQ29udGVudC1UeXBlOiBURVhUL1BMQUlOOyBmb3JtYXQ9Zmxvd2VkOyBjaGFyc2V0 PVVTLUFTQ0lJCgpPbiBUdWUsIDExIEZlYiAyMDI1LCBKb3NlcGggTWFjayBOQTNUIHdyb3RlOgoK PiBJIHdhbnQgYSBMaW51eCBtYWNoaW5lIG9uLWxpbmUsIHRoYXQgSSBjYW4gbG9nb24gYXQgdGhl IGNvbW1hbmQgbGluZSwgbGlrZSBJIAo+IGRvIHdpdGggbXkgaG9tZSBtYWNoaW5lcywgYW5kIHBp bG90LiBJIHdhbnQgaXQgdG8gcnVuIGEgbGlnaHRseSB1c2VkIGEgCj4gd2Vic2l0ZS4gSSBhbHNv IHdhbnQgdG8gYmUgYWJsZSB0byBpbnN0YWxsIGFuZCByZW1vdmUgZmlsZXMgYXQgd2lsbCBoYWQg bm90IAo+IGhhdmUgYW55IGJsb2NrZWQgcG9ydHMuCgpUaGFua3MgZXZlcnlvbmUgZm9yIHlvdXIg c3VnZ2VzdGlvbnMuCgpUaGlzIGlzIHF1aXRlIGEgbW9yYXNzLiBJIGp1c3Qgd2FudCBhIFZNIEkg Y2FuIHNwaW4gdXAgYW5kIGRvIHdoYXQgSSB3YW50IAp3aXRoLCBsaWtlIEkgZG8gYXQgaG9tZS4g VGhlIFZNIHdpbGwgYmUgcnVubmluZyBteSBhemltdXRoYWwgZXF1aWRpc3RhbnQgCm1hcCBnZW5l cmF0b3IsIHdoaWNoIGhhcyBiZWVuIG1ha2luZyBtYXBzIGZvciAzMCB5ZWFycyBub3cuIEl0IG1h a2VzIGEgCmNvdXBsZSBvZiBtYXBzIChtYXliZSA1bWlucyBvZiBDUFUpIGEgZGF5LiBJIGRvbid0 IG5lZWQgcGVyZm9ybWFuY2UgLSBlZyAKbnZtZVNTRHMgYW5kIG11bHRpcGxlIENQVXMuIElmIEkg d2FudGVkIHBlcmZvcm1hbmNlLCBJIHdvdWxkIGJlIGhvc3RpbmcgaXQgCm15c2VsZi4KCk1hbnkg eWVhcnMgYWdvLCBMaW5vZGUganVzdCBvZmZlcmVkIFZNcy4gVGhhdCdzIHdoYXQgdGhleSBkaWQu IE5vdyB0aGVpciAKd2VicGFnZSBpcyBhIGJsaXp6YXJkIG9mIGJ1bGxzaGl0ICh5ZXMgSSBjYW4g ZmluZCB0aGVpciBWTXMsIGJ1dCB5b3UgaGF2ZSAKdG8gc2VhcmNoLCBpbmRpY2F0aW5nIHRoYXQg Vk1zIGFyZW4ndCByZWFsbHkgdGhlaXIgYnVzaW5lc3MgYW55IG1vcmUpLiAKT3RoZXJzIGFyZSBv ZmZlcmluZyBMaW51eCBWTXMsIGJ1dCBkb24ndCB0ZWxsIHlvdSB0aGUgZGlzdHJpYnV0aW9uIHRo ZXkncmUgCnVzaW5nLiBPdGhlciBwZW9wbGUgb2ZmZXIgdGhpbmdzIHRoYXQgYXJlbid0IFZNcywg bGlrZSBkcm9wbGV0cy4gSWYgdGhleSAKd2VyZSBzZWxsaW5nIGNhcnMsIHdoYXQgd291bGQgdGhl eSBjYWxsIHRoZW0/IFdoZW4gSSBoYXZlIHRvIGNvbnRhY3QgdGhlbSwgCnRoZXkgYXJlbid0IGdv aW5nIHRvIGJlIHRhbGtpbmcgbXkgbGFuZ3VhZ2UgLSBubyB0aGFua3MuIE90aGVyIHBlb3BsZSAK KGhlcnR6bmVyKSBhcmUgb2ZmZXJpbmcgd2Vic2VydmVycyB3aXRoIHdlYkZUUCAtIEkgZG9uJ3Qg Y29udHJvbCB0aGF0IAptYWNoaW5lIC0gYWNjZXNzaW5nIGl0IHdpbGwgYmUgbGlrZSBwZWVyaW5n IHRocm91Z2ggYSBrZXlob2xlLiBUaGVuIAp0aGVyZSdzIHBhcmF2aXJ0dWFsaXNhdGlvbiwgd2hp Y2ggSSdkIG5ldmVyIGhlYXJkIG9mLCB3aGVyZSB0aGUgaG9zdCBhbmQgCnRoZSBWTSB0YWxrIHRv IGVhY2ggb3RoZXIsIHdoaWNoIEkgd291bGQgaGF2ZSB0aG91Z2h0IGlzIHRoZSBvcHBvc2l0ZSBv ZiAKd2hhdCB5b3Ugd2FudC4gT3RoZXIgcHJvdmlkZXJzIGhpZGUgdGhlaXIgb2ZmZXJpbmdzIGFu ZCBhcmUgb25seSAKaW50ZXJlc3RlZCBpbiB0ZWxsaW5nIHlvdSBob3cgZ3JlYXQgdGhleSBhcmUu IFNvbWUgd29uJ3QgdGVsbCB5b3Ugd2FudCAKdGhleSd2ZSBnb3QgdGlsbCB5b3Ugc2lnbiB1cC4g Q2xlYXJseSBtb3N0IGN1c3RvbWVycyBhcmVuJ3QgbG9va2luZyBmb3IgCmp1c3QgYSBWTSBhbnlt b3JlLgoKSSdtIG5vdCBwbGFubmluZyBvbiBoYXZpbmcgbXkgb3duIGUtbWFpbCBzZXJ2ZXIsIGFs dGhvdWdoIGl0IHdvdWxkIGJlIG5pY2UgCnRvIGhhdmUgb25lLiBJdCB3b3VsZCBzZWVtIHRoYXQg dGhlIGJpZyB0ZWNoIGNvbXBhbmllcyBhcmUgbWFraW5nIHN1cmUgCnRoYXQgb25seSB0aGV5IGNh biBkbyBlLW1haWwsIGJ5IHNxdWVlemluZyBvdXQgdGhlIHNtYWxsIHBsYXllcnMgYnkgCmFzc2ln bmluZyByZXB1dGF0aW9uIGluIGJsb2Nrcy4gSSB3b3VsZCBoYXZlIHRvIHRha2UgdGhlbSBvbiBh bmQgZGVhbCB3aXRoIAp0aGVpciByZXF1aXJlbWVudHMuIEknbSByZWFzc3VyZWQgdG8gZmluZCB0 aGF0IEkgaGF2ZSB0aGUgc2FtZSAKdW5kZXJzdGFuZGluZyBvZiB0aGUgcHJvYmxlbXMgb2Ygc2V0 dGluZyB1cCBlLW1haWwgYXMgU2NvdHQgQmxheWRlcyAoYW4gCm9waW5pb25hdGVkIHBlcnNvbiwg d2hpY2ggaXMgd2hhdCBJIHdhcyBob3BpbmcgZm9yKSBoYXMuCgpMaW5vZGUgaGFkIGEgYnJlYWst aW4gYWJvdXQgYSBkZWNhZGUgYWdvLCB0aGF0IHJlc3VsdGVkIGluIGEgY3J5cHRvLWhlaXN0LCAK d2hpY2ggaW52b2x2ZWQgcG9vciBzZWN1cml0eSBvbiB0aGVpciBwYXJ0IChpdCBzZWVtcyBhIGNv bXByb21pc2VkIGFkbWluIAptYWNoaW5lIHdhcyBhYmxlIHRvIGdldCBpbnRvIHRoZSBjdXN0b21l cidzIG1hY2hpbmVzKSBhbmQgdGhleSBuZXZlciAKY29tcGVuc2F0ZWQgKGV2ZW4gcGFydGlhbGx5 KSB0aGUgcGVvcGxlIHdobyB3ZXJlIGFmZmVjdGVkLiBUaGlzIGRvZXNuJ3QgCmxvb2sgZ29vZC4g SG93ZXZlciB0aGV5IGFyZSB0aGUgcGVvcGxlIHdobyBhcmUgdGhlIG5lYXJlc3QgdG8gdGFsa2lu ZyBteSAKbGFuZ3VhZ2UuCgpJdCB3b3VsZCBiZSBuaWNlIHRvIGZpbmQgYSBwcm92aWRlciBsaWtl IExpbm9kZSB3YXMgMTAgeWVhcnMgYWdvLCB3aG8gaGFkIAphIHdlYnBhZ2UgdGhhdCBzYWlkICJo ZXJlIGFyZSBvdXIgVk1zIiBhbmQganVzdCBsZWZ0IGl0IGF0IHRoYXQuIEkgZXhwZWN0IApJJ2xs IGhhdmUgdG8gd3Jlc3RsZSB3aGF0IEkgd2FudCBvdXQgb2YgZXZlbiBMaW5vZGUuCgpUaGFua3MK Sm9lCgotLSAKSm9zZXBoIE1hY2sgTkEzVCBFTUUoQixEKSwgRk0wNWx3IE5vcnRoIENhcm9saW5h CkRvbid0IHVwZ3JhZGUgYSB3b3JraW5nIG1hY2hpbmUgLSBpdCB3b24ndCB3b3JrIGFueQpiZXR0 ZXIgLSBpdCBjb3VsZCB3b3JrIHdvcnNlOyBpdCBtYXkgbm90IHdvcmsgYXQgYWxsLgpIb21lcGFn ZSBodHRwOi8vd3d3LmF1c3RpbnRlay5jb20vIEl0J3MgR05VL0xpbnV4IQoKCgotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KCk1lc3NhZ2U6IDEyCkRhdGU6IFdlZCwgMTIgRmViIDIwMjUg MDc6MTg6NDMgLTA1MDAKRnJvbTogU3RlcGhlbiBXaWxleSB2aWEgVHJpTFVHIDx0cmlsdWdAdHJp bHVnLm9yZz4KVG86IHRyaWx1Z0B0cmlsdWcub3JnClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNv bW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDogPFo2eVJveUM1YmRw WjhYWUNAZ2RwLnN3aWxleS5uZXQ+CkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD11 cy1hc2NpaQoKSSB0aGluayB0aGUgcmVhc29uIG1vc3Qgb2YgdGhlc2UgY29tcGFuaWVzIHB1c2gg eW91IHRvd2FyZHMKa3ViZXJuZXRlcy9HUFUgaW5zdGFuY2VzL21hbmFnZWQgaG9zdGluZyBpcyBi ZWNhdXNlIFZNcyBhcmUgcmVhbGx5IGEKY29tbW9kaXR5LiBTbyB5b3UncmUgcHJvYmFibHkgZ29p bmcgdG8gc2VlIHNpbWlsYXIgYmVoYXZpb3VyIGV2ZXJ5d2hlcmUuCkknbSBub3Qgc2F5aW5nIHRo YXQgbWFrZXMgaXQgZ29vZCBidXQgaXQncyBqdXN0IHBhcnQgb2YgbGl2aW5nIGluIHRoZQp3b3Js ZCB3aXRoIG90aGVyIHBlb3BsZS4KCkFsc28sIGFnYWluLCBkcm9wbGV0cyBhcmUgZXhhY3RseSBq dXN0IGEgVk0uIFRoZXJlJ3Mgbm8gZXh0cmEgdmFsdWUgYWRkCm9yIG1hbmFnZW1lbnQgb3IgYW55 dGhpbmcuIEkgZG9uJ3Qga25vdyB3aHkgdGhleSBjYWxsIHRoZW0gdGhhdCBidXQgaXQncyAKd2hh dCB5b3UncmUgbG9va2luZyBmb3IuIExvb2tpbmcgYXQgRGlnaXRpYWwgT2NlYW4gdGhleSB0b2xk IG1lIGhvdyBtdWNoCnRoZWlyIGNoZWFwZXN0IGRyb3BsZXQgd2FzIHdpdGggb25lIGNsaWNrLiBU aGF0J3MgcHJldHR5IGNsb3NlIHRvIGhvdyBJCnJlbWVtYmVyIGxpbm9kZSBiZWluZy4KCi0tU3Rl cGhlbgoKT24gV2VkLCBGZWIgMTIsIDIwMjUgYXQgMTE6NTE6MzNBTSArMDAwMCwgSm9zZXBoIE1h Y2sgTkEzVCB2aWEgVHJpTFVHIHdyb3RlOgo+IE9uIFR1ZSwgMTEgRmViIDIwMjUsIEpvc2VwaCBN YWNrIE5BM1Qgd3JvdGU6Cj4gCj4gPiBJIHdhbnQgYSBMaW51eCBtYWNoaW5lIG9uLWxpbmUsIHRo YXQgSSBjYW4gbG9nb24gYXQgdGhlIGNvbW1hbmQgbGluZSwKPiA+IGxpa2UgSSBkbyB3aXRoIG15 IGhvbWUgbWFjaGluZXMsIGFuZCBwaWxvdC4gSSB3YW50IGl0IHRvIHJ1biBhIGxpZ2h0bHkKPiA+ IHVzZWQgYSB3ZWJzaXRlLiBJIGFsc28gd2FudCB0byBiZSBhYmxlIHRvIGluc3RhbGwgYW5kIHJl bW92ZSBmaWxlcyBhdAo+ID4gd2lsbCBoYWQgbm90IGhhdmUgYW55IGJsb2NrZWQgcG9ydHMuCj4g Cj4gVGhhbmtzIGV2ZXJ5b25lIGZvciB5b3VyIHN1Z2dlc3Rpb25zLgo+IAo+IFRoaXMgaXMgcXVp dGUgYSBtb3Jhc3MuIEkganVzdCB3YW50IGEgVk0gSSBjYW4gc3BpbiB1cCBhbmQgZG8gd2hhdCBJ IHdhbnQKPiB3aXRoLCBsaWtlIEkgZG8gYXQgaG9tZS4gVGhlIFZNIHdpbGwgYmUgcnVubmluZyBt eSBhemltdXRoYWwgZXF1aWRpc3RhbnQgbWFwCj4gZ2VuZXJhdG9yLCB3aGljaCBoYXMgYmVlbiBt YWtpbmcgbWFwcyBmb3IgMzAgeWVhcnMgbm93LiBJdCBtYWtlcyBhIGNvdXBsZSBvZgo+IG1hcHMg KG1heWJlIDVtaW5zIG9mIENQVSkgYSBkYXkuIEkgZG9uJ3QgbmVlZCBwZXJmb3JtYW5jZSAtIGVn IG52bWVTU0RzIGFuZAo+IG11bHRpcGxlIENQVXMuIElmIEkgd2FudGVkIHBlcmZvcm1hbmNlLCBJ IHdvdWxkIGJlIGhvc3RpbmcgaXQgbXlzZWxmLgo+IAo+IE1hbnkgeWVhcnMgYWdvLCBMaW5vZGUg anVzdCBvZmZlcmVkIFZNcy4gVGhhdCdzIHdoYXQgdGhleSBkaWQuIE5vdyB0aGVpcgo+IHdlYnBh Z2UgaXMgYSBibGl6emFyZCBvZiBidWxsc2hpdCAoeWVzIEkgY2FuIGZpbmQgdGhlaXIgVk1zLCBi dXQgeW91IGhhdmUgdG8KPiBzZWFyY2gsIGluZGljYXRpbmcgdGhhdCBWTXMgYXJlbid0IHJlYWxs eSB0aGVpciBidXNpbmVzcyBhbnkgbW9yZSkuIE90aGVycwo+IGFyZSBvZmZlcmluZyBMaW51eCBW TXMsIGJ1dCBkb24ndCB0ZWxsIHlvdSB0aGUgZGlzdHJpYnV0aW9uIHRoZXkncmUgdXNpbmcuCj4g T3RoZXIgcGVvcGxlIG9mZmVyIHRoaW5ncyB0aGF0IGFyZW4ndCBWTXMsIGxpa2UgZHJvcGxldHMu IElmIHRoZXkgd2VyZQo+IHNlbGxpbmcgY2Fycywgd2hhdCB3b3VsZCB0aGV5IGNhbGwgdGhlbT8g V2hlbiBJIGhhdmUgdG8gY29udGFjdCB0aGVtLCB0aGV5Cj4gYXJlbid0IGdvaW5nIHRvIGJlIHRh bGtpbmcgbXkgbGFuZ3VhZ2UgLSBubyB0aGFua3MuIE90aGVyIHBlb3BsZSAoaGVydHpuZXIpCj4g YXJlIG9mZmVyaW5nIHdlYnNlcnZlcnMgd2l0aCB3ZWJGVFAgLSBJIGRvbid0IGNvbnRyb2wgdGhh dCBtYWNoaW5lIC0KPiBhY2Nlc3NpbmcgaXQgd2lsbCBiZSBsaWtlIHBlZXJpbmcgdGhyb3VnaCBh IGtleWhvbGUuIFRoZW4gdGhlcmUncwo+IHBhcmF2aXJ0dWFsaXNhdGlvbiwgd2hpY2ggSSdkIG5l dmVyIGhlYXJkIG9mLCB3aGVyZSB0aGUgaG9zdCBhbmQgdGhlIFZNIHRhbGsKPiB0byBlYWNoIG90 aGVyLCB3aGljaCBJIHdvdWxkIGhhdmUgdGhvdWdodCBpcyB0aGUgb3Bwb3NpdGUgb2Ygd2hhdCB5 b3Ugd2FudC4KPiBPdGhlciBwcm92aWRlcnMgaGlkZSB0aGVpciBvZmZlcmluZ3MgYW5kIGFyZSBv bmx5IGludGVyZXN0ZWQgaW4gdGVsbGluZyB5b3UKPiBob3cgZ3JlYXQgdGhleSBhcmUuIFNvbWUg d29uJ3QgdGVsbCB5b3Ugd2FudCB0aGV5J3ZlIGdvdCB0aWxsIHlvdSBzaWduIHVwLgo+IENsZWFy bHkgbW9zdCBjdXN0b21lcnMgYXJlbid0IGxvb2tpbmcgZm9yIGp1c3QgYSBWTSBhbnltb3JlLgo+ IAo+IEknbSBub3QgcGxhbm5pbmcgb24gaGF2aW5nIG15IG93biBlLW1haWwgc2VydmVyLCBhbHRo b3VnaCBpdCB3b3VsZCBiZSBuaWNlCj4gdG8gaGF2ZSBvbmUuIEl0IHdvdWxkIHNlZW0gdGhhdCB0 aGUgYmlnIHRlY2ggY29tcGFuaWVzIGFyZSBtYWtpbmcgc3VyZSB0aGF0Cj4gb25seSB0aGV5IGNh biBkbyBlLW1haWwsIGJ5IHNxdWVlemluZyBvdXQgdGhlIHNtYWxsIHBsYXllcnMgYnkgYXNzaWdu aW5nCj4gcmVwdXRhdGlvbiBpbiBibG9ja3MuIEkgd291bGQgaGF2ZSB0byB0YWtlIHRoZW0gb24g YW5kIGRlYWwgd2l0aCB0aGVpcgo+IHJlcXVpcmVtZW50cy4gSSdtIHJlYXNzdXJlZCB0byBmaW5k IHRoYXQgSSBoYXZlIHRoZSBzYW1lIHVuZGVyc3RhbmRpbmcgb2YKPiB0aGUgcHJvYmxlbXMgb2Yg c2V0dGluZyB1cCBlLW1haWwgYXMgU2NvdHQgQmxheWRlcyAoYW4gb3BpbmlvbmF0ZWQgcGVyc29u LAo+IHdoaWNoIGlzIHdoYXQgSSB3YXMgaG9waW5nIGZvcikgaGFzLgo+IAo+IExpbm9kZSBoYWQg YSBicmVhay1pbiBhYm91dCBhIGRlY2FkZSBhZ28sIHRoYXQgcmVzdWx0ZWQgaW4gYSBjcnlwdG8t aGVpc3QsCj4gd2hpY2ggaW52b2x2ZWQgcG9vciBzZWN1cml0eSBvbiB0aGVpciBwYXJ0IChpdCBz ZWVtcyBhIGNvbXByb21pc2VkIGFkbWluCj4gbWFjaGluZSB3YXMgYWJsZSB0byBnZXQgaW50byB0 aGUgY3VzdG9tZXIncyBtYWNoaW5lcykgYW5kIHRoZXkgbmV2ZXIKPiBjb21wZW5zYXRlZCAoZXZl biBwYXJ0aWFsbHkpIHRoZSBwZW9wbGUgd2hvIHdlcmUgYWZmZWN0ZWQuIFRoaXMgZG9lc24ndCBs b29rCj4gZ29vZC4gSG93ZXZlciB0aGV5IGFyZSB0aGUgcGVvcGxlIHdobyBhcmUgdGhlIG5lYXJl c3QgdG8gdGFsa2luZyBteQo+IGxhbmd1YWdlLgo+IAo+IEl0IHdvdWxkIGJlIG5pY2UgdG8gZmlu ZCBhIHByb3ZpZGVyIGxpa2UgTGlub2RlIHdhcyAxMCB5ZWFycyBhZ28sIHdobyBoYWQgYQo+IHdl YnBhZ2UgdGhhdCBzYWlkICJoZXJlIGFyZSBvdXIgVk1zIiBhbmQganVzdCBsZWZ0IGl0IGF0IHRo YXQuIEkgZXhwZWN0IEknbGwKPiBoYXZlIHRvIHdyZXN0bGUgd2hhdCBJIHdhbnQgb3V0IG9mIGV2 ZW4gTGlub2RlLgo+IAo+IFRoYW5rcwo+IEpvZQo+IAo+IC0tIAo+IEpvc2VwaCBNYWNrIE5BM1Qg RU1FKEIsRCksIEZNMDVsdyBOb3J0aCBDYXJvbGluYQo+IERvbid0IHVwZ3JhZGUgYSB3b3JraW5n IG1hY2hpbmUgLSBpdCB3b24ndCB3b3JrIGFueQo+IGJldHRlciAtIGl0IGNvdWxkIHdvcmsgd29y c2U7IGl0IG1heSBub3Qgd29yayBhdCBhbGwuCj4gSG9tZXBhZ2UgaHR0cDovL3d3dy5hdXN0aW50 ZWsuY29tLyBJdCdzIEdOVS9MaW51eCEKPiAKPiAtLSAKPiBUaGlzIG1lc3NhZ2Ugd2FzIHNlbnQg dG86IFN0ZXBoZW4gV2lsZXkgPHN3aWxleUBzd2lsZXkubmV0Pgo+IFRvIHVuc3Vic2NyaWJlLCBz ZW5kIGEgYmxhbmsgbWVzc2FnZSB0byB0cmlsdWctbGVhdmVAdHJpbHVnLm9yZyBmcm9tIHRoYXQg YWRkcmVzcy4KPiBUcmlMVUcgbWFpbGluZyBsaXN0IDogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9t YWlsbWFuL2xpc3RpbmZvL3RyaWx1Zwo+IFVuc3Vic2NyaWJlIG9yIGVkaXQgb3B0aW9ucyBvbiB0 aGUgd2ViCTogaHR0cHM6Ly93d3cudHJpbHVnLm9yZy9tYWlsbWFuL29wdGlvbnMvdHJpbHVnL3N3 aWxleSU0MHN3aWxleS5uZXQKPiBXZWxjb21lIHRvIFRyaUxVRzogaHR0cHM6Ly90cmlsdWcub3Jn L3dlbGNvbWUKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiAxMwpE YXRlOiBXZWQsIDEyIEZlYiAyMDI1IDA4OjI4OjEzIC0wNTAwCkZyb206IHNoYXkgd2FsdGVycyB2 aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4KVG86IEpvc2VwaCBNYWNrIE5BM1QgPGptYWNr QHRyaWx1Zy5vcmc+LCAgVHJpYW5nbGUgTGludXggVXNlcnMgR3JvdXAKCUdlbmVyYWwgRGlzY3Vz c2lvbiA8dHJpbHVnQHRyaWx1Zy5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNvbW1lbmRh dGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDoKCTxDQUtkalQ1SlJTb1BrckxM UDlZWCtrVnMyQzBQY0tQQj05bW85WGo1RTArS0FZdEVyRWdAbWFpbC5nbWFpbC5jb20+CkNvbnRl bnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iVVRGLTgiCgpPbiBXZWQsIEZlYiAxMiwgMjAy NSBhdCA2OjUy4oCvQU0gSm9zZXBoIE1hY2sgTkEzVCB2aWEgVHJpTFVHCjx0cmlsdWdAdHJpbHVn Lm9yZz4gd3JvdGU6CgogPiBJJ20gbm90IHBsYW5uaW5nIG9uIGhhdmluZyBteSBvd24gZS1tYWls IHNlcnZlciwKID4gYWx0aG91Z2ggaXQgd291bGQgYmUgbmljZSB0byBoYXZlIG9uZS4gSXQgd291 bGQKID4gc2VlbSB0aGF0IHRoZSBiaWcgdGVjaCBjb21wYW5pZXMgYXJlIG1ha2luZyBzdXJlCiA+ IHRoYXQgb25seSB0aGV5IGNhbiBkbyBlLW1haWwsIGJ5IHNxdWVlemluZyBvdXQgdGhlCiA+IHNt YWxsIHBsYXllcnMgYnkgYXNzaWduaW5nIHJlcHV0YXRpb24gaW4gYmxvY2tzLgogPiBJIHdvdWxk IGhhdmUgdG8gdGFrZSB0aGVtIG9uIGFuZCBkZWFsIHdpdGgKID4gdGhlaXIgcmVxdWlyZW1lbnRz LgoKSSB1c2VkIHRvIHJ1biB0aGUgZW1haWwgZm9yIHRoZSBjb21wYW55IEkgd29ya2VkIGZvciBh bmQgd2UgaGFkIGJlZW4KaGFuZGxpbmcgb3VyIG93biBlbWFpbCBmb3Igc28gbG9uZyB0aGF0IHdl IHBhc3NlZCB0aGUgInJlcHV0YXRpb24iCmNyaXRlcmlhLCBidXQgdGhlIGR1YWwgcHJvYmxlbXMg b2YgaGFja2luZyBhbmQgc3BhbW1pbmcgaGFkIGdyb3duIHRvCnRoZSBwb2ludCB0aGF0IGl0IHdh cyB0YWtpbmcgYSBmdWxsLXRpbWUgcGVyc29uIChtZSkgdG8gZGVhbCB3aXRoCmluY29taW5nIGVt YWlsLiAgSXQgYmVjYW1lIGEgc2ltcGxlIGZpbmFuY2lhbCBhbmQgbG9naXN0aWNhbCBkZWNpc2lv bgp0byBvZmZsb2FkIHRoZSBoYW5kbGluZyBvZiBlbWFpbCB0byBhIHRoaXJkIHBhcnR5LCBhbmQg YWx0aG91Z2ggSQp3YXNuJ3QgaGFwcHkgYWJvdXQgaXQgYXQgdGhlIHRpbWUsIGl0IGRlZmluaXRl bHkgdHVybmVkIG91dCB0byBiZSB0aGUKcmlnaHQgY2hvaWNlLiAgRm9ydHVuYXRlbHksIHdlIG5l dmVyIGhhZCBhbnlvbmUgaGFjayBpbiBhbmQgdGFrZSBvdmVyCmFuIGVtYWlsIGFjY291bnQgYW5k IHN0YXJ0IHNlbmRpbmcgb3V0IGJhZCBlbWFpbC4gIEkgY2FuJ3QgaW1hZ2luZSB0aGUKZGFtYWdl IGNvbnRyb2wgdGhhdCB3b3VsZCBoYXZlIGJlZW4gcmVxdWlyZWQgdG8gcmVjb3ZlciBmcm9tIHRo YXQuICBJCmhhdmUsIHNpbmNlIHRoYXQgdGltZSwgc2V0IHVwIGEgcGVyc29uYWwgZW1haWwgc2Vy dmVyIGEgY291cGxlIG9mCnRpbWVzLCBhbmQgaXQgaGFzIGJlZW4gYmFzaWNhbGx5IHdvcnRobGVz cyBiZWNhdXNlIGlmIHlvdSdyZSBydW5uaW5nCmF0IGEgVk0gcHJvdmlkZXIsIHlvdSdyZSBhbG1v c3QgZW50aXJlbHkgYmxvY2tlZCBmcm9tIHNlbmRpbmcgb3IKcmVjZWl2aW5nIGVtYWlsIGJ5IHRo ZSBtYWpvciBwbGF5ZXJzIGJlY2F1c2Ugc28gbWFueSBzY2FtbWVycyBhbmQKaGFja2VycyB1c2Ug dGhvc2UgZmFjaWxpdGllcy4gIChUaGF0IHJlcHV0YXRpb24gdGhpbmcuKSAgQW5kIHlvdSBjYW4n dApyZWFsbHkgc2VsZi1ob3N0IGVtYWlsIGJlY2F1c2UgcHJldHR5IG11Y2ggZXZlcnkgcmVzaWRl bnRpYWwgSVNQCmJsb2NrcyBTTVRQLCBhbmQgZm9yIGdvb2QgcmVhc29ucy4KICAgIEkgZ3Vlc3Mg bXkgcG9pbnQgaXMgdGhhdCBpdCdzIG5vdCB0aGF0IHRoZSBiaWcgZ3V5cyBhcmUgYmxvY2tpbmcK dGhlIHNtYWxsIGd1eXMgZnJvbSBoYXZpbmcgZW1haWwgc2VydmVycywgaXQncyBqdXN0IHRoYXQg dGhleSBoYXZlIHRvCmRlYWwgd2l0aCB0aGUgZmxvb2RzIG9mIGJhZCBlbWFpbCBvdXQgdGhlcmUs IGFuZCBpZiB5b3UgZG9uJ3QgaGF2ZSBhCnByZS1leGlzdGluZyBnb29kIHJlcHV0YXRpb24gb24g eW91ciBJUCBibG9jaywgdGhlcmUncyByZWFsbHkgbm8gd2F5CnRvIGVzdGFibGlzaCBpdCwgc28g aXQgaGFzIGJlY29tZSBhIGRlZmFjdG8gbG9ja291dCBvZiBhbnlvbmUgd2hvCmlzbid0IGFscmVh ZHkgYSBtYWpvciBlbWFpbCBwcm92aWRlci4KCi1TaGF5CgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCgpNZXNzYWdlOiAxNApEYXRlOiBXZWQsIDEyIEZlYiAyMDI1IDA5OjQ5OjM5IC0w NTAwIChFU1QpCkZyb206IERhdmlkIEJvdGggdmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+ ClRvOiBzaGF5IHdhbHRlcnMgPHNoYXl3YWx0ZXJzQGdtYWlsLmNvbT4sIFRyaWFuZ2xlIExpbnV4 IFVzZXJzIEdyb3VwCglHZW5lcmFsIERpc2N1c3Npb24gPHRyaWx1Z0B0cmlsdWcub3JnPiwgSm9z ZXBoIE1hY2sgTkEzVAoJPGptYWNrQHRyaWx1Zy5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVHXSBy ZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDogPDZlYmI5MzI2 LWZkNDYtMzY3Yy0wNTQwLTg0MmE4YWNiMjNhOEBib3RoLm9yZz4KQ29udGVudC1UeXBlOiB0ZXh0 L3BsYWluOyBjaGFyc2V0PVVURi04OyBmb3JtYXQ9Zmxvd2VkCgpJJ3ZlIGJlZW4gcnVubmluZyBt eSBvd24gZW1haWwgc2VydmVyIGZvciBtb3JlIHRoYW4gMjUgeWVhcnMuIEkndmUgaGFkIGEKbnVt YmVyIG9mIElTUHMgYW5kIG5ldmVyIGhhZCBhIHByb2JsZW0uIEkganVzdCB0b2xkIHRoZW0gd2hh dCBJIHdhbnRlZC4KCk15IGN1cnJlbnQgc2VydmljZSBpcyBBVFQgR2IgZmliZXIgd2hpY2ggSSd2 ZSBub3cgaGFkIGZvciBhYm91dCA0IG9yIDUKeWVhcnMuIFRoZSBpbnN0YWxsZXIgd2FzIGEgZ2Ft ZXIgZmFtaWxpYXIgd2l0aCBMaW51eCwgYW5kIGtuZXcgZXhhY3RseQp3aGF0IEkgd2FudGVkLgoK V2UgdGFsa2VkIGFib3V0IGJsb2NraW5nIGFuZCBoZSBzYWlkIHRoYXQgYWxsIGJsb2NraW5nIGlz IHBlcmZvcm1lZCBpbgp0aGUgbG9jYWwgcm91dGVyLiBUaGUgYWRtaW4gSUQgYW5kIHBhc3N3b3Jk ICh5ZXMsIHRydWx5IHJhbmRvbSkgYXJlCnByaW50ZWQgb24gdGhlIGxhYmVsLiBIZSB0dXJuZWQg b2ZmIFNNVFAgYW5kIElNQVAgYmxvY2tpbmcgc28gSSBjb3VsZAphY2Nlc3MgcmVtb3RlbHkuIEhl IHNob3dlZCBtZSB3aGF0IGhlIHdhcyBkb2luZyBhdCBldmVyeSBzdGVwIG9mIHRoZQp3YXkuIEhl IHB1dCB0aGUgcm91dGVyIGluIHBhc3MtdGhyb3VnaCBtb2RlIHNvIG5vIGJsb2NrcyBpbiBlaXRo ZXIKZGlyZWN0aW9uLgoKT2YgY291cnNlIEkgaGF2ZSBteSBvd24gTGludXggcm91dGVyIG5leHQg aW4gbGluZSB3aGljaCBpcyB3aGVyZSBteSByZWFsCnByb3RlY3Rpb24gaXMgbG9jYXRlZC4KCk5v dCBhbGwgaW5zdGFsbGVycyBhcmUgdGhhdCBjb29sIG9yIGtub3dsZWRnZWFibGUsIGJ1dCBqdXN0 IGtub3dpbmcgdGhhdApTTVRQIGJsb2NraW5nIGlzIGluIHRoZSBsb2NhbCByb3V0ZXIgaXMsIHVt LCBsaWJlcmF0aW5nLgoKSSBob3BlIHRoaXMgaGVscHMuCgoKLS0gCgoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKRGF2aWQgUC4gQm90aApI ZS9IaW0vSGlzCgpJJ20gbm8gbG9uZ2VyIG9uIHRoZSBjb3JydXB0ZWQgc29jaWFsIG1lZGlhIHNp dGVzLgpZb3UgY2FuIG9ubHkgZmluZCBtZSBvbiBCbHVlU2t5LCBodHRwczovL2Jza3kuYXBwLwph dCBAbGludXhnZWVrNDYuYnNreS5zb2NpYWwKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKgpUaGUgdmFsdWUgb2YgYW55IHNvZnR3YXJlIGxp ZXMgaW4gaXRzIHVzZWZ1bG5lc3MKbm90IGluIGl0cyBwcmljZS4KCuKAlCBMaW51cyBUb3J2YWxk cwoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioKCk9uIFdlZCwgMTIgRmViIDIwMjUsIHNoYXkgd2FsdGVycyB2aWEgVHJpTFVHIHdyb3RlOgoK PiBEYXRlOiBXZWQsIDEyIEZlYiAyMDI1IDA4OjI4OjEzCj4gRnJvbTogc2hheSB3YWx0ZXJzIHZp YSBUcmlMVUcgPHRyaWx1Z0B0cmlsdWcub3JnPgo+IFJlcGx5LVRvOiBzaGF5IHdhbHRlcnMgPHNo YXl3YWx0ZXJzQGdtYWlsLmNvbT4sCj4gICAgIFRyaWFuZ2xlIExpbnV4IFVzZXJzIEdyb3VwIEdl bmVyYWwgRGlzY3Vzc2lvbiA8dHJpbHVnQHRyaWx1Zy5vcmc+Cj4gVG86IEpvc2VwaCBNYWNrIE5B M1QgPGptYWNrQHRyaWx1Zy5vcmc+LAo+ICAgICBUcmlhbmdsZSBMaW51eCBVc2VycyBHcm91cCBH ZW5lcmFsIERpc2N1c3Npb24gPHRyaWx1Z0B0cmlsdWcub3JnPgo+IFN1YmplY3Q6IFJlOiBbVHJp TFVHXSByZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KPiAKPiBPbiBXZWQsIEZl YiAxMiwgMjAyNSBhdCA2OjUy4oCvQU0gSm9zZXBoIE1hY2sgTkEzVCB2aWEgVHJpTFVHCj4gPHRy aWx1Z0B0cmlsdWcub3JnPiB3cm90ZToKPgo+ID4gSSdtIG5vdCBwbGFubmluZyBvbiBoYXZpbmcg bXkgb3duIGUtbWFpbCBzZXJ2ZXIsCj4gPiBhbHRob3VnaCBpdCB3b3VsZCBiZSBuaWNlIHRvIGhh dmUgb25lLiBJdCB3b3VsZAo+ID4gc2VlbSB0aGF0IHRoZSBiaWcgdGVjaCBjb21wYW5pZXMgYXJl IG1ha2luZyBzdXJlCj4gPiB0aGF0IG9ubHkgdGhleSBjYW4gZG8gZS1tYWlsLCBieSBzcXVlZXpp bmcgb3V0IHRoZQo+ID4gc21hbGwgcGxheWVycyBieSBhc3NpZ25pbmcgcmVwdXRhdGlvbiBpbiBi bG9ja3MuCj4gPiBJIHdvdWxkIGhhdmUgdG8gdGFrZSB0aGVtIG9uIGFuZCBkZWFsIHdpdGgKPiA+ IHRoZWlyIHJlcXVpcmVtZW50cy4KPgo+IEkgdXNlZCB0byBydW4gdGhlIGVtYWlsIGZvciB0aGUg Y29tcGFueSBJIHdvcmtlZCBmb3IgYW5kIHdlIGhhZCBiZWVuCj4gaGFuZGxpbmcgb3VyIG93biBl bWFpbCBmb3Igc28gbG9uZyB0aGF0IHdlIHBhc3NlZCB0aGUgInJlcHV0YXRpb24iCj4gY3JpdGVy aWEsIGJ1dCB0aGUgZHVhbCBwcm9ibGVtcyBvZiBoYWNraW5nIGFuZCBzcGFtbWluZyBoYWQgZ3Jv d24gdG8KPiB0aGUgcG9pbnQgdGhhdCBpdCB3YXMgdGFraW5nIGEgZnVsbC10aW1lIHBlcnNvbiAo bWUpIHRvIGRlYWwgd2l0aAo+IGluY29taW5nIGVtYWlsLiAgSXQgYmVjYW1lIGEgc2ltcGxlIGZp bmFuY2lhbCBhbmQgbG9naXN0aWNhbCBkZWNpc2lvbgo+IHRvIG9mZmxvYWQgdGhlIGhhbmRsaW5n IG9mIGVtYWlsIHRvIGEgdGhpcmQgcGFydHksIGFuZCBhbHRob3VnaCBJCj4gd2Fzbid0IGhhcHB5 IGFib3V0IGl0IGF0IHRoZSB0aW1lLCBpdCBkZWZpbml0ZWx5IHR1cm5lZCBvdXQgdG8gYmUgdGhl Cj4gcmlnaHQgY2hvaWNlLiAgRm9ydHVuYXRlbHksIHdlIG5ldmVyIGhhZCBhbnlvbmUgaGFjayBp biBhbmQgdGFrZSBvdmVyCj4gYW4gZW1haWwgYWNjb3VudCBhbmQgc3RhcnQgc2VuZGluZyBvdXQg YmFkIGVtYWlsLiAgSSBjYW4ndCBpbWFnaW5lIHRoZQo+IGRhbWFnZSBjb250cm9sIHRoYXQgd291 bGQgaGF2ZSBiZWVuIHJlcXVpcmVkIHRvIHJlY292ZXIgZnJvbSB0aGF0LiAgSQo+IGhhdmUsIHNp bmNlIHRoYXQgdGltZSwgc2V0IHVwIGEgcGVyc29uYWwgZW1haWwgc2VydmVyIGEgY291cGxlIG9m Cj4gdGltZXMsIGFuZCBpdCBoYXMgYmVlbiBiYXNpY2FsbHkgd29ydGhsZXNzIGJlY2F1c2UgaWYg eW91J3JlIHJ1bm5pbmcKPiBhdCBhIFZNIHByb3ZpZGVyLCB5b3UncmUgYWxtb3N0IGVudGlyZWx5 IGJsb2NrZWQgZnJvbSBzZW5kaW5nIG9yCj4gcmVjZWl2aW5nIGVtYWlsIGJ5IHRoZSBtYWpvciBw bGF5ZXJzIGJlY2F1c2Ugc28gbWFueSBzY2FtbWVycyBhbmQKPiBoYWNrZXJzIHVzZSB0aG9zZSBm YWNpbGl0aWVzLiAgKFRoYXQgcmVwdXRhdGlvbiB0aGluZy4pICBBbmQgeW91IGNhbid0Cj4gcmVh bGx5IHNlbGYtaG9zdCBlbWFpbCBiZWNhdXNlIHByZXR0eSBtdWNoIGV2ZXJ5IHJlc2lkZW50aWFs IElTUAo+IGJsb2NrcyBTTVRQLCBhbmQgZm9yIGdvb2QgcmVhc29ucy4KPiAgICBJIGd1ZXNzIG15 IHBvaW50IGlzIHRoYXQgaXQncyBub3QgdGhhdCB0aGUgYmlnIGd1eXMgYXJlIGJsb2NraW5nCj4g dGhlIHNtYWxsIGd1eXMgZnJvbSBoYXZpbmcgZW1haWwgc2VydmVycywgaXQncyBqdXN0IHRoYXQg dGhleSBoYXZlIHRvCj4gZGVhbCB3aXRoIHRoZSBmbG9vZHMgb2YgYmFkIGVtYWlsIG91dCB0aGVy ZSwgYW5kIGlmIHlvdSBkb24ndCBoYXZlIGEKPiBwcmUtZXhpc3RpbmcgZ29vZCByZXB1dGF0aW9u IG9uIHlvdXIgSVAgYmxvY2ssIHRoZXJlJ3MgcmVhbGx5IG5vIHdheQo+IHRvIGVzdGFibGlzaCBp dCwgc28gaXQgaGFzIGJlY29tZSBhIGRlZmFjdG8gbG9ja291dCBvZiBhbnlvbmUgd2hvCj4gaXNu J3QgYWxyZWFkeSBhIG1ham9yIGVtYWlsIHByb3ZpZGVyLgo+Cj4gLVNoYXkKPgoKCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKTWVzc2FnZTogMTUKRGF0ZTogV2VkLCAxMiBGZWIgMjAy NSAxMDoxMzoxMSAtMDUwMApGcm9tOiBNYXVyaWNpbyBUYXZhcmVzIHZpYSBUcmlMVUcgPHRyaWx1 Z0B0cmlsdWcub3JnPgpUbzogSm9zZXBoIE1hY2sgTkEzVCA8am1hY2tAdHJpbHVnLm9yZz4sICBU cmlhbmdsZSBMaW51eCBVc2VycyBHcm91cAoJR2VuZXJhbCBEaXNjdXNzaW9uIDx0cmlsdWdAdHJp bHVnLm9yZz4KU3ViamVjdDogUmU6IFtUcmlMVUddIHJlY29tbWVuZGF0aW9ucyBmb3Igb24tbGlu ZSBMaW51eCBWTQpNZXNzYWdlLUlEOgoJPENBSEVLWVY0RjhyR2taWS04TXlhT01LRVpQeE89Z1Rt QTRuYWtUXzVVWVBKUm8zaktvd0BtYWlsLmdtYWlsLmNvbT4KQ29udGVudC1UeXBlOiB0ZXh0L3Bs YWluOyBjaGFyc2V0PSJVVEYtOCIKCk9uIFdlZCwgRmViIDEyLCAyMDI1IGF0IDY6NTPigK9BTSBK b3NlcGggTWFjayBOQTNUIHZpYSBUcmlMVUcKPHRyaWx1Z0B0cmlsdWcub3JnPiB3cm90ZToKPgo+ IE9uIFR1ZSwgMTEgRmViIDIwMjUsIEpvc2VwaCBNYWNrIE5BM1Qgd3JvdGU6Cj4KPiA+IEkgd2Fu dCBhIExpbnV4IG1hY2hpbmUgb24tbGluZSwgdGhhdCBJIGNhbiBsb2dvbiBhdCB0aGUgY29tbWFu ZCBsaW5lLCBsaWtlIEkKPiA+IGRvIHdpdGggbXkgaG9tZSBtYWNoaW5lcywgYW5kIHBpbG90LiBJ IHdhbnQgaXQgdG8gcnVuIGEgbGlnaHRseSB1c2VkIGEKPiA+IHdlYnNpdGUuIEkgYWxzbyB3YW50 IHRvIGJlIGFibGUgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIGZpbGVzIGF0IHdpbGwgaGFkIG5vdAo+ ID4gaGF2ZSBhbnkgYmxvY2tlZCBwb3J0cy4KPgo+IFRoYW5rcyBldmVyeW9uZSBmb3IgeW91ciBz dWdnZXN0aW9ucy4KPgo+IFRoaXMgaXMgcXVpdGUgYSBtb3Jhc3MuIEkganVzdCB3YW50IGEgVk0g SSBjYW4gc3BpbiB1cCBhbmQgZG8gd2hhdCBJIHdhbnQKPiB3aXRoLCBsaWtlIEkgZG8gYXQgaG9t ZS4gVGhlIFZNIHdpbGwgYmUgcnVubmluZyBteSBhemltdXRoYWwgZXF1aWRpc3RhbnQKPiBtYXAg Z2VuZXJhdG9yLCB3aGljaCBoYXMgYmVlbiBtYWtpbmcgbWFwcyBmb3IgMzAgeWVhcnMgbm93LiBJ dCBtYWtlcyBhCj4gY291cGxlIG9mIG1hcHMgKG1heWJlIDVtaW5zIG9mIENQVSkgYSBkYXkuIEkg ZG9uJ3QgbmVlZCBwZXJmb3JtYW5jZSAtIGVnCj4gbnZtZVNTRHMgYW5kIG11bHRpcGxlIENQVXMu IElmIEkgd2FudGVkIHBlcmZvcm1hbmNlLCBJIHdvdWxkIGJlIGhvc3RpbmcgaXQKPiBteXNlbGYu Cj4KPiBNYW55IHllYXJzIGFnbywgTGlub2RlIGp1c3Qgb2ZmZXJlZCBWTXMuIFRoYXQncyB3aGF0 IHRoZXkgZGlkLiBOb3cgdGhlaXIKPiB3ZWJwYWdlIGlzIGEgYmxpenphcmQgb2YgYnVsbHNoaXQg KHllcyBJIGNhbiBmaW5kIHRoZWlyIFZNcywgYnV0IHlvdSBoYXZlCj4gdG8gc2VhcmNoLCBpbmRp Y2F0aW5nIHRoYXQgVk1zIGFyZW4ndCByZWFsbHkgdGhlaXIgYnVzaW5lc3MgYW55IG1vcmUpLgo+ IE90aGVycyBhcmUgb2ZmZXJpbmcgTGludXggVk1zLCBidXQgZG9uJ3QgdGVsbCB5b3UgdGhlIGRp c3RyaWJ1dGlvbiB0aGV5J3JlCj4gdXNpbmcuIE90aGVyIHBlb3BsZSBvZmZlciB0aGluZ3MgdGhh dCBhcmVuJ3QgVk1zLCBsaWtlIGRyb3BsZXRzLiBJZiB0aGV5Cj4gd2VyZSBzZWxsaW5nIGNhcnMs IHdoYXQgd291bGQgdGhleSBjYWxsIHRoZW0/IFdoZW4gSSBoYXZlIHRvIGNvbnRhY3QgdGhlbSwK PiB0aGV5IGFyZW4ndCBnb2luZyB0byBiZSB0YWxraW5nIG15IGxhbmd1YWdlIC0gbm8gdGhhbmtz LiBPdGhlciBwZW9wbGUKPiAoaGVydHpuZXIpIGFyZSBvZmZlcmluZyB3ZWJzZXJ2ZXJzIHdpdGgg d2ViRlRQIC0gSSBkb24ndCBjb250cm9sIHRoYXQKPiBtYWNoaW5lIC0gYWNjZXNzaW5nIGl0IHdp bGwgYmUgbGlrZSBwZWVyaW5nIHRocm91Z2ggYSBrZXlob2xlLiBUaGVuCj4gdGhlcmUncyBwYXJh dmlydHVhbGlzYXRpb24sIHdoaWNoIEknZCBuZXZlciBoZWFyZCBvZiwgd2hlcmUgdGhlIGhvc3Qg YW5kCj4gdGhlIFZNIHRhbGsgdG8gZWFjaCBvdGhlciwgd2hpY2ggSSB3b3VsZCBoYXZlIHRob3Vn aHQgaXMgdGhlIG9wcG9zaXRlIG9mCj4gd2hhdCB5b3Ugd2FudC4gT3RoZXIgcHJvdmlkZXJzIGhp ZGUgdGhlaXIgb2ZmZXJpbmdzIGFuZCBhcmUgb25seQo+IGludGVyZXN0ZWQgaW4gdGVsbGluZyB5 b3UgaG93IGdyZWF0IHRoZXkgYXJlLiBTb21lIHdvbid0IHRlbGwgeW91IHdhbnQKPiB0aGV5J3Zl IGdvdCB0aWxsIHlvdSBzaWduIHVwLiBDbGVhcmx5IG1vc3QgY3VzdG9tZXJzIGFyZW4ndCBsb29r aW5nIGZvcgo+IGp1c3QgYSBWTSBhbnltb3JlLgo+Cj4gSSdtIG5vdCBwbGFubmluZyBvbiBoYXZp bmcgbXkgb3duIGUtbWFpbCBzZXJ2ZXIsIGFsdGhvdWdoIGl0IHdvdWxkIGJlIG5pY2UKPiB0byBo YXZlIG9uZS4gSXQgd291bGQgc2VlbSB0aGF0IHRoZSBiaWcgdGVjaCBjb21wYW5pZXMgYXJlIG1h a2luZyBzdXJlCj4gdGhhdCBvbmx5IHRoZXkgY2FuIGRvIGUtbWFpbCwgYnkgc3F1ZWV6aW5nIG91 dCB0aGUgc21hbGwgcGxheWVycyBieQo+IGFzc2lnbmluZyByZXB1dGF0aW9uIGluIGJsb2Nrcy4g SSB3b3VsZCBoYXZlIHRvIHRha2UgdGhlbSBvbiBhbmQgZGVhbCB3aXRoCj4gdGhlaXIgcmVxdWly ZW1lbnRzLiBJJ20gcmVhc3N1cmVkIHRvIGZpbmQgdGhhdCBJIGhhdmUgdGhlIHNhbWUKPiB1bmRl cnN0YW5kaW5nIG9mIHRoZSBwcm9ibGVtcyBvZiBzZXR0aW5nIHVwIGUtbWFpbCBhcyBTY290dCBC bGF5ZGVzIChhbgo+IG9waW5pb25hdGVkIHBlcnNvbiwgd2hpY2ggaXMgd2hhdCBJIHdhcyBob3Bp bmcgZm9yKSBoYXMuCj4KPiBMaW5vZGUgaGFkIGEgYnJlYWstaW4gYWJvdXQgYSBkZWNhZGUgYWdv LCB0aGF0IHJlc3VsdGVkIGluIGEgY3J5cHRvLWhlaXN0LAo+IHdoaWNoIGludm9sdmVkIHBvb3Ig c2VjdXJpdHkgb24gdGhlaXIgcGFydCAoaXQgc2VlbXMgYSBjb21wcm9taXNlZCBhZG1pbgo+IG1h Y2hpbmUgd2FzIGFibGUgdG8gZ2V0IGludG8gdGhlIGN1c3RvbWVyJ3MgbWFjaGluZXMpIGFuZCB0 aGV5IG5ldmVyCj4gY29tcGVuc2F0ZWQgKGV2ZW4gcGFydGlhbGx5KSB0aGUgcGVvcGxlIHdobyB3 ZXJlIGFmZmVjdGVkLiBUaGlzIGRvZXNuJ3QKPiBsb29rIGdvb2QuIEhvd2V2ZXIgdGhleSBhcmUg dGhlIHBlb3BsZSB3aG8gYXJlIHRoZSBuZWFyZXN0IHRvIHRhbGtpbmcgbXkKPiBsYW5ndWFnZS4K Pgo+IEl0IHdvdWxkIGJlIG5pY2UgdG8gZmluZCBhIHByb3ZpZGVyIGxpa2UgTGlub2RlIHdhcyAx MCB5ZWFycyBhZ28sIHdobyBoYWQKPiBhIHdlYnBhZ2UgdGhhdCBzYWlkICJoZXJlIGFyZSBvdXIg Vk1zIiBhbmQganVzdCBsZWZ0IGl0IGF0IHRoYXQuIEkgZXhwZWN0Cj4gSSdsbCBoYXZlIHRvIHdy ZXN0bGUgd2hhdCBJIHdhbnQgb3V0IG9mIGV2ZW4gTGlub2RlLgo+CiAgICAgIEFzIGEgRllJLCBu ZXRhY3R1YXRlLCB0aGUgcGVvcGxlIHdobyBob3N0IHRoZSB0cmlsdWcgc2VydmVycywgZG8Kb2Zm ZXIgcmFjayBzcGFjZSwgYmFyZW1ldGFsLCBhbmQgdm1zLiBJIHJlYWNoZWQgb3V0IHRvIHRoZW0g dGhpcwptb3JuaW5nIGFuZCB0aGV5IHNhaWQgdGhleSB3b3VsZCBsaWtlIHRvIHNlZSBpZiB0aGV5 IGNhbiBoZWxwIHlvdSBvdXQuCk5vIGNsdWUgb2YgdGhlaXIgcHJpY2UgKEkgY2FuIHNlZSBpZiB0 aGV5IGFyZSB3aWxsaW5nIHRvIGdpdmUgYSB0cmlsdWcKZGVhbCksIGJ1dCB0aGV5IGFyZSBsb2Nh bCAtLSBCcmlhbiBhbmQgb3RoZXJzIGhhdmUgYmVlbiBhdCB0aGVpcgpsb2NhdGlvbiBiZWZvcmUg LS0gc28geW91IGNhbiBicmluZyBhIHN0ZWVsIHBpcGUgaWYgeW91IG5lZWQgdG8gbWFrZQpzdXJl IHRoZXkgd2lsbCBoZWxwIHlvdS4KCgo+IFRoYW5rcwo+IEpvZQo+Cj4gLS0KPiBKb3NlcGggTWFj ayBOQTNUIEVNRShCLEQpLCBGTTA1bHcgTm9ydGggQ2Fyb2xpbmEKPiBEb24ndCB1cGdyYWRlIGEg d29ya2luZyBtYWNoaW5lIC0gaXQgd29uJ3Qgd29yayBhbnkKPiBiZXR0ZXIgLSBpdCBjb3VsZCB3 b3JrIHdvcnNlOyBpdCBtYXkgbm90IHdvcmsgYXQgYWxsLgo+IEhvbWVwYWdlIGh0dHA6Ly93d3cu YXVzdGludGVrLmNvbS8gSXQncyBHTlUvTGludXghCj4KCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KCk1lc3NhZ2U6IDE2CkRhdGU6IFdlZCwgMTIgRmViIDIwMjUgMTA6MTQ6MzQgLTA1 MDAKRnJvbTogTWF1cmljaW8gVGF2YXJlcyB2aWEgVHJpTFVHIDx0cmlsdWdAdHJpbHVnLm9yZz4K VG86IFRyaWFuZ2xlIExpbnV4IFVzZXJzIEdyb3VwIEdlbmVyYWwgRGlzY3Vzc2lvbiA8dHJpbHVn QHRyaWx1Zy5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVHXSByZWNvbW1lbmRhdGlvbnMgZm9yIG9u LWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDoKCTxDQUhFS1lWNk1EVzRCTGFkZj1RWHRzOTE4VWZ5 N0x3RzFtdTN4WjVOWjdTTlJYTFZGSlFAbWFpbC5nbWFpbC5jb20+CkNvbnRlbnQtVHlwZTogdGV4 dC9wbGFpbjsgY2hhcnNldD0iVVRGLTgiCgpPbiBXZWQsIEZlYiAxMiwgMjAyNSBhdCAxMDoxMuKA r0FNIERhdmlkIEJvdGggdmlhIFRyaUxVRwo8dHJpbHVnQHRyaWx1Zy5vcmc+IHdyb3RlOgo+Cj4g SSd2ZSBiZWVuIHJ1bm5pbmcgbXkgb3duIGVtYWlsIHNlcnZlciBmb3IgbW9yZSB0aGFuIDI1IHll YXJzLiBJJ3ZlIGhhZCBhCj4gbnVtYmVyIG9mIElTUHMgYW5kIG5ldmVyIGhhZCBhIHByb2JsZW0u IEkganVzdCB0b2xkIHRoZW0gd2hhdCBJIHdhbnRlZC4KPgo+IE15IGN1cnJlbnQgc2VydmljZSBp cyBBVFQgR2IgZmliZXIgd2hpY2ggSSd2ZSBub3cgaGFkIGZvciBhYm91dCA0IG9yIDUKPiB5ZWFy cy4gVGhlIGluc3RhbGxlciB3YXMgYSBnYW1lciBmYW1pbGlhciB3aXRoIExpbnV4LCBhbmQga25l dyBleGFjdGx5Cj4gd2hhdCBJIHdhbnRlZC4KPgogICAgICBJIHdpc2ggSSBjb3VsZCBnZXQgZmli cmUgYXQgaG9tZS4uLgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKTWVzc2FnZTog MTcKRGF0ZTogV2VkLCAxMiBGZWIgMjAyNSAxNToxODo1OCArMDAwMCAoR01UKQpGcm9tOiBKb3Nl cGggTWFjayBOQTNUIHZpYSBUcmlMVUcgPHRyaWx1Z0B0cmlsdWcub3JnPgpUbzogc2hheSB3YWx0 ZXJzIDxzaGF5d2FsdGVyc0BnbWFpbC5jb20+CkNjOiBUcmlhbmdsZSBMaW51eCBVc2VycyBHcm91 cCBHZW5lcmFsIERpc2N1c3Npb24gPHRyaWx1Z0B0cmlsdWcub3JnPgpTdWJqZWN0OiBSZTogW1Ry aUxVR10gcmVjb21tZW5kYXRpb25zIGZvciBvbi1saW5lIExpbnV4IFZNCk1lc3NhZ2UtSUQ6IDxh bHBpbmUuREVCLjIuMDIuMjUwMjEyMTUwMDUzMC4yMzg3N0BwaWxvdC50cmlsdWcub3JnPgpDb250 ZW50LVR5cGU6IFRFWFQvUExBSU47IGNoYXJzZXQ9VVMtQVNDSUk7IGZvcm1hdD1mbG93ZWQKCk9u IFdlZCwgMTIgRmViIDIwMjUsIHNoYXkgd2FsdGVycyB3cm90ZToKCj4gICAgSSBndWVzcyBteSBw b2ludCBpcyB0aGF0IGl0J3Mgbm90IHRoYXQgdGhlIGJpZyBndXlzIGFyZSBibG9ja2luZwo+IHRo ZSBzbWFsbCBndXlzIGZyb20gaGF2aW5nIGVtYWlsIHNlcnZlcnMsIGl0J3MganVzdCB0aGF0IHRo ZXkgaGF2ZSB0bwo+IGRlYWwgd2l0aCB0aGUgZmxvb2RzIG9mIGJhZCBlbWFpbCBvdXQgdGhlcmUs CgpJdCdzIHVuZm9ydHVuYXRlIHRoYXQgdGhlIGN1cnJlbnQgbWV0aG9kIG9mIHNlbmRpbmcgZS1t YWlsIChpdCBiZWluZyBjaGVhcCAKdG8gc2VuZCBhbiBlLW1haWwsIGFuZCBjaGVhcCB0byByZWNl aXZlIG9uZSkgaGFzIHJlc3VsdGVkIGluIHRoZSBiaWcgZ3V5cyAKYmxvY2tpbmcgZXZlcnlvbmUg ZWxzZSBmcm9tIHNlbmRpbmcgZS1tYWlsIChmb3IgdGhlIGJlbmVmaXQgb2YgcGVvcGxlIGxpa2Ug CnVzLCBvZiBjb3Vyc2UpLCBiZWNhdXNlIHRoZXkncmUgcG93ZXJsZXNzIHRvIGRvIGFueXRoaW5n IHRvIGZpeCBpdC4KCllvdSBoYXZlIHRvIG1ha2UgaXQgZXhwZW5zaXZlIHRvIHNlbmQgYW4gZS1t YWlsLCBlZyB5b3UgbmVlZCBhIHByb29mIG9mIAp3b3JrLCB3aGlsZSBrZWVwaW5nIGl0IGNoZWFw IHRvIHJlY2VpdmUgb25lLiBUaGUgb3V0Z29pbmcgbWFpbCBtYWNoaW5lIGhhcyAKdG8gZ2VuZXJh dGUgYSBoYXNoIGZvciBlYWNoIGUtbWFpbCAoaW5jbHVkaW5nIHRoZSByZWNlaXBpZW50J3MgYWRk cmVzcykgCndpdGggYSBjZXJ0YWluIG51bWJlciBvZiB6ZXJvZXMgYXQgdGhlIGJlZ2lubmluZyAo d2hpY2ggaW5jcmVhc2VzIGJ5IG9uZSAKZXZlcnkgY291cGxlIG9mIHllYXJzLCB0byBjb21wZW5z YXRlIGZvciBNb29yZSdzIGxhdykuIFRoaXMgbWFrZXMgaXQgCmV4cGVuc2l2ZSB0byBzZW5kIGEg bGFyZ2UgbnVtYmVycyBvZiBlLW1haWxzLiBDb25maXJtaW5nIHRoZSBoYXNoIGF0IHRoZSAKcmVj aXBpZW50J3MgZW5kIGlzIHRyaXZpYWwsIHNvIHJlY2VpdmluZyBhbiBlLW1haWwgaXMgc3RpbGwg Y2hlYXAuCgpJdCB3b3VsZCBvbmx5IHJlcXVpcmUgTWljcm9zb2Z0IG9yIGdtYWlsIHRvIGFkb3B0 IHRoaXMgYW5kIHByZXR0eSBzb29uIApldmVyeW9uZSB3b3VsZCBoYXZlIHRvIGZhbGwgaW50byBs aW5lLgoKV2h5IGFyZW4ndCB0aGV5ICh0aGUgYmlnIGd1eXMpIGRvaW5nIGl0PyBJdCdzIG5vdCBs aWtlIGFkZGluZyB0aGUgY29kZSB0byAKZG8gaXQgd291bGQgYmUgaGFyZC4gSSBhc3N1bWUgdGhl eSBsaWtlIGJlaW5nIHRoZSBvbmVzIHdobyBkaWN0YXRlIHdobyAKZ2V0cyB0byBzZW5kIGUtbWFp bC4KCkpvZQoKLS0gCkpvc2VwaCBNYWNrIE5BM1QgRU1FKEIsRCksIEZNMDVsdyBOb3J0aCBDYXJv bGluYQpEb24ndCB1cGdyYWRlIGEgd29ya2luZyBtYWNoaW5lIC0gaXQgd29uJ3Qgd29yayBhbnkK YmV0dGVyIC0gaXQgY291bGQgd29yayB3b3JzZTsgaXQgbWF5IG5vdCB3b3JrIGF0IGFsbC4KSG9t ZXBhZ2UgaHR0cDovL3d3dy5hdXN0aW50ZWsuY29tLyBJdCdzIEdOVS9MaW51eCEKCgoKLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpNZXNzYWdlOiAxOApEYXRlOiBXZWQsIDEyIEZlYiAy MDI1IDE1OjIyOjMyICswMDAwIChHTVQpCkZyb206IEpvc2VwaCBNYWNrIE5BM1QgdmlhIFRyaUxV RyA8dHJpbHVnQHRyaWx1Zy5vcmc+ClRvOiBNYXVyaWNpbyBUYXZhcmVzIDxyYXVidm9nZWxAZ21h aWwuY29tPgpDYzogVHJpYW5nbGUgTGludXggVXNlcnMgR3JvdXAgR2VuZXJhbCBEaXNjdXNzaW9u IDx0cmlsdWdAdHJpbHVnLm9yZz4KU3ViamVjdDogUmU6IFtUcmlMVUddIHJlY29tbWVuZGF0aW9u cyBmb3Igb24tbGluZSBMaW51eCBWTQpNZXNzYWdlLUlEOiA8YWxwaW5lLkRFQi4yLjAyLjI1MDIx MjE1MjEwMzAuMjM4NzdAcGlsb3QudHJpbHVnLm9yZz4KQ29udGVudC1UeXBlOiBURVhUL1BMQUlO OyBjaGFyc2V0PVVTLUFTQ0lJOyBmb3JtYXQ9Zmxvd2VkCgpPbiBXZWQsIDEyIEZlYiAyMDI1LCBN YXVyaWNpbyBUYXZhcmVzIHdyb3RlOgoKPiAgICAgIEFzIGEgRllJLCBuZXRhY3R1YXRlLCB0aGUg cGVvcGxlIHdobyBob3N0IHRoZSB0cmlsdWcgc2VydmVycywgZG8KPiBvZmZlciByYWNrIHNwYWNl LCBiYXJlbWV0YWwsIGFuZCB2bXMuIEkgcmVhY2hlZCBvdXQgdG8gdGhlbSB0aGlzCj4gbW9ybmlu ZyBhbmQgdGhleSBzYWlkIHRoZXkgd291bGQgbGlrZSB0byBzZWUgaWYgdGhleSBjYW4gaGVscCB5 b3Ugb3V0LgoKUmVhbGx5ISBUaGV5J3JlIG5pY2UgdG8gdXMuIEknbSBoYXBweSB0byBiZSBuaWNl IHRvIHRoZW0uIFdlbGwgSSdsbCBnaXZlIAp0aGVtIGEgY2FsbC4KCj4gTm8gY2x1ZSBvZiB0aGVp ciBwcmljZSAoSSBjYW4gc2VlIGlmIHRoZXkgYXJlIHdpbGxpbmcgdG8gZ2l2ZSBhIHRyaWx1ZyAK PiBkZWFsKSwgYnV0IHRoZXkgYXJlIGxvY2FsIC0tIEJyaWFuIGFuZCBvdGhlcnMgaGF2ZSBiZWVu IGF0IHRoZWlyIAo+IGxvY2F0aW9uIGJlZm9yZSAtLSBzbyB5b3UgY2FuIGJyaW5nIGEgc3RlZWwg cGlwZSBpZiB5b3UgbmVlZCB0byBtYWtlIAo+IHN1cmUgdGhleSB3aWxsIGhlbHAgeW91LgoKVGhh bmtzCgpKb2UKCi0tIApKb3NlcGggTWFjayBOQTNUIEVNRShCLEQpLCBGTTA1bHcgTm9ydGggQ2Fy b2xpbmEKRG9uJ3QgdXBncmFkZSBhIHdvcmtpbmcgbWFjaGluZSAtIGl0IHdvbid0IHdvcmsgYW55 CmJldHRlciAtIGl0IGNvdWxkIHdvcmsgd29yc2U7IGl0IG1heSBub3Qgd29yayBhdCBhbGwuCkhv bWVwYWdlIGh0dHA6Ly93d3cuYXVzdGludGVrLmNvbS8gSXQncyBHTlUvTGludXghCgoKCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKTWVzc2FnZTogMTkKRGF0ZTogV2VkLCAxMiBGZWIg MjAyNSAxNToyNjoyNyArMDAwMCAoR01UKQpGcm9tOiBKb3NlcGggTWFjayBOQTNUIHZpYSBUcmlM VUcgPHRyaWx1Z0B0cmlsdWcub3JnPgpUbzogRGF2aWQgQm90aCA8ZGF2aWRAYm90aC5vcmc+CkNj OiBUcmlhbmdsZSBMaW51eCBVc2VycyBHcm91cCBHZW5lcmFsIERpc2N1c3Npb24gPHRyaWx1Z0B0 cmlsdWcub3JnPgpTdWJqZWN0OiBSZTogW1RyaUxVR10gcmVjb21tZW5kYXRpb25zIGZvciBvbi1s aW5lIExpbnV4IFZNCk1lc3NhZ2UtSUQ6IDxhbHBpbmUuREVCLjIuMDIuMjUwMjEyMTUyMjQwMC4y Mzg3N0BwaWxvdC50cmlsdWcub3JnPgpDb250ZW50LVR5cGU6IFRFWFQvUExBSU47IGNoYXJzZXQ9 VVMtQVNDSUk7IGZvcm1hdD1mbG93ZWQKCk9uIFdlZCwgMTIgRmViIDIwMjUsIERhdmlkIEJvdGgg d3JvdGU6Cgo+IEkndmUgYmVlbiBydW5uaW5nIG15IG93biBlbWFpbCBzZXJ2ZXIgZm9yIG1vcmUg dGhhbiAyNSB5ZWFycy4KCkhpIERhdmlkLAoKSSBoYXZlIHlvdXIgYm9vayBvbiBzZXR0aW5nIHVw IGFuIGUtbWFpbCBzZXJ2ZXIgKGFuZCBJJ3ZlIGJlZW4gYXJvdW5kIHRvIAp5b3VyIGhvdXNlIHRv IHBpY2sgdXAgc29tZSBnZWFyIHlvdSB3ZXJlIGRpc3Bvc2luZyAtIHRoYW5rcykuIEkndmUganVz dCAKbmV2ZXIgYmVlbiBwcmVwYXJlZCB0byB0YWNrbGUgd2hhdCBJIHRob3VnaHQgd291bGQgYmUg YW4gdW5ib3VuZGVkIApwcm9ibGVtLgoKPiBJJ3ZlIGhhZCBhIG51bWJlciBvZiBJU1BzIGFuZCBu ZXZlciBoYWQgYSBwcm9ibGVtLiBJIGp1c3QgdG9sZCB0aGVtIHdoYXQgCj4gSSB3YW50ZWQuCgp0 aGF0J3MgcmVhc3N1cmluZy4KCj4gTXkgY3VycmVudCBzZXJ2aWNlIGlzIEFUVCBHYiBmaWJlciB3 aGljaCBJJ3ZlIG5vdyBoYWQgZm9yIGFib3V0IDQgb3IgNSAKPiB5ZWFycy4gVGhlIGluc3RhbGxl ciB3YXMgYSBnYW1lciBmYW1pbGlhciB3aXRoIExpbnV4LCBhbmQga25ldyBleGFjdGx5IAo+IHdo YXQgSSB3YW50ZWQuCgo6LSkKCj4gV2UgdGFsa2VkIGFib3V0IGJsb2NraW5nIGFuZCBoZSBzYWlk IHRoYXQgYWxsIGJsb2NraW5nIGlzIHBlcmZvcm1lZCBpbiAKPiB0aGUgbG9jYWwgcm91dGVyLiBU aGUgYWRtaW4gSUQgYW5kIHBhc3N3b3JkICh5ZXMsIHRydWx5IHJhbmRvbSkgYXJlIAo+IHByaW50 ZWQgb24gdGhlIGxhYmVsLiBIZSB0dXJuZWQgb2ZmIFNNVFAgYW5kIElNQVAgYmxvY2tpbmcgc28g SSBjb3VsZCAKPiBhY2Nlc3MgcmVtb3RlbHkuIEhlIHNob3dlZCBtZSB3aGF0IGhlIHdhcyBkb2lu ZyBhdCBldmVyeSBzdGVwIG9mIHRoZSAKPiB3YXkuIEhlIHB1dCB0aGUgcm91dGVyIGluIHBhc3Mt dGhyb3VnaCBtb2RlIHNvIG5vIGJsb2NrcyBpbiBlaXRoZXIgCj4gZGlyZWN0aW9uLgoKd29uZGVy ZnVsCgo+IE9mIGNvdXJzZSBJIGhhdmUgbXkgb3duIExpbnV4IHJvdXRlciBuZXh0IGluIGxpbmUg d2hpY2ggaXMgd2hlcmUgbXkgcmVhbCAKPiBwcm90ZWN0aW9uIGlzIGxvY2F0ZWQuCgpvZiBjb3Vy c2UKCj4gTm90IGFsbCBpbnN0YWxsZXJzIGFyZSB0aGF0IGNvb2wgb3Iga25vd2xlZGdlYWJsZSwg YnV0IGp1c3Qga25vd2luZyB0aGF0IAo+IFNNVFAgYmxvY2tpbmcgaXMgaW4gdGhlIGxvY2FsIHJv dXRlciBpcywgdW0sIGxpYmVyYXRpbmcuCgp0aGFua3MKCkpvZQoKLS0gCkpvc2VwaCBNYWNrIE5B M1QgRU1FKEIsRCksIEZNMDVsdyBOb3J0aCBDYXJvbGluYQpEb24ndCB1cGdyYWRlIGEgd29ya2lu ZyBtYWNoaW5lIC0gaXQgd29uJ3Qgd29yayBhbnkKYmV0dGVyIC0gaXQgY291bGQgd29yayB3b3Jz ZTsgaXQgbWF5IG5vdCB3b3JrIGF0IGFsbC4KSG9tZXBhZ2UgaHR0cDovL3d3dy5hdXN0aW50ZWsu Y29tLyBJdCdzIEdOVS9MaW51eCEKCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpN ZXNzYWdlOiAyMApEYXRlOiBXZWQsIDEyIEZlYiAyMDI1IDE1OjQ1OjA2ICswMDAwIChHTVQpCkZy b206IEpvc2VwaCBNYWNrIE5BM1QgdmlhIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+ClRvOiBN YXVyaWNpbyBUYXZhcmVzIDxyYXVidm9nZWxAZ21haWwuY29tPgpDYzogZ3dhbGxhY2VAbmV0YWN0 dWF0ZS5jb20sIFRyaUxVRyA8dHJpbHVnQHRyaWx1Zy5vcmc+ClN1YmplY3Q6IFJlOiBbVHJpTFVH XSByZWNvbW1lbmRhdGlvbnMgZm9yIG9uLWxpbmUgTGludXggVk0KTWVzc2FnZS1JRDogPGFscGlu ZS5ERUIuMi4wMi4yNTAyMTIxNTQxMjYwLjIzODc3QHBpbG90LnRyaWx1Zy5vcmc+CkNvbnRlbnQt VHlwZTogVEVYVC9QTEFJTjsgY2hhcnNldD1VUy1BU0NJSTsgZm9ybWF0PWZsb3dlZAoKT24gV2Vk LCAxMiBGZWIgMjAyNSwgTWF1cmljaW8gVGF2YXJlcyB3cm90ZToKCj4+IFJlYWxseSEgVGhleSdy ZSBuaWNlIHRvIHVzLiBJJ20gaGFwcHkgdG8gYmUgbmljZSB0byB0aGVtLiBXZWxsIEknbGwgZ2l2 ZQo+PiB0aGVtIGEgY2FsbC4KCmhtbSwgSSBoYXZlIHRvIGJvb2sgYSBjYWxsLCBhbmQgY29uc2Vu dCB0byBnZXR0aW5nIGUtbWFpbCBhbmQgU01TIG1lc3NhZ2VzIApmb3JldmVyIChJIGNhbiBvZiBj b3Vyc2Ugb3B0IG91dCBsYXRlcikgLSB0aGUgZmlyc3QgYXZhaWxhYmxlIHNsb3QgaXMgCnRvbW9y cm93LgoKPj4KPiAgICAgIEkgY2FuIGRvIHlvdSBvbmUgYmV0dGVyIQo+Cj4gICAgICBHcmVnLCBj YW4geW91IGRvIHRoaW5ncz8KCnRoYW5rcwoKSm9lCgotLSAKSm9zZXBoIE1hY2sgTkEzVCBFTUUo QixEKSwgRk0wNWx3IE5vcnRoIENhcm9saW5hCkRvbid0IHVwZ3JhZGUgYSB3b3JraW5nIG1hY2hp bmUgLSBpdCB3b24ndCB3b3JrIGFueQpiZXR0ZXIgLSBpdCBjb3VsZCB3b3JrIHdvcnNlOyBpdCBt YXkgbm90IHdvcmsgYXQgYWxsLgpIb21lcGFnZSBodHRwOi8vd3d3LmF1c3RpbnRlay5jb20vIEl0 J3MgR05VL0xpbnV4IQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KClN1YmplY3Q6 IERpZ2VzdCBGb290ZXIKCi0tIApUcmlMVUcgbWFpbGluZyBsaXN0ClRyaUxVR0B0cmlsdWcub3Jn Cmh0dHBzOi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9saXN0aW5mby90cmlsdWcKVHJpTFVHIE9y Z2FuaXphdGlvbmFsIEZBUSAgOiAtLQpUcmlMVUcgbWFpbGluZyBsaXN0ICAgICAgICA6IGh0dHBz Oi8vd3d3LnRyaWx1Zy5vcmcvbWFpbG1hbi9saXN0aW5mby90cmlsdWcKVHJpTFVHIEZBUSAgOiBo dHRwczovL3d3dy50cmlsdWcub3JnL3dpa2kvRnJlcXVlbnRseV9Bc2tlZF9RdWVzdGlvbnMKVHJp TFVHIE1lbWJlciBTZXJ2aWNlcyBGQVEgOiBodHRwczovL3RyaWx1Zy5vcmcvd2lraS9GcmVxdWVu dGx5X0Fza2VkX1F1ZXN0aW9ucyNUcmlMVUdfU2VydmljZXMKCi0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQoKRW5kIG9mIFRyaUxVRyBEaWdlc3QsIFZvbCA0MjQ5LCBJc3N1ZSAxCioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgo=