SXQncyBub3QgdGhhdCBfeW91XyBuZWVkIHRvIHJlc3Vic2NyaWJlLCBidXQgYnkgcmVzdWJzY3Jp YmluZyB5b3UKbWlnaHQgYXZvaWQgdGhlIHByb2JsZW1zIG90aGVycyBoYXZlIHdpdGggcmVjZWl2 aW5nIHlvdXIgcG9zdHMuCgpSZXN1YnNjcmliaW5nIGlzIHF1aWNrIGFuZCBzaG91bGQgYmUgcGFp bmxlc3MuICBZb3UgY2FuIGxpdmUgZm9yIGEgZGF5Cm9yIHNvIHdpdGggYm90aCBzdWJzY3JpcHRp b25zIGFjdGl2ZSwgYW5kIHRoZW4gdHVybiBkZWxpdmVyeSBvZmYgZm9yCm9uZSBvZiB0aGVtLgoK V2hlbiB5b3UgcmVwbHkgdG8gYSBwb3N0LCBBcHBsZSBNYWlsIHdpbGwgcHJvYmFibHkgdXNlIHRo ZSBhZGRyZXNzIHlvdQpyZWNlaXZlZCB0aGUgcG9zdCBvbi4KCllvdXIgb2ZmaWNpYWwgYW5kIHBy b2Zlc3Npb25hbCB1c2Ugb2YgeW91ciAyMCB5ZWFyIG9sZCBZYWhvbyBhZGRyZXNzCnNob3VsZG4n dCBuZWVkIHRvIGJlIGZhY3RvcmVkIGludG8gdGhlIHByb2JsZW0uICBNb3N0IHByb2Zlc3Npb25h bHMKaGF2ZSBtYW55IG1haWwgYWRkcmVzc2VzLgoKRm9yIGxvbmcgdGVybSBmdXR1cmUsIHlvdSBj YW4gcHVyY2hhc2UgbWFpbCBob3N0aW5nIGFkZHJlc3NlcyB0aGF0CmhhdmUgYmV0dGVyIGNvbnRy YWN0cyB0aGFuIHRoZSBkZWZhdWx0IFlhaG9vIHRlcm1zIGFuZCBjb25kaXRpb25zLgoKT24gTW9u LCBNYXkgMDksIDIwMTYgYXQgMDg6MzM6MzNQTSAtMDQwMCwgSmVhbi1QYXVsIExvdWlzIHdyb3Rl Ogo+IEZpcnN0LCBzb3JyeSB0byBoaWphY2sgdGhlIHRvcGljIHdpdGggbXkgZW1haWwgYWR2ZW50 dXJlcy4KPiAKPiBJIHVuZGVyc3RhbmQgd2h5IG15IGVtYWlsIGRvZXMgbm90IGJlaGF2ZSB3ZWxs LCBidXQgSSBkbyBub3Qga25vdyBob3cgdG8gZml4IGl0Lgo+IEkgaGF2ZSBiZWVuIHVzaW5nIHRo aXMgeWFob28gZW1haWwgYWRkcmVzcyBmb3Igb3ZlciAyMCB5ZWFycywgYW5kIGNoYW5naW5nIGl0 IGlzCj4gYWxtb3N0IGltcG9zc2libGUgYXMgSSBoYXZlIG1hbnkgb2ZmaWNpYWwgYW5kIHByb2Zl c3Npb25hbCB1c2VzIG9mIHRoaXMgYWRkcmVzcy4KPiAKPiBJIGhhdmUgYSBnbWFpbCBhY2NvdW50 LCBidXQgSSBkbyBub3QgdXNlIG11Y2ggYXMgdGhlIGdtYWlsIGNsaWVudCBzdWNrcyBpbiBteSBi b29rLgo+IAo+IE1heWJlIEkgbmVlZCB0byByZXN1YnNjcmliZSB0byB0aGUgcGljLWxpc3Qgd2l0 aCBteSBnbWFpbCBhY2NvdW50LCBhbmQgbGV0Cj4gQXBwbGUgbWFpbCB0YWtlIGNhcmUgb2YgaXQu Cj4gCj4gU2luY2UgSSBjaGFuZ2VkIHRvIE1hYyBPUyBYLCBJIHVzZSBBcHBsZSBtYWlsIGNsaWVu dCBhbmQgbWVyZ2VkIGFsbCBteSBhY2NvdW50cyBpbiB0aGUgY2xpZW50Lgo+IAo+IFNvIFBsZWFz ZSBsZXQgbWUga25vdyBpZiBJIG5lZWQgdG8gcmVzdWJzY3JpYmUsIGFuZCBJIHdpbGwgZG8gaXQs IEkgYW0gbm90IHN1cmUgbXkgQXBwbGUKPiBjbGllbnQgaGFzIGEgZmVhdHVyZSBsaWtlICJuZXZl ciBzZW5kIHRvIHNwYW3igJ0uCj4gCj4gVGhhbmtzLAo+IEplYW4tUGF1bAo+IE4xSlBMCj4gCj4g Cj4gCj4gCj4gPiBPbiBNYXkgOSwgMjAxNiwgYXQgNzo0OCBQTSwgSmFtZXMgQ2FtZXJvbiA8cXVv emxAbGFwdG9wLm9yZz4gd3JvdGU6Cj4gPiAKPiA+IE9oLCBhbmQgdGhpcyBwYWdlIGlzIGludGVy ZXN0aW5nLCBhcyBpdCBkZXNjcmliZXMgWWFob28gaW4gYSBiaXQgbW9yZQo+ID4gY29udGV4dDsg aHR0cHM6Ly9ibG9nLnJldHVybnBhdGguY29tL3ByZWNlZGVuY2UvCj4gPiAKPiA+IE9uIFR1ZSwg TWF5IDEwLCAyMDE2IGF0IDA5OjIxOjM4QU0gKzEwMDAsIEphbWVzIENhbWVyb24gd3JvdGU6Cj4g Pj4gSSBhZG1pbmlzdGVyIHNldmVyYWwgb3RoZXIgbWFpbGluZyBsaXN0cy4KPiA+PiAKPiA+PiBP dGhlciBwZW9wbGUgaGF2ZSB0aGlzIHByb2JsZW0gd2l0aCBZYWhvbyBhZGRyZXNzZXMuCj4gPj4g Cj4gPj4gQXV0b21hdGVkIGhldXJpc3RpY3MgdXNlZCBpbiBzY29yaW5nIG9mIG1lc3NhZ2VzIHRl bmQgdG8gbWFrZQo+ID4+IEB5YWhvby5jb20gb3JpZ2luYXRlZCBtYWlsIHNjb3JlIGhpZ2hlciwg d2hpY2ggaWYgSSByZWNhbGwgY29ycmVjdGx5Cj4gPj4gd2FzIGJlY2F1c2Ugb2YgbG93IGJhcnJp ZXIgdG8gZW50cnkgZm9yIG5ldyBhbm9ueW1vdXMgYWNjb3VudHMgb24KPiA+PiB5YWhvby5jb20u Cj4gPj4gCj4gPj4gTW9zdCBwZW9wbGUgSSBrbm93IHdobyBoYWQgdGhpcyBwcm9ibGVtIGhhdmUg d29ya2VkIGFyb3VuZCBpdCBieQo+ID4+IHN1YnNjcmliaW5nIHRvIG90aGVyIG1haWwgcHJvdmlk ZXJzLCBhbmQgY29uZmlndXJpbmcgdGhlaXIgbWFpbCBjbGllbnQKPiA+PiB0byBtZXJnZSBhbGwg YWNjb3VudHMgdGhleSBoYXZlLCBhbmQgdXNlIHRoZSBjb3JyZWN0IGFkZHJlc3Mgd2hlbgo+ID4+ IHNlbmRpbmcuCj4gPj4gCj4gPj4gSXQncyBkaWZmaWN1bHQgdG8gc3RheSB3aXRoIG9uZSBwcm92 aWRlciwgYmVjYXVzZSB0aGUgcHJvdmlkZXIgYW5kIHRoZQo+ID4+IGVudmlyb25tZW50IGNoYW5n ZXMuCj4gPj4gCj4gPj4gSSBkb24ndCBrbm93IGhvdyB0byBwcm9ncmFtIFlhaG9vJ3MgbWFpbCBj bGllbnQgdG8gYXZvaWQgdGhlIGJ1bGsKPiA+PiBmb2xkZXIsIGJ1dCB0aGF0IHdvdWxkIGJlIHNv bWV0aGluZyB0aGVpciBzdXBwb3J0IHRlYW0gbWF5IGJlIGFibGUgdG8KPiA+PiBoZWxwIHdpdGgu ICBJZiB0aGUgcHJvZ3JhbSBpcyB0b28gc2ltcGxlLCBpdCBtaWdodCBub3QgYmUgcG9zc2libGUu Cj4gPj4gCj4gPj4gVGhlIG1lc3NhZ2VzIGZyb20gUElDbGlzdCBhcmUgYXV0b21hdGljYWxseSB0 YWdnZWQgd2l0aCAiUHJlY2VkZW5jZToKPiA+PiBsaXN0Ii4gIFRoZSBtYWlsIHN0YW5kYXJkcyBj b3ZlciB0aGlzIGluIHZhcmlvdXMgd2F5czsKPiA+PiAKPiA+PiBodHRwczovL3Rvb2xzLmlldGYu b3JnL2h0bWwvcmZjMjA3NiBtZW50aW9ucyB0aGUgUHJlY2VkZW5jZSBtZXNzYWdlCj4gPj4gaGVh ZGVyIGZpZWxkLCBjYW4gaW5mbHVlbmNlIHRyYW5zbWlzc2lvbiBzcGVlZCBhbmQgZGVsaXZlcnku Cj4gPj4gCj4gPj4gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzM4MzQgc2F5cwo+ID4+ PiAzLjEuOC4gIFByZWNlZGVuY2UgZmllbGQKPiA+Pj4gICBBIHJlc3BvbnNlIE1BWSBpbmNsdWRl IGEgUHJlY2VkZW5jZSBmaWVsZCBbSTQuUkZDMjA3Nl0gaW4gb3JkZXIgdG8KPiA+Pj4gICBkaXNj b3VyYWdlIHJlc3BvbnNlcyBmcm9tIHNvbWUga2luZHMgb2YgcmVzcG9uZGVycyB3aGljaCBwcmVk YXRlIHRoaXMKPiA+Pj4gICBzcGVjaWZpY2F0aW9uLiAgVGhlIGZpZWxkLWJvZHkgb2YgdGhlIFBy ZWNlZGVuY2UgZmllbGQgTUFZIGNvbnNpc3Qgb2YKPiA+Pj4gICB0aGUgdGV4dCAianVuayIsICJs aXN0IiwgImJ1bGsiLCBvciBvdGhlciB0ZXh0IGRlZW1lZCBhcHByb3ByaWF0ZSBieQo+ID4+PiAg IHRoZSByZXNwb25kZXIuICBCZWNhdXNlIHRoZSBQcmVjZWRlbmNlIGZpZWxkIGlzIG5vbi1zdGFu ZGFyZCBhbmQgaXRzCj4gPj4+ICAgaW50ZXJwcmV0YXRpb24gdmFyaWVzIHdpZGVseSwgdGhlIHVz ZSBvZiBQcmVjZWRlbmNlIGlzIG5vdAo+ID4+PiAgIHNwZWNpZmljYWxseSByZWNvbW1lbmRlZCBi eSB0aGlzIHNwZWNpZmljYXRpb24sIG5vciBkb2VzIHRoaXMKPiA+Pj4gICBzcGVjaWZpY2F0aW9u IHJlY29tbWVuZCBhbnkgcGFydGljdWxhciB2YWx1ZSBmb3IgdGhhdCBmaWVsZC4KPiA+PiAKPiA+ PiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMjM2OSBtZW50aW9ucyB0aGUgTGlzdC1Q b3N0LCBMaXN0LU93bmVyCj4gPj4gYW5kIExpc3QtQXJjaGl2ZSBtZXNzYWdlIGhlYWRlciBmaWVs ZHMgd2hpY2ggbWlnaHQgYWxzbyBiZSB1c2VkIGluCj4gPj4gcmVmaWxpbmcgaW4gYW4gYWR2YW5j ZWQgbWFpbCBjbGllbnQuCj4gPj4gCj4gPj4gSG9wZSB0aGF0IGhlbHBzLgo+ID4+IAo+ID4+IE9u IE1vbiwgTWF5IDA5LCAyMDE2IGF0IDA2OjI1OjAyUE0gKzAwMDAsIEplYW4tUGF1bCBMb3VpcyB3 cm90ZToKPiA+Pj4gSGkgUnVzc2VsbCwgSSBoYXZlIG5vIGNsdWVzIGFib3V0IGl0LCBhcyBtb3N0 IG9mIHRoZSB0cmFmZmljIG9mIHRoaXMgbGlzdCBhbHdheXMgZW5kIHVwIGluIG15IEJ1bGsgZm9s ZGVyLkV2ZXJ5ZGF5LCBJIGhhdmUgdG8gY2hlY2sgbXkgQnVsayBmb2xkZXIgdG8gZXh0cmFjdCBt b3JlIHRoYW4gODAlIG9mIHRoZSBsaXN0IHRyYWZmaWMuIEkgaGF2ZSBoYWQgdGhlIHNhbWUgZW1h aWwgYWRkcmVzcyBzaW5jZSB0aGUgZWFybHkgZGF5cyBvZiBZYWhvbywgYW5kIEkgZG8gbm90IGtu b3cgd2hhdCBZYWhvbydzIG1haWwgc2VydmVyIGRvZXMgdG8gbWFrZSBtZSBsb29rIGxpa2Ugc3Bh bS4KPiA+Pj4gSWYgeW91IGhhdmUgYSByZWNpcGUgdG8gZml4IHRoYXQsIEkgd2lsbCBiZSBpbiB5 b3VyIGRlYnQgZm9yIG15IHJlbWFpbmluZyBkYXlzLgo+ID4+PiBCZXN0IHJlZ2FyZHMsSmVhbi1Q YXVsTjFKUEwKPiA+Pj4gCj4gPj4+IFNlbnQgZnJvbSBZYWhvbyBNYWlsIG9uIEFuZHJvaWQgCj4g Pj4+IAo+ID4+PiAgT24gTW9uLCBNYXkgOSwgMjAxNiBhdCA3OjUwIEFNLCBSdXNzZWxsTWM8YXBw dGVjaG56QGdtYWlsLmNvbT4gd3JvdGU6ICAgCj4gPj4+IAo+ID4+Pj4gU29ycnkgZm9yIHRha2lu ZyBzbyBsb25nIHRvIHJlcGx5LCBmb3Igc29tZSByZWFzb24gR21haWwgc2VuZHMgdGhlIG1ham9y aXR5Cj4gPj4+PiBvZiB5b3VyIGVtYWlscyBmcm9tIHBpY2xpc3QgaW50byBteSBzcGFtIGJveC4K PiA+Pj4gCj4gPj4+IE15IEdtYWlsIGFsc28gdHJlYXRzIEplYW4tUGF1bHMgZW1haWxzIGZyb20g cGljbGlzdCBhcyBzcGFtLiAgSSBoYXZlIHRyaWVkCj4gPj4+IG1hbnkgdGltZSB0byBjb252aW5j ZSBpdCBvdGhlcndpc2UuCj4gPj4+IAo+ID4+PiAKPiA+Pj4g4oCLTWluZSBhbHNvLkJVVCBJIGxv bmcgYWdvICBzZXQgYSBmaWx0ZXIgd2hpY2ggaW5jbHVkZXMgIm5ldmVyIHNlbmQgdG8gc3BhbSIu T3RoZXJzIHdpdGggZ21haWwgc2hvdWxkIGJlIGFibGUgdG8gZG8gdGhlIHNhbWUuCj4gPj4+IEpl YW4tUGF1bCAtIGRvIHlvdSBrbm93IHdoYXQgbWFrZXMgeW91ciBlbWFpbCBhcHBlYXIgc3BhbW15 Pwo+ID4+PiAKPiA+Pj4gICAgICAgICAgICBSdXNzZWxs4oCLICAgCj4gPj4+IC0tIAo+ID4+PiBo dHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBh cmNoaXZlCj4gPj4+IFZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0Cj4gPj4+ IGh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cj4gPj4gCj4g Pj4gLS0gCj4gPj4gSmFtZXMgQ2FtZXJvbgo+ID4+IGh0dHA6Ly9xdW96bC5uZXRyZWsub3JnLwo+ ID4gCj4gPiAtLSAKPiA+IEphbWVzIENhbWVyb24KPiA+IGh0dHA6Ly9xdW96bC5uZXRyZWsub3Jn Lwo+ID4gLS0gCj4gPiBodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQSUMv U1ggRkFRICYgbGlzdCBhcmNoaXZlCj4gPiBWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNoaXAgb3B0 aW9ucyBhdAo+ID4gaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xp c3QKPiAKPiAKPiAtLSAKPiBodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQ SUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlCj4gVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9w dGlvbnMgYXQKPiBodHRwOi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlz dAoKLS0gCkphbWVzIENhbWVyb24KaHR0cDovL3F1b3psLm5ldHJlay5vcmcvCi0tIApodHRwOi8v d3d3LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZl ClZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1p dC5lZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cg== .