This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1649004650-972999466=:27469 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi, as promised I've got preliminary doxygen-rules (the dox.tgz archive) and patches for kdelibs (some escaping of "illegal" chars (@page in DOM), removal of one excessive "@libdoc" (in favor of a "@page"), change of "@sect" to "@section"). I'm behind a firewall or I would put up the generated documentation, but I could provide a tarball if there is interest. regards, Peter --0-1649004650-972999466=:27469 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="doxygen-doc.diff" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="doxygen-doc.diff" SW5kZXg6IGRjb3AvZGNvcC1kb2MuaA0KPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQ0KUkNTIGZpbGU6IC9ob21lL2tkZS9rZGVsaWJzL2Rjb3AvZGNvcC1kb2Mu aCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNA0KZGlmZiAtdSAtMyAtcCAt cjEuNCBkY29wLWRvYy5oDQotLS0gZGNvcC9kY29wLWRvYy5oCTIwMDAvMDYv MDMgMjM6MDE6NDUJMS40DQorKysgZGNvcC9kY29wLWRvYy5oCTIwMDAvMTAv MzEgMTM6MzA6MjgNCkBAIC0xMyw3ICsxMyw3IEBAIGJleW9uZCB0aGF0IGl0 IGRvZXMgbm90IHJlcXVpcmUgYW55IG90aGUNCiBpdCBpcyBleHRyZW1lbHkg bGlnaHR3ZWlnaHQsIGVuYWJsaW5nIGl0IHRvIGJlIGxpbmtlZCBpbnRvIGFs bCBLREUNCiBhcHBsaWNhdGlvbnMgd2l0aCBsb3cgb3ZlcmhlYWQuDQogDQot QHNlY3QgTW9kZWw6DQorQHNlY3Rpb24gZGNvcDAgIE1vZGVsOg0KIA0KIFRo ZSBtb2RlbCBpcyBzaW1wbGUuICBFYWNoIGFwcGxpY2F0aW9uIHVzaW5nIERD T1AgaXMgYSBjbGllbnQuICBUaGV5DQogY29tbXVuaWNhdGUgdG8gZWFjaCBv dGhlciB0aHJvdWdoIGEgRENPUCBzZXJ2ZXIsIHdoaWNoIGZ1bmN0aW9ucyBs aWtlDQpAQCAtMzUsNyArMzUsNyBAQCBoYXMgdGhlIGFkZGl0aW9uYWwgYmVu ZWZpdCBvZiB0eXBlIHNhZmV0DQogVGhlIG1hbnVhbCBtZXRob2QgaXMgY292 ZXJlZCBmaXJzdCwgZm9sbG93ZWQgYnkgdGhlIGF1dG9tYXRpYyBJREwgbWV0 aG9kLg0KIA0KIA0KLUBzZWN0IEVzdGFibGlzaGluZyB0aGUgQ29ubmVjdGlv bjoNCitAc2VjdGlvbiBkY29wMSAgRXN0YWJsaXNoaW5nIHRoZSBDb25uZWN0 aW9uOg0KIA0KIEtBcHBsaWNhdGlvbiBoYXMgZ2FpbmVkIGEgbWV0aG9kIGNh bGxlZCAiS0FwcGxpY2F0aW9uOjpkY29wQ2xpZW50KCkiDQogd2hpY2ggcmV0 dXJucyBhIHBvaW50ZXIgdG8gYSBEQ09QQ2xpZW50IGluc3RhbmNlLiAgVGhl IGZpcnN0IHRpbWUgdGhpcw0KQEAgLTc2LDcgKzc2LDcgQEAgZXF1YWwgdG8g a2FwcC0+bmFtZSgpLiBZb3UgY2FuIHJldHJpZXZlIA0KIGJ5IGNhbGxpbmcg a2FwcC0+ZGNvcENsaWVudCgpLg0KIA0KIA0KLUBzZWN0IFNlbmRpbmcgRGF0 YSB0byBhIFJlbW90ZSBBcHBsaWNhdGlvbjoNCitAc2VjdGlvbiBkY29wMiAg U2VuZGluZyBEYXRhIHRvIGEgUmVtb3RlIEFwcGxpY2F0aW9uOg0KIA0KIFRv IGFjdHVhbGx5IGNvbW11bmljYXRlLCB5b3UgaGF2ZSBvbmUgb2YgdHdvIGNo b2ljZXMuICBZb3UgbWF5IGVpdGhlcg0KIGNhbGwgdGhlICJzZW5kIiBvciB0 aGUgImNhbGwiIG1ldGhvZC4gIEJvdGggbWV0aG9kcyByZXF1aXJlIHRocmVl DQpAQCAtMTQzLDcgKzE0Myw3IEBAIGVsc2Ugew0KIDwvcHJlPg0KIA0KIA0K LUBzZWN0IFJlY2VpdmluZyBEYXRhIHZpYSBEQ09QOg0KK0BzZWN0aW9uIGRj b3AzICBSZWNlaXZpbmcgRGF0YSB2aWEgRENPUDoNCiANCiBDdXJyZW50bHkg dGhlIG9ubHkgcmVhbCB3YXkgdG8gcmVjZWl2ZSBkYXRhIGZyb20gRENPUCBp cyB0byBtdWx0aXBseQ0KIGluaGVyaXQgZnJvbSB0aGUgbm9ybWFsIGNsYXNz IHRoYXQgeW91IGFyZSBpbmhlcml0aW5nICh1c3VhbGx5IHNvbWUNCkBAIC0x ODEsNyArMTgxLDcgQEAgYm9vbCBCYXJPYmplY3Q6OnByb2Nlc3MoY29uc3Qg UUNTdHJpbmcgJg0KIDwvcHJlPg0KIA0KIA0KLUBzZWN0IFJlY2VpdmluZyBD YWxscyBhbmQgcHJvY2Vzc2luZyB0aGVtOg0KK0BzZWN0aW9uIGRjb3A0ICBS ZWNlaXZpbmcgQ2FsbHMgYW5kIHByb2Nlc3NpbmcgdGhlbToNCiANCiBJZiB5 b3VyIGFwcGxpY2F0aW9ucyBpcyBhYmxlIHRvIHByb2Nlc3MgaW5jb21pbmcg ZnVuY3Rpb24gY2FsbHMNCiByaWdodCBhd2F5IHRoZSBhYm92ZSBjb2RlIGlz IGFsbCB5b3UgbmVlZC4gV2hlbiB5b3VyIGFwcGxpY2F0aW9uDQpAQCAtMjMx LDcgKzIzMSw3IEBAIHNsb3RQcm9jZXNzaW5nRG9uZShEQ09QQ2xpZW50VHJh bnNhY3Rpb24NCiA8L3ByZT4NCiANCiANCi1Ac2VjdCBVc2luZyB0aGUgZGNv cGlkbCBjb21waWxlcjoNCitAc2VjdGlvbiBkY29wNSAgVXNpbmcgdGhlIGRj b3BpZGwgY29tcGlsZXI6DQogDQogZGNvcGlkbCBtYWtlcyBzZXR0aW5nIHVw IGEgRENPUCBzZXJ2ZXIgZWFzeS4gSW5zdGVhZCBvZiBoYXZpbmcgdG8gaW1w bGVtZW50DQogdGhlIHByb2Nlc3MoKSBtZXRob2QgYW5kIHVubWFyc2hhbGxp bmcgKHJldHJpZXZpbmcgZnJvbSBRQnl0ZUFycmF5KSBwYXJhbWV0ZXJzDQpA QCAtMzU4LDcgKzM1OCw3IEBAIG1hbnVhbGx5LiBUbyB1c2UgYSBzdHViLCBh ZGQgTXlJbnRlcmZhY2UNCiB5b3VyIE1ha2VmaWxlLmFtLiBUaGUgc3R1YiBj bGFzcyB3aWxsIHRoZW4gYmUgY2FsbGVkIE15SW50ZXJmYWNlX3N0dWIuDQog DQogDQotQHNlY3QgSW50ZXItdXNlciBjb21tdW5pY2F0aW9uOg0KK0BzZWN0 aW9uIGRjb3A2ICBJbnRlci11c2VyIGNvbW11bmljYXRpb246DQogDQogU29t ZXRpbWVzIGl0IG1pZ2h0IGJlIGludGVyZXN0aW5nIHRvIHVzZSBEQ09QIGJl dHdlZW4gcHJvY2Vzc2VzDQogYmVsb25naW5nIHRvIGRpZmZlcmVudCB1c2Vy cywgZS5nLiBhIGZyb250ZW5kIHByb2Nlc3MgcnVubmluZw0KQEAgLTM5Miw3 ICszOTIsNyBAQCBOT1RFOiBEQ09QIGNvbW11bmljYXRpb24gaXMgbm90IGVu Y3J5cHRlDQogcGFzcyBpbXBvcnRhbnQgaW5mb3JtYXRpb24gYXJvdW5kIHRo aXMgd2F5Lg0KIA0KIA0KLUBzZWN0IENvbmNsdXNpb246DQorQHNlY3Rpb24g ZGNvcDcgIENvbmNsdXNpb246DQogDQogSG9wZWZ1bGx5IHRoaXMgZG9jdW1l bnQgd2lsbCBnZXQgeW91IHdlbGwgb24geW91ciB3YXkgaW50byB0aGUgd29y bGQgb2YNCiBpbnRlci1wcm9jZXNzIGNvbW11bmljYXRpb24gd2l0aCBLREUh ICBQbGVhc2UgZGlyZWN0IGFsbCBjb21tZW50cyBhbmQvb3INCkluZGV4OiBk Y29wL2Rjb3BnbG9iYWwuaA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNT IGZpbGU6IC9ob21lL2tkZS9rZGVsaWJzL2Rjb3AvZGNvcGdsb2JhbC5oLHYN CnJldHJpZXZpbmcgcmV2aXNpb24gMS4yMQ0KZGlmZiAtdSAtMyAtcCAtcjEu MjEgZGNvcGdsb2JhbC5oDQotLS0gZGNvcC9kY29wZ2xvYmFsLmgJMjAwMC8w OS8wNSAyMjowNTowMAkxLjIxDQorKysgZGNvcC9kY29wZ2xvYmFsLmgJMjAw MC8xMC8zMSAxMzozMDoyOA0KQEAgLTU0LDExICs1NCw3IEBAIGV4dGVybiAi QyIgew0KICNkZWZpbmUgRENPUEZpbmQgNw0KIA0KIC8qKg0KLSAqIEBsaWJk b2MNCi0gKg0KLSAqIERDT1AgUHJvdG9jb2wgZGVzY3JpcHRpb24NCi0gKiA9 PT09PT09PT09PT09PT09DQotICoNCisgKiBAcGFnZSBkY29wX3Byb3RvY29s IERDT1AgUHJvdG9jb2wgRGVzY3JpcHRpb24NCiAgKg0KICAqIEEgRENPUFNl bmQgbWVzc2FnZSBkb2VzIG5vdCBleHBlY3QgYW55IHJlcGx5Lg0KICAqIGRh dGE6IDw8IGZyb21JZCA8PCB0b0lkIDw8IG9iaklkIDw8IGZ1biA8PCBkYXRh U2l6ZSArIGRhdGFbZGF0YVNpemVdDQpJbmRleDoga2RlY29yZS9rbWltZXNv dXJjZWZhY3RvcnkuaA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp bGU6IC9ob21lL2tkZS9rZGVsaWJzL2tkZWNvcmUva21pbWVzb3VyY2VmYWN0 b3J5Lmgsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjUNCmRpZmYgLXUgLTMg LXAgLXIxLjUga21pbWVzb3VyY2VmYWN0b3J5LmgNCi0tLSBrZGVjb3JlL2tt aW1lc291cmNlZmFjdG9yeS5oCTIwMDAvMDgvMTUgMDU6MjY6MDEJMS41DQor Kysga2RlY29yZS9rbWltZXNvdXJjZWZhY3RvcnkuaAkyMDAwLzEwLzMxIDEz OjMwOjMxDQpAQCAtNTgsMTAgKzU4LDkgQEAgcHVibGljOg0KICAgICogVG8g bG9hZCBhbiBpY29uLCBwcmVwZW5kIHRoZSBAcCBjYXRlZ29yeSBuYW1lIGJl Zm9yZSB0aGUgQHAgaWNvbiBuYW1lLCBpbiB0aGUgc3R5bGUNCiAgICAqIG9m IDxjYXRlZ29yeT58PGljb24+Lg0KICAgICoNCi0gICAqIEV4YW1wbGU6DQot ICAgKiA8cHJlPiAiPGltZyBzcmM9XCJ1c2VyfGtzeXN2X3N0YXJ0XCIvPiIs ICI8aW1nIHNyYz0iXGRlc2t0b3B8dHJhc2hcIj4iLCAuLi4NCi0gICAqIDwv cHJlPg0KLSAgICoNCisgICAqIEBiIEV4YW1wbGU6DQorICAgKiAiXDxpbWcg c3JjPVwidXNlcnxrc3lzdl9zdGFydFwiL1w+IiwgIlw8aW1nIHNyYz0iXGRl c2t0b3B8dHJhc2hcIlw+IiwgLi4uDQorICAgKiANCiAgICAqIEBwYXJhbSBh YnNfb3JfcmVsX25hbWUgaXMgdGhlIGFic29sdXRlIG9yIHJlbGF0aXZlIHBh dGhuYW1lLg0KICAgICogQHBhcmFtIGNvbnRleHQgaXMgdGhlIHBhdGggb2Yg dGhlIGNvbnRleHQgb2JqZWN0IGZvciB0aGUgcXVlcmllZCByZXNvdXJjZS4g QWxtb3N0IGFsd2F5cyBlbXB0eS4NCiAgICAqLw0KSW5kZXg6IGtkZWNvcmUv a3Byb2Nlc3MuaA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6 IC9ob21lL2tkZS9rZGVsaWJzL2tkZWNvcmUva3Byb2Nlc3MuaCx2DQpyZXRy aWV2aW5nIHJldmlzaW9uIDEuMzUNCmRpZmYgLXUgLTMgLXAgLXIxLjM1IGtw cm9jZXNzLmgNCi0tLSBrZGVjb3JlL2twcm9jZXNzLmgJMjAwMC8wOS8yMyAy MjoyNTowMwkxLjM1DQorKysga2RlY29yZS9rcHJvY2Vzcy5oCTIwMDAvMTAv MzEgMTM6MzA6MzENCkBAIC00Miw3ICs0Miw3IEBAIGNsYXNzIEtQcm9jZXNz UHJpdmF0ZTsNCiAvKioNCiAgKiAgQ2hpbGQgcHJvY2VzcyBpbnZvY2F0aW9u LCBtb25pdG9yaW5nIGFuZCBjb250cm9sLg0KICAqDQotICogQHNlY3QgR2Vu ZXJhbCB1c2FnZSBhbmQgZmVhdHVyZXMNCisgKiBAc2VjdGlvbiBrcHJvY2Vz czAgIEdlbmVyYWwgdXNhZ2UgYW5kIGZlYXR1cmVzDQogICoNCiAgKlRoaXMg Y2xhc3MgYWxsb3dzIGEgS0RFIGFwcGxpY2F0aW9uIHRvIHN0YXJ0IGNoaWxk IHByb2Nlc3NlcyB3aXRob3V0IGhhdmluZw0KICAqdG8gd29ycnkgYWJvdXQg VU4qWCBzaWduYWwgaGFuZGxpbmcgaXNzdWVzIGFuZCB6b21iaWUgcHJvY2Vz cyByZWFwaW5nLg0KQEAgLTkxLDcgKzkxLDcgQEAgY2xhc3MgS1Byb2Nlc3NQ cml2YXRlOw0KICAqDQogICpXaGVuIHRoZSBjaGlsZCBwcm9jZXNzIGV4aXRz LCB0aGUgcmVzcGVjdGl2ZSBRdCBzaWduYWwgd2lsbCBiZSBlbWl0dGVkLg0K ICAqDQotICpAc2VjdCBDb21tdW5pY2F0aW9uIHdpdGggdGhlIGNoaWxkIHBy b2Nlc3MNCisgKkBzZWN0aW9uIGtwcm9jZXNzMSAgQ29tbXVuaWNhdGlvbiB3 aXRoIHRoZSBjaGlsZCBwcm9jZXNzDQogICoNCiAgKktQcm9jZXNzIHN1cHBv cnRzIGNvbW11bmljYXRpb24gd2l0aCB0aGUgY2hpbGQgcHJvY2VzcyB0aHJv dWdoDQogICpzdGRpbi9zdGRvdXQvc3RkZXJyLg0KQEAgLTExOSw3ICsxMTks NyBAQCBjbGFzcyBLUHJvY2Vzc1ByaXZhdGU7DQogICp3aXRob3V0IGEgY29t bXVuaWNhdGlvbiBjaGFubmVsIHRvIHN0ZGVyci4NCiAgKg0KICAqDQotICpA c2VjdCBRVCBzaWduYWxzOg0KKyAqQHNlY3Rpb24ga3Byb2Nlc3MyICBRVCBz aWduYWxzOg0KICAqDQogICpAbGkgdm9pZCBAcmVmIHJlY2VpdmVkU3Rkb3V0 KEtQcm9jZXNzICAqcHJvYywgY2hhciAgKmJ1ZmZlciwgaW50ICBidWZsZW4p Ow0KICAqQGxpICB2b2lkIEByZWYgcmVjZWl2ZWRTdGRlcnIoS1Byb2Nlc3Mg ICpwcm9jLCBjaGFyICAqYnVmZmVyLCBpbnQgIGJ1Zmxlbik7DQpJbmRleDog a2RlY29yZS9rc3RkZGlycy5oDQo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS Q1MgZmlsZTogL2hvbWUva2RlL2tkZWxpYnMva2RlY29yZS9rc3RkZGlycy5o LHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS43Mw0KZGlmZiAtdSAtMyAtcCAt cjEuNzMga3N0ZGRpcnMuaA0KLS0tIGtkZWNvcmUva3N0ZGRpcnMuaAkyMDAw LzA5LzA1IDIwOjQ3OjU2CTEuNzMNCisrKyBrZGVjb3JlL2tzdGRkaXJzLmgJ MjAwMC8xMC8zMSAxMzozMDozMg0KQEAgLTY3LDcgKzY3LDcgQEAgY2xhc3Mg S1N0YW5kYXJkRGlyc1ByaXZhdGU7DQogKiBzcGVjaWZpYyBkaXJlY3Rvcmll cyB0aGF0IGFyZW4ndCBpbiBoaXMgJEhPTUUvLmtkZSBkaXJlY3RvcnkgZm9y LA0KICogZm9yIGV4YW1wbGUsIGljb25zLg0KICoNCi0qIEBzZWN0IFN0YW5k YXJkIHJlc291cmNlcyB0aGF0IGtkZWxpYnMgYWxsb2NhdGVzIGFyZToNCisq IEBzZWN0aW9uIGtzdGRkaXJzMCAgU3RhbmRhcmQgcmVzb3VyY2VzIHRoYXQg a2RlbGlicyBhbGxvY2F0ZXMgYXJlOg0KICoNCiAqIEBsaSBhcHBzIC0gQXBw bGljYXRpb25zIG1lbnUgKC5kZXNrdG9wIGZpbGVzKS4NCiAqIEBsaSBjZ2kg LSBDR0lzIHRvIHJ1biBmcm9tIGtkZWhlbHAuDQpAQCAtOTcsNyArOTcsNyBA QCBjbGFzcyBLU3RhbmRhcmREaXJzUHJpdmF0ZTsNCiAqIGJlICJLaWNrZXIi IGluc3RlYWQgb2YgdGhlIGFwcGxldCdzIG5hbWUuIFRoZXJlZm9yZSwgZm9y IGFwcGxldHMsIHlvdSd2ZSBnb3QNCiAqIHRvIHdvcmsgYXJvdW5kIHRoaXMg YnkgdXNpbmcgQHJlZiBsb2NhdGUoImRhdGEiLCAiYXBwbGV0bmFtZS9maWxl bmFtZSIpLg0KICoNCi0qIEBzZWN0IEtTdGFuZGFyZERpcnMgc3VwcG9ydHMg dGhlIGZvbGxvd2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXM6DQorKiBAc2Vj dGlvbiBrc3RkZGlyczEgIEtTdGFuZGFyZERpcnMgc3VwcG9ydHMgdGhlIGZv bGxvd2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXM6DQogKg0KICogQGxpIEtE RURJUlM6IFRoaXMgbWF5IHNldCBhbiBhZGRpdGlvbmFsIG51bWJlciBvZiBk aXJlY3RvcnkgcHJlZml4ZXMgdG8NCiAqICAgICAgICAgIHNlYXJjaCBmb3Ig cmVzb3VyY2VzLiBUaGUgZGlyZWN0b3JpZXMgc2hvdWxkIGJlIHNlcGVyYXRl ZA0KSW5kZXg6IGtkZWNvcmUva3VybC5oDQo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09DQpSQ1MgZmlsZTogL2hvbWUva2RlL2tkZWxpYnMva2RlY29yZS9rdXJs Lmgsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjcxDQpkaWZmIC11IC0zIC1w IC1yMS43MSBrdXJsLmgNCi0tLSBrZGVjb3JlL2t1cmwuaAkyMDAwLzEwLzE1 IDIyOjQzOjIyCTEuNzENCisrKyBrZGVjb3JlL2t1cmwuaAkyMDAwLzEwLzMx IDEzOjMwOjMyDQpAQCAtNDAsMTAgKzQwLDEwIEBAIHN0cnVjdCBLVVJMUHJp dmF0ZTsNCiAgKiBlbmNvZGluZy4gQHJlZiBLVVJMIHdvcmtzIGludGVybmFs bHkgd2l0aCB0aGUgZGVjb2RlZCBwYXRoIGFuZA0KICAqIGFuZCBlbmNvZGVk IHF1ZXJ5LiBGb3IgZXhhbXBsZSwNCiAgKiA8cHJlPg0KLSAqIGh0dHA6Ly9s b2NhbGhvc3QvY2dpLWJpbi90ZXN0JTIwbWUucGw/Y21kPUhlbGxvJTIweW91 DQorICogaHR0cDovL2xvY2FsaG9zdC9jZ2ktYmluL3Rlc3RcJTIwbWUucGw/ Y21kPUhlbGxvXCUyMHlvdQ0KICAqIDwvcHJlPg0KICAqIHdvdWxkIHJlc3Vs dCBpbiBhIGRlY29kZWQgcGF0aCAiL2NnaS1iaW4vdGVzdCBtZS5wbCINCi0g KiBhbmQgaW4gdGhlIGVuY29kZWQgcXVlcnkgIj9jbWQ9SGVsbG8lMjB5b3Ui Lg0KKyAqIGFuZCBpbiB0aGUgZW5jb2RlZCBxdWVyeSAiP2NtZD1IZWxsb1wl MjB5b3UiLg0KICAqIFNpbmNlIHBhdGggaXMgaW50ZXJuYWxseSBhbHdheXMg ZW5jb2RlZCB5b3UgbWF5IEBlbSBub3QgdXNlDQogICogIiUwMCIgaW4gdGhl IHBhdGgsIGFsdGhvdWdoIHRoaXMgaXMgT0sgZm9yIHRoZSBxdWVyeS4NCiAg Kg0KQEAgLTc1LDkgKzc1LDkgQEAgcHVibGljOg0KICAgICogICAgICAgICAg ICAgcGFydCwgImZpbGU6IiBpcyBhc3N1bWVkLg0KICAgICogICAgICAgICAg ICAgSXQgaXMgZGFuZ2Vyb3VzIHRvIGZlZWQgdW5peCBmaWxlbmFtZXMgaW50 byB0aGlzIGZ1bmN0aW9uLA0KICAgICogICAgICAgICAgICAgdGhpcyB3aWxs IHdvcmsgbW9zdCBvZiB0aGUgdGltZSBidXQgbm90IGFsd2F5cy4NCi0gICAq ICAgICAgICAgICAgIEZvciBleGFtcGxlICIvaG9tZS9Ub3JiZW4lMjBXZWlz IiB3aWxsIGJlIGNvbnNpZGVyZWQgYSBVUkwNCisgICAqICAgICAgICAgICAg IEZvciBleGFtcGxlICIvaG9tZS9Ub3JiZW5cJTIwV2VpcyIgd2lsbCBiZSBj b25zaWRlcmVkIGEgVVJMDQogICAgKiAgICAgICAgICAgICBwb2ludGluZyB0 byB0aGUgZmlsZSAiL2hvbWUvVG9yYmVuIFdlaXMiIGluc3RlYWQgb2YgdG8g dGhlDQotICAgKiAgICAgICAgICAgICBmaWxlICIvaG9tZS9Ub3JiZW4lMjBX ZWlzIi4NCisgICAqICAgICAgICAgICAgIGZpbGUgIi9ob21lL1RvcmJlblwl MjBXZWlzIi4NCiAgICAqICAgICAgICAgICAgIFRoaXMgbWVhbnMgdGhhdCBp ZiB5b3UgaGF2ZSBhIHVzdWFsIFVOSVggbGlrZSBwYXRoIHlvdQ0KICAgICog ICAgICAgICAgICAgc2hvdWxkIG5vdCB1c2UgdGhpcyBjb25zdHJ1Y3Rvci4N CiAgICAqICAgICAgICAgICAgIEluc3RlYWQgY3JlYXRlIGFuIGVtcHR5IHVy bCBhbmQgc2V0IHRoZSBwYXRoIGJ5IHVzaW5nDQpAQCAtMzczLDcgKzM3Myw3 IEBAIHB1YmxpYzoNCiANCiAgIC8qKg0KICAgICogQHJldHVybiBUaGUgY29t cGxldGUgVVJMLCB3aXRoIGFsbCBlc2NhcGUgc2VxdWVuY2VzIGludGFjdC4N Ci0gICAqIEV4YW1wbGU6IGh0dHA6Ly9sb2NhbGhvc3Q6ODA4MC90ZXN0LmNn aT90ZXN0PWhlbGxvJTIwd29ybGQmbmFtZT1mcmVkDQorICAgKiBFeGFtcGxl OiBodHRwOi8vbG9jYWxob3N0OjgwODAvdGVzdC5jZ2k/dGVzdD1oZWxsb1wl MjB3b3JsZCZuYW1lPWZyZWQNCiAgICAqDQogICAgKiBAcGFyYW0gX3RyYWls aW5nIFRoaXMgbWF5IGJlICggLTEsIDAgKzEgKS4gLTEgc3RyaXBzIGEgdHJh aWxpbmcgJy8nIGZyb20gdGhlIHBhdGgsICsxIGFkZHMNCiAgICAqICAgICAg ICAgICAgICAgICAgYSB0cmFpbGluZyAnLycgaWYgdGhlcmUgaXMgbm9uZSB5 ZXQgYW5kIDAgcmV0dXJucyB0aGUNCkluZGV4OiBrZGV1aS9rYWNjZWxtZW51 LmgNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9r ZGUva2RlbGlicy9rZGV1aS9rYWNjZWxtZW51Lmgsdg0KcmV0cmlldmluZyBy ZXZpc2lvbiAxLjEwDQpkaWZmIC11IC0zIC1wIC1yMS4xMCBrYWNjZWxtZW51 LmgNCi0tLSBrZGV1aS9rYWNjZWxtZW51LmgJMjAwMC8wNi8yNCAxNDoxMzoy NwkxLjEwDQorKysga2RldWkva2FjY2VsbWVudS5oCTIwMDAvMTAvMzEgMTM6 MzA6MzMNCkBAIC0zOCw3ICszOCw3IEBAIGNsYXNzIEtBY2NlbE1lbnVQcml2 YXRlOw0KICAqIFByZXZpb3VzbHk6IFRoZSBxdW90ZSBrZXkgd2FzIHJlcXVp cmVkIG9ubHkgZm9yIGtleXMgdGhhdA0KICAqIGFyZSB1c2VkIGZvciBtZW51 IGFjY2VsZXJhdG9ycy4NCiAgKg0KLSAqIEBzZWN0IFVzYWdlOg0KKyAqIEBz ZWN0aW9uIGthY2NlbG1lbnUwICBVc2FnZToNCiAgKiA8cHJlPg0KICAqIGtl eXMgPSBuZXcgS0FjY2VsKHRoaXMpOw0KICAqDQpJbmRleDoga2RldWkva2Fj dGlvbi5oDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hv bWUva2RlL2tkZWxpYnMva2RldWkva2FjdGlvbi5oLHYNCnJldHJpZXZpbmcg cmV2aXNpb24gMS44OA0KZGlmZiAtdSAtMyAtcCAtcjEuODgga2FjdGlvbi5o DQotLS0ga2RldWkva2FjdGlvbi5oCTIwMDAvMTAvMDkgMDc6NDI6MjIJMS44 OA0KKysrIGtkZXVpL2thY3Rpb24uaAkyMDAwLzEwLzMxIDEzOjMwOjMzDQpA QCAtODUsNyArODUsNyBAQCBjbGFzcyBLUG9wdXBNZW51Ow0KICAqIG9uZS10 by1vbmUgcmVsYXRpb25zaGlwIGJldHdlZW4gdGhlICJyZWFsIiBhY3Rpb24g YW5kIEBwIGFsbA0KICAqIEdVSSByZXByZXNlbnRhdGlvbnMgb2YgaXQuDQog ICoNCi0gKiBAc2VjdCBHZW5lcmFsIFVzYWdlOg0KKyAqIEBzZWN0aW9uIGth Y3Rpb24wICBHZW5lcmFsIFVzYWdlOg0KICAqDQogICogVGhlIHN0ZXBzIHRv IHVzaW5nIGFjdGlvbnMgYXJlIHJvdWdobHkgYXMgZm9sbG93cw0KICAqDQpA QCAtOTUsNyArOTUsNyBAQCBjbGFzcyBLUG9wdXBNZW51Ow0KICAqIEBsaSAi UGx1ZyIgdGhlIEFjdGlvbiBpbnRvIHdoYXRldmVyIEdVSSBlbGVtZW50IHlv dSB3YW50LiAgVHlwaWNhbGx5LA0KICAqICAgICAgdGhpcyB3aWxsIGJlIGEg bWVudSBvciB0b29sYmFyLg0KICAqDQotICogQHNlY3QgRGV0YWlsZWQgRXhh bXBsZToNCisgKiBAc2VjdGlvbiBrYWN0aW9uMSAgRGV0YWlsZWQgRXhhbXBs ZToNCiAgKg0KICAqIEhlcmUgaXMgYW4gZXhhbXBsZSBvZiBlbmFibGluZyBh ICJOZXcgW2RvY3VtZW50XSIgYWN0aW9uDQogICogPFBSRT4NCkBAIC0xMzYs NyArMTM2LDcgQEAgY2xhc3MgS1BvcHVwTWVudTsNCiAgKiBwbGVhc2UgdXNl IHRoZSBtZXRob2RzIGluIHRoZSBAcmVmIEtTdGRBY3Rpb24gY2xhc3MgcmF0 aGVyIHRoZW4NCiAgKiBkZWZpbmluZyB5b3VyIG93bi4NCiAgKg0KLSAqIEBz ZWN0IFVzYWdlIFdpdGhpbiB0aGUgWE1MIEZyYW1ld29yazoNCisgKiBAc2Vj dGlvbiBrYWN0aW9uMiAgVXNhZ2UgV2l0aGluIHRoZSBYTUwgRnJhbWV3b3Jr Og0KICAqDQogICogSWYgeW91IGFyZSB1c2luZyBLQWN0aW9uIHdpdGhpbiB0 aGUgY29udGV4dCBvZiB0aGUgWE1MIG1lbnUgYW5kDQogICogdG9vbGJhciBi dWlsZGluZyBmcmFtZXdvcmssIHRoZW4gdGhlcmUgYXJlIGEgZmV3IHRpbnkg Y2hhbmdlcy4gIFRoZQ0KSW5kZXg6IGtkZXVpL2tjb2xvcmRpYWxvZy5oDQo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUva2RlL2tk ZWxpYnMva2RldWkva2NvbG9yZGlhbG9nLmgsdg0KcmV0cmlldmluZyByZXZp c2lvbiAxLjMzDQpkaWZmIC11IC0zIC1wIC1yMS4zMyBrY29sb3JkaWFsb2cu aA0KLS0tIGtkZXVpL2tjb2xvcmRpYWxvZy5oCTIwMDAvMDcvMjUgMDg6MDU6 MTUJMS4zMw0KKysrIGtkZXVpL2tjb2xvcmRpYWxvZy5oCTIwMDAvMTAvMzEg MTM6MzA6MzQNCkBAIC0zNDAsNyArMzQwLDcgQEAgcHJpdmF0ZToNCiAvKiog DQogICogVGhlIEtDb2xvckRpYWxvZyBwcm92aWRlcyBhIGRpYWxvZyBmb3Ig Y29sb3Igc2VsZWN0aW9uLg0KICAqDQotICogQHNlY3QgRmVhdHVyZXM6DQor ICogQHNlY3Rpb24ga2NvbG9yZGlhbG9nMCAgRmVhdHVyZXM6DQogICogDQog ICogQGxpIENvbG91ciBzZWxlY3Rpb24gZnJvbSBhIHdpZGUgcmFuZ2Ugb2Yg cGFsZXR0ZXMuDQogICogQGxpIENvbG91ciBzZWxlY3Rpb24gZnJvbSBhIHBh bGV0dGUgb2YgSCB2cyBTIGFuZCBWIHNlbGVjdG9ycyAoc2ltaWxhciB0byB3 aW5kb3plKS4NCkluZGV4OiBrZGV1aS9rY29tYm9ib3guaA0KPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL2tkZS9rZGVsaWJzL2tk ZXVpL2tjb21ib2JveC5oLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS43NQ0K ZGlmZiAtdSAtMyAtcCAtcjEuNzUga2NvbWJvYm94LmgNCi0tLSBrZGV1aS9r Y29tYm9ib3guaAkyMDAwLzEwLzA5IDIxOjQ3OjEwCTEuNzUNCisrKyBrZGV1 aS9rY29tYm9ib3guaAkyMDAwLzEwLzMxIDEzOjMwOjM0DQpAQCAtMzQsNyAr MzQsNyBAQCBjbGFzcyBLVVJMOw0KIC8qKg0KICAqIEEgY29tYmluZWQgYnV0 dG9uLCBsaW5lLWVkaXQgYW5kIGEgcG9wdXAgbGlzdCB3aWRnZXQuDQogICoN Ci0gKiBAc2VjdCBEZXRhaWwNCisgKiBAc2VjdGlvbiBrY29tYm9ib3gwICBE ZXRhaWwNCiAgKg0KICAqIFRoaXMgd2lkZ2V0IGluaGVyaXRzIGZyb20gQHJl ZiBRQ29tYm9Cb3ggYW5kIGltcGxlbWVudHMNCiAgKiB0aGUgZm9sbG93aW5n IGFkZGl0aW9uYWwgZnVuY3Rpb25hbGl0aWVzOiAgYSBjb21wbGV0aW9uDQpA QCAtNzgsNyArNzgsNyBAQCBjbGFzcyBLVVJMOw0KICAqIGF1dG9tYXRpY2Fs bHkgc2VsZWN0IGFuIGl0ZW0gZnJvbSB0aGUgbGlzdCBieSB0cnlpbmcgdG8g bWF0Y2ggdGhlIHByZXNzZWQNCiAgKiBrZXljb2RlIHdpdGggdGhlIGZpcnN0 IGxldHRlciBvZiB0aGUgZW50ZXJpZXMgaW4gdGhlIGNvbWJvIGJveC4NCiAg Kg0KLSAqIEBzZWN0IEV4YW1wbGUNCisgKiBAc2VjdGlvbiBrY29tYm9ib3gx ICBFeGFtcGxlDQogICoNCiAgKiBUbyBlbmFibGUgdGhlIGJhc2ljIGNvbXBs ZXRpb24gZmVhdHVyZToNCiAgKg0KSW5kZXg6IGtkZXVpL2tkaWFsb2diYXNl LmgNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9r ZGUva2RlbGlicy9rZGV1aS9rZGlhbG9nYmFzZS5oLHYNCnJldHJpZXZpbmcg cmV2aXNpb24gMS40NA0KZGlmZiAtdSAtMyAtcCAtcjEuNDQga2RpYWxvZ2Jh c2UuaA0KLS0tIGtkZXVpL2tkaWFsb2diYXNlLmgJMjAwMC8wNy8xOSAwNDox MDowMwkxLjQ0DQorKysga2RldWkva2RpYWxvZ2Jhc2UuaAkyMDAwLzEwLzMx IDEzOjMwOjM0DQpAQCAtODcsNyArODcsNyBAQCBjbGFzcyBLRGlhbG9nQmFz ZVRpbGUgOiBwdWJsaWMgUU9iamVjdA0KICAqIHRoYXQgY29udGFpbnMNCiAg KiBjb3B5L3Bhc3RlIGV4YW1wbGVzIGFzIHdlbGwgYSBzY3JlZW5zaG90cyBv biBob3cgdG8gdXNlIHRoaXMgY2xhc3MuDQogICoNCi0gKiBAc2VjdCBTdGFu ZGFyZCBidXR0b25zIChhY3Rpb24gYnV0dG9ucyk6DQorICogQHNlY3Rpb24g a2RpYWxvZ2Jhc2UwICBTdGFuZGFyZCBidXR0b25zIChhY3Rpb24gYnV0dG9u cyk6DQogICoNCiAgKiBZb3Ugc2VsZWN0IHdoaWNoIGJ1dHRvbnMgc2hvdWxk IGJlIGRpc3BsYXllZCwgYnV0IHlvdSBkbyBub3QgY2hvb3NlIHRoZSANCiAg KiBvcmRlciBpbiB3aGljaCB0aGV5IGFyZSBkaXNwbGF5ZWQuIFRoaXMgZW5z dXJlcyBhIHN0YW5kYXJkIGludGVyZmFjZSBpbiANCkBAIC0xMTcsNyArMTE3 LDcgQEAgY2xhc3MgS0RpYWxvZ0Jhc2VUaWxlIDogcHVibGljIFFPYmplY3QN CiAgKiBzaWduYWxzIHRoYXQgYXJlIHJlbGF0ZWQgdG8gdGhlIHN0YW5kYXJk IGFjdGlvbiBidXR0b25zIHdpbGwgYmUgdXNlZCANCiAgKiB3aGVuIHlvdSBk b24ndCB1c2UgdGhlc2UgYnV0dG9ucy4NCiAgKg0KLSAqIEBzZWN0IERpYWxv ZyBzaGFwZXM6DQorICogQHNlY3Rpb24ga2RpYWxvZ2Jhc2UxICBEaWFsb2cg c2hhcGVzOg0KICAqDQogICogWW91IGNhbiBlaXRoZXIgdXNlIG9uZSBvZiB0 aGUgcHJlYnVpbHQsIGVhc3kgdG8gdXNlLCBmYWNlcyBvcg0KICAqIGRlZmlu ZSB5b3VyIG93biBtYWluIHdpZGdldC4gVGhlIGRpYWxvZyBwcm92aWRlcyBy ZWFkeSB0byB1c2UNCkBAIC0xMzAsNyArMTMwLDcgQEAgY2xhc3MgS0RpYWxv Z0Jhc2VUaWxlIDogcHVibGljIFFPYmplY3QNCiAgKiByZXNpemUgaXRzZWxm IHRvIGZpdCB0aGlzIG1pbmltdW0gc2l6ZS4gIFRoZSBkaWFsb2cgaXMgcmVz aXplYWJsZSwgYnV0IA0KICAqIGNhbiBub3QgYmUgbWFkZSBzbWFsbGVyIHRo YW4gaXRzIG1pbmltdW0gc2l6ZS4NCiAgKg0KLSAqIEBzZWN0IExheW91dDoN CisgKiBAc2VjdGlvbiBrZGlhbG9nYmFzZTIgIExheW91dDoNCiAgKiBUaGUg ZGlhbG9nIGNvbnNpc3RzIG9mIGEgaGVscCBhcmVhIG9uIHRvcCAoYmVjb21l cyB2aXNpYmxlIGlmIHlvdSBkZWZpbmUNCiAgKiBhIGhlbHAgcGF0aCBhbmQg dXNlIEByZWYgZW5hYmxlTGlua2VkSGVscCgpKSwgdGhlIG1haW4gYXJlYSB3 aGljaCBpcyANCiAgKiB0aGUgYnVpbHQtaW4gZGlhbG9nIGZhY2Ugb3IgeW91 ciBvd24gd2lkZ2V0IGluIHRoZSBtaWRkbGUgYW5kIGJ5IGRlZmF1bHQgDQpA QCAtMTQxLDcgKzE0MSw3IEBAIGNsYXNzIEtEaWFsb2dCYXNlVGlsZSA6IHB1 YmxpYyBRT2JqZWN0DQogICogaXMgYXQgdGhlIHJpZ2h0IGVkZ2UpLiBOb3Jt YWxseSB5b3Ugc3BlY2lmeSB0aGF0IHlvdSB3YW50IGEgc2VwYXJhdG9yDQog ICogaW4gdGhlIGNvbnN0cnVjdG9yLCBidXQgeW91IGNhbiB1c2UgQHJlZiBl bmFibGVCdXR0b25TZXBhcmF0b3IoKSBhcyB3ZWxsLg0KICAqDQotICogQHNl Y3QgU3RhbmRhcmQgY29tcGxpYW5jZToNCisgKiBAc2VjdGlvbiBrZGlhbG9n YmFzZTMgIFN0YW5kYXJkIGNvbXBsaWFuY2U6DQogICoNCiAgKiBUaGUgY2xh c3MgaXMgZGVyaXZlZCBmcm9tIEByZWYgS0RpYWxvZywgc28geW91IGdldCBh dXRvbWF0aWMgYWNjZXNzIHRvDQogICogdGhlIEByZWYgS0RpYWxvZzo6bWFy Z2luSGludCgpLCBAcmVmIEtEaWFsb2c6OnNwYWNpbmdIaW50KCkgYW5kIHRo ZQ0KSW5kZXg6IGtkZXVpL2tsZWQuaA0KPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQ0KUkNTIGZpbGU6IC9ob21lL2tkZS9rZGVsaWJzL2tkZXVpL2tsZWQuaCx2 DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTYNCmRpZmYgLXUgLTMgLXAgLXIx LjE2IGtsZWQuaA0KLS0tIGtkZXVpL2tsZWQuaAkyMDAwLzA5LzA3IDE3OjEy OjA0CTEuMTYNCisrKyBrZGV1aS9rbGVkLmgJMjAwMC8xMC8zMSAxMzozMDoz NQ0KQEAgLTc0LDcgKzc0LDcgQEAgcHVibGljOg0KICAgICogYmVjYXVzZSBv ZiB0aGUgMyBzaGFkaW5nIGNpcmNsZXMgYW5kIGlzDQogICAgKiBtb3N0IHRp bWUgY29uc3VtaW5nLiBNYWtlcyBzZW5zZSBmb3IgTEVEID4gMTV4MTUgcGl4 ZWxzLg0KICAgICoNCi0gICAqIEBzZWN0IFRpbWluZ3M6DQorICAgKiBAc2Vj dGlvbiBrbGVkMCAgVGltaW5nczoNCiAgICAqICggQU1EIEs1LzEzMywgRGlh bW9uZCBTdGVhbHRoIDY0IFBDSSBHcmFwaGljcywgd2lkZ2V0c2l6ZSAyOXgy OSApDQogICAgKiAgQGxpIGZsYXQgQXBwcm94aW1hdGVseSAwLjcgbXNlYyBw ZXIgcGFpbnQgDQogICAgKiAgQGxpIHJvdW5kIEFwcHJveGltYXRlbHkgMi45 IG1zZWMgcGVyIHBhaW50DQpJbmRleDoga2RldWkva2xpbmVlZGl0LmgNCj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9rZGUva2Rl bGlicy9rZGV1aS9rbGluZWVkaXQuaCx2DQpyZXRyaWV2aW5nIHJldmlzaW9u IDEuNTUNCmRpZmYgLXUgLTMgLXAgLXIxLjU1IGtsaW5lZWRpdC5oDQotLS0g a2RldWkva2xpbmVlZGl0LmgJMjAwMC8xMC8wOSAyMTo0NzoxMAkxLjU1DQor Kysga2RldWkva2xpbmVlZGl0LmgJMjAwMC8xMC8zMSAxMzozMDozNQ0KQEAg LTM3LDcgKzM3LDcgQEAgY2xhc3MgS1VSTDsNCiAvKioNCiAgKiBBbiBlbmhh bmNlZCBRTGluZUVkaXQgd2lkZ2V0IGZvciBpbnB1dHRpbmcgdGV4dC4NCiAg Kg0KLSAqIEBzZWN0IERldGFpbA0KKyAqIEBzZWN0aW9uIGtsaW5lZWRpdDAg IERldGFpbA0KICAqDQogICogVGhpcyB3aWRnZXQgaW5oZXJpdHMgZnJvbSBA cmVmIFFMaW5lRWRpdCBhbmQgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nDQog ICogYWRkaXRpb25hbCBmdW5jdGlvbmFsaXRpZXM6IHEgY29tcGxldGlvbiBv YmplY3QgdGhhdCBwcm92aWRlcyBib3RoDQpAQCAtODIsNyArODIsNyBAQCBj bGFzcyBLVVJMOw0KICAqIGxpc3QuIEhlbmNlLCBpZiB0aGUgQHAgRWNob01v ZGUgaXMgbm90IEByZWYgUUxpbmVFZGl0OjpOb3JtYWwsIHRoZSBjb21wbGV0 aW9uDQogICogbW9kZSBpcyBhdXRvbWF0aWNhbGx5IGRpc2FibGVkLg0KICAq DQotICogQHNlY3QgRXhhbXBsZXMNCisgKiBAc2VjdGlvbiBrbGluZWVkaXQx ICBFeGFtcGxlcw0KICAqDQogICogVG8gZW5hYmxlIHRoZSBiYXNpYyBjb21w bGV0aW9uIGZlYXR1cmUgOg0KICAqDQpAQCAtMTA4LDcgKzEwOCw3IEBAIGNs YXNzIEtVUkw7DQogICogd2hlbiB5b3UgZG9uJ3QgbmVlZCBpdCBhbnltb3Jl LCBvciBjYWxsIA0KICAqIHNldEF1dG9EZWxldGVDb21wbGV0aW9uT2JqZWN0 KCB0cnVlICk7DQogICoNCi0gKiBAc2VjdCBNaXNjZWxsYW5lb3VzIGZ1bmN0 aW9uIGNhbGxzIDoNCisgKiBAc2VjdGlvbiBrbGluZWVkaXQyICBNaXNjZWxs YW5lb3VzIGZ1bmN0aW9uIGNhbGxzIDoNCiAgKg0KICAqIDxwcmU+DQogICog Ly8gVGVsbCB0aGUgd2lkZ2V0IG5vdCB0byBoYW5kbGUgY29tcGxldGlvbiBh bmQNCkluZGV4OiBrZGV1aS9rbWFpbndpbmRvdy5oDQo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUva2RlL2tkZWxpYnMva2RldWkv a21haW53aW5kb3cuaCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTANCmRp ZmYgLXUgLTMgLXAgLXIxLjEwIGttYWlud2luZG93LmgNCi0tLSBrZGV1aS9r bWFpbndpbmRvdy5oCTIwMDAvMTAvMDEgMTk6MDY6MDUJMS4xMA0KKysrIGtk ZXVpL2ttYWlud2luZG93LmgJMjAwMC8xMC8zMSAxMzozMDozNQ0KQEAgLTE4 MSw3ICsxODEsNyBAQCBwdWJsaWM6DQogICAgIEtQb3B1cE1lbnUqIGN1c3Rv bUhlbHBNZW51KCBib29sIHNob3dXaGF0c1RoaXMgPSBUUlVFICk7DQogDQog ICAgIC8qKg0KLSAgICAgKiBAc2VjdCBTZXNzaW9uIE1hbmFnZW1lbnQNCisg ICAgICogQHNlY3Rpb24ga21haW53aW5kb3cwICBTZXNzaW9uIE1hbmFnZW1l bnQNCiAgICAgICoNCiAgICAgICogVHJ5IHRvIHJlc3RvcmUgdGhlIHRvcGxl dmVsIHdpZGdldCBhcyBkZWZpbmVkIGJ5IHRoZSBudW1iZXIgKDEuLlgpLg0K ICAgICAgKg0KSW5kZXg6IGtkZXVpL2twYW5lbGFwcGxldC5oDQo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUva2RlL2tkZWxpYnMv a2RldWkva3BhbmVsYXBwbGV0Lmgsdg0KcmV0cmlldmluZyByZXZpc2lvbiAx LjE2DQpkaWZmIC11IC0zIC1wIC1yMS4xNiBrcGFuZWxhcHBsZXQuaA0KLS0t IGtkZXVpL2twYW5lbGFwcGxldC5oCTIwMDAvMTAvMTEgMTg6NDM6MzYJMS4x Ng0KKysrIGtkZXVpL2twYW5lbGFwcGxldC5oCTIwMDAvMTAvMzEgMTM6MzA6 MzYNCkBAIC00NiwxMiArNDYsMTIgQEAgY2xhc3MgS0NvbmZpZzsNCiAgKiBC ZXNpZGVzIHN0YW5kYXJkIGtleXMgbGlrZSAiTmFtZSIsICJDb21tZW50IiBh bmQgIkljb24iIHRoZXJlIGFyZQ0KICAqIHR3byBwYW5lbCBhcHBsZXQgc3Bl Y2lmaWMga2V5czoNCiAgKg0KLSAqIEBzZWN0IFgtS0RFLUxpYnJhcnkNCisg KiBAc2VjdGlvbiBrcGFuZWxhcHBsZXQwICBYLUtERS1MaWJyYXJ5DQogICoN CiAgKiBVc2VkIGJ5IHRoZSBwYW5lbCB0byBsb2NhdGUgdGhlIGFwcGxldCBE U08gKER5bmFtaWMgU2hhcmVkIE9iamVjdCkNCiAgKiBFeGFtcGxlOiBYLUtE RS1MaWJyYXJ5PWxpYmV4YW1wbGVhcHBsZXQNCiAgKg0KLSAqIEBzZWN0IFgt S0RFLVVuaXF1ZUFwcGxldA0KKyAqIEBzZWN0aW9uIGtwYW5lbGFwcGxldDEg IFgtS0RFLVVuaXF1ZUFwcGxldA0KICAqDQogICogU2ltaWxhciB0byBAcmVm IEtBcHBsaWNhdGlvbiBhbmQgQHJlZiBLVW5pcXVlQXBwbGljYXRpb24gdGhl cmUgYXJlDQogICogdHdvIHR5cGVzIG9mIHBhbmVsIGFwcGVsdHMuIFVzZSB1 bmlxdWUgYXBwbGV0cyB3aGVuIGl0IG1ha2VzIG5vDQpJbmRleDoga2RldWkv a3BhbmVsZXh0ZW5zaW9uLmgNCj09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJD UyBmaWxlOiAvaG9tZS9rZGUva2RlbGlicy9rZGV1aS9rcGFuZWxleHRlbnNp b24uaCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMg0KZGlmZiAtdSAtMyAt cCAtcjEuMiBrcGFuZWxleHRlbnNpb24uaA0KLS0tIGtkZXVpL2twYW5lbGV4 dGVuc2lvbi5oCTIwMDAvMTAvMjcgMTU6MTg6MjUJMS4yDQorKysga2RldWkv a3BhbmVsZXh0ZW5zaW9uLmgJMjAwMC8xMC8zMSAxMzozMDozNg0KQEAgLTQ3 LDEyICs0NywxMiBAQCBjbGFzcyBLUGFuZWxFeHRlbnNpb25Qcml2YXRlOw0K ICAqIEJlc2lkZXMgc3RhbmRhcmQga2V5cyBsaWtlICJOYW1lIiwgIkNvbW1l bnQiIGFuZCAiSWNvbiIgdGhlcmUgYXJlDQogICogdHdvIHBhbmVsIGV4dGVu c2lvbiBzcGVjaWZpYyBrZXlzOg0KICAqDQotICogQHNlY3QgWC1LREUtTGli cmFyeQ0KKyAqIEBzZWN0aW9uIGtwYW5lbGV4dGVuc2lvbjAgIFgtS0RFLUxp YnJhcnkNCiAgKg0KICAqIFVzZWQgYnkgdGhlIHBhbmVsIHRvIGxvY2F0ZSB0 aGUgZXh0ZW5zaW9uIERTTyAoRHluYW1pYyBTaGFyZWQgT2JqZWN0KQ0KICAq IEV4YW1wbGU6IFgtS0RFLUxpYnJhcnk9bGliZXhhbXBsZWV4dGVuc2lvbg0K ICAqDQotICogQHNlY3QgWC1LREUtVW5pcXVlRXh0ZW5zaW9uDQorICogQHNl Y3Rpb24ga3BhbmVsZXh0ZW5zaW9uMSAgWC1LREUtVW5pcXVlRXh0ZW5zaW9u DQogICoNCiAgKiBTaW1pbGFyIHRvIEByZWYgS0FwcGxpY2F0aW9uIGFuZCBA cmVmIEtVbmlxdWVBcHBsaWNhdGlvbiB0aGVyZSBhcmUNCiAgKiB0d28gdHlw ZXMgb2YgcGFuZWwgZXh0ZW5zaW9ucy4gVXNlIHVuaXF1ZSBleHRlbnNpb25z IHdoZW4gaXQgbWFrZXMgbm8NCkluZGV4OiBrZGV1aS9rcGFzc2RsZy5oDQo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUva2RlL2tk ZWxpYnMva2RldWkva3Bhc3NkbGcuaCx2DQpyZXRyaWV2aW5nIHJldmlzaW9u IDEuOA0KZGlmZiAtdSAtMyAtcCAtcjEuOCBrcGFzc2RsZy5oDQotLS0ga2Rl dWkva3Bhc3NkbGcuaAkyMDAwLzA5LzA1IDIyOjE1OjE0CTEuOA0KKysrIGtk ZXVpL2twYXNzZGxnLmgJMjAwMC8xMC8zMSAxMzozMDozNg0KQEAgLTgzLDcg KzgzLDcgQEAgcHJpdmF0ZToNCiAgKiBwcm9iYWJseSBpbnRlcmVzdGVkIGlu IGFyZSB0aGUgc3RhdGljIG1ldGhvZHMsIEByZWYgI2dldFBhc3N3b3JkKCkg YW5kDQogICogQHJlZiAjZ2V0TmV3UGFzc3dvcmQoKS4NCiAgKg0KLSAqIEBz ZWN0IFVzYWdlIGV4YW1wbGUNCisgKiBAc2VjdGlvbiBrcGFzc2RsZzAgIFVz YWdlIGV4YW1wbGUNCiAgKg0KICAqIDxwcmU+DQogICogUUNTdHJpbmcgcGFz c3dvcmQ7DQpAQCAtOTIsNyArOTIsNyBAQCBwcml2YXRlOg0KICAqICAgICB1 c2UocGFzc3dvcmQpOw0KICAqIDwvcHJlPg0KICAqDQotICogQHNlY3QgU2Vj dXJpdHkgbm90ZXMNCisgKiBAc2VjdGlvbiBrcGFzc2RsZzEgIFNlY3VyaXR5 IG5vdGVzDQogICoNCiAgKiBLZWVwaW5nIHBhc3N3b3JkcyBpbiBtZW1vcnkg Y2FuIGJlIGEgcG90ZW50aWFsIHNlY3VyaXR5IGhvbGUuIFlvdSBzaG91bGQN CiAgKiBoYW5kbGUgdGhpcyBzaXR1YXRpb24gd2l0aCBjYXJlLg0KSW5kZXg6 IGtkZXVpL2twaXhtYXBpby5oDQo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS Q1MgZmlsZTogL2hvbWUva2RlL2tkZWxpYnMva2RldWkva3BpeG1hcGlvLmgs dg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjYNCmRpZmYgLXUgLTMgLXAgLXIx LjYga3BpeG1hcGlvLmgNCi0tLSBrZGV1aS9rcGl4bWFwaW8uaAkyMDAwLzA2 LzI1IDE2OjUyOjE2CTEuNg0KKysrIGtkZXVpL2twaXhtYXBpby5oCTIwMDAv MTAvMzEgMTM6MzA6MzYNCkBAIC0yNSw3ICsyNSw3IEBAIGNsYXNzIEtQaXht YXBJT0RhdGE7DQogICogSXQgdXNlcyB0aGUgTUlULVNITSBzaGFyZWQgbWVt b3J5IGV4dGVuc2lvbiBmb3IgdGhpcy4gSWYgdGhpcyBleHRlbnNpb24gaXMg DQogICogbm90IGF2YWlsYWJsZSwgaXQgd2lsbCBmYWxsIGJhY2sgdG8gc3Rh bmRhcmQgUXQgbWV0aG9kcy4gDQogICoNCi0gKiBAc2VjdCBUeXBpY2FsIHVz YWdlDQorICogQHNlY3Rpb24ga3BpeG1hcGlvMCAgVHlwaWNhbCB1c2FnZQ0K ICAqDQogICogWW91IGNhbiB1c2UgS1BpeG1hcElPIGZvciBsb2FkL3Nhdmlu ZyBwaXhtYXBzLg0KICAqDQpAQCAtMzgsNyArMzgsNyBAQCBjbGFzcyBLUGl4 bWFwSU9EYXRhOw0KICAqIEl0IGFsc28gaGFzIGZ1bmN0aW9uYWxpdHkgZm9y IHBhcnRpYWxseSB1cGRhdGluZy9zYXZpbmcgcGl4bWFwcywgc2VlIA0KICAq IEByZWYgI3B1dEltYWdlIGFuZCBAcmVmICNnZXRJbWFnZS4NCiAgKg0KLSAq IEBzZWN0IEtQaXhtYXBJTyB2cy4gUXQgc3BlZWQgY29tcGFyaXNvbg0KKyAq IEBzZWN0aW9uIGtwaXhtYXBpbzEgIEtQaXhtYXBJTyB2cy4gUXQgc3BlZWQg Y29tcGFyaXNvbg0KICAqDQogICogU3BlZWQgbWVhc3VyZW1lbnRzIHdlcmUg dGFrZW4uIFRoZXNlIHNob3cgdGhhdCB1c2FnZSBvZiBLUGl4bWFwSU8gZm9y IA0KICAqIGltYWdlcyB1cCB0byBhIGNlcnRhaW4gdGhyZXNob2xkIHNpemUs IG9mZmVycyBubyBzcGVlZCBhZHZhbnRhZ2Ugb3ZlciANCkBAIC03NCw3ICs3 NCw3IEBAIGNsYXNzIEtQaXhtYXBJT0RhdGE7DQogICogaW1wbGVtZW50YXRp b24gb2YgMTYgYml0IFJHQiBwYWNraW5nIGluIFF0LCB3aGlsZSBhdCAzMiBi cHAgd2UgbmVlZCB0bw0KICAqIHRyYW5zZmVyIG1vcmUgZGF0YSwgYW5kIHRo dXMgZ2FpbiBtb3JlLCB0aGFuIGF0IDI0IGJwcC4NCiAgKg0KLSAqIEBzZWN0 IENvbmNsdXNpb24NCisgKiBAc2VjdGlvbiBrcGl4bWFwaW8yICBDb25jbHVz aW9uDQogICoNCiAgKiBGb3IgbGFyZ2UgcGl4bWFwcywgdGhlcmUncyBhIGRl ZmluaXRlIHNwZWVkIGltcHJvdmVtZW50IHdoZW4gdXNpbmcgDQogICogS1Bp eG1hcElPLiBPbiB0aGUgb3RoZXIgaGFuZCwgdGhlcmUncyBubyBzcGVlZCBp bXByb3ZlbWVudCBmb3Igc21hbGwgDQpJbmRleDoga2RldWkva3Byb2dyZXNz LmgNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9r ZGUva2RlbGlicy9rZGV1aS9rcHJvZ3Jlc3MuaCx2DQpyZXRyaWV2aW5nIHJl dmlzaW9uIDEuMTgNCmRpZmYgLXUgLTMgLXAgLXIxLjE4IGtwcm9ncmVzcy5o DQotLS0ga2RldWkva3Byb2dyZXNzLmgJMjAwMC8wNi8yNiAxMjozMToxNQkx LjE4DQorKysga2RldWkva3Byb2dyZXNzLmgJMjAwMC8xMC8zMSAxMzozMDoz Ng0KQEAgLTM1LDcgKzM1LDcgQEANCiAgKiBpcyB0aGF0IEByZWYgc2V0VmFs dWUoKSBpcyBub3cgbWFkZSBhIHNsb3QsIHNvIHlvdSBjYW4gY29ubmVjdA0K ICAqIHN0dWZmIHRvIGl0Lg0KICAqDQotICogQHNlY3QgRGV0YWlscw0KKyAq IEBzZWN0aW9uIGtwcm9ncmVzczAgIERldGFpbHMNCiAgKg0KICAqIE5vbmUg b2YgdGhlIGNvbnN0cnVjdG9ycyB0YWtlIGxpbmUgc3RlcCBhbmQgcGFnZSBz dGVwIGFzIGFyZ3VtZW50cywgDQogICogc28gYnkgZGVmYXVsdCB0aGV5J3Jl IHNldCB0byAxIGFuZCAxMCByZXNwZWN0aXZlbHkuDQpJbmRleDoga2RldWkv a3N0ZGFjdGlvbi5oDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmls ZTogL2hvbWUva2RlL2tkZWxpYnMva2RldWkva3N0ZGFjdGlvbi5oLHYNCnJl dHJpZXZpbmcgcmV2aXNpb24gMS4xNA0KZGlmZiAtdSAtMyAtcCAtcjEuMTQg a3N0ZGFjdGlvbi5oDQotLS0ga2RldWkva3N0ZGFjdGlvbi5oCTIwMDAvMDgv MTcgMTE6MTU6MTgJMS4xNA0KKysrIGtkZXVpL2tzdGRhY3Rpb24uaAkyMDAw LzEwLzMxIDEzOjMwOjM2DQpAQCAtMzcsNyArMzcsNyBAQCBjbGFzcyBLU3Rk QWN0aW9uUHJpdmF0ZTsNCiAgKiBhbHNvLiAgV2hlbiBpbiBkb3VidCBvbiBo b3cgdGhpbmdzIHdvcmssIGNoZWNrIHRoZSBAcmVmIEtBY3Rpb24NCiAgKiBk b2N1bWVudGlvbiBmaXJzdC4NCiAgKg0KLSAqIEBzZWN0IFNpbXBsZSBFeGFt cGxlOg0KKyAqIEBzZWN0aW9uIGtzdGRhY3Rpb24wICBTaW1wbGUgRXhhbXBs ZToNCiAgKg0KICAqIEluIGdlbmVyYWwsIHVzaW5nIHN0YW5kYXJkIGFjdGlv bnMgc2hvdWxkIGJlIGEgZHJvcCBpbiByZXBsYWNlbWVudA0KICAqIGZvciBy ZWd1bGFyIGFjdGlvbnMuICBGb3IgZXhhbXBsZSwgaWYgeW91IHByZXZpb3Vz bHkgaGFkOg0KQEAgLTU1LDcgKzU1LDcgQEAgY2xhc3MgS1N0ZEFjdGlvblBy aXZhdGU7DQogICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBhY3Rpb25Db2xsZWN0aW9uKCkpOw0KICAqIDwvUFJFPg0KICAqDQot ICogQHNlY3QgTm9uLXN0YW5kYXJkIFVzYWdlcw0KKyAqIEBzZWN0aW9uIGtz dGRhY3Rpb24xICBOb24tc3RhbmRhcmQgVXNhZ2VzDQogICoNCiAgKiBJdCBp cyBwb3NzaWJsZSB0byB1c2UgdGhlIHN0YW5kYXJkIGFjdGlvbnMgaW4gdmFy aW91cw0KICAqIG5vbi1yZWNvbW1lbmRlZCB3YXlzLiAgU2F5LCBmb3IgaW5z dGFuY2UsIHlvdSB3YW50ZWQgdG8gaGF2ZSBhDQpJbmRleDoga2h0bWwvZG9t L2Nzc19ydWxlLmgNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxl OiAvaG9tZS9rZGUva2RlbGlicy9raHRtbC9kb20vY3NzX3J1bGUuaCx2DQpy ZXRyaWV2aW5nIHJldmlzaW9uIDEuNQ0KZGlmZiAtdSAtMyAtcCAtcjEuNSBj c3NfcnVsZS5oDQotLS0ga2h0bWwvZG9tL2Nzc19ydWxlLmgJMjAwMC8wOC8y MSAxMzo0NjowMQkxLjUNCisrKyBraHRtbC9kb20vY3NzX3J1bGUuaAkyMDAw LzEwLzMxIDEzOjMwOjM3DQpAQCAtMzM2LDggKzMzNiw4IEBAIHB1YmxpYzoN CiBjbGFzcyBDU1NQYWdlUnVsZUltcGw7DQogLyoqDQogICogVGhlIDxjb2Rl PiBDU1NQYWdlUnVsZSA8L2NvZGU+IGludGVyZmFjZSByZXByZXNlbnRzIGEg PGENCi0gKiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtQ1NTMi9w YWdlLmh0bWwjcGFnZS1ib3giPiBAcGFnZSBydWxlDQotICogPC9hPiB3aXRo aW4gYSBDU1Mgc3R5bGUgc2hlZXQuIFRoZSA8Y29kZT4gQHBhZ2UgPC9jb2Rl PiBydWxlIGlzDQorICogaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvUkVD LUNTUzIvcGFnZS5odG1sI3BhZ2UtYm94Ij4gXEBwYWdlIHJ1bGUNCisgKiA8 L2E+IHdpdGhpbiBhIENTUyBzdHlsZSBzaGVldC4gVGhlIDxjb2RlPiBcQHBh Z2UgPC9jb2RlPiBydWxlIGlzDQogICogdXNlZCB0byBzcGVjaWZ5IHRoZSBk aW1lbnNpb25zLCBvcmllbnRhdGlvbiwgbWFyZ2lucywgZXRjLiBvZiBhDQog ICogcGFnZSBib3ggZm9yIHBhZ2VkIG1lZGlhLg0KICAqDQpJbmRleDoga2lv L2tpbWFnZWlvLmgNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxl OiAvaG9tZS9rZGUva2RlbGlicy9raW8va2ltYWdlaW8uaCx2DQpyZXRyaWV2 aW5nIHJldmlzaW9uIDEuMw0KZGlmZiAtdSAtMyAtcCAtcjEuMyBraW1hZ2Vp by5oDQotLS0ga2lvL2tpbWFnZWlvLmgJMjAwMC8wNi8wNiAyMjo1MzozNgkx LjMNCisrKyBraW8va2ltYWdlaW8uaAkyMDAwLzEwLzMxIDEzOjMwOjM3DQpA QCAtMjMsNyArMjMsNyBAQA0KICAqIHdpdGggdGhlIEByZWYgUUltYWdlSU8g aGFuZGxlciBmb3JtYXQuIFRoZSBiYWNrZW5kcyBhcmUgbG9hZGVkIG9uIGRl bWFuZA0KICAqIHdoZW4gYSBwYXJ0aWN1bGFyIGZvcm1hdCBpcyByZXF1ZXN0 ZWQuDQogICogDQotICogQHNlY3QgRm9ybWF0cw0KKyAqIEBzZWN0aW9uIGtp bWFnZWlvMCAgRm9ybWF0cw0KICAqDQogICogQ3VycmVudGx5IHN1cHBvcnRl ZCBmb3JtYXRzIGluY2x1ZGU6DQogICogQGxpIEpQRUcgICAgPHJlYWQ+DQpA QCAtMzQsMTIgKzM0LDEyIEBADQogICogQGxpIFRJRkYgICAgPHJlYWQ+DQog ICogQGxpIEtSTCAgICAgPHJlYWQ+IA0KICAqDQotICogQHNlY3QgVXNhZ2UN CisgKiBAc2VjdGlvbiBraW1hZ2VpbzEgIFVzYWdlDQogICoNCiAgKiBTaW1w bHkgY2FsbCB0aGUgQHJlZiBLSW1hZ2VJTzo6cmVnaXN0ZXJGb3JtYXRzKCkg c3RhdGljIG1ldGhvZCBkZWNsYXJlZA0KICAqIGluIGtpbWdhZ2Vpby5oLg0K ICAqIA0KLSAqIEBzZWN0IEV4YW1wbGUNCisgKiBAc2VjdGlvbiBraW1hZ2Vp bzIgIEV4YW1wbGUNCiAgKg0KICAqIDxwcmU+DQogCSNpbmNsdWRlPHFwaXht YXAuaD4NCkluZGV4OiBraW8va3RyYWRlci5oDQo9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09DQpSQ1MgZmlsZTogL2hvbWUva2RlL2tkZWxpYnMva2lvL2t0cmFk ZXIuaCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuOQ0KZGlmZiAtdSAtMyAt cCAtcjEuOSBrdHJhZGVyLmgNCi0tLSBraW8va3RyYWRlci5oCTIwMDAvMTAv MTAgMDA6NTI6MjMJMS45DQorKysga2lvL2t0cmFkZXIuaAkyMDAwLzEwLzMx IDEzOjMwOjM5DQpAQCAtMzIsNyArMzIsNyBAQA0KICAqIGFuZC9vciBwYXRo IG9mIHRoZSBhcHBsaWNhdGlvbi4gIEl0IGlzIG1vc3RseSB1c2VkIHdoZW4g eW91IHdhbnQgdG8NCiAgKiBkbyBjb21wbGV4IHF1ZXJpZXMgdGhhdCBAcmVm IEtTZXJ2aWNlVHlwZVByb2ZpbGUgY2FuJ3QgaGFuZGxlLg0KICAqDQotICog QHNlY3QgRXhhbXBsZXMNCisgKiBAc2VjdGlvbiBrdHJhZGVyMCAgRXhhbXBs ZXMNCiAgKg0KICAqIEEgZmV3IGV4YW1wbGVzIHdpbGwgbWFrZSB0aGlzIGEg bG90IG1vcmUgY2xlYXIuDQogICoNCkluZGV4OiBraW8va3VyaWZpbHRlci5o DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUva2Rl L2tkZWxpYnMva2lvL2t1cmlmaWx0ZXIuaCx2DQpyZXRyaWV2aW5nIHJldmlz aW9uIDEuMTYNCmRpZmYgLXUgLTMgLXAgLXIxLjE2IGt1cmlmaWx0ZXIuaA0K LS0tIGtpby9rdXJpZmlsdGVyLmgJMjAwMC8wOS8wOSAyMDowODoxOAkxLjE2 DQorKysga2lvL2t1cmlmaWx0ZXIuaAkyMDAwLzEwLzMxIDEzOjMwOjM5DQpA QCAtNDAsNyArNDAsNyBAQCBjbGFzcyBLQ01vZHVsZTsNCiAqIGNyZWF0ZSBh biBpbnN0YW5jZSBvZiB0aGlzIGNsYXNzIGFuZCBzZW5kIGl0IHRvIEByZWYg S1VSSUZpbHRlcg0KICogdG8gaGF2ZSB0aGUgZmlsdGVyIHBsdWdpbnMgZmls bCB0aGUgbmVjZXNzYXJ5IGluZm9ybWF0aW9uLg0KICoNCi0qIEBzZWN0IEV4 YW1wbGUNCisqIEBzZWN0aW9uIGt1cmlmaWx0ZXIwICBFeGFtcGxlDQogKiA8 cHJlPg0KICogICBRU3RyaW5nIHRleHQgPSAia2RlLm9yZyI7DQogKiAgIEtV UklGaWx0ZXJEYXRhIGQgPSB0ZXh0Ow0KQEAgLTQyMSw3ICs0MjEsNyBAQCBw cml2YXRlOg0KICAqIGJ5IGRvaW5nIEBwIEtVUklGaWx0ZXI6OnNlbGYoKSBh bmQgdXNlIGFueSBvZiB0aGUgcHVibGljIG1lbWJlcg0KICAqIGZ1bmN0aW9u cyB0byBwcmVmb3JtIHRoZSBmaWx0ZXJpbmcuDQogICogDQotICogQHNlY3Qg RXhhbXBsZQ0KKyAqIEBzZWN0aW9uIGt1cmlmaWx0ZXIxICBFeGFtcGxlDQog ICoNCiAgKiBUbyBzaW1wbHkgZmlsdGVyIGEgZ2l2ZW4gc3RyaW5nOg0KICAq IDxwcmU+DQpJbmRleDoga3BhcnRzL3BhcnQuaA0KPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL2tkZS9rZGVsaWJzL2twYXJ0cy9w YXJ0Lmgsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjc4DQpkaWZmIC11IC0z IC1wIC1yMS43OCBwYXJ0LmgNCi0tLSBrcGFydHMvcGFydC5oCTIwMDAvMDkv MDEgMDQ6NTQ6NTgJMS43OA0KKysrIGtwYXJ0cy9wYXJ0LmgJMjAwMC8xMC8z MSAxMzozMDo0MQ0KQEAgLTEwNSwxNCArMTA1LDE0IEBAIHByaXZhdGU6DQog ICogQGxpIEdVSSBlbGVtZW50cyB0aGF0IHdpbGwgYmUgbWVyZ2VkIGluIHRo ZSAiaG9zdCIgdXNlciBpbnRlcmZhY2UNCiAgKiAobWVudWJhcnMsIHRvb2xi YXJzLi4uICkuDQogICoNCi0gKiBAc2VjdCBBYm91dCB0aGUgd2lkZ2V0DQor ICogQHNlY3Rpb24gcGFydDAgIEFib3V0IHRoZSB3aWRnZXQNCiAgKiBOb3Rl IHRoYXQgQHJlZiBLUGFydHM6OlBhcnQgZG9lcyBub3QgaW5oZXJpdCBAcmVm IFFXaWRnZXQuDQogICogVGhpcyBpcyBkdWUgdG8gdGhlIGZhY3QgdGhhdCB0 aGUgInZpc3VhbCByZXByZXNlbnRhdGlvbiINCiAgKiB3aWxsIHByb2JhYmx5 IG5vdCBiZSBhIG1lcmUgQHJlZiBRV2lkZ2V0LCBidXQgYW4gZWxhYm9yYXRl IG9uZS4NCiAgKiBUaGF0J3Mgd2h5IHdoZW4gaW1wbGVtZW50aW5nIHlvdXIg QHJlZiBLUGFydHM6OlBhcnQgKG9yIGRlcml2ZWQpDQogICogeW91IHNob3Vs ZCBjYWxsIEByZWYgS1BhcnRzOjpQYXJ0OjpzZXRXaWRnZXQoKSBpbiB5b3Vy IGNvbnN0cnVjdG9yLg0KICAqDQotICogQHNlY3QgQWJvdXQgdGhlIEdVSSBl bGVtZW50cw0KKyAqIEBzZWN0aW9uIHBhcnQxICBBYm91dCB0aGUgR1VJIGVs ZW1lbnRzDQogICogVGhvc2UgZWxlbWVudHMgdHJpZ2dlciBhY3Rpb25zLCBk ZWZpbmVkIGJ5IHRoZSBwYXJ0IChAcmVmIGFjdGlvbigpKS4NCiAgKiBUaGUg bGF5b3V0IG9mIHRoZSBhY3Rpb25zIGluIHRoZSBHVUkgaXMgZGVmaW5lZCBi eSBhbiBYTUwgZmlsZSAoQHJlZiBzZXRYTUxGaWxlKCkpLg0KICAqDQpJbmRl eDoga3NwZWxsL2tzY29uZmlnLmgNCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0N ClJDUyBmaWxlOiAvaG9tZS9rZGUva2RlbGlicy9rc3BlbGwva3Njb25maWcu aCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjcNCmRpZmYgLXUgLTMgLXAg LXIxLjI3IGtzY29uZmlnLmgNCi0tLSBrc3BlbGwva3Njb25maWcuaAkyMDAw LzEwLzIwIDE3OjM5OjM4CTEuMjcNCisrKyBrc3BlbGwva3Njb25maWcuaAky MDAwLzEwLzMxIDEzOjMwOjQxDQpAQCAtOTUsNyArOTUsNyBAQCBjbGFzcyBL U3BlbGxDb25maWcgOiBwdWJsaWMgUVdpZGdldA0KICAgICB2b2lkIG9wZXJh dG9yPSAoY29uc3QgS1NwZWxsQ29uZmlnICZrc2MpOw0KIA0KICAgICAvKioN Ci0gICAgICogQHNlY3QgT3B0aW9ucyBzZXR0aW5nIHJvdXRpbmVzLg0KKyAg ICAgKiBAc2VjdGlvbiBrc2NvbmZpZzAgIE9wdGlvbnMgc2V0dGluZyByb3V0 aW5lcy4NCiAgICAgICoqLw0KIA0KICAgICAvKioNCg== --0-1649004650-972999466=:27469 Content-Type: APPLICATION/octet-stream; name="dox.tgz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="dox.tgz" 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 YO8qzXz2feXf185HZU7ddGla+lb/bu9ee9u40QUAf878CgEF9rRAjm1ZvgAF +iHZFkmBYrvY070BBXIc25sqUeKcWNnu7q8/Q3KumpGssWVbdh8CTdNaHnIo DofkcN6n3M338WPffr60vtfez9feO7cw+HhaLCQX2Sy0znaZG2E4ygXf/pNr LKe22+8632i6klInVH6jcf2xeLTbCA7V6linVeTLVjys8Ln//rZcoUn30Ten p8WCYRXO5qL17LaOQ1JcteVbo3nX9XXa3BaWDtKj02/qecDoyw8XxSb2r6rn wY0fl+84fFO+OHPxPkS1PBt9M47ZxjCKaSW9rrdRp4kt6esbPUf69dhH9MYy rLdEXfVGXqsiml9Lfcmkm0gV0K78ChvnXQ40e+94Cw8Rvhj9ubhyFtpOsTL9 awjjWcQoOiliZoRvcDHTRlf5LAS4alTmLcy5WmOYr7/OR9SdUUwYd8eIQY2l 5VsYyIQv4KdnL+oADmtcc/nHqoFG9bujhZbXCAFbfn73/+Y7+d9Dtn9Nb9fX 4bZae91TGKf6/dCUx8Jqb3r1NF7vseD1qDg/VohYdDa6+FDcqOruezqPK3eX raelRQYryx7jshelrzZR/hAmLiF6U98dM8Y3Lb/FxV11Rci++qbZ2PS5MHSK g6V0HjFsQnwbfOGwjS0N6chpn2SjfP1z37Ckkm5M9QUa9/QVYYvTRLaMqlIF Gzv/NBuloBTpDIrQF/mX9mVcNQkfKt5MzX/lf9OyUPit/4r7putcFxpNfCHo 9fTDbvjs/cwczi7mcbfHLc0aQp9UPpB9+ewv37369sefmhGY5p33D4toua2y pehuVcjb+s2UNPVPb04XHyzf330RXgb+5/Q/T2OYgfBi8D+nl+EhzX/qYGr5 r7zLr5B4uGc//e6nFBXs82noMZ+fz8LDy9fF0mRaCS8rcVq81lhO7cNzoLAw 1oqyOW8//Fg2OciyqmIW28dCbKcYTOzFn5798WUsaLM+++9hK7ZWpSqpttUv xjKNwYfK5zppgFQ+9s6v2fTfxfV5EkKup5WgvGqaMdKKu2czElie4Wm1p6g+ qVagtyrWUuN8V1XLjz/88Oz5j3nPlt/mt6l6ypAtqb2dxXiP+Y0tDMa/bNTd 03JIHj5bxaVO2TRuhiHMa9xI9FXZLZVhYfMeK7XObkDatLjfrZ+eauybQj+t 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 --0-1649004650-972999466=:27469--