ZGlmZiAtLWdpdCBhL2RvYy9LVVJTL0xQQy1LVVJTMi9jaGFwdGVyMSBiL2RvYy9LVVJTL0xQQy1LVVJTMi9jaGFwdGVyMQppbmRleCA2YzQ1OWNkLi4wNjFmMjg0IDEwMDY0NAotLS0gYS9kb2MvS1VSUy9MUEMtS1VSUzIvY2hhcHRlcjEKKysrIGIvZG9jL0tVUlMvTFBDLUtVUlMyL2NoYXB0ZXIxCkBAIC00MywxNiArNDMsMTYgQEAKIEFueSBpZGVhIHlvdSB3YW50IHRvIGNvZGUgaW4gYW4gTFBNdWQgaXMgcG9zc2libGUuICBMUEMgaXMgYSBsYW5ndWFnZQogd2hpY2ggaXMgYW1hemluZ2x5IHdlbGwgc3VpdGVkIHRvIHRoaXMgdGFzay4gIEFsbCB0aGF0IHByZXZlbnRzIHlvdSBmcm9tCiBjb2RpbmcgeW91ciBpZGVhcyBpcyB5b3VyIGtub3dsZWRnZSBvZiBMUEMgb3IgYW4gaW5hZGVxdWF0ZSBtdWRsaWIgb3IKLXlvdXIgbXVk1XMgdGhlbWUgb3IgYWRtaW5pc3RyYXRpdmUgcG9saWNpZXMuICBUaGlzIHRleHRib29rIGNhbm5vdCBtYWtlCit5b3VyIG11ZMOVcyB0aGVtZSBvciBhZG1pbmlzdHJhdGl2ZSBwb2xpY2llcy4gIFRoaXMgdGV4dGJvb2sgY2Fubm90IG1ha2UKIHRoZSBtdWRsaWIgeW91IGFyZSB3b3JraW5nIHdpdGggYW55IGJldHRlciwgYW5kIGl0IGNhbm5vdCBjaGFuZ2UgdGhlIG11ZAotdGhlbWUgb3IgdGhlIG11ZNVzIGFkbWluaXN0cmF0aXZlIHBvbGljaWVzLiAgTmV2ZXIgb25jZSB0aGluayB0aGF0IExQQyBpcwordGhlbWUgb3IgdGhlIG11ZMOVcyBhZG1pbmlzdHJhdGl2ZSBwb2xpY2llcy4gIE5ldmVyIG9uY2UgdGhpbmsgdGhhdCBMUEMgaXMKIGluY2FwYWJsZSBvZiBkb2luZyB3aGF0IHlvdSB3YW50IHRvIGRvLiAgSWYgeW91ciBpZGVhIGlzIHByZXZlbnRlZCBieQogYWRtaW5pc3RyYXRpdmUgcG9saWNpZXMgb3IgdGhlbWVzLCB0aGVuIGl0IGlzIHNpbXBseSBub3QgYW4gaWRlYSBmb3IgeW91cgogY3VycmVudCBtdWQuICBJZiB0aGUgbXVkbGliIGlzIGluYWRlcXVhdGUsIHRhbGsgdG8gdGhlIHBlb3BsZSBpbiBjaGFyZ2Ugb2YKIHlvdXIgbXVkbGliIGFib3V0IHdoYXQgY2FuIGJlIGRvbmUgYXQgdGhlIG11ZGxpYiBsZXZlbCB0byBmYWNpbGl0YXRlIGl0LiAgWW91CiB3b3VsZCBiZSBzdXJwcmlzZWQgYnkgd2hhdCBpcyBhY3R1YWxseSBpbiB0aGUgbXVkbGliIHlvdSBkaWQgbm90IGtub3cKIGFib3V0LiAgTW9yZSBpbXBvcnRhbnQsIGFmdGVyIHJlYWRpbmcgdGhpcyB0ZXh0Ym9vaywgeW91IHNob3VsZCBiZSBhYmxlIHRvCi1yZWFkIGFsbCBvZiB0aGUgbXVkbGliIGNvZGUgaW4geW91ciBtdWTVcyBtdWRsaWIgYW5kIHVuZGVyc3RhbmQgd2hhdCBpcworcmVhZCBhbGwgb2YgdGhlIG11ZGxpYiBjb2RlIGluIHlvdXIgbXVkw5VzIG11ZGxpYiBhbmQgdW5kZXJzdGFuZCB3aGF0IGlzCiBnb2luZyBvbiBhdCBlYWNoIGxpbmUgaW4gdGhlIG11ZGxpYiBjb2RlLiAgWW91IG1heSBub3QgYXMgeWV0IGJlIGFibGUgdG8KIHJlcHJvZHVjZSB0aGF0IGNvZGUgb24geW91ciBvd24sIGJ1dCBhdCBsZWFzdCB5b3UgY2FuIHVuZGVyc3RhbmQgd2hhdCBpcwogZ29pbmcgb24gYXQgdGhlIG11ZGxpYiBsZXZlbC4KQEAgLTEzNSw3ICsxMzUsNyBAQAogYXJlYSBpbiBNVUQgdHlwZSBnYW1lcy4gIEZvciB0aGUgYmVnaW5uZXIsIGl0IGFsbG93cyB5b3UgdG8gZWFzaWx5IGp1bXAgaW4KIGFuZCBjb2RlIHVzZWZ1bCBvYmplY3RzIHdpdGhvdXQgZXZlbiBrbm93aW5nIHdoYXQgeW91IGFyZSBkb2luZy4gIEZvciB0aGUKIGludGVybWVkaWF0ZSBwZXJzb24sIGl0IGFsbG93cyB5b3UgdG8gdHVybiBhbnkgaWRlYSB5b3UgaGF2ZSBpbnRvIHRleHR1YWwKLXZpcnR1YWwgcmVhbGl0eS4gIEFuZCBmb3IgdGhlIGFkdmFuY2VkIHBlcnNvbiwgaXTVcyBvYmplY3Qgb3JpZW50ZWQgZmVhdHVyZXMKK3ZpcnR1YWwgcmVhbGl0eS4gIEFuZCBmb3IgdGhlIGFkdmFuY2VkIHBlcnNvbiwgaXTDlXMgb2JqZWN0IG9yaWVudGVkIGZlYXR1cmVzCiBjYW4gYWxsb3cgeW91IHRvIGJ1aWxkIG9uZSBvZiB0aGUgbW9zdCBwb3B1bGFyIGdhbWVzIG9uIHRoZSBpbnRlcm5ldC4gIFdoYXQKIHlvdSBjYW4gZG8gaXMgc2ltcGx5IGxpbWl0ZWQgYnkgaG93IG11Y2ggeW91IGtub3cuICBBbmQgbGVhcm5pbmcgbW9yZQogZG9lcyBub3QgcmVxdWlyZSBhIGNvbXB1dGVyIHNjaWVuY2UgZGVncmVlLgpkaWZmIC0tZ2l0IGEvZG9jL2JhbGFuY2UvYXR0cmlidXRlIGIvZG9jL2JhbGFuY2UvYXR0cmlidXRlCmluZGV4IGMxYjdmOWIuLjdmMWRlZDggMTAwNjQ0Ci0tLSBhL2RvYy9iYWxhbmNlL2F0dHJpYnV0ZQorKysgYi9kb2MvYmFsYW5jZS9hdHRyaWJ1dGUKQEAgLTEzLDcgKzEzLDcgQEAKICAgICBWZXJhZW5kZXJ1bmdlbiBzaW5kIHZvbiBkZXIgQmFsYW5jZSB6dSBnZW5laG1pZ2VuLCBkYSBkaWVzZSBQcm9wZXJ0eSAKICAgICBtaXQgUF9NX0FUVFJfTU9EIGludGVyYWdpZXJ0LgogICAgLSBTb2xsIGVpbmUgQXR0cmlidXR2ZXJhZW5kZXJ1bmcgb2huZSBCZXJ1ZWNrc2ljaHRpZ3VuZyBkZXIgUHJvcGVydGllcwotICAgIFBfTV9BVFRSX01PRCB1bmQgUF9YX0FUVFJfTU9EIHZlcuRuZGVydCB3ZXJkZW4sIGdlc2NoaWVodCBkYXMgdWViZXIgZGllCisgICAgUF9NX0FUVFJfTU9EIHVuZCBQX1hfQVRUUl9NT0QgdmVyw6RuZGVydCB3ZXJkZW4sIGdlc2NoaWVodCBkYXMgdWViZXIgZGllCiAgICAgUHJvcGVydHkgUF9USU1FRF9BVFRSX01PRC4gCiAKIApkaWZmIC0tZ2l0IGEvZG9jL2JhbGFuY2UvYXR0cmlidXRzdmVyYWVuZGVydW5nZW4gYi9kb2MvYmFsYW5jZS9hdHRyaWJ1dHN2ZXJhZW5kZXJ1bmdlbgppbmRleCBkZGQ2YmYwLi40MjQwMWYwIDEwMDY0NAotLS0gYS9kb2MvYmFsYW5jZS9hdHRyaWJ1dHN2ZXJhZW5kZXJ1bmdlbgorKysgYi9kb2MvYmFsYW5jZS9hdHRyaWJ1dHN2ZXJhZW5kZXJ1bmdlbgpAQCAtMTMsNyArMTMsNyBAQAogICAgIFZlcmFlbmRlcnVuZ2VuIHNpbmQgdm9uIGRlciBCYWxhbmNlIHp1IGdlbmVobWlnZW4sIGRhIGRpZXNlIFByb3BlcnR5IAogICAgIG1pdCBQX01fQVRUUl9NT0QgaW50ZXJhZ2llcnQuCiAgICAtIFNvbGwgZWluZSBBdHRyaWJ1dHZlcmFlbmRlcnVuZyBvaG5lIEJlcnVlY2tzaWNodGlndW5nIGRlciBQcm9wZXJ0aWVzCi0gICAgUF9NX0FUVFJfTU9EIHVuZCBQX1hfQVRUUl9NT0QgdmVy5G5kZXJ0IHdlcmRlbiwgZ2VzY2hpZWh0IGRhcyB1ZWJlciBkaWUKKyAgICBQX01fQVRUUl9NT0QgdW5kIFBfWF9BVFRSX01PRCB2ZXLDpG5kZXJ0IHdlcmRlbiwgZ2VzY2hpZWh0IGRhcyB1ZWJlciBkaWUKICAgICBQcm9wZXJ0eSBQX1RJTUVEX0FUVFJfTU9ELiAKIAogCmRpZmYgLS1naXQgYS9kb2MvZHJpdmVyL2NvcHlyaWdodC1pc3N1ZSBiL2RvYy9kcml2ZXIvY29weXJpZ2h0LWlzc3VlCmluZGV4IDlmMDg2YTUuLjNkMmYxNGMgMTAwNjQ0Ci0tLSBhL2RvYy9kcml2ZXIvY29weXJpZ2h0LWlzc3VlCisrKyBiL2RvYy9kcml2ZXIvY29weXJpZ2h0LWlzc3VlCkBAIC0yNDYsNyArMjQ2LDcgQEAKIHNvbWV0aGluZyB0aGF0IGRvZXMgbm90IGluZnJpbmdlIG9uIHRoZSByaWdodHMgb2Ygc29tZW9uZSB3aG8gd2lsbCBub3QKIGFsbG93IGNvbW1lY2lhbCB1c2UuCiAKLUphY29iIEhhbGzpbgorSmFjb2IgSGFsbMOpbgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIApkaWZmIC0tZ2l0IGEvZG9jL2VmdW4vc2V0X25leHRfcmVzZXQgYi9kb2MvZWZ1bi9zZXRfbmV4dF9yZXNldAppbmRleCBjNGNkM2I3Li44OWUwOWM1IDEwMDY0NAotLS0gYS9kb2MvZWZ1bi9zZXRfbmV4dF9yZXNldAorKysgYi9kb2MvZWZ1bi9zZXRfbmV4dF9yZXNldApAQCAtOSw3ICs5LDcgQEAKICAgICAgT2JqZWt0ZXMgenUgbmVobWVuOgogCiAgICAgIERhcyBPYmpla3QgYmVrb21tdCBlaW5lbiByZXNldCgpLUF1ZnJ1ZiBmcnVlaGVzdGVucyBpbiA8ZGVsYXk+IFNla3VuZGVuLgotICAgICBCZWkgQW5nYWJlIGVpbmVzIFdlcnRlcyA8MCB3aXJkIGRlciByZXNldCgpIGb8ciBkYXMgT2JqZWt0IGFiZ2VzY2hhbHRldCwKKyAgICAgQmVpIEFuZ2FiZSBlaW5lcyBXZXJ0ZXMgPDAgd2lyZCBkZXIgcmVzZXQoKSBmw7xyIGRhcyBPYmpla3QgYWJnZXNjaGFsdGV0LAogICAgICB3YXMgZnVlciBCbHVlcHJpbnRzIGdlbGVnZW50bGljaCBzaW5udm9sbCBpc3QuCiAKICAgICAgSW50ZXJuIHdpcmQgaW4gZ2xlaWNoYmxlaWJlbmRlbiBBYnN0YWVuZGVuIChkZXJ6ZWl0OiBpbiBkZXIgUmVnZWwgMnMsCmRpZmYgLS1naXQgYS9kb2MvaGVscC92ZXJlaW4gYi9kb2MvaGVscC92ZXJlaW4KaW5kZXggYmZiMGUxMC4uOWJiNzZjNSAxMDA2NDQKLS0tIGEvZG9jL2hlbHAvdmVyZWluCisrKyBiL2RvYy9oZWxwL3ZlcmVpbgpAQCAtNDAsMjcgKzQwLDI3IEBACiAgICAgICAgICAgICAgICAgICAgNDQzMjkgRG9ydG11bmQKIAkKIDIuIFZvcnNpdHplbmRlcjogICBHbG9pbnNvbgotICAgICAgICAgICAgICAgICAgIEFidC1UaG9tYXMtU3RyLqA0MAotICAgICAgICAgICAgICAgICAgIDg4NjgyoFNhbGVtoAorICAgICAgICAgICAgICAgICAgIEFidC1UaG9tYXMtU3RyLsKgNDAKKyAgICAgICAgICAgICAgICAgICA4ODY4MsKgU2FsZW3CoAogICAKICAgS2Fzc2Vud2FydDogICAgICBNdW5kcm9uCiAgICAgICAgICAgICAgICAgICAgVGlib3IgS292YWNzCi0gICAgICAgICAgICAgICAgICAgTHVkd2lnc3RyYd9loDEzCi0gICAgICAgICAgICAgICAgICAgMzU0MTWgUG9obGhlaW0KKyAgICAgICAgICAgICAgICAgICBMdWR3aWdzdHJhw59lwqAxMworICAgICAgICAgICAgICAgICAgIDM1NDE1wqBQb2hsaGVpbQogCiBTY2hyaWZ0ZnVlaHJlcjogICAgR3VhcmQKICAgICAgICAgICAgICAgICAgICBSZW5lIFdhZWNodGVyCi0gICAgICAgICAgICAgICAgICAgS29lbGxuaXNjaGUgU3RyLqA0NQotICAgICAgICAgICAgICAgICAgIDEyNDM5oEJlcmxpbgorICAgICAgICAgICAgICAgICAgIEtvZWxsbmlzY2hlIFN0ci7CoDQ1CisgICAgICAgICAgICAgICAgICAgMTI0MznCoEJlcmxpbgogICAgICAgICAgICAgICAgICAgIChPZmZpemllbGxlIFZlcmVpbnNhZHJlc3NlCiAKIFVuc2VyZSBLb250b3ZlcmJpbmR1bmc6CiAKLUlCQU46IERFMDmgMjgwMqAwMDUwoDkyMDSgMTQxN6AwMAorSUJBTjogREUwOcKgMjgwMsKgMDA1MMKgOTIwNMKgMTQxN8KgMDAKIFNXSUZULUJJQzogT0xCT0RFSDJYWFgKIEtvbnRvbnVtbWVyOiA5MjA0MTQxNzAwCiBPbGRlbmJ1cmdpc2NoZSBMYW5kZXNiYW5rIEFHCi1CTFo6IDI4MKAyMDCgNTAgCitCTFo6IDI4MMKgMjAwwqA1MCAKIAogQmVpIEZyYWdlbiB1ZWJlciBkZW4gVmVyZWluIGtvZW5udCBJaHIgRXVjaCBkaXJla3QgYW4gZWluZSBkaWVzZXIgdmllcgogUGVyc29uZW4gd2VuZGVuLiBJaHIgZXJyZWljaHQgYWxsZSBWb3JzdGFuZHNtaXRnbGllZGVyIGF1Y2ggcGVyIEUtTWFpbApkaWZmIC0tZ2l0IGEvZG9jL2xmdW4vQWRkVkl0ZW0gYi9kb2MvbGZ1bi9BZGRWSXRlbQppbmRleCAyMjU5YWQ2Li5iNDZiMjk3IDEwMDY0NAotLS0gYS9kb2MvbGZ1bi9BZGRWSXRlbQorKysgYi9kb2MvbGZ1bi9BZGRWSXRlbQpAQCAtNiw4ICs2LDkgQEAKIEZVTktUSU9OCiA9PT09PT09PQogCi0gICBwdWJsaWMgdmFyYXJncyB2b2lkIEFkZHZJdGVtKHN0cmluZyBrZXksIGludCByZWZyZXNoLCBtYXBwaW5nIHNoYWRvd3Byb3BzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcgcGF0aCwgbWFwcGluZyBwcm9wcykKKyAgIHB1YmxpYyB2YXJhcmdzIHZvaWQgQWRkdkl0ZW0oc3RyaW5nIGtleSwgaW50IHJlZnJlc2gsIG1hcHBpbmcKKyAgIHNoYWRvd3Byb3BzLAorICAgICAgc3RyaW5nIHBhdGgsIG1hcHBpbmcgcHJvcHMpCiAKIAogREVGSU5JRVJUIElOCkBAIC0yMCwyOSArMjEsMzUgQEAKID09PT09PT09PQogCiAgICBrZXkKLSAgICAgRWluZGV1dGlnZSBCZXplaWNobnVuZyBkZXMgdkl0ZW1zIHVuZCBtaXQgZGllc2VyIHdpZWRlciBsb2VzY2hiYXIuIERhcwotICAgICB2SXRlbSB3aXJkIGltIFJhdW0gYXVjaCB1bnRlciBkaWVzZXIgSUQgYW5zcHJlY2hiYXIgc2Vpbi4KKyAgICAgIEVpbmRldXRpZ2UgQmV6ZWljaG51bmcgZGVzIHZJdGVtcyB1bmQgbWl0IGRpZXNlciB3aWVkZXIKKyAgICAgIGxvZXNjaGJhci4gRGFzIHZJdGVtIHdpcmQgaW0gUmF1bSBhdWNoIHVudGVyIGRpZXNlciBJRAorICAgICAgYW5zcHJlY2hiYXIgc2Vpbi4KKwogICAgcmVmcmVzaAotICAgICBSZWZyZXNoZWluc3RlbGx1bmdlbiBkZXMgdkl0ZW1zLCBuYWNoZGVtIGVzIG1pdGdlbm9tbWVuIHd1cmRlCisgICAgICBSZWZyZXNoZWluc3RlbGx1bmdlbiBkZXMgdkl0ZW1zLCBuYWNoZGVtIGVzIG1pdGdlbm9tbWVuIHd1cmRlCisKICAgIHNoYWRvd3Byb3BzCi0gICAgIFByb3BlcnRpZXMgZGVzIHZJdGVtcyAqaW0gUmF1bSogKG9wdGlvbmFsLCB3ZW5uIDxwYXRoPiBnZW51dHp0KQorICAgICAgUHJvcGVydGllcyBkZXMgdkl0ZW1zICppbSBSYXVtKiAob3B0aW9uYWwsIHdlbm4gPHBhdGg+IGdlbnV0enQpCisKICAgIHBhdGgKLSAgICAgVm9ybGFnZS9UZW1wbGF0IGRlcyB2SXRlbXMgdW5kIEJsdWVwcmludCBmdWVyIENsb25lcyAob3B0aW9uYWwpCisgICAgICBWb3JsYWdlL1RlbXBsYXQgZGVzIHZJdGVtcyB1bmQgQmx1ZXByaW50IGZ1ZXIgQ2xvbmVzIChvcHRpb25hbCkKKwogICAgcHJvcHMKLSAgICAgUHJvcGVydGllcywgd2VsY2hlIGluIENsb25lcyB2b24gZGVyIFZvcmxhZ2UgZ2VzZXR6dCB3ZXJkZW4gKG9wdGlvbmFsKQorICAgICAgUHJvcGVydGllcywgd2VsY2hlIGluIENsb25lcyB2b24gZGVyIFZvcmxhZ2UgZ2VzZXR6dCB3ZXJkZW4KKyAgICAgIChvcHRpb25hbCkKIAogCiBCRVNDSFJFSUJVTkcKID09PT09PT09PT09PQogCi0gICBEZW0gQ29udGFpbmVyL1JhdW0gd2lyZCBlaW4gdmlydHVlbGxlcyBJdGVtIGhpbnp1Z2VmdWVndC4gRGllc2VzIGlzdAotICAga2VpbiBpbSBDb250YWluZXIgdm9yaGFuZGVuZXMgcmVhbGVzIE9iamVrdCwga2FubiBhYmVyICh3ZWl0Z2VoZW5kKSB3aWUgZWluCi0gICBzb2xjaGVzIHVudGVyc3VjaHQgdW5kIGJlaGFuZGVsdCB3ZXJkZW4uCisgICBEZW0gQ29udGFpbmVyL1JhdW0gd2lyZCBlaW4gdmlydHVlbGxlcyBJdGVtIGhpbnp1Z2VmdWVndC4gRGllc2VzCisgICBpc3Qga2VpbiBpbSBDb250YWluZXIgdm9yaGFuZGVuZXMgcmVhbGVzIE9iamVrdCwga2FubiBhYmVyCisgICAod2VpdGdlaGVuZCkgd2llIGVpbiBzb2xjaGVzIHVudGVyc3VjaHQgdW5kIGJlaGFuZGVsdCB3ZXJkZW4uCiAKLSAgIEZhbGxzIGRhcyB2SXRlbSBlaW4gcmVhbGVzIE9iamVrdCBhbHMgVGVtcGxhdCBoYXQgKGQuaC4gPHBhdGg+IGFuZ2VnZWJlbgotICAgd2lyZCksIGthbm4gZGFzIHZJdGVtIHN0YW5kYXJkbWFlc3NpZyBtaXRnZW5vbW1lbiB3ZXJkZW4sIGVzIHdpcmQgZGFmdWVyCi0gICBhdXRvbWF0aXNjaCBlcnpldWd0LiAoRGFzIE1pdG5laG1lbiBpc3QgYWJlciB3aWUgaW1tZXIgbWl0IFBfTk9HRVQKLSAgIHZlcmhpbmRlcmJhci4pCisgICBGYWxscyBkYXMgdkl0ZW0gZWluIHJlYWxlcyBPYmpla3QgYWxzIFRlbXBsYXQgaGF0IChkLmguIDxwYXRoPgorICAgYW5nZWdlYmVuIHdpcmQpLCBrYW5uIGRhcyB2SXRlbSBzdGFuZGFyZG1hZXNzaWcgbWl0Z2Vub21tZW4gd2VyZGVuLAorICAgZXMgd2lyZCBkYWZ1ZXIgYXV0b21hdGlzY2ggZXJ6ZXVndC4gKERhcyBNaXRuZWhtZW4gaXN0IGFiZXIgd2llCisgICBpbW1lciBtaXQgUF9OT0dFVCB2ZXJoaW5kZXJiYXIuKQogCiAgICBEYXMgTWFwcGluZyA8c2hhZG93cHJvcHM+IGVudGhhZWx0IGRpZSBQcm9wZXJ0aWVzLCB3ZWxjaGUgZGFzIHZJdGVtCiAgICBpbSBDb250YWluZXIgYmVzY2hyZWliZW4uIEhhdCBkYXMgdkl0ZW0gZWluIFRlbXBsYXQsIHdlcmRlbiBhbGxlCkBAIC01MCw1MyArNTcsNTkgQEAKICAgIFRlbXBsYXQgZW50bm9tbWVuLiBBdWYgZGllc2UgV2Vpc2Uga2FubiBtYW4gZWluZW0gT2JqZWt0IGltIFJhdW0KICAgIHVudGVyc2NoaWVkbGljaGUgRWlnZW5zY2hhZnRlbiBnZWJlbi4KIAotICAgV2lyZCBlaW4gdkl0ZW0gbWl0Z2Vub21tZW4sIHdpcmQgPHBhdGg+IGdlY2xvbnQgdW5kIGRpZSBpbSBBcmd1bWVudCA8cHJvcHM+Ci0gICBhbmdlZ2ViZW5lbiBQcm9wZXJ0aWVzIGluIGlobSBnZXNldHp0LiBBdWYgZGllc2UgV2Vpc2Uga2FubiBtYW4gZGFzCi0gICBnZW5vbW1lbmUgT2JqZWt0IG5vY2ggaW5kaXZpZHVlbGwga29uZmlndXJpZXJlbi4KKyAgIFdpcmQgZWluIHZJdGVtIG1pdGdlbm9tbWVuLCB3aXJkIDxwYXRoPiBnZWNsb250IHVuZCBkaWUgaW0gQXJndW1lbnQKKyAgIDxwcm9wcz4gYW5nZWdlYmVuZW4gUHJvcGVydGllcyBpbiBpaG0gZ2VzZXR6dC4gQXVmIGRpZXNlIFdlaXNlIGthbm4KKyAgIG1hbiBkYXMgZ2Vub21tZW5lIE9iamVrdCBub2NoIGluZGl2aWR1ZWxsIGtvbmZpZ3VyaWVyZW4uCiAKLSAgIFp1IGJlYWNodGVuIGlzdDogaW4gPHNoYWRvd3Byb3BzPiBlbnRoYWx0ZW5lIFByb3BlcnRpZXMgKmVyc2V0emVuKiAobmljaHQKLSAgIGVyZ2FlbnplbikgaW0gUmVnZWxmYWxsIGRpZWplbmlnZW4gaW0gVGVtcGxhdCAqdW5kKiBpbiA8cHJvcHM+LiBJbiA8cHJvcHM+Ci0gICBlbnRoYWx0ZW5lIFByb3BlcnRpZXMgKmVyc2V0emVuKiB3aWVkZXJ1bSBkaWVqZW5pZ2VuIGltIFRlbXBsYXQuCi0gICBBdXNuYWhtZW4gc2luZCBQcm9wZXJ0aWVzLCB3ZWxjaGUgZWluIE1hcHBpbmcgb2RlciBlaW4gQXJyYXkgZW50aGFsdGVuOgotICAgRGVyZW4gSW5oYWx0IHdpcmQgKmhpbnp1Z2VmdWVndCouIERpZXMgYmV0cmlmZnQgaW5zYmVzb25kZXJlIGRpZSBQcm9wZXJ0aWVzOgotICAgUF9ERVRBSUxTLCBQX1JFQURfREVUQUlMUywgUF9TTUVMTFMsIFBfU09VTkRTLCBQX1RPVUNIX0RFVEFJTFMsIFBfSURTLAotICAgUF9DTEFTUywgUF9BREpFQ1RJVkVTLgotICAgV2lsbCBtYW4gZGllcyBuaWNodCwga2FubiBtYW4gZGVuIFByb3BlcnR5bmFtZW4gc28gYW5nZWJlbjoKLSAgIFZJX1BST1BfUkVTRVQoUF9ERVRBSUxTKSwgd2FzIGRhenUgZnVlaHJ0LCBkYXNzIFBfREVUQUlMUyB2b3IgZGVtCi0gICBIaW56dWZ1ZWdlbiBnZWxvZXNjaHQgd2lyZC4KKyAgIFp1IGJlYWNodGVuIGlzdDogaW4gPHNoYWRvd3Byb3BzPiBlbnRoYWx0ZW5lIFByb3BlcnRpZXMgKmVyc2V0emVuKgorICAgKG5pY2h0IGVyZ2FlbnplbikgaW0gUmVnZWxmYWxsIGRpZWplbmlnZW4gaW0gVGVtcGxhdCAqdW5kKiBpbgorICAgPHByb3BzPi4gSW4gPHByb3BzPiBlbnRoYWx0ZW5lIFByb3BlcnRpZXMgKmVyc2V0emVuKiB3aWVkZXJ1bQorICAgZGllamVuaWdlbiBpbSBUZW1wbGF0LiBBdXNuYWhtZW4gc2luZCBQcm9wZXJ0aWVzLCB3ZWxjaGUgZWluCisgICBNYXBwaW5nIG9kZXIgZWluIEFycmF5IGVudGhhbHRlbjogRGVyZW4gSW5oYWx0IHdpcmQgKmhpbnp1Z2VmdWVndCouCisgICBEaWVzIGJldHJpZmZ0IGluc2Jlc29uZGVyZSBkaWUgUHJvcGVydGllczogUF9ERVRBSUxTLAorICAgUF9SRUFEX0RFVEFJTFMsIFBfU01FTExTLCBQX1NPVU5EUywgUF9UT1VDSF9ERVRBSUxTLCBQX0lEUywKKyAgIFBfQ0xBU1MsIFBfQURKRUNUSVZFUy4gV2lsbCBtYW4gZGllcyBuaWNodCwga2FubiBtYW4gZGVuCisgICBQcm9wZXJ0eW5hbWVuIHNvIGFuZ2ViZW46IFZJX1BST1BfUkVTRVQoUF9ERVRBSUxTKSwgd2FzIGRhenUKKyAgIGZ1ZWhydCwgZGFzcyBQX0RFVEFJTFMgdm9yIGRlbSBIaW56dWZ1ZWdlbiBnZWxvZXNjaHQgd2lyZC4KIAotICAgTmFjaGRlbSBlaW4gdkl0ZW0gbWl0Z2Vub21tZW4gd3VyZGUsIGlzdCBlcyBpbSBSYXVtIG5pY2h0IG1laHIgYW5zcHJlY2hiYXIuCi0gICBFcyB3aXJkIGVzIGplIG5hY2ggPHJlZnJlc2g+IHdpZWRlciB2ZXJmdWVnYmFyOgorICAgTmFjaGRlbSBlaW4gdkl0ZW0gbWl0Z2Vub21tZW4gd3VyZGUsIGlzdCBlcyBpbSBSYXVtIG5pY2h0IG1laHIKKyAgIGFuc3ByZWNoYmFyLiBFcyB3aXJkIGVzIGplIG5hY2ggPHJlZnJlc2g+IHdpZWRlciB2ZXJmdWVnYmFyOgogCi0gICAgIC0gVklfUkVGUkVTSF9OT05FCi0gICAgICAgRXMgd2lyZCBlcnN0IG5hY2ggZGVtIE5ldWxhZGVuL05ldWVyc3RlbGxlbiBkZXMgQ29udGFpbmVycyB3aWVkZXIKLSAgICAgICB2ZXJmdWVnYmFyLgotICAgICAtIFZJX1JFRlJFU0hfQUxXQVlTCi0gICAgICAgRXMgd2lyZCBtaXQgZGVtIG5hZWNoc3RlbiBSZXNldCB3aWVkZXIgdmVyZnVlZ2Jhci4gKlZvcnNpY2h0ISoKLSAgICAgLSBWSV9SRUZSRVNIX1JFTU9WRQotICAgICAgIEVzIHdpcmQgbWl0IGRlbSBuYWVjaHN0ZW4gUmVzZXQgd2llZGVyIHZlcmZ1ZWdiYXIsIHdlbm4gZGFzIGdlY2xvbnRlCi0gICAgICAgT2JqZWt0IG5pY2h0IG1laHIgaW0gUmF1bSBpc3QuCi0gICAgIC0gVklfUkVGUkVTSF9ERVNUUlVDVAotICAgICAgIEVzIHdpcmQgbWl0IGRlbSBuYWVjaHN0ZW4gUmVzZXQgd2llZGVyIHZlcmZ1ZWdiYXIsIHdlbm4gZGFzIGdlY2xvbnRlCi0gICAgICAgT2JqZWt0IG5pY2h0IG1laHIgZXhpc3RpZXJ0LgotICAgICAtIFZJX1JFRlJFU0hfTU9WRV9IT01FCi0gICAgICAgRGFzIGdlY2xvbnRlIE9iamVrdCB3aXJkIGltIG5hZWNoc3RlbiBSZXNldCAnenVydWVja2dlaG9sdCcsIGQuaC4KLSAgICAgICB6ZXJzdG9lcnQgdW5kIGRhcyB2SXRlbSBpc3Qgd2llZGVyIGltIFJhdW0gdmVyZnVlZ2Jhci4KLSAgICAgLSBWSV9SRUZSRVNIX0lOU1RBTlQKLSAgICAgICBFcyBpc3QgYWJ3ZWljaGVuZCB2b20gTm9ybWFsdmVyaGFsdGVuIHNvZm9ydCBuYWNoIE1pdG5laG1lbiB3aWVkZXIKLSAgICAgICB2ZXJmdWVnYmFyIHVuZCBtaXRuZWhtYmFyLiAqKlZvcnNpY2h0ISoqCisgICAgICAqIFZJX1JFRlJFU0hfTk9ORSBFcyB3aXJkIGVyc3QgbmFjaCBkZW0gTmV1bGFkZW4vTmV1ZXJzdGVsbGVuCisgICAgICAgIGRlcyBDb250YWluZXJzIHdpZWRlciB2ZXJmdWVnYmFyLgorCisgICAgICAqIFZJX1JFRlJFU0hfQUxXQVlTIEVzIHdpcmQgbWl0IGRlbSBuYWVjaHN0ZW4gUmVzZXQgd2llZGVyCisgICAgICAgIHZlcmZ1ZWdiYXIuICpWb3JzaWNodCEqCisKKyAgICAgICogVklfUkVGUkVTSF9SRU1PVkUgRXMgd2lyZCBtaXQgZGVtIG5hZWNoc3RlbiBSZXNldCB3aWVkZXIKKyAgICAgICAgdmVyZnVlZ2Jhciwgd2VubiBkYXMgZ2VjbG9udGUgT2JqZWt0IG5pY2h0IG1laHIgaW0gUmF1bSBpc3QuCisKKyAgICAgICogVklfUkVGUkVTSF9ERVNUUlVDVCBFcyB3aXJkIG1pdCBkZW0gbmFlY2hzdGVuIFJlc2V0IHdpZWRlcgorICAgICAgICB2ZXJmdWVnYmFyLCB3ZW5uIGRhcyBnZWNsb250ZSBPYmpla3QgbmljaHQgbWVociBleGlzdGllcnQuCisKKyAgICAgICogVklfUkVGUkVTSF9NT1ZFX0hPTUUgRGFzIGdlY2xvbnRlIE9iamVrdCB3aXJkIGltIG5hZWNoc3RlbgorICAgICAgICBSZXNldCAnenVydWVja2dlaG9sdCcsIGQuaC4gemVyc3RvZXJ0IHVuZCBkYXMgdkl0ZW0gaXN0IHdpZWRlcgorICAgICAgICBpbSBSYXVtIHZlcmZ1ZWdiYXIuCisKKyAgICAgICogVklfUkVGUkVTSF9JTlNUQU5UIEVzIGlzdCBhYndlaWNoZW5kIHZvbSBOb3JtYWx2ZXJoYWx0ZW4KKyAgICAgICAgc29mb3J0IG5hY2ggTWl0bmVobWVuIHdpZWRlciB2ZXJmdWVnYmFyIHVuZCBtaXRuZWhtYmFyLgorICAgICAgICAqKlZvcnNpY2h0ISoqCiAKIAogQkVNRVJLVU5HRU4KID09PT09PT09PT09CiAKLSAgICogdkl0ZW1zIGtvZW5uZW4gZ2VzY2hhY2h0ZWx0IHdlcmRlbiwgZmFsbHMgZXMgc2ljaCB1bSB2SXRlbXMgbWl0IFZvcmxhZ2VuCi0gICAgIGhhbmRlbHQuCi0gICAqIHZJdGVtcyBzaW5kIHZlcmhhZWx0bmlzbWFlc3NpZyBhdWZ3ZW5kaWcuIFNpZSBzb2xsdGVuIG51ciB2ZXJ3ZW5kZXQKLSAgICAgd2VyZGVuLCB3ZW5uIHNpZSBlaW5lbiBNZWhyd2VydCBnZ3VlLiBlaW5mYWNoZW4gRGV0YWlscyBoYWJlbi4gRXMgYnJpbmd0Ci0gICAgIG5pY2h0cywgamVkZXMgRGV0YWlsIGdlZ2VuIGVpbiB2SXRlbSB6dSBlcnNldHplbi4KLSAgICogRXMga2FubiBhYmVyIHByYWt0aXNjaCBzZWluLCBrb21wbGV4ZSBEZXRhaWxiYWV1bWUgYW4gZWluZW0gdkl0ZW0genUKLSAgICAgdmVyYW5rZXJuLCB3ZW5uIG1hbiBkaWVzZW4gRGV0YWlsYmF1bSBlaW4tIG9kZXIgYXVzYmxlbmRlbiB3aWxsLgorICAgKiB2SXRlbXMga29lbm5lbiBnZXNjaGFjaHRlbHQgd2VyZGVuLCBmYWxscyBlcyBzaWNoIHVtIHZJdGVtcyBtaXQKKyAgICAgVm9ybGFnZW4gaGFuZGVsdC4KKworICAgKiB2SXRlbXMgc2luZCB2ZXJoYWVsdG5pc21hZXNzaWcgYXVmd2VuZGlnLiBTaWUgc29sbHRlbiBudXIKKyAgICAgdmVyd2VuZGV0IHdlcmRlbiwgd2VubiBzaWUgZWluZW4gTWVocndlcnQgZ2d1ZS4gZWluZmFjaGVuIERldGFpbHMKKyAgICAgaGFiZW4uIEVzIGJyaW5ndCBuaWNodHMsIGplZGVzIERldGFpbCBnZWdlbiBlaW4gdkl0ZW0genUKKyAgICAgZXJzZXR6ZW4uCisKKyAgICogRXMga2FubiBhYmVyIHByYWt0aXNjaCBzZWluLCBrb21wbGV4ZSBEZXRhaWxiYWV1bWUgYW4gZWluZW0KKyAgICAgdkl0ZW0genUgdmVyYW5rZXJuLCB3ZW5uIG1hbiBkaWVzZW4gRGV0YWlsYmF1bSBlaW4tIG9kZXIKKyAgICAgYXVzYmxlbmRlbiB3aWxsLgogCiAKIEJFSVNQSUVMRQpAQCAtMTc3LDYgKzE5MCw2IEBACiBTSUVIRSBBVUNICiA9PT09PT09PT09CiAKLSAgIEFkZHZJdGVtKCksIEFkZEl0ZW0oKSwgUmVtb3ZlSXRlbSgpIC9zdGQvdml0ZW1zCisgICBBZGR2SXRlbSgpLCBBZGRJdGVtKCksIFJlbW92ZUl0ZW0oKSAqLi4vc3RkL3ZpdGVtcyoKIAogTGFzdCBtb2RpZmllZDogMDMuMDQuMjAxOSwgWmVzc3RyYQpkaWZmIC0tZ2l0IGEvZG9jL21jbWQvaW52aXMgYi9kb2MvbWNtZC9pbnZpcwppbmRleCBmYWNlMWEwLi42ZmNhMjRlIDEwMDY0NAotLS0gYS9kb2MvbWNtZC9pbnZpcworKysgYi9kb2MvbWNtZC9pbnZpcwpAQCAtNiw3ICs2LDcgQEAKICAgICBpbnZpcyBbZV0KIAogIEFSR1VNRU5URToKLSAgICBXaXJkIGRlciBQYXJhbWF0ZXIgtGVgIGFuZ2VnZWJlbiwgZXJoYWx0ZW4gZGllIE1pdHNwaWVsZXIgZGllCisgICAgV2lyZCBkZXIgUGFyYW1hdGVyIMK0ZWAgYW5nZWdlYmVuLCBlcmhhbHRlbiBkaWUgTWl0c3BpZWxlciBkaWUKICAgICBFcndhcnRlbWVsZHVuZ2VuIHdpZSBiZWltIEF1c2xvZ2dlbi4KIAogIEJFU0NIUkVJQlVORzoKZGlmZiAtLWdpdCBhL2RvYy9tY21kL3ZpcyBiL2RvYy9tY21kL3ZpcwppbmRleCBmOWYzYjkyLi45NDFjN2Q2IDEwMDY0NAotLS0gYS9kb2MvbWNtZC92aXMKKysrIGIvZG9jL21jbWQvdmlzCkBAIC02LDcgKzYsNyBAQAogICAgIHZpcyBbZV0KIAogIEFSR1VNRU5URToKLSAgICBXaXJkIGRlciBQYXJhbWF0ZXIgtGVgIGFuZ2VnZWJlbiwgZXJoYWx0ZW4gZGllIE1pdHNwaWVsZXIgZGllCisgICAgV2lyZCBkZXIgUGFyYW1hdGVyIMK0ZWAgYW5nZWdlYmVuLCBlcmhhbHRlbiBkaWUgTWl0c3BpZWxlciBkaWUKICAgICBFcndhcnRlbWVsZHVuZ2VuIHdpZSBiZWltIEVpbmxvZ2dlbi4KIAogIEJFU0NIUkVJQlVORzoKZGlmZiAtLWdpdCBhL2RvYy9zdGQvYXJtb3VyIGIvZG9jL3N0ZC9hcm1vdXIKaW5kZXggOTcyMWNmYy4uNjBlZTUyMiAxMDA2NDQKLS0tIGEvZG9jL3N0ZC9hcm1vdXIKKysrIGIvZG9jL3N0ZC9hcm1vdXIKQEAgLTM0LDcgKzM0LDcgQEAKIAogICAgICBadXNhZXR6bGljaGUgRWlnZW5zY2hhZnRlbjoKIAlQX0RBTUFHRUQJZW50aGFlbHQgZGVuIEF1c21hc3MgZGVzIFNjaGFkZW5zIGFuIFdhZmZlCi0JUF9RVUFMSVRZCXNldHpiYXI6IFF1YWxpdOR0L0hhbHRiYXJrZWl0IGRlciBXYWZmZQorCVBfUVVBTElUWQlzZXR6YmFyOiBRdWFsaXTDpHQvSGFsdGJhcmtlaXQgZGVyIFdhZmZlCiAJUF9FRkZFQ1RJVkVfQUMJc2V0emJhcjogZmFsbHMgRGVmZW5kRnVuYyBBQyBuaWNodCBzaWNoYmFyIGFlbmRlcnQKIAlQX0RBTV9UWVBFCXNldHpiYXI6IGludGVyZXNzYW50IGJlaSBLYWVtcGZlcmFuZ3JpZmZlbgogCmRpZmYgLS1naXQgYS9kb2Mvc3RkL2NvcnBzZSBiL2RvYy9zdGQvY29ycHNlCmluZGV4IGQ0ZTJkNDcuLmRjZmJhNTAgMTAwNjQ0Ci0tLSBhL2RvYy9zdGQvY29ycHNlCisrKyBiL2RvYy9zdGQvY29ycHNlCkBAIC00Myw3ICs0Myw3IEBACiAgICAgICB9CiAKICAgICAgIC8qCi0gICAgICAgKiBEYXMgaXN0IGRpZSBm/HIgImlzcyBsZWljaGUiIGF1ZmdlcnVmZW5lIEZ1bmt0aW9uLgorICAgICAgICogRGFzIGlzdCBkaWUgZsO8ciAiaXNzIGxlaWNoZSIgYXVmZ2VydWZlbmUgRnVua3Rpb24uCiAgICAgICAgKi8KICAgICAgIGludCBtYW1wZiggc3RyaW5nIHN0ciApCiAgICAgICB7CmRpZmYgLS1naXQgYS9kb2Mvc3RkL3dlYXBvbiBiL2RvYy9zdGQvd2VhcG9uCmluZGV4IDM4OTRjMDIuLmM4NTM3ZWMgMTAwNjQ0Ci0tLSBhL2RvYy9zdGQvd2VhcG9uCisrKyBiL2RvYy9zdGQvd2VhcG9uCkBAIC0zNSw3ICszNSw3IEBACiAKICAgICAgWnVzYWV0emxpY2hlIEVpZ2Vuc2NoYWZ0ZW46CiAJUF9EQU1BR0VECWVudGhhZWx0IGRlbiBBdXNtYXNzIGRlcyBTY2hhZGVucyBhbiBXYWZmZQotCVBfUVVBTElUWQlzZXR6YmFyOiBRdWFsaXTkdC9IYWx0YmFya2VpdCBkZXIgV2FmZmUKKwlQX1FVQUxJVFkJc2V0emJhcjogUXVhbGl0w6R0L0hhbHRiYXJrZWl0IGRlciBXYWZmZQogCVBfRUZGRUNUSVZFX0FDCXNldHpiYXI6IGZhbGxzIEhpdEZ1bmMgV0MgbmljaHQgc2ljaGJhciBhZW5kZXJ0CiAJUF9FRkZFQ1RJVkVfV0MJc2V0emJhcjogZmFsbHMgUGFyaWVyZW4gQUMgbmljaHQgc2ljaGJhciBhZW5kZXJ0CiAKZGlmZiAtLWdpdCBhL2RvYy93aXovc2VpbCBiL2RvYy93aXovc2VpbAppbmRleCA0MDg2ODQyLi5kMzJlNWY5IDEwMDY0NAotLS0gYS9kb2Mvd2l6L3NlaWwKKysrIGIvZG9jL3dpei9zZWlsCkBAIC0xLDQgKzEsMyBAQAotCiBEb2t1bWVudGF0aW9uIGZ1ZXIgZGFzIFN0ZC1TZWlsOiAvb2JqL3NlaWwuYwogCiBBYmhhZW5naWdrZWl0ZW46IC9zeXMvdGhpbmcvc2VpbC5oCkBAIC00NiwxNCArNDUsMTQgQEAKIAogdmFyYXJncyBpbnQgYmluZGVfc2VpbChzdHJpbmcgemllbCwgc3RyaW5nIG1zZykKIAotCVppZWwgYmVzY2hyZWlidCBkYXMgT2JqZWN0IG9kZXIgUmF1bSwgd28gZXMgZmVzdGdlYnVuZGVuIHdlcmRlbiBzb2xsCi0JbXNnIGlzdCBkaWUgQXVzZ2FiZS4gV2lyZCBtc2cgbmljaHQgZ2VzZXR6dCwgc28gd2lyZCBlaW5lIAotCSAgICBTdGFuZGFyZC1BdXNnYWJlIGF1c2dlZ2ViZW4uCisgICAgICAgIFppZWwgYmVzY2hyZWlidCBkYXMgT2JqZWN0IG9kZXIgUmF1bSwgd28gZXMgZmVzdGdlYnVuZGVuIHdlcmRlbiBzb2xsCisgICAgICAgIG1zZyBpc3QgZGllIEF1c2dhYmUuIFdpcmQgbXNnIG5pY2h0IGdlc2V0enQsIHNvIHdpcmQgZWluZSAKKyAgICAgICAgICAgIFN0YW5kYXJkLUF1c2dhYmUgYXVzZ2VnZWJlbi4KIAogdmFyYXJncyBpbnQgbG9lc2Vfc2VpbChzdHJpbmcgbXNnKQotCURhcyBTZWlsIHdpcmQgZ2Vsb2VzdCAtIGVzIHdpcmQgZGFiZWkgZGllIG1zZyBpbiBkZW4gUmF1bQorICAgICAgICBEYXMgU2VpbCB3aXJkIGdlbG9lc3QgLSBlcyB3aXJkIGRhYmVpIGRpZSBtc2cgaW4gZGVuIFJhdW0KICAgICAgICAgYXVzZ2VnZWJlbi4gSXN0IG1zZyBuaWNodCBkZWZpbmllcnQsIHdpcmQgZWluZSBTdGFuZGFyZGF1c2dhYmUKLSAgICAJZXJ6ZXVndC4KKyAgICAgICAgZXJ6ZXVndC4KIAogCiBCZWlkZSBGdW5rdGlvbmVuIHdlcmRlbiB3aXIgdm9uIGVuZW0gU3BpZWxlciBiZWhhbmRlbHQgLSBlcyB3ZXJkZW4gdGllKCkgdW5kCkBAIC02NSw0ICs2NCw1IEBACiBJc3QgZGllc2UgUHJvcGVydGllIGF1ZiAwLCBzbyBrb2VubmVuIG51ciBTcGllbGVyIGRhcyBTZWlsIGJlbnV0emVuLgogCiAKLUxldHp0ZSDEbmRlcnVuZzogMjUuNi4gR2FuZG8KK0xldHp0ZSBBZW5kZXJ1bmc6IDI1LjYuIEdhbmRvCisK