VGhlIGZvbGxvd2luZyBwZW9wbGUgaGF2ZSBoZWxwZWQgR05VIG5hbm8gaW4gc29tZSB3YXkgb3IgYW5vdGhlci4KSWYgd2UgbWlzc2VkIHlvdSBoZXJlLCBsZXQgdXMga25vdyEKClNoYXJ1enphbWFuIEFobWF0IFJhc2xhbiA8c2hhcnV6emFtYW5AZXhjaXRlLmNvbT4KCQkJCQkJTWFsYXkgdHJhbnNsYXRvcgpMYXVyZW50aXUgQnV6ZHVnYW4gPGJ1emR1Z2FuQHZveWFnZXIubmV0PglSb21hbmlhbiB0cmFuc2xhdG9yClJpY2FyZG8gQ+FyZGVuZXMgTWVkaW5hIDxyaWNhcmRvQGNvbmlzeXMuY29tPglTcGFuaXNoIHRyYW5zbGF0b3IKTWFyY28gQ29sb21ibyA8bWFnaWNkaWNlQGlud2luZC5pdD4JCUl0YWxpYW4gdHJhbnNsYXRvcgpLYXJsIEVpY2h3YWxkZXIgPGtlaWNod2FAZ214Lm5ldD4JCUdlcm1hbiB0cmFuc2xhdG9yCkRvcnVrIEZpc2VrIDxkZmlzZWtAZmlzZWsuY29tLnRyPgkJVHVya2lzaCB0cmFuc2xhdG9yCkplYW4tUGhpbGlwcGUgR3XpcmFyZCA8amVhbi1waGlsaXBwZS5ndWVyYXJkQGxhcG9zdGUubmV0PgoJCQkJCQlGcmVuY2ggdHJhbnNsYXRvcgpHZWlyIEhlbGxhbmQJCQkJCU5vcndlZ2lhbiBib2tt5WwgdHJhbnNsYXRvcgpUZWRpIEhlcml5YW50byA8dGVkaV9oQGdteC5uZXQ+CQkJSW5kb25lc2lhbiB0cmFuc2xhdG9yClbhY2xhdiBIYWlzbWFuIDxWLkhhaXNtYW5Ac2guY3Z1dC5jej4JCUN6ZWNoIHRyYW5zbGF0b3IKU3phYm9sY3MgSG9ydmF0aCA8aG9ydmF0aHNAamFudXMuZ2ltc3ouc3VsaW5ldC5odT4KCQkJCQkJSHVuZ2FyaWFuIHRyYW5zbGF0b3IKS2FsbGUgS2l2aW1hYSA8a2FsbGUua2l2aW1hYUBpa2kuZmk+CQlGaW5uaXNoIFRyYW5zbGF0b3IKRWl2aW5kIEtq+HJzdGFkIDxla2pAdmVzdGRhdGEubm8+CQlOb3J3ZWdpYW4gbnlub3JzayB0cmFuc2xhdG9yCkZsb3JpYW4gS/ZuaWcgPGZsb2tpQGJpZ2Zvb3QuY29tPgkJR2VybWFuIHRyYW5zbGF0b3IKV29qY2llY2ggS290d2ljYSA8d2tvdHdpY2FAcG9zdC5wbD4JCVBvbGlzaCB0cmFuc2xhdG9yCkNsZW1lbnQgTGFmb3JldCA8Y2xlbV9sYWZAd2FuYWRvby5mcj4JCUZyZW5jaCB0cmFuc2xhdG9yCkdlcmdlbHkgTmFneSA8YWxnZXJub25AZGViaWFuLm9yZz4JCUh1bmdhcmlhbiB0cmFuc2xhdG9yCkthbGxlIE9sYXZpIE5pZW1pdGFsbyA8a29uQGlraS5maT4JCUZpbm5pc2ggVHJhbnNsYXRvcgpDbGF1ZGlvIE5ldmVzIDxjbmV2ZXNAbmV4dGlzLmNvbT4JCUJyYXppbGlhbiBQb3J0dWd1ZXNlIHRyYW5zbGF0b3IKTWljaGFlbCBQaWVmZWwgPHBpZWZlbEBpbmZvcm1hdGlrLmh1LWJlcmxpbi5kZT4gR2VybWFuIHRyYW5zbGF0b3IKU2VyZ2V5IEEuIFJpYmFsY2hlbmtvIDxmaXNoZXJAb2J1LmNrLnVhPglSdXNzaWFuLCBVa3JhaW5pYW4gdHJhbnNsYXRvcgpNaWNoZWwgUm9iaXRhaWxsZSA8cm9iaXRhaWxASVJPLlVNb250cmVhbC5DQT4JRnJlbmNoIHRyYW5zbGF0b3IKQ2hyaXN0aWFuIFJvc2UgPG1lbnRob3NAbWVudGhvcy5jb20+CQlTd2VkaXNoIHRyYW5zbGF0b3IKU3RpZyBFIFNhbmRvZSA8c3RpZ0BpaS51aWIubm8+CQkJTm9yd2VnaWFuIGJva23lbCB0cmFuc2xhdG9yCktlbGQgU2ltb25zZW4gPGtlbGRAZGt1dWcuZGs+CQkJRGFuaXNoIHRyYW5zbGF0b3IKR3V1cyBTbGllcGVuIDxndXVzQG5sLmxpbnV4Lm9yZz4JCUR1dGNoIHRyYW5zbGF0b3IKQ2V6YXJ5IFNsaXdhIDxzbGl3YUBjZnQuZWR1LnBsPgkJCVBvbGlzaCB0cmFuc2xhdG9yClBpZXJyZSBUYW5lIDx0YW5lcEBiaWdmb290LmNvbT4JCQlGcmVuY2ggdHJhbnNsYXRvcgpKYWNvYm8gVGFycu1vIDxqdGFycmlvQHRyYXNuby5uZXQ+CQlHYWxpY2lhbiB0cmFuc2xhdG9yCktqZXRpbCBUb3JncmltIEhvbW1lIDxramV0aWxob0BsaW5wcm8ubm8+CU5vcndlZ2lhbiBueW5vcnNrIHRyYW5zbGF0b3IKTWlxdWVsIFZpZGFsIDxtaXF1ZWxAc2luZG9taW5pby5uZXQ+CQlDYXRhbGFuIHRyYW5zbGF0b3IKUGF1bGkgVmlydGFuZW4gPHBhdWxpLnZpcnRhbmVuQHNhdW5hbGFodGkuZmk+CUZpbm5pc2ggdHJhbnNsYXRvcgpQZWlvIFppYXJzb2xvIDxwZWlvQHNpbmRvbWluaW8ubmV0PgkJQmFzcXVlIHRyYW5zbGF0b3IKCkJlbiBBcm1zdHJvbmcgPHN5bnJnQHNhbmN0dWFyeS5uc2x1Zy5ucy5jYT4JTmVnYXRpdmUgLXIgdmFsdWUgaWRlYSwgY29kZQpUaG9tYXMgRGlja2V5IDxkaWNrZXlAaGVybmRvbjQuaGlzLmNvbT4JCUN1cnNlcyBoZWxwIGFuZCBhZHZpY2UKU3ZlbiBHdWNrZXMgPGd1Y2tlc0BtYXRoLmZ1LWJlcmxpbi5kZT4JCUFkdmljZSBhbmQgQWR2b2NhY3kKSmltIEtub2JsZSA8am1rbm9ibGVAcG9ib3guY29tPgkJCVBpY28gY29tcGF0IGZvciBicm93c2VyClJ5YW4gS3JlYnMgPGZsdWZmeUBoaWdod2lyZS5zdGFuZm9yZC5lZHU+CU1hbnkgYnVnIGZpeGVzIGFuZCB0ZXN0aW5nClJveSBMYW5layA8bGFuZWtAcmFuYWhtaW5hbmcubmV0PgkJQWR2aWNlIGFuZCBhZHZvY2FjeQpDaHVjayBNZWFkIDxjc21ATW9vbkdyb3VwLmNvbT4JCQlGZWVkYmFjayBhbmQgUlBNIHN0dWZmCk1pa2UgTWVsYW5zb24gPG1lbGFuc29uQHBjaXN5cy5uZXQ+CQlCdWdzCk5laWwgUGFya3MgPG5wYXJrc0BhY3NtYWlsLmNvbT4JCQlCdWcgcmVwb3J0cyBhbmQgZml4ZXMKSmVyZW15IFJvYmljaGF1ZCA8cm9iaWNqQHlhaG9vLmNvbT4JCUJldGEgdGVzdGVyCkJpbGwgU291ZGFuIDx3ZXMwNDcyQHJpdC5lZHU+CQkJUmVnZXggY29kZSwgZXRjCktlbiBUeWxlciA8a2VudEB3ZXJwbGUubmV0LmF1PgkJCVNlYXJjaCBmaXhlcyBhbmQgbW9yZQoKCiRJZCQK