V2VsbCBpdCBzZWVtcyBldmVyeWRheSBpcyBzdGlsbCBhIHNjaG9vbCBkYXkhIEkgaGFkIG5vIGlk ZWEgYSBncmFpbiBpbiB0aGUgc2Vuc2Ugb2YgdGhlIGNyb3Agd2FzIGEgc3RhbmRhcmRpc2VkIHVu aXQgb2Ygd2VpZ2h0LiBUaGVuIGFnYWluLCB3aHkgbm90LCBpdHMgd2hhdCBwZW9wbGUgZGVhbHQg aW4uCgpJIGxvdmUgdGhlICJ0aGlydHktdHdvIGdyYWlucyBvZiB3aGVhdCwgdGFrZW4gZnJvbSB0 aGUgbWlkZGxlIG9mIHRoZSBlYXIiIHBhcnQuCgpUaGFua3MgdG8gYWxsIHdobyBjb250cmlidXRl ZCwKCkpvZQoKLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KRnJvbTogcGljbGlzdC1ib3VuY2Vz QG1pdC5lZHUgW21haWx0bzpwaWNsaXN0LWJvdW5jZXNAbWl0LmVkdV0gT24gQmVoYWxmIE9mIFJ1 c3NlbGxNYwpTZW50OiAyMCBPY3RvYmVyIDIwMTYgMTQ6MjIKVG86IE1pY3JvY29udHJvbGxlciBk aXNjdXNzaW9uIGxpc3QgLSBQdWJsaWMuIDxwaWNsaXN0QG1pdC5lZHU+ClN1YmplY3Q6IFJlOiBb RUU6XSBMb29raW5nIGZvciB0aGluICggJiBzZW5zaXRpdmUpIGZvcmNlIHNlbnNvcnMKCk9uIDIw IE9jdG9iZXIgMjAxNiBhdCAxOTo0OSwgSmFtZXMgQ2FtZXJvbiA8cXVvemxAbGFwdG9wLm9yZz4g d3JvdGU6Cgo+IE9uIFRodSwgT2N0IDIwLCAyMDE2IGF0IDA3OjM1OjU2QU0gKzAwMDAsIEpvZSBN Y0NhdWxleSB3cm90ZToKPiA+IEFueSBpZGVhcyB3aGF0IGEgc2luZ2xlIGdyYWluIG1pZ2h0IHdl aWdoPwo+Cj4gNjUgbWlsbGlncmFtcy4KPgoK4oCLQWxtb3N0LgpJdCdzCiA2NC43OTg5MSBtaWxs aWdyYW1zCuKAiyBleGFjdGx5LgoKVGhhdCdzIGV4YWN0bHkgYXBwcm94aW1hdGVseS4KT3IgYXBw cm94aW1hdGVseSBleGFjdGx5LgpPciwgZXhhY3RseSwgb24gYXZlcmFnZS4K4oCLCi4KaHR0cHM6 Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvR3JhaW5fKHVuaXQpCgpodHRwOi8vd3d3LmNvbnZlcnQt bWUuY29tL2VuL2NvbnZlcnQvd2VpZ2h0L2dyYWluLmh0bWwKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX18KCldpa2lwZWRpYSBzYXlzOgoKVGhlIGdyYWluIHdhcyB0aGUgbGVnYWwgZm91bmRh dGlvbiBvZiB0cmFkaXRpb25hbCBFbmdsaXNoIHdlaWdodCBzeXN0ZW1zIDxodHRwczovL2VuLndp a2lwZWRpYS5vcmcvd2lraS9FbmdsaXNoX21hc3NfdW5pdHM+LFs1XQo8aHR0cHM6Ly9lbi53aWtp cGVkaWEub3JnL3dpa2kvR3JhaW5fKHVuaXQpI2NpdGVfbm90ZS1Sb3dsZXR0MjAwMS01PiBhbmQg aXMgdGhlIG9ubHkgdW5pdCB0aGF0IGlzIGVxdWFsIHRocm91Z2hvdXQgdGhlIHRyb3kgPGh0dHBz Oi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1Ryb3lfd2VpZ2h0PiwgYXZvaXJkdXBvaXMgPGh0dHBz Oi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0F2b2lyZHVwb2lzPiwgYW5kIGFwb3RoZWNhcmllcycg c3lzdGVtcyA8aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQXBvdGhlY2FyaWVzJTI3X3N5 c3RlbT4gb2YgbWFzcy5bNl0KPGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dyYWluXyh1 bml0KSNjaXRlX25vdGUtTklTVC02PjpDLTYgVGhlIHVuaXQgd2FzIGJhc2VkIG9uIHRoZSB3ZWln aHQgb2YgYSBzaW5nbGUgZ3JhaW4gb2YgYmFybGV5LCBjb25zaWRlcmVkIGVxdWl2YWxlbnQgdG8g IDEgMeKBhDMgZ3JhaW5zIG9mIHdoZWF0Lls1XSA8aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dp a2kvR3JhaW5fKHVuaXQpI2NpdGVfbm90ZS1Sb3dsZXR0MjAwMS01Pls3XQo8aHR0cHM6Ly9lbi53 aWtpcGVkaWEub3JnL3dpa2kvR3JhaW5fKHVuaXQpI2NpdGVfbm90ZS1SaWRnZXdheTE4ODktNz46 OTUgVGhlIGZ1bmRhbWVudGFsIHVuaXQgb2YgdGhlIHByZS0xNTI3IEVuZ2xpc2ggd2VpZ2h0IHN5 c3RlbSBrbm93biBhcyBUb3dlciB3ZWlnaHRzIDxodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lr aS9FbmdsaXNoX3VuaXRzI1Ryb3lfYW5kX1Rvd2VyPiwgd2FzIGEgZGlmZmVyZW50IHNvcnQgb2Yg Z3JhaW4ga25vd24gYXMgdGhlICJ3aGVhdCBncmFpbiIuWzhdIDxodHRwczovL2VuLndpa2lwZWRp YS5vcmcvd2lraS9HcmFpbl8odW5pdCkjY2l0ZV9ub3RlLTg+IFRoZSBUb3dlciB3aGVhdCBncmFp biB3YXMgZGVmaW5lZCBhcyBleGFjdGx5ICA0NeKBhDY0IG9mIGEgdHJveSBncmFpbi5bMV0gPGh0 dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dyYWluXyh1bml0KSNjaXRlX25vdGUtTWNEb25h bGRTY2FycmUxOTkyLTE+Cjo3NAoKU2luY2UgdGhlIGltcGxlbWVudGF0aW9uIG9mIHRoZSBpbnRl cm5hdGlvbmFsIHlhcmQgYW5kIHBvdW5kIDxodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9J bnRlcm5hdGlvbmFsX3lhcmRfYW5kX3BvdW5kPiBhZ3JlZW1lbnQgb2YgMSBKdWx5IDE5NTksIHRo ZSAqZ3JhaW4qIG9yICp0cm95IGdyYWluKiAoU3ltYm9sOiAqZ3IqKSBtZWFzdXJlIGhhcyBiZWVu IGRlZmluZWQgaW4gdGVybXMgb2YgdW5pdHMgb2YgbWFzcyBpbiB0aGUgSW50ZXJuYXRpb25hbCBT eXN0ZW0gb2YgVW5pdHMgPGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0ludGVybmF0aW9u YWxfU3lzdGVtX29mX1VuaXRzPiBhcyBwcmVjaXNlbHkKNjQuNzk4OTEgbWlsbGlncmFtcyA8aHR0 cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTWlsbGlncmFtPi5bNl0KPGh0dHBzOi8vZW4ud2lr aXBlZGlhLm9yZy93aWtpL0dyYWluXyh1bml0KSNjaXRlX25vdGUtTklTVC02PjpDLTE5WzldCjxo dHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9HcmFpbl8odW5pdCkjY2l0ZV9ub3RlLW5iczQ0 Ny05PiAxIGdyYW0gaXMgYXBwcm94aW1hdGVseSAxNS40MzIzNiBncmFpbnMuWzZdCjxodHRwczov L2VuLndpa2lwZWRpYS5vcmcvd2lraS9HcmFpbl8odW5pdCkjY2l0ZV9ub3RlLU5JU1QtNj46Qy0x MyBUaGUgdW5pdCBmb3JtZXJseSB1c2VkIGJ5IGpld2VsbGVycyB0byBtZWFzdXJlIHBlYXJscyA8 aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvUGVhcmw+LCBkaWFtb25kcyA8aHR0cHM6Ly9l bi53aWtpcGVkaWEub3JnL3dpa2kvRGlhbW9uZD4sIG9yIG90aGVyIHByZWNpb3VzIHN0b25lcywg Y2FsbGVkIHRoZSAqamV3ZWxsZXIncyBncmFpbiogb3IgKnBlYXJsIGdyYWluKiwgaXMgZXF1YWwg dG8gIDHigYQ0IG9mIGEgY2FyYXQgPGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NhcmF0 Xyh1bml0KT4sIG9yIDUwIG1nICh+IDAuNzcxNiBncikuWzVdIDxodHRwczovL2VuLndpa2lwZWRp YS5vcmcvd2lraS9HcmFpbl8odW5pdCkjY2l0ZV9ub3RlLVJvd2xldHQyMDAxLTU+IFRoZSBncmFp biB3YXMgYWxzbyB0aGUgbmFtZSBvZiBhIHRyYWRpdGlvbmFsIEZyZW5jaCB1bml0IDxodHRwczov L2VuLndpa2lwZWRpYS5vcmcvd2lraS9Vbml0c19vZl9tZWFzdXJlbWVudF9pbl9GcmFuY2U+IGVx dWFsIHRvCjUzLjExNSBtZy5bNV0KPGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dyYWlu Xyh1bml0KSNjaXRlX25vdGUtUm93bGV0dDIwMDEtNT4KCkluIGJvdGggQnJpdGlzaCBJbXBlcmlh bAo8aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvSW1wZXJpYWxfdW5pdHM+IGFuZCBVLlMu CmN1c3RvbWFyeSB1bml0cwo8aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVW5pdGVkX1N0 YXRlc19jdXN0b21hcnlfdW5pdHM+LCB0aGVyZSBhcmUgcHJlY2lzZWx5IDcsMDAwIGdyYWlucyBw ZXIgYXZvaXJkdXBvaXMgcG91bmQsIGFuZCA1LDc2MCBncmFpbnMgcGVyIHRyb3kgcG91bmQgb3Ig YXBvdGhlY2FyaWVzIHBvdW5kLls2XQo8aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvR3Jh aW5fKHVuaXQpI2NpdGVfbm90ZS1OSVNULTY+OkMtNuKAk0MtNwoK4oCLCi0tCmh0dHA6Ly93d3cu cGljbGlzdC5jb20vdGVjaHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUgVmll dy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQgaHR0cDovL21haWxtYW4ubWl0LmVk dS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QKCi0tIApodHRwOi8vd3d3LnBpY2xpc3QuY29tL3Rl Y2hyZWYvcGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIg bWVtYmVyc2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0 aW5mby9waWNsaXN0Cg== .