Q2xpbnQsCgpUaGUgUGVhcmxlIG9uZSBsb29rcyBpbnRlcmVzdGluZywgSSd2ZSBhc2tlZCBmb3Ig YSBxdW90ZS4gSSBsaWtlIHRoZSBFU1AzMiBwcm9qZWN0LCBidXQgY2FuJ3QgdXNlIGl0IGhlcmUg YXMgdGhpcyBpcyBpbiBhIHJhZGlvIGFzdHJvbm9teSBvYnNlcnZhdG9yeS4gV2hpbGUgd2UgY3Vy cmVudGx5IGRvbid0IG9ic2VydmUgaW4gdGhlIFMgYmFuZCwgd2hvIGtub3dzIHdoYXQgd2UnbGwg YmUgZG9pbmcgbmV4dCB5ZWFyLi4uLgoKVGhhbmtzLAoKSm9lCgotLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQpGcm9tOiBwaWNsaXN0LWJvdW5jZXNAbWl0LmVkdSA8cGljbGlzdC1ib3VuY2VzQG1p dC5lZHU+IE9uIEJlaGFsZiBPZiBDbGludCBKYXkKU2VudDogRnJpZGF5IDE0IFNlcHRlbWJlciAy MDE4IDE4OjA4ClRvOiBwaWNsaXN0QG1pdC5lZHUKU3ViamVjdDogUmU6IFtFRV0gUlMyMzIgLT4g VENQSVAgLT4gUlMyMzIKCkpvZSwgaWYgeW914oCZcmUgbG9va2luZyBmb3IgYSBjb21tZXJjaWFs IHNvbHV0aW9uIHRoZW4gdGhlcmUgYXJlIHBsZW50eSBvZiB0ZXJtaW5hbCBzZXJ2ZXIgYm94ZXMg dGhhdCdsbCBkbyB3aGF0IHlvdSBuZWVkLCB0aGUgb25lIHlvdSBsaW5rZWQgbG9va3Mgc3VpdGFi bGUgYXQgYSBxdWljayBnbGFuY2UuCgpQZXJsZSwgRGlnaSwgTGFudHJvbml4IGFuZCBhIG11bHRp dHVkZSBvZiBvdGhlcnMgYWxzbyBzZWxsIHRoZW0gYW5kIGhhdmUgYmVlbiBmb3IgcXVpdGUgc29t ZSB0aW1lIHNvIHRoZXkncmUgYSBzb2x2ZWQgcHJvYmxlbSwgdGhleSBhcHBlYXIgb24gZUJheSBv ZnRlbiBhcyBtb3N0IHBlb3BsZSBoYXZlIG5vIGlkZWEgd2hhdCB0aGV5IGRvLgpMYW50cm9uaXgg ZXhhbXBsZSAob25lIHNhdCBvbiBteSBkZXNrKQpodHRwczovL3d3dy5sYW50cm9uaXguY29tL3By b2R1Y3RzL3VkczExMDAtdWRzMTEwMC1wb2UvCgpQZXJsZQpodHRwczovL3d3dy5wZXJsZS5jb20v cHJvZHVjdHMvdGVybWluYWwtc2VydmVyLnNodG1sP3V0bV9tZWRpdW09MzAxJnV0bV9zb3VyY2U9 ZGlyZWN0JnV0bV9jYW1wYWlnbj0vcHJvZHVjdHMvdGVybWluYWwtc2VydmVycy5zaHRtbApldGMu CgpJZiB5b3Ugd2FudCB0byByb2xsIHlvdXIgb3duIHRoZW4gdGhlcmUgYXJlIHBsZW50eSBvZiBl eGFtcGxlcyBmb3IgdGhlCkVTUDMyIGFuZCB2YXJpb3VzIG90aGVyIGNoZWFwIGJ1dCBwb3dlcmZ1 bCBtaWNybyBib2FyZHMuCk9uZSBleGFtcGxlIChub3QgdHJpZWQgaXQgbXlzZWxmKQpodHRwczov L2dpdGh1Yi5jb20vQWxwaGFMaW1hL0VTUDMyLVNlcmlhbC1CcmlkZ2UKCgpPbiBGcmksIDE0IFNl cCAyMDE4IGF0IDE3OjU3LCBBQiBQZWFyY2UgLSBVS1JJIFNURkMgPCBhbGFuLmIucGVhcmNlQHN0 ZmMuYWMudWs+IHdyb3RlOgoKPiBXaHkgbm90IGp1c3QgdXNlIGNhdDYgZm9yIFJTNDIyPyBEb2Vz IGl0IHJlYWxseSBuZWVkIHRvIGJlIHNoaWVsZGVkPwo+Cj4KPgo+IC0tLS0tT3JpZ2luYWwgTWVz c2FnZS0tLS0tCj4gRnJvbTogcGljbGlzdC1ib3VuY2VzQG1pdC5lZHUgPHBpY2xpc3QtYm91bmNl c0BtaXQuZWR1PiBPbiBCZWhhbGYgT2YgCj4gSm9lIE1jQ2F1bGV5Cj4gU2VudDogMTQgU2VwdGVt YmVyIDIwMTggMTY6NDcKPiBUbzogTWljcm9jb250cm9sbGVyIGRpc2N1c3Npb24gbGlzdCAtIFB1 YmxpYy4gPHBpY2xpc3RAbWl0LmVkdT4KPiBTdWJqZWN0OiBbRUVdIFJTMjMyIC0+IFRDUElQIC0+ IFJTMjMyCj4KPiBJIGhhdmUgc29tZSByYWRpbyByZWNlaXZlcnMgd2hpY2ggb3V0cHV0IGEgZGF0 YSBzdHJlYW0gYXQgMTE1SyBCYXVkIAo+IChSUzIzMikuIEkgbmVlZCB0byBsb2NhdGUgMyBvZiB0 aGVtIGF0IHRoZSBlbmQgb2YgfjUwbSBvZiBjYWJsZS4gSSB3YXMgCj4gZG9pbmcgdGhpcyBieSBj b252ZXJ0aW5nIHRvIFJTNDIyLCBkcml2aW5nIGFuIFJTNDIyIGNhYmxlIChleHBlbnNpdmUpIAo+ IGFuZCByZWNvbnZlcnRpbmcgdG8gUlMyMzIgYXQgdGhlIG90aGVyIGVuZC4gV29ya2VkIGZpbmUg JiBnYXZlIG1lIHRoZSAKPiBiaWRpcmVjdGlvbmFsIGRhdGEgdHJhbnNmZXIgSSBuZWVkZWQuCj4K PiBPdXIgbGF5b3V0cyBoYXZlIGNoYW5nZWQgd2hpY2ggbWVhbnMgSSBub3cgbmVlZCB0byBydW4g MyBsb25nZXIgUlM0MjIgCj4gY2FibGVzLCB3aGljaCBtZWFucyBuZXcgY2FibGUgZm9yIGFsbCBy ZWNlaXZlcnMuIEknZCBsaWtlIHRvIGF2b2lkIAo+IHRoYXQgaWYgYXQgYWxsIHBvc3NpYmxlIGFu ZCB3YXMgd29uZGVyaW5nIGlmIGEgcGFpciBvZiB0aGVzZSB3b3VsZCAKPiB3b3JrIHVzaW5nIGEg c2luZ2xlIENBVDYgc2hpZWxkZWQgY2FibGUgcmF0aGVyIHRoYW4gMyBSUzQyMiBzaGllbGRlZCB0 d2lzdGVkIHBhaXI6Cj4KPgo+IGh0dHBzOi8vd3d3LmNhYmxlbWF0aWMuaWUvcmVmL1JTNDM/Z2Ns aWQ9RUFJYUlRb2JDaE1JODlESzZwRzYzUUlWenVSM0MKPiBoMFVBUTlpRUFRWUFTQUJFZ0lxZnZE X0J3RQo+Cj4gVGhlIGRhdGEgZnJvbSBQQyAtPiByYWRpb3MsIHdoaWxlIGF0IDExNWtCLCBpcyBq dXN0IHNldHVwIHN0dWZmLiBTZW5kIAo+IGEgZmV3IGNvbW1hbmRzIG9uY2UgJiB0aGUgcmFkaW8g ZHVtcHMgZGF0YSBhdCAxMTVrQiBjb250aW51b3VzbHkgdG8gdGhlIFBDLgo+IEluIHRoZSBsYXN0 IGluY2FybmF0aW9uIG9mIHRoaXMgc3lzdGVtLCBJIHdhcyB1c2luZyAxIFBDIHRvIGNvbnRyb2wg MyAKPiByYWRpb3MgYW5kIDIgYW50ZW5uYSBtb3VudHMsIHNvIHRoYXQgUEMgJiBsaW5rIGNvbWJp bmF0aW9uIHdhcyBmaW5lLiAKPiBJJ2QgYmUgaW50ZXJlc3RlZCB0byBoZWFyIGlmIGFueW9uZSBo YXMgdXNlZCB0aGVzZSBiZWZvcmUsIGluIAo+IHBhcnRpY3VsYXIgd2l0aCBtdWx0aXBsZSBoaWdo IHNwZWVkIFJTMjMyIGRhdGEgcGF0aHMuCj4KPiBUaGFua3MsCj4KPiBKb2UKPiAtLQo+IGh0dHA6 Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hp dmUgCj4gVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQgCj4gaHR0cDovL21h aWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QKPgo+IC0tCj4gaHR0cDovL3d3 dy5waWNsaXN0LmNvbS90ZWNocmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZSAK PiBWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdCAKPiBodHRwOi8vbWFpbG1h bi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAo+Ci0tCmh0dHA6Ly93d3cucGljbGlz dC5jb20vdGVjaHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUgVmlldy9jaGFu Z2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQgaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWls bWFuL2xpc3RpbmZvL3BpY2xpc3QKCi0tIApodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYv cGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIgbWVtYmVy c2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9w aWNsaXN0Cg== .