From mboxrd@z Thu Jan 1 00:00:00 1970 From: tang.junhui@zte.com.cn Subject: Re: [PATCH 09/12] multipathd: merge uevents before proccessing Date: Wed, 4 Jan 2017 11:29:17 +0800 Message-ID: References: <1482825809-9528-1-git-send-email-tang.junhui@zte.com.cn> <1482825809-9528-10-git-send-email-tang.junhui@zte.com.cn> <20170104003049.GF2732@octiron.msp.redhat.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2989332262432039216==" Return-path: In-Reply-To: <20170104003049.GF2732@octiron.msp.redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dm-devel-bounces@redhat.com Errors-To: dm-devel-bounces@redhat.com To: Benjamin Marzinski Cc: bart.vanassche@sandisk.com, dm-devel@redhat.com, mwilck@suse.com, tang.wenjun3@zte.com.cn, zhang.kai16@zte.com.cn List-Id: dm-devel.ids This is a multipart message in MIME format. --===============2989332262432039216== Content-Type: multipart/alternative; boundary="=_alternative 001322674825809E_=" This is a multipart message in MIME format. --=_alternative 001322674825809E_= Content-Type: text/plain; charset="GB2312" Content-Transfer-Encoding: base64 SGVsbG8gQmVuLA0KDQpZZXMsIGEgKl9zYWZlIGxpc3QgdHJhdmVyc2FsIG1ldGhvZCBjYW4gbWVl dCB0aGUgbmVlZHMsDQpJIHdpbGwgbW9kaWZ5IGl0IGFuZCBzaW1wbGlmeSB0aGUgY29kZXMuDQoN ClRoYW5rcywNClRhbmcgSnVuaHVpDQoNCg0KDQoNCreivP7IyzogICAgICAgICAiQmVuamFtaW4g TWFyemluc2tpIiA8Ym1hcnppbnNAcmVkaGF0LmNvbT4NCsrVvP7IyzogICAgICAgICB0YW5nLmp1 bmh1aUB6dGUuY29tLmNuLCANCrOty806ICAgdGFuZy53ZW5qdW4zQHp0ZS5jb20uY24sIHpoYW5n LmthaTE2QHp0ZS5jb20uY24sIA0KZG0tZGV2ZWxAcmVkaGF0LmNvbSwgYmFydC52YW5hc3NjaGVA c2FuZGlzay5jb20sIG13aWxja0BzdXNlLmNvbQ0KyNXG2jogICAyMDE3LzAxLzA0IDA4OjM5DQrW 98ziOiAgIFJlOiBbZG0tZGV2ZWxdIFtQQVRDSCAwOS8xMl0gbXVsdGlwYXRoZDogbWVyZ2UgdWV2 ZW50cyBiZWZvcmUgDQpwcm9jY2Vzc2luZw0Kt6K8/sjLOiBkbS1kZXZlbC1ib3VuY2VzQHJlZGhh dC5jb20NCg0KDQoNCk9uIFR1ZSwgRGVjIDI3LCAyMDE2IGF0IDA0OjAzOjI2UE0gKzA4MDAsIHRh bmcuanVuaHVpQHp0ZS5jb20uY24gd3JvdGU6DQo+IEZyb206IHRhbmcuanVuaHVpIDx0YW5nLmp1 bmh1aUB6dGUuY29tLmNuPg0KPiANCj4gVGhlc2UgdWV2ZW50cyBhcmUgZ29pbmcgdG8gYmUgbWVy Z2VkOg0KPiAxKSB1ZXZlbnRzIGNvbWUgZnJvbSBwYXRocyBhbmQNCj4gMikgdWV2ZW50cyB0eXBl IGlzIHNhbWUgYW5kDQo+IDMpIHVldmVudHMgdHlwZSBpcyBhZGRpdGlvbiBvciBkZWxldGlvbiBh bmQNCj4gNCkgdWV2ZW50cyB3d2lkIGlzIHNhbWUuDQoNClRoaXMgaXMganVzdCBhIG5pdCwgYW5k IEkgbWlnaHQgYmUgbWlzc2luZyBzb21ldGhpbmcgc3VidGxlIGhlcmUsIGJ1dCBpdA0Kc2VlbXMg bGlrZSBpbnN0ZWFkIG9mIGFkZGluZyBsaXN0X2Zvcl9zb21lX2VudHJ5X3JldmVyc2UsIGFuZCB0 aGVuDQpicmVha2luZyB0aGUgYWJzdHJhY3Rpb24gdG8gbWFudWFsbHkgZ2V0IHByZXZpb3VzIGVu dHJpZXMsIHlvdSBjb3VsZA0KaGF2ZSBqdXN0IGFkZGVkIGxpc3RfZm9yX3NvbWVfZW50cnlfcmV2 ZXJzZV9zYWZlIGluIHlvdXIgZWFybGllciBwYXRjaCwNCmFuZCBoaWQgdGhlIHdvcmsgb2YgdHJh dmVyc2luZyBhIGxpc3Qgd2hpbGUgcmVtb3ZpbmcgZWxlbWVudHMgYmVoaW5kIHRoZQ0Kd2VsbCB1 bmRlcnN0b29kIGFic3RyYWN0aW9uIG9mIGEgKl9zYWZlIGxpc3QgdHJhdmVyc2FsIG1ldGhvZC4N Cg0KLUJlbg0KDQo+IA0KPiBDaGFuZ2UtSWQ6IEkwNWVlMDU3MzkxYzA5MmFhMGM1Zjk4OWI3YTRm OWNiNTUwYmI0ZDk4DQo+IFNpZ25lZC1vZmYtYnk6IHRhbmcuanVuaHVpIDx0YW5nLmp1bmh1aUB6 dGUuY29tLmNuPg0KPiAtLS0NCj4gIGxpYm11bHRpcGF0aC91ZXZlbnQuYyB8IDEyNSANCisrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tDQo+ICAxIGZpbGUg Y2hhbmdlZCwgMTE0IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAt LWdpdCBhL2xpYm11bHRpcGF0aC91ZXZlbnQuYyBiL2xpYm11bHRpcGF0aC91ZXZlbnQuYw0KPiBp bmRleCBiMGIwNWU5Li4xMTQwNjhjIDEwMDY0NA0KPiAtLS0gYS9saWJtdWx0aXBhdGgvdWV2ZW50 LmMNCj4gKysrIGIvbGlibXVsdGlwYXRoL3VldmVudC5jDQo+IEBAIC04NSw2ICs4NSwyMCBAQCBz dHJ1Y3QgdWV2ZW50ICogYWxsb2NfdWV2ZW50ICh2b2lkKQ0KPiAgICAgICAgICAgICAgICByZXR1 cm4gdWV2Ow0KPiAgfQ0KPiANCj4gK3ZvaWQNCj4gK3VldnFfY2xlYW51cChzdHJ1Y3QgbGlzdF9o ZWFkICp0bXBxKQ0KPiArew0KPiArICAgICAgICAgICAgICBzdHJ1Y3QgdWV2ZW50ICp1ZXYsICp0 bXA7DQo+ICsNCj4gKyAgICAgICAgICAgICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKHVldiwg dG1wLCB0bXBxLCBub2RlKSB7DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0 X2RlbF9pbml0KCZ1ZXYtPm5vZGUpOw0KPiArDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpZiAodWV2LT51ZGV2KQ0KPiArIHVkZXZfZGV2aWNlX3VucmVmKHVldi0+dWRldik7DQo+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGUkVFKHVldik7DQo+ICsgICAgICAgICAg ICAgIH0NCj4gK30NCj4gKw0KPiAgYm9vbA0KPiAgdWV2ZW50X2Nhbl9kaXNjYXJkKGNoYXIgKmRl dnBhdGgsIGNoYXIgKmtlcm5lbCkNCj4gIHsNCj4gQEAgLTEyNSw2ICsxMzksMTAzIEBAIHVldmVu dF9jYW5fZGlzY2FyZChjaGFyICpkZXZwYXRoLCBjaGFyICprZXJuZWwpDQo+ICAgICAgICAgICAg ICAgIHJldHVybiBmYWxzZTsNCj4gIH0NCj4gDQo+ICtib29sDQo+ICttZXJnZV9uZWVkX3N0b3Ao c3RydWN0IHVldmVudCAqZWFybGllciwgc3RydWN0IHVldmVudCAqbGF0ZXIpDQo+ICt7DQo+ICsg ICAgICAgICAgICAgIC8qDQo+ICsgICAgICAgICAgICAgICAqIGRtIHVldmVudCBkbyBub3QgdHJ5 IHRvIG1lcmdlIHdpdGggbGVmdCB1ZXZlbnRzDQo+ICsgICAgICAgICAgICAgICAqLw0KPiArICAg ICAgICAgICAgICBpZiAoIXN0cm5jbXAobGF0ZXItPmtlcm5lbCwgImRtLSIsIDMpKQ0KPiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7DQo+ICsNCj4gKyAgICAgICAg ICAgICAgLyoNCj4gKyAgICAgICAgICAgICAgICogd2UgY2FuIG5vdCBtYWtlIGEganVnZW1lbnQg d2l0aG91dCB3d2lkLA0KPiArICAgICAgICAgICAgICAgKiBzbyBpdCBpcyBzZW5zaWJsZSB0byBz dG9wIG1lcmdpbmcNCj4gKyAgICAgICAgICAgICAgICovDQo+ICsgICAgICAgICAgICAgIGlmICgh ZWFybGllci0+d3dpZCB8fCAhbGF0ZXItPnd3aWQpDQo+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICByZXR1cm4gdHJ1ZTsNCj4gKyAgICAgICAgICAgICAgLyoNCj4gKyAgICAgICAgICAg ICAgICogdWV2ZW50cyBtZXJnaW5nIHN0b3BlZA0KPiArICAgICAgICAgICAgICAgKiB3aGVuIHdl IG1lZXQgYW4gb3Bwb3NpdGUgYWN0aW9uIHVldmVudCBmcm9tIHRoZSBzYW1lIA0KTFVOIHRvIEFW T0lEDQo+ICsgICAgICAgICAgICAgICAqICJhZGQgcGF0aDEgfHJlbW92ZSBwYXRoMSB8YWRkIHBh dGgyIHxyZW1vdmUgcGF0aDIgfGFkZCANCnBhdGgzIg0KPiArICAgICAgICAgICAgICAgKiB0byBt ZXJnZSBhcyAicmVtb3ZlIHBhdGgxLCBwYXRoMiIgYW5kICJhZGQgcGF0aDEsIA0KcGF0aDIsIHBh dGgzIg0KPiArICAgICAgICAgICAgICAgKiBPUg0KPiArICAgICAgICAgICAgICAgKiAicmVtb3Zl IHBhdGgxIHxhZGQgcGF0aDEgfHJlbW92ZSBwYXRoMiB8YWRkIHBhdGgyIA0KfHJlbW92ZSBwYXRo MyINCj4gKyAgICAgICAgICAgICAgICogdG8gbWVyZ2UgYXMgImFkZCBwYXRoMSwgcGF0aDIiIGFu ZCAicmVtb3ZlIHBhdGgxLCANCnBhdGgyLCBwYXRoMyINCj4gKyAgICAgICAgICAgICAgICogU08N Cj4gKyAgICAgICAgICAgICAgICogd2hlbiB3ZSBtZWV0IGEgbm9uLWNoYW5nZSB1ZXZlbnQgZnJv bSB0aGUgc2FtZSBMVU4NCj4gKyAgICAgICAgICAgICAgICogd2l0aCB0aGUgc2FtZSB3d2lkIGFu ZCBkaWZmZXJlbnQgYWN0aW9uDQo+ICsgICAgICAgICAgICAgICAqIGl0IHdvdWxkIGJlIGJldHRl ciB0byBzdG9wIG1lcmdpbmcuDQo+ICsgICAgICAgICAgICAgICAqLw0KPiArICAgICAgICAgICAg ICBpZiAoIXN0cmNtcChlYXJsaWVyLT53d2lkLCBsYXRlci0+d3dpZCkgJiYNCj4gKyAgICAgICAg ICAgICAgICAgIHN0cmNtcChlYXJsaWVyLT5hY3Rpb24sIGxhdGVyLT5hY3Rpb24pICYmDQo+ICsg ICAgICAgICAgICAgICAgICBzdHJjbXAoZWFybGllci0+YWN0aW9uLCAiY2hhbmdlIikgJiYNCj4g KyAgICAgICAgICAgICAgICAgIHN0cmNtcChsYXRlci0+YWN0aW9uLCAiY2hhbmdlIikpDQo+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCj4gKw0KPiArICAgICAg ICAgICAgICByZXR1cm4gZmFsc2U7DQo+ICt9DQo+ICsNCj4gK2Jvb2wNCj4gK3VldmVudF9jYW5f bWVyZ2Uoc3RydWN0IHVldmVudCAqZWFybGllciwgc3RydWN0IHVldmVudCAqbGF0ZXIpDQo+ICt7 DQo+ICsgICAgICAgICAgICAgIC8qIG1lcmdlIHBhdGhzIHVldmVudHMNCj4gKyAgICAgICAgICAg ICAgICogd2hvc2Ugd3dpZHMgZXhzaXQgYW5kIGFyZSBzYW1lDQo+ICsgICAgICAgICAgICAgICAq IGFuZCBhY3Rpb25zIGFyZSBzYW1lLA0KPiArICAgICAgICAgICAgICAgKiBhbmQgYWN0aW9ucyBh cmUgYWRkaXRpb24gb3IgZGVsZXRpb24NCj4gKyAgICAgICAgICAgICAgICovDQo+ICsgICAgICAg ICAgICAgIGlmIChlYXJsaWVyLT53d2lkICYmIGxhdGVyLT53d2lkICYmDQo+ICsgICAgICAgICAg ICAgICAgICAhc3RyY21wKGVhcmxpZXItPnd3aWQsIGxhdGVyLT53d2lkKSAmJg0KPiArICAgICAg ICAgICAgICAgICAgIXN0cmNtcChlYXJsaWVyLT5hY3Rpb24sIGxhdGVyLT5hY3Rpb24pICYmDQo+ ICsgICAgICAgICAgICAgICAgICBzdHJuY21wKGVhcmxpZXItPmFjdGlvbiwgImNoYW5nZSIsIDYp ICYmDQo+ICsgICAgICAgICAgICAgICAgICBzdHJuY21wKGVhcmxpZXItPmtlcm5lbCwgImRtLSIs IDMpKSB7DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCj4g KyAgICAgICAgICAgICAgfQ0KPiArDQo+ICsgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCj4g K30NCj4gKw0KPiArdm9pZA0KPiArdWV2ZW50X21lcmdlKHN0cnVjdCB1ZXZlbnQgKmxhdGVyLCBz dHJ1Y3QgbGlzdF9oZWFkICp0bXBxKQ0KPiArew0KPiArICAgICAgICAgICAgICBzdHJ1Y3QgdWV2 ZW50ICplYXJsaWVyLCAqdGVtcDsNCj4gKyAgICAgICAgICAgICAgLyoNCj4gKyAgICAgICAgICAg ICAgICogY29tcGFyZSB0aGUgdWV2ZW50IHdpdGggZWFybGllciB1ZXZlbnRzDQo+ICsgICAgICAg ICAgICAgICAqLw0KPiArICAgICAgICAgICAgICBsaXN0X2Zvcl9zb21lX2VudHJ5X3JldmVyc2Uo ZWFybGllciwgJmxhdGVyLT5ub2RlLCB0bXBxLCANCm5vZGUpIHsNCj4gK25leHRfZWFybGllcl9u b2RlOg0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1lcmdlX25lZWRfc3Rv cChlYXJsaWVyLCBsYXRlcikpDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgYnJlYWs7DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKg0K PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogdHJ5IHRvIG1lcmdlIGVhcmxpZXIg dWV2ZW50cyB0byB0aGUgDQpsYXRlciB1ZXZlbnQNCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAqLw0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHVldmVudF9j YW5fbWVyZ2UoZWFybGllciwgbGF0ZXIpKSB7DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgY29uZGxvZygzLCAibWVyZ2VkIA0KdWV2ZW50OiAlcy0lcy0l cyB3aXRoIHVldmVudDogJXMtJXMtJXMiLA0KPiArIGVhcmxpZXItPmFjdGlvbiwgZWFybGllci0+ a2VybmVsLCBlYXJsaWVyLT53d2lkLA0KPiArIGxhdGVyLT5hY3Rpb24sIGxhdGVyLT5rZXJuZWws IGxhdGVyLT53d2lkKTsNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB0ZW1wID0gZWFybGllcjsNCj4gKw0KPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGVhcmxpZXIgPSANCmxpc3RfZW50cnkoZWFybGllci0+bm9k ZS5wcmV2LCB0eXBlb2Yoc3RydWN0IHVldmVudCksIG5vZGUpOw0KPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RfbW92ZSgmdGVtcC0+bm9kZSwgDQom bGF0ZXItPm1lcmdlX25vZGUpOw0KPiArDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaWYgKGVhcmxpZXIgPT0gDQpsaXN0X2VudHJ5KHRtcHEsIHR5cGVv ZihzdHJ1Y3QgdWV2ZW50KSwgbm9kZSkpDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UNCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byANCm5l eHRfZWFybGllcl9ub2RlOw0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KPiAr ICAgICAgICAgICAgICB9DQo+ICt9DQo+ICsNCj4gK3ZvaWQNCj4gK21lcmdlX3VldnEoc3RydWN0 IGxpc3RfaGVhZCAqdG1wcSkNCj4gK3sNCj4gKyAgICAgICAgICAgICAgc3RydWN0IHVldmVudCAq bGF0ZXI7DQo+ICsNCj4gKyAgICAgICAgICAgICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9yZXZlcnNl KGxhdGVyLCB0bXBxLCBub2RlKSB7DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 ZXZlbnRfbWVyZ2UobGF0ZXIsIHRtcHEpOw0KPiArICAgICAgICAgICAgICB9DQo+ICt9DQo+ICsN Cj4gIHZvaWQNCj4gIHNlcnZpY2VfdWV2cShzdHJ1Y3QgbGlzdF9oZWFkICp0bXBxKQ0KPiAgew0K PiBAQCAtMTM2LDYgKzI0Nyw4IEBAIHNlcnZpY2VfdWV2cShzdHJ1Y3QgbGlzdF9oZWFkICp0bXBx KQ0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG15X3Vldl90cmlnZ2VyICYm IG15X3Vldl90cmlnZ2VyKHVldiwgDQpteV90cmlnZ2VyX2RhdGEpKQ0KPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRsb2coMCwgInVldmVudCANCnRy aWdnZXIgZXJyb3IiKTsNCj4gDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1ZXZx X2NsZWFudXAoJnVldi0+bWVyZ2Vfbm9kZSk7DQo+ICsNCj4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGlmICh1ZXYtPnVkZXYpDQo+IHVkZXZfZGV2aWNlX3VucmVmKHVldi0+dWRldik7 DQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGUkVFKHVldik7DQo+IEBAIC0xNTAs MTcgKzI2Myw2IEBAIHN0YXRpYyB2b2lkIHVldmVudF9jbGVhbnVwKHZvaWQgKmFyZykNCj4gICAg ICAgICAgICAgICAgdWRldl91bnJlZih1ZGV2KTsNCj4gIH0NCj4gDQo+IC12b2lkDQo+IC11ZXZx X2NsZWFudXAoc3RydWN0IGxpc3RfaGVhZCAqdG1wcSkNCj4gLXsNCj4gLSAgICAgICAgICAgICAg c3RydWN0IHVldmVudCAqdWV2LCAqdG1wOw0KPiAtDQo+IC0gICAgICAgICAgICAgIGxpc3RfZm9y X2VhY2hfZW50cnlfc2FmZSh1ZXYsIHRtcCwgdG1wcSwgbm9kZSkgew0KPiAtICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbGlzdF9kZWxfaW5pdCgmdWV2LT5ub2RlKTsNCj4gLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEZSRUUodWV2KTsNCj4gLSAgICAgICAgICAgICAgfQ0KPiAt fQ0KPiAtDQo+ICAvKg0KPiAgICogU2VydmljZSB0aGUgdWV2ZW50IHF1ZXVlLg0KPiAgICovDQo+ IEBAIC0xODksNiArMjkxLDcgQEAgaW50IHVldmVudF9kaXNwYXRjaChpbnQgKCp1ZXZfdHJpZ2dl cikoc3RydWN0IHVldmVudCANCiosIHZvaWQgKiB0cmlnZ2VyX2RhdGEpLA0KPiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcHRocmVhZF9tdXRleF91bmxvY2sodWV2cV9sb2NrcCk7DQo+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIW15X3Vldl90cmlnZ2VyKQ0KPiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVyZ2VfdWV2cSgmdWV2cV90bXApOw0KPiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VydmljZV91ZXZxKCZ1ZXZxX3RtcCk7DQo+ ICAgICAgICAgICAgICAgIH0NCj4gICAgICAgICAgICAgICAgY29uZGxvZygzLCAiVGVybWluYXRp bmcgdWV2IHNlcnZpY2UgcXVldWUiKTsNCj4gLS0gDQo+IDIuOC4xLndpbmRvd3MuMQ0KPiANCg0K LS0NCmRtLWRldmVsIG1haWxpbmcgbGlzdA0KZG0tZGV2ZWxAcmVkaGF0LmNvbQ0KaHR0cHM6Ly93 d3cucmVkaGF0LmNvbS9tYWlsbWFuL2xpc3RpbmZvL2RtLWRldmVsDQoNCg0KDQo= --=_alternative 001322674825809E_= Content-Type: text/html; charset="GB2312" Content-Transfer-Encoding: base64 PGZvbnQgc2l6ZT0yIGZhY2U9InNhbnMtc2VyaWYiPkhlbGxvIEJlbiw8L2ZvbnQ+DQo8YnI+DQo8 YnI+PGZvbnQgc2l6ZT0yIGZhY2U9InNhbnMtc2VyaWYiPlllcywgPC9mb250Pjx0dD48Zm9udCBz aXplPTI+YSAqX3NhZmUNCmxpc3QgdHJhdmVyc2FsIG1ldGhvZCBjYW4gbWVldCB0aGUgbmVlZHMs PC9mb250PjwvdHQ+DQo8YnI+PHR0Pjxmb250IHNpemU9Mj5JIHdpbGwgbW9kaWZ5IGl0IGFuZCBz aW1wbGlmeSB0aGUgY29kZXMuPC9mb250PjwvdHQ+DQo8YnI+DQo8YnI+PHR0Pjxmb250IHNpemU9 Mj5UaGFua3MsPC9mb250PjwvdHQ+DQo8YnI+PHR0Pjxmb250IHNpemU9Mj5UYW5nIEp1bmh1aTwv Zm9udD48L3R0Pg0KPGJyPg0KPGJyPg0KPGJyPg0KPGJyPg0KPGJyPjxmb250IHNpemU9MSBjb2xv cj0jNWY1ZjVmIGZhY2U9InNhbnMtc2VyaWYiPreivP7IyzogJm5ic3A7ICZuYnNwOw0KJm5ic3A7 ICZuYnNwOyA8L2ZvbnQ+PGZvbnQgc2l6ZT0xIGZhY2U9InNhbnMtc2VyaWYiPiZxdW90O0Jlbmph bWluDQpNYXJ6aW5za2kmcXVvdDsgJmx0O2JtYXJ6aW5zQHJlZGhhdC5jb20mZ3Q7PC9mb250Pg0K PGJyPjxmb250IHNpemU9MSBjb2xvcj0jNWY1ZjVmIGZhY2U9InNhbnMtc2VyaWYiPsrVvP7Iyzog Jm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNwOyA8L2ZvbnQ+PGZvbnQgc2l6ZT0xIGZhY2U9InNh bnMtc2VyaWYiPnRhbmcuanVuaHVpQHp0ZS5jb20uY24sDQo8L2ZvbnQ+DQo8YnI+PGZvbnQgc2l6 ZT0xIGNvbG9yPSM1ZjVmNWYgZmFjZT0ic2Fucy1zZXJpZiI+s63LzTogJm5ic3A7ICZuYnNwOw0K Jm5ic3A7ICZuYnNwOzwvZm9udD48Zm9udCBzaXplPTEgZmFjZT0ic2Fucy1zZXJpZiI+dGFuZy53 ZW5qdW4zQHp0ZS5jb20uY24sDQp6aGFuZy5rYWkxNkB6dGUuY29tLmNuLCBkbS1kZXZlbEByZWRo YXQuY29tLCBiYXJ0LnZhbmFzc2NoZUBzYW5kaXNrLmNvbSwNCm13aWxja0BzdXNlLmNvbTwvZm9u dD4NCjxicj48Zm9udCBzaXplPTEgY29sb3I9IzVmNWY1ZiBmYWNlPSJzYW5zLXNlcmlmIj7I1cba OiAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7IDwvZm9udD48Zm9udCBzaXplPTEgZmFjZT0i c2Fucy1zZXJpZiI+MjAxNy8wMS8wNA0KMDg6Mzk8L2ZvbnQ+DQo8YnI+PGZvbnQgc2l6ZT0xIGNv bG9yPSM1ZjVmNWYgZmFjZT0ic2Fucy1zZXJpZiI+1vfM4jogJm5ic3A7ICZuYnNwOw0KJm5ic3A7 ICZuYnNwOzwvZm9udD48Zm9udCBzaXplPTEgZmFjZT0ic2Fucy1zZXJpZiI+UmU6IFtkbS1kZXZl bF0NCltQQVRDSCAwOS8xMl0gbXVsdGlwYXRoZDogbWVyZ2UgdWV2ZW50cyBiZWZvcmUgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7cHJvY2Nlc3Npbmc8L2ZvbnQ+DQo8YnI+PGZvbnQgc2l6ZT0x IGNvbG9yPSM1ZjVmNWYgZmFjZT0ic2Fucy1zZXJpZiI+t6K8/sjLOiAmbmJzcDsgJm5ic3A7DQom bmJzcDsgJm5ic3A7PC9mb250Pjxmb250IHNpemU9MSBmYWNlPSJzYW5zLXNlcmlmIj5kbS1kZXZl bC1ib3VuY2VzQHJlZGhhdC5jb208L2ZvbnQ+DQo8YnI+DQo8aHIgbm9zaGFkZT4NCjxicj4NCjxi cj4NCjxicj48dHQ+PGZvbnQgc2l6ZT0yPk9uIFR1ZSwgRGVjIDI3LCAyMDE2IGF0IDA0OjAzOjI2 UE0gKzA4MDAsIHRhbmcuanVuaHVpQHp0ZS5jb20uY24NCndyb3RlOjxicj4NCiZndDsgRnJvbTog dGFuZy5qdW5odWkgJmx0O3RhbmcuanVuaHVpQHp0ZS5jb20uY24mZ3Q7PGJyPg0KJmd0OyA8YnI+ DQomZ3Q7IFRoZXNlIHVldmVudHMgYXJlIGdvaW5nIHRvIGJlIG1lcmdlZDo8YnI+DQomZ3Q7IDEp IHVldmVudHMgY29tZSBmcm9tIHBhdGhzIGFuZDxicj4NCiZndDsgMikgdWV2ZW50cyB0eXBlIGlz IHNhbWUgYW5kPGJyPg0KJmd0OyAzKSB1ZXZlbnRzIHR5cGUgaXMgYWRkaXRpb24gb3IgZGVsZXRp b24gYW5kPGJyPg0KJmd0OyA0KSB1ZXZlbnRzIHd3aWQgaXMgc2FtZS48YnI+DQo8YnI+DQpUaGlz IGlzIGp1c3QgYSBuaXQsIGFuZCBJIG1pZ2h0IGJlIG1pc3Npbmcgc29tZXRoaW5nIHN1YnRsZSBo ZXJlLCBidXQgaXQ8YnI+DQpzZWVtcyBsaWtlIGluc3RlYWQgb2YgYWRkaW5nIGxpc3RfZm9yX3Nv bWVfZW50cnlfcmV2ZXJzZSwgYW5kIHRoZW48YnI+DQpicmVha2luZyB0aGUgYWJzdHJhY3Rpb24g dG8gbWFudWFsbHkgZ2V0IHByZXZpb3VzIGVudHJpZXMsIHlvdSBjb3VsZDxicj4NCmhhdmUganVz dCBhZGRlZCBsaXN0X2Zvcl9zb21lX2VudHJ5X3JldmVyc2Vfc2FmZSBpbiB5b3VyIGVhcmxpZXIg cGF0Y2gsPGJyPg0KYW5kIGhpZCB0aGUgd29yayBvZiB0cmF2ZXJzaW5nIGEgbGlzdCB3aGlsZSBy ZW1vdmluZyBlbGVtZW50cyBiZWhpbmQgdGhlPGJyPg0Kd2VsbCB1bmRlcnN0b29kIGFic3RyYWN0 aW9uIG9mIGEgKl9zYWZlIGxpc3QgdHJhdmVyc2FsIG1ldGhvZC48YnI+DQo8YnI+DQotQmVuPGJy Pg0KPGJyPg0KJmd0OyA8YnI+DQomZ3Q7IENoYW5nZS1JZDogSTA1ZWUwNTczOTFjMDkyYWEwYzVm OTg5YjdhNGY5Y2I1NTBiYjRkOTg8YnI+DQomZ3Q7IFNpZ25lZC1vZmYtYnk6IHRhbmcuanVuaHVp ICZsdDt0YW5nLmp1bmh1aUB6dGUuY29tLmNuJmd0Ozxicj4NCiZndDsgLS0tPGJyPg0KJmd0OyAm bmJzcDtsaWJtdWx0aXBhdGgvdWV2ZW50LmMgfCAxMjUgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrLS0tLS08YnI+DQomZ3Q7ICZuYnNwOzEgZmlsZSBjaGFuZ2Vk LCAxMTQgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pPGJyPg0KJmd0OyA8YnI+DQomZ3Q7 IGRpZmYgLS1naXQgYS9saWJtdWx0aXBhdGgvdWV2ZW50LmMgYi9saWJtdWx0aXBhdGgvdWV2ZW50 LmM8YnI+DQomZ3Q7IGluZGV4IGIwYjA1ZTkuLjExNDA2OGMgMTAwNjQ0PGJyPg0KJmd0OyAtLS0g YS9saWJtdWx0aXBhdGgvdWV2ZW50LmM8YnI+DQomZ3Q7ICsrKyBiL2xpYm11bHRpcGF0aC91ZXZl bnQuYzxicj4NCiZndDsgQEAgLTg1LDYgKzg1LDIwIEBAIHN0cnVjdCB1ZXZlbnQgKiBhbGxvY191 ZXZlbnQgKHZvaWQpPGJyPg0KJmd0OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KcmV0dXJuIHVldjs8YnI+DQomZ3Q7ICZuYnNw O308YnI+DQomZ3Q7ICZuYnNwOzxicj4NCiZndDsgK3ZvaWQ8YnI+DQomZ3Q7ICt1ZXZxX2NsZWFu dXAoc3RydWN0IGxpc3RfaGVhZCAqdG1wcSk8YnI+DQomZ3Q7ICt7PGJyPg0KJmd0OyArICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCnN0cnVj dCB1ZXZlbnQgKnVldiwgKnRtcDs8YnI+DQomZ3Q7ICs8YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KbGlzdF9mb3JfZWFj aF9lbnRyeV9zYWZlKHVldiwgdG1wLCB0bXBxLCBub2RlKSB7PGJyPg0KJmd0OyArICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7bGlz dF9kZWxfaW5pdCgmYW1wO3Vldi0mZ3Q7bm9kZSk7PGJyPg0KJmd0OyArPGJyPg0KJmd0OyArICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7aWYNCih1ZXYtJmd0O3VkZXYpPGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQp1ZGV2X2RldmljZV91bnJl Zih1ZXYtJmd0O3VkZXYpOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO0ZSRUUodWV2KTs8YnI+DQomZ3Q7ICsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0K fTxicj4NCiZndDsgK308YnI+DQomZ3Q7ICs8YnI+DQomZ3Q7ICZuYnNwO2Jvb2w8YnI+DQomZ3Q7 ICZuYnNwO3VldmVudF9jYW5fZGlzY2FyZChjaGFyICpkZXZwYXRoLCBjaGFyICprZXJuZWwpPGJy Pg0KJmd0OyAmbmJzcDt7PGJyPg0KJmd0OyBAQCAtMTI1LDYgKzEzOSwxMDMgQEAgdWV2ZW50X2Nh bl9kaXNjYXJkKGNoYXIgKmRldnBhdGgsIGNoYXIgKmtlcm5lbCk8YnI+DQomZ3Q7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQpy ZXR1cm4gZmFsc2U7PGJyPg0KJmd0OyAmbmJzcDt9PGJyPg0KJmd0OyAmbmJzcDs8YnI+DQomZ3Q7 ICtib29sPGJyPg0KJmd0OyArbWVyZ2VfbmVlZF9zdG9wKHN0cnVjdCB1ZXZlbnQgKmVhcmxpZXIs IHN0cnVjdCB1ZXZlbnQgKmxhdGVyKTxicj4NCiZndDsgK3s8YnI+DQomZ3Q7ICsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KLyo8YnI+DQom Z3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOw0KJm5ic3A7KiBkbSB1ZXZlbnQgZG8gbm90IHRyeSB0byBtZXJnZSB3aXRoIGxlZnQgdWV2 ZW50czxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7DQombmJzcDsqLzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQppZiAoIXN0cm5jbXAobGF0ZXIt Jmd0O2tlcm5lbCwgJnF1b3Q7ZG0tJnF1b3Q7LCAzKSk8YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtyZXR1cm4N CnRydWU7PGJyPg0KJmd0OyArPGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCi8qPGJyPg0KJmd0OyArICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyogd2Ug Y2FuIG5vdCBtYWtlIGEganVnZW1lbnQgd2l0aG91dCB3d2lkLDxicj4NCiZndDsgKyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsq IHNvIGl0IGlzIHNlbnNpYmxlIHRvIHN0b3AgbWVyZ2luZzxicj4NCiZndDsgKyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsqLzxi cj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7DQppZiAoIWVhcmxpZXItJmd0O3d3aWQgfHwgIWxhdGVyLSZndDt3d2lkKTxicj4N CiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwO3JldHVybg0KdHJ1ZTs8YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KLyo8YnI+DQomZ3Q7ICsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5i c3A7KiB1ZXZlbnRzIG1lcmdpbmcgc3RvcGVkPGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyogd2hlbiB3ZSBt ZWV0IGFuIG9wcG9zaXRlIGFjdGlvbiB1ZXZlbnQgZnJvbSB0aGUgc2FtZSBMVU4gdG8gQVZPSUQ8 YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOw0KJm5ic3A7KiAmcXVvdDthZGQgcGF0aDEgfHJlbW92ZSBwYXRoMSB8YWRkIHBh dGgyIHxyZW1vdmUgcGF0aDIgfGFkZCBwYXRoMyZxdW90Ozxicj4NCiZndDsgKyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsqIHRv IG1lcmdlIGFzICZxdW90O3JlbW92ZSBwYXRoMSwgcGF0aDImcXVvdDsgYW5kICZxdW90O2FkZCBw YXRoMSwNCnBhdGgyLCBwYXRoMyZxdW90Ozxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsqIE9SPGJyPg0KJmd0 OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsNCiZuYnNwOyogJnF1b3Q7cmVtb3ZlIHBhdGgxIHxhZGQgcGF0aDEgfHJlbW92ZSBwYXRoMiB8 YWRkIHBhdGgyIHxyZW1vdmUNCnBhdGgzJnF1b3Q7PGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyogdG8gbWVy Z2UgYXMgJnF1b3Q7YWRkIHBhdGgxLCBwYXRoMiZxdW90OyBhbmQgJnF1b3Q7cmVtb3ZlIHBhdGgx LA0KcGF0aDIsIHBhdGgzJnF1b3Q7PGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyogU088YnI+DQomZ3Q7ICsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0K Jm5ic3A7KiB3aGVuIHdlIG1lZXQgYSBub24tY2hhbmdlIHVldmVudCBmcm9tIHRoZSBzYW1lIExV Tjxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7DQombmJzcDsqIHdpdGggdGhlIHNhbWUgd3dpZCBhbmQgZGlmZmVyZW50IGFj dGlvbjxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7DQombmJzcDsqIGl0IHdvdWxkIGJlIGJldHRlciB0byBzdG9wIG1lcmdp bmcuPGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyovPGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCmlmICghc3RyY21wKGVhcmxpZXIt Jmd0O3d3aWQsIGxhdGVyLSZndDt3d2lkKSAmYW1wOyZhbXA7PGJyPg0KJmd0OyArICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAm bmJzcDsgc3RyY21wKGVhcmxpZXItJmd0O2FjdGlvbiwgbGF0ZXItJmd0O2FjdGlvbikgJmFtcDsm YW1wOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7IHN0cmNtcChlYXJsaWVyLSZndDthY3Rpb24s ICZxdW90O2NoYW5nZSZxdW90OykgJmFtcDsmYW1wOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7 IHN0cmNtcChsYXRlci0mZ3Q7YWN0aW9uLCAmcXVvdDtjaGFuZ2UmcXVvdDspKTxicj4NCiZndDsg KyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwO3JldHVybg0KdHJ1ZTs8YnI+DQomZ3Q7ICs8YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KcmV0dXJuIGZhbHNl Ozxicj4NCiZndDsgK308YnI+DQomZ3Q7ICs8YnI+DQomZ3Q7ICtib29sPGJyPg0KJmd0OyArdWV2 ZW50X2Nhbl9tZXJnZShzdHJ1Y3QgdWV2ZW50ICplYXJsaWVyLCBzdHJ1Y3QgdWV2ZW50ICpsYXRl cik8YnI+DQomZ3Q7ICt7PGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCi8qIG1lcmdlIHBhdGhzIHVldmVudHM8YnI+DQom Z3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOw0KJm5ic3A7KiB3aG9zZSB3d2lkcyBleHNpdCBhbmQgYXJlIHNhbWU8YnI+DQomZ3Q7ICsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0K Jm5ic3A7KiBhbmQgYWN0aW9ucyBhcmUgc2FtZSw8YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7KiBhbmQgYWN0 aW9ucyBhcmUgYWRkaXRpb24gb3IgZGVsZXRpb248YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7Ki88YnI+DQom Z3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOw0KaWYgKGVhcmxpZXItJmd0O3d3aWQgJmFtcDsmYW1wOyBsYXRlci0mZ3Q7d3dpZCAmYW1w OyZhbXA7PGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgIXN0cmNtcChlYXJsaWVyLSZndDt3d2lk LCBsYXRlci0mZ3Q7d3dpZCkgJmFtcDsmYW1wOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICFz dHJjbXAoZWFybGllci0mZ3Q7YWN0aW9uLCBsYXRlci0mZ3Q7YWN0aW9uKSAmYW1wOyZhbXA7PGJy Pg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgc3RybmNtcChlYXJsaWVyLSZndDthY3Rpb24sICZxdW90 O2NoYW5nZSZxdW90OywgNikgJmFtcDsmYW1wOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7IHN0 cm5jbXAoZWFybGllci0mZ3Q7a2VybmVsLCAmcXVvdDtkbS0mcXVvdDssIDMpKSB7PGJyPg0KJmd0 OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7cmV0dXJuDQp0cnVlOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQp9PGJyPg0KJmd0OyArPGJyPg0KJmd0 OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsNCnJldHVybiBmYWxzZTs8YnI+DQomZ3Q7ICt9PGJyPg0KJmd0OyArPGJyPg0KJmd0OyArdm9p ZDxicj4NCiZndDsgK3VldmVudF9tZXJnZShzdHJ1Y3QgdWV2ZW50ICpsYXRlciwgc3RydWN0IGxp c3RfaGVhZCAqdG1wcSk8YnI+DQomZ3Q7ICt7PGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCnN0cnVjdCB1ZXZlbnQgKmVh cmxpZXIsICp0ZW1wOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQovKjxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsqIGNvbXBhcmUg dGhlIHVldmVudCB3aXRoIGVhcmxpZXIgdWV2ZW50czxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsqLzxicj4N CiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7DQpsaXN0X2Zvcl9zb21lX2VudHJ5X3JldmVyc2UoZWFybGllciwgJmFtcDtsYXRlci0m Z3Q7bm9kZSwgdG1wcSwgbm9kZSkgezxicj4NCiZndDsgK25leHRfZWFybGllcl9ub2RlOjxicj4N CiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwO2lmDQoobWVyZ2VfbmVlZF9zdG9wKGVhcmxpZXIsIGxhdGVyKSk8YnI+DQom Z3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOw0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsNCmJyZWFrOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOy8qPGJyPg0KJmd0OyArICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 DQoqIHRyeSB0byBtZXJnZSBlYXJsaWVyIHVldmVudHMgdG8gdGhlIGxhdGVyIHVldmVudDxicj4N CiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOw0KKi88YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtpZg0KKHVldmVudF9jYW5fbWVyZ2Uo ZWFybGllciwgbGF0ZXIpKSB7PGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQpjb25kbG9nKDMsICZxdW90O21l cmdlZCB1ZXZlbnQ6ICVzLSVzLSVzIHdpdGggdWV2ZW50OiAlcy0lcy0lcyZxdW90Oyw8YnI+DQom Z3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOw0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ZWFybGllci0mZ3Q7YWN0aW9uLA0KZWFybGllci0mZ3Q7a2VybmVs LCBlYXJsaWVyLSZndDt3d2lkLDxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtsYXRlci0mZ3Q7YWN0 aW9uLA0KbGF0ZXItJmd0O2tlcm5lbCwgbGF0ZXItJmd0O3d3aWQpOzxicj4NCiZndDsgKyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw Ow0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw Ow0KdGVtcCA9IGVhcmxpZXI7PGJyPg0KJmd0OyArPGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQplYXJsaWVy ID0gbGlzdF9lbnRyeShlYXJsaWVyLSZndDtub2RlLnByZXYsIHR5cGVvZihzdHJ1Y3QgdWV2ZW50 KSwgbm9kZSk7PGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQpsaXN0X21vdmUoJmFtcDt0ZW1wLSZndDtub2Rl LCAmYW1wO2xhdGVyLSZndDttZXJnZV9ub2RlKTs8YnI+DQomZ3Q7ICs8YnI+DQomZ3Q7ICsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsNCmlmIChlYXJsaWVyID09ICZuYnNwO2xpc3RfZW50cnkodG1wcSwgdHlwZW9mKHN0cnVjdCB1 ZXZlbnQpLCBub2RlKSk8YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7YnJlYWs7PGJyPg0KJmd0OyAr ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsN CiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7DQplbHNlPGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO2dvdG8NCm5leHRfZWFybGllcl9u b2RlOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwO308YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KfTxicj4NCiZndDsgK308YnI+DQom Z3Q7ICs8YnI+DQomZ3Q7ICt2b2lkPGJyPg0KJmd0OyArbWVyZ2VfdWV2cShzdHJ1Y3QgbGlzdF9o ZWFkICp0bXBxKTxicj4NCiZndDsgK3s8YnI+DQomZ3Q7ICsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0Kc3RydWN0IHVldmVudCAqbGF0ZXI7 PGJyPg0KJmd0OyArPGJyPg0KJmd0OyArICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCmxpc3RfZm9yX2VhY2hfZW50cnlfcmV2ZXJzZShsYXRl ciwgdG1wcSwgbm9kZSkgezxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3VldmVudF9tZXJnZShsYXRlciwNCnRt cHEpOzxicj4NCiZndDsgKyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7DQp9PGJyPg0KJmd0OyArfTxicj4NCiZndDsgKzxicj4NCiZndDsgJm5i c3A7dm9pZDxicj4NCiZndDsgJm5ic3A7c2VydmljZV91ZXZxKHN0cnVjdCBsaXN0X2hlYWQgKnRt cHEpPGJyPg0KJmd0OyAmbmJzcDt7PGJyPg0KJmd0OyBAQCAtMTM2LDYgKzI0Nyw4IEBAIHNlcnZp Y2VfdWV2cShzdHJ1Y3QgbGlzdF9oZWFkICp0bXBxKTxicj4NCiZndDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7aWYN CihteV91ZXZfdHJpZ2dlciAmYW1wOyZhbXA7IG15X3Vldl90cmlnZ2VyKHVldiwgbXlfdHJpZ2dl cl9kYXRhKSk8YnI+DQomZ3Q7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KY29uZGxvZygwLCAmcXVvdDt1ZXZlbnQg dHJpZ2dlciBlcnJvciZxdW90Oyk7PGJyPg0KJmd0OyAmbmJzcDs8YnI+DQomZ3Q7ICsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDt1 ZXZxX2NsZWFudXAoJmFtcDt1ZXYtJmd0O21lcmdlX25vZGUpOzxicj4NCiZndDsgKzxicj4NCiZn dDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7aWYNCih1ZXYtJmd0O3VkZXYpPGJyPg0KJmd0OyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsN CiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsN CnVkZXZfZGV2aWNlX3VucmVmKHVldi0mZ3Q7dWRldik7PGJyPg0KJmd0OyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtG UkVFKHVldik7PGJyPg0KJmd0OyBAQCAtMTUwLDE3ICsyNjMsNiBAQCBzdGF0aWMgdm9pZCB1ZXZl bnRfY2xlYW51cCh2b2lkICphcmcpPGJyPg0KJmd0OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KdWRldl91bnJlZih1ZGV2KTs8 YnI+DQomZ3Q7ICZuYnNwO308YnI+DQomZ3Q7ICZuYnNwOzxicj4NCiZndDsgLXZvaWQ8YnI+DQom Z3Q7IC11ZXZxX2NsZWFudXAoc3RydWN0IGxpc3RfaGVhZCAqdG1wcSk8YnI+DQomZ3Q7IC17PGJy Pg0KJmd0OyAtICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsNCnN0cnVjdCB1ZXZlbnQgKnVldiwgKnRtcDs8YnI+DQomZ3Q7IC08YnI+DQomZ3Q7 IC0gJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw Ow0KbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKHVldiwgdG1wLCB0bXBxLCBub2RlKSB7PGJyPg0K Jmd0OyAtICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7bGlzdF9kZWxfaW5pdCgmYW1wO3Vldi0mZ3Q7bm9kZSk7PGJyPg0KJmd0OyAt ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsN CiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7RlJFRSh1ZXYpOzxicj4NCiZndDsgLSAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQp9PGJyPg0KJmd0OyAtfTxicj4NCiZndDsgLTxi cj4NCiZndDsgJm5ic3A7Lyo8YnI+DQomZ3Q7ICZuYnNwOyAqIFNlcnZpY2UgdGhlIHVldmVudCBx dWV1ZS48YnI+DQomZ3Q7ICZuYnNwOyAqLzxicj4NCiZndDsgQEAgLTE4OSw2ICsyOTEsNyBAQCBp bnQgdWV2ZW50X2Rpc3BhdGNoKGludCAoKnVldl90cmlnZ2VyKShzdHJ1Y3QNCnVldmVudCAqLCB2 b2lkICogdHJpZ2dlcl9kYXRhKSw8YnI+DQomZ3Q7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3B0aHJlYWRfbXV0ZXhf dW5sb2NrKHVldnFfbG9ja3ApOzxicj4NCiZndDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7aWYNCighbXlfdWV2X3Ry aWdnZXIpPGJyPg0KJmd0OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCmJyZWFrOzxicj4NCiZndDsgKyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7DQombmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO21l cmdlX3VldnEoJmFtcDt1ZXZxX3RtcCk7PGJyPg0KJmd0OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtzZXJ2aWNlX3Vl dnEoJmFtcDt1ZXZxX3RtcCk7PGJyPg0KJmd0OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOw0KfTxicj4NCiZndDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsNCmNv bmRsb2coMywgJnF1b3Q7VGVybWluYXRpbmcgdWV2IHNlcnZpY2UgcXVldWUmcXVvdDspOzxicj4N CiZndDsgLS0gPGJyPg0KJmd0OyAyLjguMS53aW5kb3dzLjE8YnI+DQomZ3Q7IDxicj4NCjxicj4N Ci0tPGJyPg0KZG0tZGV2ZWwgbWFpbGluZyBsaXN0PGJyPg0KZG0tZGV2ZWxAcmVkaGF0LmNvbTxi cj4NCjwvZm9udD48L3R0PjxhIGhyZWY9Imh0dHBzOi8vd3d3LnJlZGhhdC5jb20vbWFpbG1hbi9s aXN0aW5mby9kbS1kZXZlbCI+PHR0Pjxmb250IHNpemU9Mj5odHRwczovL3d3dy5yZWRoYXQuY29t L21haWxtYW4vbGlzdGluZm8vZG0tZGV2ZWw8L2ZvbnQ+PC90dD48L2E+PHR0Pjxmb250IHNpemU9 Mj48YnI+DQo8YnI+DQo8L2ZvbnQ+PC90dD4NCjxicj4NCg== --=_alternative 001322674825809E_=-- --===============2989332262432039216== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline --===============2989332262432039216==--