From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbgau1.qq.com (smtpbgau1.qq.com [54.206.16.166]) by sourceware.org (Postfix) with ESMTPS id 618B23857BB5 for ; Fri, 12 Jan 2024 07:32:29 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 618B23857BB5 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 618B23857BB5 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=54.206.16.166 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1705044761; cv=none; b=ND5mWB+dR3iPYKGfvj8nQVhpUBSuts8lWWxdPjE/D5HDj1HGa6NWIAqESh3i1LmeX2cvkoBy80RCvxPZYs48FXVU1nRgnp71nz5JVgl94HLDcewELBkr1xA3MuaI360R9f9V/sMyu/Q4AchWNm3jSzzFQqngJLz2Tph4/xjM/40= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1705044761; c=relaxed/simple; bh=M7p7UBi0hgHitaijbmfXOUnXAHK9WMXMSB5VL71l050=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=DYD3uXLvgEkweVDGYxRSdpDPc3fhRPPDV1S2jF2V7qRtX4eIoFxabBcGhAPloqHSHBfv4Hkpi3khZVp9YgR8CK/Grkx7ySt8ZCb6ZIHevAoUPyd/NNlsr4r4VGQ/irzyv6o2rmwZQ0HL7mhWU6ZQWw1ZxylL2HHKrWQX8K/SKZY= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtp72t1705044721tdo8m8g1 Received: from LAPTOP-EPITNQBU ( [121.35.183.89]) by bizesmtp.qq.com (ESMTP) with id ; Fri, 12 Jan 2024 15:31:59 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: Mxc3K7F63kwXLKAcgVXTKr/UdkZuyXC9P9G8H4TcdeT669tNO9Te131v73bCG cIwTxEOP8ujb8ZMyv+b6WC5h494dR64D/RdrgmdGhzA7RlFZvhgHcCDyPTEcST+F5q4gLsy KI9A675Xl0yGZBcE4RFSgg4gAy4mVF4qybwbUGs01jXQcvMmnrzZcDnvIX7iZrcadSVkVf8 ZLQRaedFlgkmb/rDY3beZEQ/AiTVQdVv6FklTfL5X91n86r/8eOKG2i1BLwtzt/Ul01SN+m EpL0s6pOCpItm6XxwTzUEJsZU2UbkXXkjrR+xjZYUWUyoPOgblhfkw//ufCWs6nmMGu0Cej AqOGVC6k8NuWdVJxRx4sZ9oAow3BD4Nq5O6cFC9cmGOG8H5H3Ij/hkYFF88jS3m25qEk8eP pI0VCQaSdylCu85bcZ68WG+PKEUP+DXO X-QQ-GoodBg: 2 X-BIZMAIL-ID: 5399934043553094742 Date: Fri, 12 Jan 2024 15:31:59 +0800 From: "juzhe.zhong@rivai.ai" To: cooper.joshua , gcc-patches Cc: "Jim Wilson" , palmer , andrew , philipp.tomsich , jeffreyalaw , christoph.muellner , cooper.joshua , jinma , cooper.qu Subject: Re: [PATCH v6] RISC-V: Handle differences between XTheadvector and Vector References: <20240112031840.1556-1-cooper.joshua@linux.alibaba.com>, <20240112032210.1715-1-cooper.joshua@linux.alibaba.com> X-Priority: 3 X-GUID: FE29C6D4-0AEF-4144-A8F1-8D77AC468DFE X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: Content-Type: multipart/alternative; boundary="----=_001_NextPart513633523824_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-11.0 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE,URIBL_BLACK autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. ------=_001_NextPart513633523824_=---- Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 b2sNCg0KDQoNCmp1emhlLnpob25nQHJpdmFpLmFpDQogDQpGcm9tOiBKdW4g U2hhIChKb3NodWEpDQpEYXRlOiAyMDI0LTAxLTEyIDExOjIyDQpUbzogZ2Nj LXBhdGNoZXMNCkNDOiBqaW0ud2lsc29uLmdjYzsgcGFsbWVyOyBhbmRyZXc7 IHBoaWxpcHAudG9tc2ljaDsgamVmZnJleWFsYXc7IGNocmlzdG9waC5tdWVs bG5lcjsganV6aGUuemhvbmc7IEp1biBTaGEgKEpvc2h1YSk7IEppbiBNYTsg WGlhbm1pYW8gUXUNClN1YmplY3Q6IFtQQVRDSCB2Nl0gUklTQy1WOiBIYW5k bGUgZGlmZmVyZW5jZXMgYmV0d2VlbiBYVGhlYWR2ZWN0b3IgYW5kIFZlY3Rv cg0KVGhpcyBwYXRjaCBpcyB0byBoYW5kbGUgdGhlIGRpZmZlcmVuY2VzIGlu IGluc3RydWN0aW9uIGdlbmVyYXRpb24NCmJldHdlZW4gVmVjdG9yIGFuZCBY VGhlYWRWZWN0b3IuIEluIHRoaXMgdmVyc2lvbiwgd2Ugb25seSBzdXBwb3J0 DQpwYXJ0aWFsIHh0aGVhZHZlY3RvciBpbnN0cnVjdGlvbnMgdGhhdCBsZXZl cmFnZSBkaXJlY3RseSBmcm9tIGN1cnJlbnQNClJWVjEuMCB3aXRoIHNpbXBs ZSBhZGRpbmcgInRoLiIgcHJlZml4LiBGb3IgZGlmZmVyZW50IG5hbWUgeHRo ZWFkdmVjdG9yDQppbnN0cnVjdGlvbnMgYnV0IHNoYXJlIHNhbWUgcGF0dGVy bnMgYXMgUlZWMS4wIGluc3RydWN0aW9ucywgd2Ugd2lsbA0KdXNlIEFTTSB0 YXJnZXRob29rIHRvIHJld3JpdGUgdGhlIHdob2xlIHN0cmluZyBvZiB0aGUg aW5zdHJ1Y3Rpb25zIGluDQp0aGUgZm9sbG93aW5nIHBhdGNoZXMuIA0KIA0K Rm9yIHNvbWUgdmVjdG9yIHBhdHRlcm5zIHRoYXQgY2Fubm90IGJlIGF2b2lk ZWQsIHdlIHVzZQ0KIiFUQVJHRVRfWFRIRUFEVkVDVE9SIiB0byBkaXNhYmxl IHRoZW0gaW4gdmVjdG9yLm1kIGluIG9yZGVyDQpub3QgdG8gZ2VuZXJhdGUg aW5zdHJ1Y3Rpb25zIHRoYXQgeHRoZWFkdmVjdG9yIGRvZXMgbm90IHN1cHBv cnQsDQpsaWtlIHZtdjFyLg0KIA0KZ2NjL0NoYW5nZUxvZzoNCiANCiogY29u ZmlnLmdjYzogIEFkZCBmaWxlcyBmb3IgWFRoZWFkVmVjdG9yIGludHJpbnNp Y3MuDQoqIGNvbmZpZy9yaXNjdi9hdXRvdmVjLm1kOiBHdWFyZCBYVGhlYWRW ZWN0b3IuDQoqIGNvbmZpZy9yaXNjdi9wcmVkaWNhdGVzLm1kOiBEaXNhYmxl IGltbWVkaWF0ZSB2bA0KZm9yIFhUaGVhZFZlY3Rvci4NCiogY29uZmlnL3Jp c2N2L3Jpc2N2LWMuY2MgKHJpc2N2X3ByYWdtYV9pbnRyaW5zaWMpOg0KQWRk IHByYWdtYSBmb3IgWFRoZWFkVmVjdG9yLg0KKiBjb25maWcvcmlzY3Yvcmlz Y3Ytc3RyaW5nLmNjIChyaXNjdl9leHBhbmRfYmxvY2tfbW92ZSk6DQpHdWFy ZCBYVGhlYWRWZWN0b3IuDQoqIGNvbmZpZy9yaXNjdi9yaXNjdi12LmNjICh2 bHNfbW9kZV92YWxpZF9wKTogDQpBdm9pZCBhdXRvdmVjLg0KKiBjb25maWcv cmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWJhc2VzLmNjOg0KRG8gbm90 IG5vcm1hbGl6ZSB2c2V0dmwgaW5zdHJ1Y3Rpb25zIGZvciBYVGhlYWRWZWN0 b3IuDQoqIGNvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtc2hh cGVzLmNjIChjaGVja190eXBlKToNCihidWlsZF9vbmUpOiBOZXcgY2hlY2sg dHlwZSBmdW5jdGlvbi4NCiogY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1z d2l0Y2guZGVmIChFTlRSWSk6DQpEaXNhYmxlIGZyYWN0aW9uYWwgbW9kZSBm b3IgdGhlIFhUaGVhZFZlY3RvciBleHRlbnNpb24uDQooVFVQTEVfRU5UUlkp OiBMaWtld2lzZS4NCiogY29uZmlnL3Jpc2N2L3Jpc2N2LmNjIChyaXNjdl92 X2FkanVzdF9ieXRlc2l6ZSk6DQpHdWFyZCBYVGhlYWRWZWN0b3IuDQoocmlz Y3ZfcHJlZmVycmVkX3NpbWRfbW9kZSk6IExpa2V3c2llLg0KKHJpc2N2X2F1 dG92ZWN0b3JpemVfdmVjdG9yX21vZGVzKTogTGlrZXdpc2UuDQoocmlzY3Zf dmVjdG9yX21vZGVfc3VwcG9ydGVkX2FueV90YXJnZXRfcCk6IExpa2V3aXNl Lg0KKFRBUkdFVF9WRUNUT1JfTU9ERV9TVVBQT1JURURfQU5ZX1RBUkdFVF9Q KTogTGlrZXdpc2UuDQoqIGNvbmZpZy9yaXNjdi90aGVhZC5jYyAodGhfYXNt X291dHB1dF9vcGNvZGUpOg0KUmV3cml0ZSB2c2V0dmwgaW5zdHJ1Y3Rpb25z Lg0KKiBjb25maWcvcmlzY3YvdmVjdG9yLm1kOiANCkluY2x1ZGUgdGhlYWQt dmVjdG9yLm1kIGFuZCBjaGFuZ2UgZnJhY3Rpb25hbCBMTVVMDQppbnRvIDEg Zm9yIHZib29sLg0KKiBjb25maWcvcmlzY3YvcmlzY3ZfdGhfdmVjdG9yLmg6 IE5ldyBmaWxlLg0KKiBjb25maWcvcmlzY3YvdGhlYWQtdmVjdG9yLm1kOiBO ZXcgZmlsZS4NCiANCmdjYy90ZXN0c3VpdGUvQ2hhbmdlTG9nOg0KIA0KKiBn Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByYWdtYS0xLmM6IEFkZCBYVGhl YWRWZWN0b3IuDQoqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvYWJpLTEu YzogRXhjbHVkZSBYVGhlYWRWZWN0b3IuDQoqIGxpYi90YXJnZXQtc3VwcG9y dHMuZXhwOiBBZGQgdGFyZ2V0IGZvciBYVGhlYWRWZWN0b3IuDQogDQpDby1h dXRob3JlZC1ieTogSmluIE1hIDxqaW5tYUBsaW51eC5hbGliYWJhLmNvbT4N CkNvLWF1dGhvcmVkLWJ5OiBYaWFubWlhbyBRdSA8Y29vcGVyLnF1QGxpbnV4 LmFsaWJhYmEuY29tPg0KQ28tYXV0aG9yZWQtYnk6IENocmlzdG9waCBNw7xs bG5lciA8Y2hyaXN0b3BoLm11ZWxsbmVyQHZydWxsLmV1Pg0KLS0tDQpnY2Mv Y29uZmlnLmdjYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg IDIgKy0NCmdjYy9jb25maWcvcmlzY3YvYXV0b3ZlYy5tZCAgICAgICAgICAg ICAgICAgICB8ICAgMiArLQ0KZ2NjL2NvbmZpZy9yaXNjdi9wcmVkaWNhdGVz Lm1kICAgICAgICAgICAgICAgIHwgICA0ICstDQpnY2MvY29uZmlnL3Jpc2N2 L3Jpc2N2LWMuY2MgICAgICAgICAgICAgICAgICAgfCAgIDMgKy0NCmdjYy9j b25maWcvcmlzY3YvcmlzY3Ytc3RyaW5nLmNjICAgICAgICAgICAgICB8ICAg MyArLQ0KZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12LmNjICAgICAgICAgICAg ICAgICAgIHwgICAyICstDQouLi4vcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0 aW5zLWJhc2VzLmNjICAgICAgfCAgNDggKysrKy0tDQouLi4vcmlzY3Yvcmlz Y3YtdmVjdG9yLWJ1aWx0aW5zLXNoYXBlcy5jYyAgICAgfCAgMjMgKysrDQpn Y2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1zd2l0Y2guZGVmICAgICAg fCAxNTAgKysrKysrKysrLS0tLS0tLS0tDQpnY2MvY29uZmlnL3Jpc2N2L3Jp c2N2LmNjICAgICAgICAgICAgICAgICAgICAgfCAgMjAgKystDQpnY2MvY29u ZmlnL3Jpc2N2L3Jpc2N2X3RoX3ZlY3Rvci5oICAgICAgICAgICAgfCAgNDkg KysrKysrDQpnY2MvY29uZmlnL3Jpc2N2L3RoZWFkLXZlY3Rvci5tZCAgICAg ICAgICAgICAgfCAxMDIgKysrKysrKysrKysrDQpnY2MvY29uZmlnL3Jpc2N2 L3RoZWFkLmNjICAgICAgICAgICAgICAgICAgICAgfCAgMjMgKystDQpnY2Mv Y29uZmlnL3Jpc2N2L3ZlY3Rvci5tZCAgICAgICAgICAgICAgICAgICAgfCAg NDMgKysrKy0NCi4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL2FiaS0x LmMgICAgICAgICB8ICAgMiArLQ0KLi4uL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvcHJhZ21hLTEuYyAgICAgIHwgICAyICstDQpnY2MvdGVzdHN1aXRl L2xpYi90YXJnZXQtc3VwcG9ydHMuZXhwICAgICAgICAgfCAgMTIgKysNCjE3 IGZpbGVzIGNoYW5nZWQsIDM4MCBpbnNlcnRpb25zKCspLCAxMTAgZGVsZXRp b25zKC0pDQpjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL2NvbmZpZy9yaXNjdi9y aXNjdl90aF92ZWN0b3IuaA0KY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy9jb25m aWcvcmlzY3YvdGhlYWQtdmVjdG9yLm1kDQogDQpkaWZmIC0tZ2l0IGEvZ2Nj L2NvbmZpZy5nY2MgYi9nY2MvY29uZmlnLmdjYw0KaW5kZXggN2U1ODMzOTAw MjQuLjA0N2U0YzAyY2Y0IDEwMDY0NA0KLS0tIGEvZ2NjL2NvbmZpZy5nY2MN CisrKyBiL2djYy9jb25maWcuZ2NjDQpAQCAtNTQ5LDcgKzU0OSw3IEBAIHJp c2N2KikNCmV4dHJhX29ianM9IiR7ZXh0cmFfb2Jqc30gcmlzY3YtdmVjdG9y LWJ1aWx0aW5zLm8gcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLXNoYXBlcy5vIHJp c2N2LXZlY3Rvci1idWlsdGlucy1iYXNlcy5vIg0KZXh0cmFfb2Jqcz0iJHtl eHRyYV9vYmpzfSB0aGVhZC5vIHJpc2N2LXRhcmdldC1hdHRyLm8iDQpkX3Rh cmdldF9vYmpzPSJyaXNjdi1kLm8iDQotIGV4dHJhX2hlYWRlcnM9InJpc2N2 X3ZlY3Rvci5oIg0KKyBleHRyYV9oZWFkZXJzPSJyaXNjdl92ZWN0b3IuaCBy aXNjdl90aF92ZWN0b3IuaCINCnRhcmdldF9ndGZpbGVzPSIkdGFyZ2V0X2d0 ZmlsZXMgXCQoc3JjZGlyKS9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1 aWx0aW5zLmNjIg0KdGFyZ2V0X2d0ZmlsZXM9IiR0YXJnZXRfZ3RmaWxlcyBc JChzcmNkaXIpL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMu aCINCjs7DQpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVj Lm1kIGIvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVjLm1kDQppbmRleCA3NzVl YWE4MjViMC4uMDQ3Nzc4MWNhYmUgMTAwNjQ0DQotLS0gYS9nY2MvY29uZmln L3Jpc2N2L2F1dG92ZWMubWQNCisrKyBiL2djYy9jb25maWcvcmlzY3YvYXV0 b3ZlYy5tZA0KQEAgLTI1NzksNyArMjU3OSw3IEBADQogICBbKG1hdGNoX29w ZXJhbmQgICAgICAwICJyZWdpc3Rlcl9vcGVyYW5kIikNCiAgICAobWF0Y2hf b3BlcmFuZCAgICAgIDEgIm1lbW9yeV9vcGVyYW5kIikNCiAgICAobWF0Y2hf b3BlcmFuZDpBTllJIDIgImNvbnN0X2ludF9vcGVyYW5kIildDQotICAiVEFS R0VUX1ZFQ1RPUiINCisgICJUQVJHRVRfVkVDVE9SICYmICFUQVJHRVRfWFRI RUFEVkVDVE9SIg0KICAgew0KICAgICByaXNjdl92ZWN0b3I6OmV4cGFuZF9y YXdtZW1jaHIoPE1PREU+bW9kZSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFd LA0KICAgb3BlcmFuZHNbMl0pOw0KZGlmZiAtLWdpdCBhL2djYy9jb25maWcv cmlzY3YvcHJlZGljYXRlcy5tZCBiL2djYy9jb25maWcvcmlzY3YvcHJlZGlj YXRlcy5tZA0KaW5kZXggYjFhNzljYWU1MGEuLjAzMzdkYTg4Mjg0IDEwMDY0 NA0KLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi9wcmVkaWNhdGVzLm1kDQorKysg Yi9nY2MvY29uZmlnL3Jpc2N2L3ByZWRpY2F0ZXMubWQNCkBAIC00MjgsNyAr NDI4LDkgQEANCjs7IFByZWRpY2F0ZXMgZm9yIHRoZSBWIGV4dGVuc2lvbi4N CihkZWZpbmVfc3BlY2lhbF9wcmVkaWNhdGUgInZlY3Rvcl9sZW5ndGhfb3Bl cmFuZCINCiAgIChpb3IgKG1hdGNoX29wZXJhbmQgMCAicG1vZGVfcmVnaXN0 ZXJfb3BlcmFuZCIpDQotICAgICAgIChtYXRjaF9vcGVyYW5kIDAgImNvbnN0 X2Nzcl9vcGVyYW5kIikpKQ0KKyAgICAgICAoYW5kIChpb3IgKG1hdGNoX3Rl c3QgIlRBUkdFVF9YVEhFQURWRUNUT1IgJiYgcnR4X2VxdWFsX3AgKG9wLCBj b25zdDBfcnR4KSIpDQorIChtYXRjaF90ZXN0ICIhVEFSR0VUX1hUSEVBRFZF Q1RPUiIpKQ0KKyAgICAobWF0Y2hfb3BlcmFuZCAwICJjb25zdF9jc3Jfb3Bl cmFuZCIpKSkpDQooZGVmaW5lX3NwZWNpYWxfcHJlZGljYXRlICJhdXRvdmVj X2xlbmd0aF9vcGVyYW5kIg0KICAgKGlvciAobWF0Y2hfb3BlcmFuZCAwICJw bW9kZV9yZWdpc3Rlcl9vcGVyYW5kIikNCmRpZmYgLS1naXQgYS9nY2MvY29u ZmlnL3Jpc2N2L3Jpc2N2LWMuY2MgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2 LWMuY2MNCmluZGV4IDQyMmRkYzJjMzA4Li4yZTMwNjA1NzM0NyAxMDA2NDQN Ci0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtYy5jYw0KKysrIGIvZ2Nj L2NvbmZpZy9yaXNjdi9yaXNjdi1jLmNjDQpAQCAtMTk1LDcgKzE5NSw4IEBA IHJpc2N2X3ByYWdtYV9pbnRyaW5zaWMgKGNwcF9yZWFkZXIgKikNCiAgIGNv bnN0IGNoYXIgKm5hbWUgPSBUUkVFX1NUUklOR19QT0lOVEVSICh4KTsNCi0g IGlmIChzdHJjbXAgKG5hbWUsICJ2ZWN0b3IiKSA9PSAwKQ0KKyAgaWYgKHN0 cmNtcCAobmFtZSwgInZlY3RvciIpID09IDANCisgICAgICB8fCBzdHJjbXAg KG5hbWUsICJ4dGhlYWR2ZWN0b3IiKSA9PSAwKQ0KICAgICB7DQogICAgICAg aWYgKCFUQVJHRVRfVkVDVE9SKQ0Kew0KZGlmZiAtLWdpdCBhL2djYy9jb25m aWcvcmlzY3YvcmlzY3Ytc3RyaW5nLmNjIGIvZ2NjL2NvbmZpZy9yaXNjdi9y aXNjdi1zdHJpbmcuY2MNCmluZGV4IGYyMjdiODY2N2NlLi5iMDliNTFkNzUy NiAxMDA2NDQNCi0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3Ytc3RyaW5n LmNjDQorKysgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXN0cmluZy5jYw0K QEAgLTc3Myw3ICs3NzMsOCBAQCByaXNjdl9leHBhbmRfYmxvY2tfbW92ZV9z Y2FsYXIgKHJ0eCBkZXN0LCBydHggc3JjLCBydHggbGVuZ3RoKQ0KYm9vbA0K cmlzY3ZfZXhwYW5kX2Jsb2NrX21vdmUgKHJ0eCBkZXN0LCBydHggc3JjLCBy dHggbGVuZ3RoKQ0Kew0KLSAgaWYgKFRBUkdFVF9WRUNUT1IgJiYgc3RyaW5n b3Bfc3RyYXRlZ3kgJiBTVFJBVEVHWV9WRUNUT1IpDQorICBpZiAoKFRBUkdF VF9WRUNUT1IgJiYgIVRBUkdFVF9YVEhFQURWRUNUT1IpDQorICAgICAgJiYg c3RyaW5nb3Bfc3RyYXRlZ3kgJiBTVFJBVEVHWV9WRUNUT1IpDQogICAgIHsN CiAgICAgICBib29sIG9rID0gcmlzY3ZfdmVjdG9yOjpleHBhbmRfYmxvY2tf bW92ZSAoZGVzdCwgc3JjLCBsZW5ndGgpOw0KICAgICAgIGlmIChvaykNCmRp ZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXYuY2MgYi9nY2Mv Y29uZmlnL3Jpc2N2L3Jpc2N2LXYuY2MNCmluZGV4IDI0OTE1MjIxOTFhLi43 ZTI1ZGViOTY2ZCAxMDA2NDQNCi0tLSBhL2djYy9jb25maWcvcmlzY3Yvcmlz Y3Ytdi5jYw0KKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12LmNjDQpA QCAtNDM5Miw3ICs0MzkyLDcgQEAgY21wX2xtdWxfZ3Rfb25lIChtYWNoaW5l X21vZGUgbW9kZSkNCmJvb2wNCnZsc19tb2RlX3ZhbGlkX3AgKG1hY2hpbmVf bW9kZSB2bHNfbW9kZSkNCnsNCi0gIGlmICghVEFSR0VUX1ZFQ1RPUikNCisg IGlmICghVEFSR0VUX1ZFQ1RPUiB8fCBUQVJHRVRfWFRIRUFEVkVDVE9SKQ0K ICAgICByZXR1cm4gZmFsc2U7DQogICBpZiAocmlzY3ZfYXV0b3ZlY19wcmVm ZXJlbmNlID09IFJWVl9TQ0FMQUJMRSkNCmRpZmYgLS1naXQgYS9nY2MvY29u ZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy1iYXNlcy5jYyBiL2dj Yy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLWJhc2VzLmNj DQppbmRleCBmYmE5ODEyNDQ3My4uMWFhNmUzYzY2NjUgMTAwNjQ0DQotLS0g YS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy1iYXNl cy5jYw0KKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVp bHRpbnMtYmFzZXMuY2MNCkBAIC0xMzEsMjMgKzEzMSwzNyBAQCBwdWJsaWM6 DQogICAgIHRyZWUgdHlwZSA9IGJ1aWx0aW5fdHlwZXNbZS50eXBlLmluZGV4 XS52ZWN0b3I7DQogICAgIG1hY2hpbmVfbW9kZSBtb2RlID0gVFlQRV9NT0RF ICh0eXBlKTsNCi0gICAgLyogTm9ybWFsaXplIHNhbWUgUkFUTyAoU0VXL0xN VUwpIGludG8gc2FtZSB2c2V0dmwgaW5zdHJ1Y3Rpb24uDQotDQotIC0gZTgs bWY4L2UxNixtZjQvZTMyLG1mMi9lNjQsbTEgLS0+IGU4bWY4DQotIC0gZTgs bWY0L2UxNixtZjIvZTMyLG0xL2U2NCxtMiAgLS0+IGU4bWY0DQotIC0gZTgs bWYyL2UxNixtMS9lMzIsbTIvZTY0LG00ICAgLS0+IGU4bWYyDQotIC0gZTgs bTEvZTE2LG0yL2UzMixtNC9lNjQsbTggICAgLS0+IGU4bTENCi0gLSBlOCxt Mi9lMTYsbTQvZTMyLG04ICAgICAgICAgICAtLT4gZThtMg0KLSAtIGU4LG00 L2UxNixtOCAgICAgICAgICAgICAgICAgIC0tPiBlOG00DQotIC0gZTgsbTgg ICAgICAgICAgICAgICAgICAgICAgICAgLS0+IGU4bTgNCi0gICAgKi8NCi0g ICAgLyogU0VXLiAgKi8NCi0gICAgZS5hZGRfaW5wdXRfb3BlcmFuZCAoUG1v ZGUsIGdlbl9pbnRfbW9kZSAoOCwgUG1vZGUpKTsNCi0NCi0gICAgLyogTE1V TC4gICovDQotICAgIG1hY2hpbmVfbW9kZSBlOF9tb2RlDQotICAgICAgPSBn ZXRfdmVjdG9yX21vZGUgKFFJbW9kZSwgR0VUX01PREVfTlVOSVRTIChtb2Rl KSkucmVxdWlyZSAoKTsNCi0gICAgZS5hZGRfaW5wdXRfb3BlcmFuZCAoUG1v ZGUsIGdlbl9pbnRfbW9kZSAoZ2V0X3ZsbXVsIChlOF9tb2RlKSwgUG1vZGUp KTsNCisNCisgICAgaWYgKFRBUkdFVF9YVEhFQURWRUNUT1IpDQorICAgICAg ew0KKyBtYWNoaW5lX21vZGUgaW5uZXJfbW9kZSA9IEdFVF9NT0RFX0lOTkVS IChtb2RlKTsNCisgLyogU0VXLiAgKi8NCisgZS5hZGRfaW5wdXRfb3BlcmFu ZCAoUG1vZGUsDQorICAgZ2VuX2ludF9tb2RlIChHRVRfTU9ERV9CSVRTSVpF IChpbm5lcl9tb2RlKSwgUG1vZGUpKTsNCisgLyogTE1VTC4gICovDQorIGUu YWRkX2lucHV0X29wZXJhbmQgKFBtb2RlLA0KKyAgIGdlbl9pbnRfbW9kZSAo Z2V0X3ZsbXVsIChtb2RlKSwgUG1vZGUpKTsNCisgICAgICB9DQorICAgIGVs c2UNCisgICAgICB7DQorIC8qIE5vcm1hbGl6ZSBzYW1lIFJBVE8gKFNFVy9M TVVMKSBpbnRvIHNhbWUgdnNldHZsIGluc3RydWN0aW9uLg0KKw0KKyAgICAg IC0gZTgsbWY4L2UxNixtZjQvZTMyLG1mMi9lNjQsbTEgLS0+IGU4bWY4DQor ICAgICAgLSBlOCxtZjQvZTE2LG1mMi9lMzIsbTEvZTY0LG0yICAtLT4gZTht ZjQNCisgICAgICAtIGU4LG1mMi9lMTYsbTEvZTMyLG0yL2U2NCxtNCAgIC0t PiBlOG1mMg0KKyAgICAgIC0gZTgsbTEvZTE2LG0yL2UzMixtNC9lNjQsbTgg ICAgLS0+IGU4bTENCisgICAgICAtIGU4LG0yL2UxNixtNC9lMzIsbTggICAg ICAgICAgIC0tPiBlOG0yDQorICAgICAgLSBlOCxtNC9lMTYsbTggICAgICAg ICAgICAgICAgICAtLT4gZThtNA0KKyAgICAgIC0gZTgsbTggICAgICAgICAg ICAgICAgICAgICAgICAgLS0+IGU4bTgNCisgKi8NCisgLyogU0VXLiAgKi8N CisgZS5hZGRfaW5wdXRfb3BlcmFuZCAoUG1vZGUsIGdlbl9pbnRfbW9kZSAo OCwgUG1vZGUpKTsNCisNCisgLyogTE1VTC4gICovDQorIG1hY2hpbmVfbW9k ZSBlOF9tb2RlDQorICAgPSBnZXRfdmVjdG9yX21vZGUgKFFJbW9kZSwgR0VU X01PREVfTlVOSVRTIChtb2RlKSkucmVxdWlyZSAoKTsNCisgZS5hZGRfaW5w dXRfb3BlcmFuZCAoUG1vZGUsIGdlbl9pbnRfbW9kZSAoZ2V0X3ZsbXVsIChl OF9tb2RlKSwgUG1vZGUpKTsNCisgICAgICB9DQogICAgIC8qIFRBSUxfQU5Z LiAgKi8NCiAgICAgZS5hZGRfaW5wdXRfb3BlcmFuZCAoUG1vZGUsDQpkaWZm IC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRp bnMtc2hhcGVzLmNjIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3It YnVpbHRpbnMtc2hhcGVzLmNjDQppbmRleCBlZTgwNThkY2RiMS4uMWU0ZjRk NTNkZTYgMTAwNjQ0DQotLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZl Y3Rvci1idWlsdGlucy1zaGFwZXMuY2MNCisrKyBiL2djYy9jb25maWcvcmlz Y3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLXNoYXBlcy5jYw0KQEAgLTMzLDYg KzMzLDI1IEBADQpuYW1lc3BhY2UgcmlzY3ZfdmVjdG9yIHsNCisvKiBDaGVj ayB3aGV0aGVyIHRoZSBSRVRVUk5fVFlQRSBhbmQgQVJHVU1FTlRfVFlQRVMg YXJlDQorICAgdmFsaWQgZm9yIHRoZSBmdW5jdGlvbi4gICovDQorDQorc3Rh dGljIGJvb2wNCitjaGVja190eXBlICh0cmVlIHJldHVybl90eXBlLCB2ZWM8 dHJlZT4gJmFyZ3VtZW50X3R5cGVzKQ0KK3sNCisgIHRyZWUgYXJnOw0KKyAg dW5zaWduZWQgaTsNCisNCisgIGlmICghcmV0dXJuX3R5cGUpDQorICAgIHJl dHVybiBmYWxzZTsNCisNCisgIEZPUl9FQUNIX1ZFQ19FTFQgKGFyZ3VtZW50 X3R5cGVzLCBpLCBhcmcpDQorICAgIGlmICghYXJnKQ0KKyAgICAgIHJldHVy biBmYWxzZTsNCisNCisgIHJldHVybiB0cnVlOw0KK30NCisNCi8qIEFkZCBv bmUgZnVuY3Rpb24gaW5zdGFuY2UgZm9yIEdST1VQLCB1c2luZyBvcGVyYW5k IHN1ZmZpeCBhdCBpbmRleCBPSSwNCiAgICBtb2RlIHN1ZmZpeCBhdCBpbmRl eCBQQUlSICYmIGJpIGFuZCBwcmVkaWNhdGlvbiBzdWZmaXggYXQgaW5kZXgg cHJlZF9pZHguICAqLw0Kc3RhdGljIHZvaWQNCkBAIC00OSw2ICs2OCwxMCBA QCBidWlsZF9vbmUgKGZ1bmN0aW9uX2J1aWxkZXIgJmIsIGNvbnN0IGZ1bmN0 aW9uX2dyb3VwX2luZm8gJmdyb3VwLA0KICAgICBncm91cC5vcHNfaW5mb3Mu dHlwZXNbdmVjX3R5cGVfaWR4XS5pbmRleCk7DQogICBiLmFsbG9jYXRlX2Fy Z3VtZW50X3R5cGVzIChmdW5jdGlvbl9pbnN0YW5jZSwgYXJndW1lbnRfdHlw ZXMpOw0KICAgYi5hcHBseV9wcmVkaWNhdGlvbiAoZnVuY3Rpb25faW5zdGFu Y2UsIHJldHVybl90eXBlLCBhcmd1bWVudF90eXBlcyk7DQorDQorICBpZiAo VEFSR0VUX1hUSEVBRFZFQ1RPUiAmJiAhY2hlY2tfdHlwZSAocmV0dXJuX3R5 cGUsIGFyZ3VtZW50X3R5cGVzKSkNCisgICAgcmV0dXJuOw0KKw0KICAgYi5h ZGRfb3ZlcmxvYWRlZF9mdW5jdGlvbiAoZnVuY3Rpb25faW5zdGFuY2UsICpn cm91cC5zaGFwZSk7DQogICBiLmFkZF91bmlxdWVfZnVuY3Rpb24gKGZ1bmN0 aW9uX2luc3RhbmNlLCAoKmdyb3VwLnNoYXBlKSwgcmV0dXJuX3R5cGUsDQph cmd1bWVudF90eXBlcyk7DQpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNj di9yaXNjdi12ZWN0b3Itc3dpdGNoLmRlZiBiL2djYy9jb25maWcvcmlzY3Yv cmlzY3YtdmVjdG9yLXN3aXRjaC5kZWYNCmluZGV4IDFhZDI2YzJhM2IyLi40 NTIyODNiNzQxNiAxMDA2NDQNCi0tLSBhL2djYy9jb25maWcvcmlzY3Yvcmlz Y3YtdmVjdG9yLXN3aXRjaC5kZWYNCisrKyBiL2djYy9jb25maWcvcmlzY3Yv cmlzY3YtdmVjdG9yLXN3aXRjaC5kZWYNCkBAIC02OCw5ICs2OCw5IEBAIEVu Y29kZSB0aGUgcmF0aW8gb2YgU0VXL0xNVUwgaW50byB0aGUgbWFzayB0eXBl cy4NCiNlbmRpZg0KLyogRGlzYWJsZSBtb2RlcyBpZiBUQVJHRVRfTUlOX1ZM RU4gPT0gMzIuICAqLw0KLUVOVFJZIChSVlZNRjY0QkksIFRBUkdFVF9NSU5f VkxFTiA+IDMyLCBMTVVMX0Y4LCA2NCkNCi1FTlRSWSAoUlZWTUYzMkJJLCB0 cnVlLCBMTVVMX0Y0LCAzMikNCi1FTlRSWSAoUlZWTUYxNkJJLCB0cnVlLCBM TVVMX0YyLCAxNikNCitFTlRSWSAoUlZWTUY2NEJJLCBUQVJHRVRfTUlOX1ZM RU4gPiAzMiwgVEFSR0VUX1hUSEVBRFZFQ1RPUiA/IExNVUxfMSA6TE1VTF9G OCwgNjQpDQorRU5UUlkgKFJWVk1GMzJCSSwgdHJ1ZSwgVEFSR0VUX1hUSEVB RFZFQ1RPUiA/IExNVUxfMSA6TE1VTF9GNCwgMzIpDQorRU5UUlkgKFJWVk1G MTZCSSwgdHJ1ZSwgVEFSR0VUX1hUSEVBRFZFQ1RPUiA/IExNVUxfMSA6IExN VUxfRjIgLCAxNikNCkVOVFJZIChSVlZNRjhCSSwgdHJ1ZSwgTE1VTF8xLCA4 KQ0KRU5UUlkgKFJWVk1GNEJJLCB0cnVlLCBMTVVMXzIsIDQpDQpFTlRSWSAo UlZWTUYyQkksIHRydWUsIExNVUxfNCwgMikNCkBAIC04MSwzOSArODEsMzkg QEAgRU5UUlkgKFJWVk04UUksIHRydWUsIExNVUxfOCwgMSkNCkVOVFJZIChS VlZNNFFJLCB0cnVlLCBMTVVMXzQsIDIpDQpFTlRSWSAoUlZWTTJRSSwgdHJ1 ZSwgTE1VTF8yLCA0KQ0KRU5UUlkgKFJWVk0xUUksIHRydWUsIExNVUxfMSwg OCkNCi1FTlRSWSAoUlZWTUYyUUksIHRydWUsIExNVUxfRjIsIDE2KQ0KLUVO VFJZIChSVlZNRjRRSSwgdHJ1ZSwgTE1VTF9GNCwgMzIpDQotRU5UUlkgKFJW Vk1GOFFJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgTE1VTF9GOCwgNjQpDQor RU5UUlkgKFJWVk1GMlFJLCAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgTE1VTF9G MiwgMTYpDQorRU5UUlkgKFJWVk1GNFFJLCAhVEFSR0VUX1hUSEVBRFZFQ1RP UiwgTE1VTF9GNCwgMzIpDQorRU5UUlkgKFJWVk1GOFFJLCBUQVJHRVRfTUlO X1ZMRU4gPiAzMiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgTE1VTF9GOCwg NjQpDQovKiBEaXNhYmxlIG1vZGVzIGlmIFRBUkdFVF9NSU5fVkxFTiA9PSAz Mi4gICovDQpFTlRSWSAoUlZWTThISSwgdHJ1ZSwgTE1VTF84LCAyKQ0KRU5U UlkgKFJWVk00SEksIHRydWUsIExNVUxfNCwgNCkNCkVOVFJZIChSVlZNMkhJ LCB0cnVlLCBMTVVMXzIsIDgpDQpFTlRSWSAoUlZWTTFISSwgdHJ1ZSwgTE1V TF8xLCAxNikNCi1FTlRSWSAoUlZWTUYySEksIHRydWUsIExNVUxfRjIsIDMy KQ0KLUVOVFJZIChSVlZNRjRISSwgVEFSR0VUX01JTl9WTEVOID4gMzIsIExN VUxfRjQsIDY0KQ0KK0VOVFJZIChSVlZNRjJISSwgIVRBUkdFVF9YVEhFQURW RUNUT1IsIExNVUxfRjIsIDMyKQ0KK0VOVFJZIChSVlZNRjRISSwgVEFSR0VU X01JTl9WTEVOID4gMzIgJiYgIVRBUkdFVF9YVEhFQURWRUNUT1IsIExNVUxf RjQsIDY0KQ0KLyogRGlzYWJsZSBtb2RlcyBpZiBUQVJHRVRfTUlOX1ZMRU4g PT0gMzIgb3IgIVRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNi4gICovDQpFTlRS WSAoUlZWTThIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2LCBMTVVMXzgs IDIpDQpFTlRSWSAoUlZWTTRIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2 LCBMTVVMXzQsIDQpDQpFTlRSWSAoUlZWTTJIRiwgVEFSR0VUX1ZFQ1RPUl9F TEVOX0ZQXzE2LCBMTVVMXzIsIDgpDQpFTlRSWSAoUlZWTTFIRiwgVEFSR0VU X1ZFQ1RPUl9FTEVOX0ZQXzE2LCBMTVVMXzEsIDE2KQ0KLUVOVFJZIChSVlZN RjJIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2LCBMTVVMX0YyLCAzMikN Ci1FTlRSWSAoUlZWTUY0SEYsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNiAm JiBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgTE1VTF9GNCwgNjQpDQorRU5UUlkg KFJWVk1GMkhGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTYgJiYgIVRBUkdF VF9YVEhFQURWRUNUT1IsIExNVUxfRjIsIDMyKQ0KK0VOVFJZIChSVlZNRjRI RiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2ICYmIFRBUkdFVF9NSU5fVkxF TiA+IDMyICYmICFUQVJHRVRfWFRIRUFEVkVDVE9SLCBMTVVMX0Y0LCA2NCkN Ci8qIERpc2FibGUgbW9kZXMgaWYgVEFSR0VUX01JTl9WTEVOID09IDMyLiAg Ki8NCkVOVFJZIChSVlZNOFNJLCB0cnVlLCBMTVVMXzgsIDQpDQpFTlRSWSAo UlZWTTRTSSwgdHJ1ZSwgTE1VTF80LCA4KQ0KRU5UUlkgKFJWVk0yU0ksIHRy dWUsIExNVUxfMiwgMTYpDQpFTlRSWSAoUlZWTTFTSSwgdHJ1ZSwgTE1VTF8x LCAzMikNCi1FTlRSWSAoUlZWTUYyU0ksIFRBUkdFVF9NSU5fVkxFTiA+IDMy LCBMTVVMX0YyLCA2NCkNCitFTlRSWSAoUlZWTUYyU0ksIFRBUkdFVF9NSU5f VkxFTiA+IDMyICYmICFUQVJHRVRfWFRIRUFEVkVDVE9SLCBMTVVMX0YyLCA2 NCkNCi8qIERpc2FibGUgbW9kZXMgaWYgVEFSR0VUX01JTl9WTEVOID09IDMy IG9yICFUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMzIuICAqLw0KRU5UUlkgKFJW Vk04U0YsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8zMiwgTE1VTF84LCA0KQ0K RU5UUlkgKFJWVk00U0YsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8zMiwgTE1V TF80LCA4KQ0KRU5UUlkgKFJWVk0yU0YsIFRBUkdFVF9WRUNUT1JfRUxFTl9G UF8zMiwgTE1VTF8yLCAxNikNCkVOVFJZIChSVlZNMVNGLCBUQVJHRVRfVkVD VE9SX0VMRU5fRlBfMzIsIExNVUxfMSwgMzIpDQotRU5UUlkgKFJWVk1GMlNG LCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMzIgJiYgVEFSR0VUX01JTl9WTEVO ID4gMzIsIExNVUxfRjIsIDY0KQ0KK0VOVFJZIChSVlZNRjJTRiwgVEFSR0VU X1ZFQ1RPUl9FTEVOX0ZQXzMyICYmIFRBUkdFVF9NSU5fVkxFTiA+IDMyICYm ICFUQVJHRVRfWFRIRUFEVkVDVE9SLCBMTVVMX0YyLCA2NCkNCi8qIERpc2Fi bGUgbW9kZXMgaWYgIVRBUkdFVF9WRUNUT1JfRUxFTl82NC4gICovDQpFTlRS WSAoUlZWTThESSwgVEFSR0VUX1ZFQ1RPUl9FTEVOXzY0LCBMTVVMXzgsIDgp DQpAQCAtMTQwLDEyNyArMTQwLDEyNyBAQCBFTlRSWSAoUlZWTTFERiwgVEFS R0VUX1ZFQ1RPUl9FTEVOX0ZQXzY0LCBMTVVMXzEsIDY0KQ0KI2VuZGlmDQpU VVBMRV9FTlRSWSAoUlZWTTF4OFFJLCB0cnVlLCBSVlZNMVFJLCA4LCBMTVVM XzEsIDgpDQotVFVQTEVfRU5UUlkgKFJWVk1GMng4UUksIHRydWUsIFJWVk1G MlFJLCA4LCBMTVVMX0YyLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUY0eDhR SSwgdHJ1ZSwgUlZWTUY0UUksIDgsIExNVUxfRjQsIDMyKQ0KLVRVUExFX0VO VFJZIChSVlZNRjh4OFFJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUY4 UUksIDgsIExNVUxfRjgsIDY0KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4OFFJ LCAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYyUUksIDgsIExNVUxfRjIs IDE2KQ0KK1RVUExFX0VOVFJZIChSVlZNRjR4OFFJLCAhVEFSR0VUX1hUSEVB RFZFQ1RPUiwgUlZWTUY0UUksIDgsIExNVUxfRjQsIDMyKQ0KK1RVUExFX0VO VFJZIChSVlZNRjh4OFFJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAhVEFS R0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUY4UUksIDgsIExNVUxfRjgsIDY0KQ0K VFVQTEVfRU5UUlkgKFJWVk0xeDdRSSwgdHJ1ZSwgUlZWTTFRSSwgNywgTE1V TF8xLCA4KQ0KLVRVUExFX0VOVFJZIChSVlZNRjJ4N1FJLCB0cnVlLCBSVlZN RjJRSSwgNywgTE1VTF9GMiwgMTYpDQotVFVQTEVfRU5UUlkgKFJWVk1GNHg3 UUksIHRydWUsIFJWVk1GNFFJLCA3LCBMTVVMX0Y0LCAzMikNCi1UVVBMRV9F TlRSWSAoUlZWTUY4eDdRSSwgVEFSR0VUX01JTl9WTEVOID4gMzIsIFJWVk1G OFFJLCA3LCBMTVVMX0Y4LCA2NCkNCitUVVBMRV9FTlRSWSAoUlZWTUYyeDdR SSwgIVRBUkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GMlFJLCA3LCBMTVVMX0Yy LCAxNikNCitUVVBMRV9FTlRSWSAoUlZWTUY0eDdRSSwgIVRBUkdFVF9YVEhF QURWRUNUT1IsIFJWVk1GNFFJLCA3LCBMTVVMX0Y0LCAzMikNCitUVVBMRV9F TlRSWSAoUlZWTUY4eDdRSSwgVEFSR0VUX01JTl9WTEVOID4gMzIgJiYgIVRB UkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GOFFJLCA3LCBMTVVMX0Y4LCA2NCkN ClRVUExFX0VOVFJZIChSVlZNMXg2UUksIHRydWUsIFJWVk0xUUksIDYsIExN VUxfMSwgOCkNCi1UVVBMRV9FTlRSWSAoUlZWTUYyeDZRSSwgdHJ1ZSwgUlZW TUYyUUksIDYsIExNVUxfRjIsIDE2KQ0KLVRVUExFX0VOVFJZIChSVlZNRjR4 NlFJLCB0cnVlLCBSVlZNRjRRSSwgNiwgTE1VTF9GNCwgMzIpDQotVFVQTEVf RU5UUlkgKFJWVk1GOHg2UUksIFRBUkdFVF9NSU5fVkxFTiA+IDMyLCBSVlZN RjhRSSwgNiwgTE1VTF9GOCwgNjQpDQorVFVQTEVfRU5UUlkgKFJWVk1GMng2 UUksICFUQVJHRVRfWFRIRUFEVkVDVE9SLCBSVlZNRjJRSSwgNiwgTE1VTF9G MiwgMTYpDQorVFVQTEVfRU5UUlkgKFJWVk1GNHg2UUksICFUQVJHRVRfWFRI RUFEVkVDVE9SLCBSVlZNRjRRSSwgNiwgTE1VTF9GNCwgMzIpDQorVFVQTEVf RU5UUlkgKFJWVk1GOHg2UUksIFRBUkdFVF9NSU5fVkxFTiA+IDMyICYmICFU QVJHRVRfWFRIRUFEVkVDVE9SLCBSVlZNRjhRSSwgNiwgTE1VTF9GOCwgNjQp DQpUVVBMRV9FTlRSWSAoUlZWTTF4NVFJLCB0cnVlLCBSVlZNMVFJLCA1LCBM TVVMXzEsIDgpDQotVFVQTEVfRU5UUlkgKFJWVk1GMng1UUksIHRydWUsIFJW Vk1GMlFJLCA1LCBMTVVMX0YyLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUY0 eDVRSSwgdHJ1ZSwgUlZWTUY0UUksIDUsIExNVUxfRjQsIDMyKQ0KLVRVUExF X0VOVFJZIChSVlZNRjh4NVFJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZW TUY4UUksIDUsIExNVUxfRjgsIDY0KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4 NVFJLCAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYyUUksIDUsIExNVUxf RjIsIDE2KQ0KK1RVUExFX0VOVFJZIChSVlZNRjR4NVFJLCAhVEFSR0VUX1hU SEVBRFZFQ1RPUiwgUlZWTUY0UUksIDUsIExNVUxfRjQsIDMyKQ0KK1RVUExF X0VOVFJZIChSVlZNRjh4NVFJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAh VEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUY4UUksIDUsIExNVUxfRjgsIDY0 KQ0KVFVQTEVfRU5UUlkgKFJWVk0yeDRRSSwgdHJ1ZSwgUlZWTTJRSSwgNCwg TE1VTF8yLCA0KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDRRSSwgdHJ1ZSwgUlZW TTFRSSwgNCwgTE1VTF8xLCA4KQ0KLVRVUExFX0VOVFJZIChSVlZNRjJ4NFFJ LCB0cnVlLCBSVlZNRjJRSSwgNCwgTE1VTF9GMiwgMTYpDQotVFVQTEVfRU5U UlkgKFJWVk1GNHg0UUksIHRydWUsIFJWVk1GNFFJLCA0LCBMTVVMX0Y0LCAz MikNCi1UVVBMRV9FTlRSWSAoUlZWTUY4eDRRSSwgVEFSR0VUX01JTl9WTEVO ID4gMzIsIFJWVk1GOFFJLCA0LCBMTVVMX0Y4LCA2NCkNCitUVVBMRV9FTlRS WSAoUlZWTUYyeDRRSSwgIVRBUkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GMlFJ LCA0LCBMTVVMX0YyLCAxNikNCitUVVBMRV9FTlRSWSAoUlZWTUY0eDRRSSwg IVRBUkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GNFFJLCA0LCBMTVVMX0Y0LCAz MikNCitUVVBMRV9FTlRSWSAoUlZWTUY4eDRRSSwgVEFSR0VUX01JTl9WTEVO ID4gMzIgJiYgIVRBUkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GOFFJLCA0LCBM TVVMX0Y4LCA2NCkNClRVUExFX0VOVFJZIChSVlZNMngzUUksIHRydWUsIFJW Vk0yUUksIDMsIExNVUxfMiwgNCkNClRVUExFX0VOVFJZIChSVlZNMXgzUUks IHRydWUsIFJWVk0xUUksIDMsIExNVUxfMSwgOCkNCi1UVVBMRV9FTlRSWSAo UlZWTUYyeDNRSSwgdHJ1ZSwgUlZWTUYyUUksIDMsIExNVUxfRjIsIDE2KQ0K LVRVUExFX0VOVFJZIChSVlZNRjR4M1FJLCB0cnVlLCBSVlZNRjRRSSwgMywg TE1VTF9GNCwgMzIpDQotVFVQTEVfRU5UUlkgKFJWVk1GOHgzUUksIFRBUkdF VF9NSU5fVkxFTiA+IDMyLCBSVlZNRjhRSSwgMywgTE1VTF9GOCwgNjQpDQor VFVQTEVfRU5UUlkgKFJWVk1GMngzUUksICFUQVJHRVRfWFRIRUFEVkVDVE9S LCBSVlZNRjJRSSwgMywgTE1VTF9GMiwgMTYpDQorVFVQTEVfRU5UUlkgKFJW Vk1GNHgzUUksICFUQVJHRVRfWFRIRUFEVkVDVE9SLCBSVlZNRjRRSSwgMywg TE1VTF9GNCwgMzIpDQorVFVQTEVfRU5UUlkgKFJWVk1GOHgzUUksIFRBUkdF VF9NSU5fVkxFTiA+IDMyICYmICFUQVJHRVRfWFRIRUFEVkVDVE9SLCBSVlZN RjhRSSwgMywgTE1VTF9GOCwgNjQpDQpUVVBMRV9FTlRSWSAoUlZWTTR4MlFJ LCB0cnVlLCBSVlZNNFFJLCAyLCBMTVVMXzQsIDIpDQpUVVBMRV9FTlRSWSAo UlZWTTJ4MlFJLCB0cnVlLCBSVlZNMlFJLCAyLCBMTVVMXzIsIDQpDQpUVVBM RV9FTlRSWSAoUlZWTTF4MlFJLCB0cnVlLCBSVlZNMVFJLCAyLCBMTVVMXzEs IDgpDQotVFVQTEVfRU5UUlkgKFJWVk1GMngyUUksIHRydWUsIFJWVk1GMlFJ LCAyLCBMTVVMX0YyLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUY0eDJRSSwg dHJ1ZSwgUlZWTUY0UUksIDIsIExNVUxfRjQsIDMyKQ0KLVRVUExFX0VOVFJZ IChSVlZNRjh4MlFJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUY4UUks IDIsIExNVUxfRjgsIDY0KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4MlFJLCAh VEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYyUUksIDIsIExNVUxfRjIsIDE2 KQ0KK1RVUExFX0VOVFJZIChSVlZNRjR4MlFJLCAhVEFSR0VUX1hUSEVBRFZF Q1RPUiwgUlZWTUY0UUksIDIsIExNVUxfRjQsIDMyKQ0KK1RVUExFX0VOVFJZ IChSVlZNRjh4MlFJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAhVEFSR0VU X1hUSEVBRFZFQ1RPUiwgUlZWTUY4UUksIDIsIExNVUxfRjgsIDY0KQ0KVFVQ TEVfRU5UUlkgKFJWVk0xeDhISSwgdHJ1ZSwgUlZWTTFISSwgOCwgTE1VTF8x LCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUYyeDhISSwgdHJ1ZSwgUlZWTUYy SEksIDgsIExNVUxfRjIsIDMyKQ0KLVRVUExFX0VOVFJZIChSVlZNRjR4OEhJ LCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUY0SEksIDgsIExNVUxfRjQs IDY0KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4OEhJLCAhVEFSR0VUX1hUSEVB RFZFQ1RPUiwgUlZWTUYySEksIDgsIExNVUxfRjIsIDMyKQ0KK1RVUExFX0VO VFJZIChSVlZNRjR4OEhJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAhVEFS R0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUY0SEksIDgsIExNVUxfRjQsIDY0KQ0K VFVQTEVfRU5UUlkgKFJWVk0xeDdISSwgdHJ1ZSwgUlZWTTFISSwgNywgTE1V TF8xLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUYyeDdISSwgdHJ1ZSwgUlZW TUYySEksIDcsIExNVUxfRjIsIDMyKQ0KLVRVUExFX0VOVFJZIChSVlZNRjR4 N0hJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUY0SEksIDcsIExNVUxf RjQsIDY0KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4N0hJLCAhVEFSR0VUX1hU SEVBRFZFQ1RPUiwgUlZWTUYySEksIDcsIExNVUxfRjIsIDMyKQ0KK1RVUExF X0VOVFJZIChSVlZNRjR4N0hJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAh VEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUY0SEksIDcsIExNVUxfRjQsIDY0 KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDZISSwgdHJ1ZSwgUlZWTTFISSwgNiwg TE1VTF8xLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUYyeDZISSwgdHJ1ZSwg UlZWTUYySEksIDYsIExNVUxfRjIsIDMyKQ0KLVRVUExFX0VOVFJZIChSVlZN RjR4NkhJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUY0SEksIDYsIExN VUxfRjQsIDY0KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4NkhJLCAhVEFSR0VU X1hUSEVBRFZFQ1RPUiwgUlZWTUYySEksIDYsIExNVUxfRjIsIDMyKQ0KK1RV UExFX0VOVFJZIChSVlZNRjR4NkhJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAm JiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUY0SEksIDYsIExNVUxfRjQs IDY0KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDVISSwgdHJ1ZSwgUlZWTTFISSwg NSwgTE1VTF8xLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUYyeDVISSwgdHJ1 ZSwgUlZWTUYySEksIDUsIExNVUxfRjIsIDMyKQ0KLVRVUExFX0VOVFJZIChS VlZNRjR4NUhJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUY0SEksIDUs IExNVUxfRjQsIDY0KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4NUhJLCAhVEFS R0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYySEksIDUsIExNVUxfRjIsIDMyKQ0K K1RVUExFX0VOVFJZIChSVlZNRjR4NUhJLCBUQVJHRVRfTUlOX1ZMRU4gPiAz MiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUY0SEksIDUsIExNVUxf RjQsIDY0KQ0KVFVQTEVfRU5UUlkgKFJWVk0yeDRISSwgdHJ1ZSwgUlZWTTJI SSwgNCwgTE1VTF8yLCA4KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDRISSwgdHJ1 ZSwgUlZWTTFISSwgNCwgTE1VTF8xLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZW TUYyeDRISSwgdHJ1ZSwgUlZWTUYySEksIDQsIExNVUxfRjIsIDMyKQ0KLVRV UExFX0VOVFJZIChSVlZNRjR4NEhJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwg UlZWTUY0SEksIDQsIExNVUxfRjQsIDY0KQ0KK1RVUExFX0VOVFJZIChSVlZN RjJ4NEhJLCAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYySEksIDQsIExN VUxfRjIsIDMyKQ0KK1RVUExFX0VOVFJZIChSVlZNRjR4NEhJLCBUQVJHRVRf TUlOX1ZMRU4gPiAzMiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUY0 SEksIDQsIExNVUxfRjQsIDY0KQ0KVFVQTEVfRU5UUlkgKFJWVk0yeDNISSwg dHJ1ZSwgUlZWTTJISSwgMywgTE1VTF8yLCA4KQ0KVFVQTEVfRU5UUlkgKFJW Vk0xeDNISSwgdHJ1ZSwgUlZWTTFISSwgMywgTE1VTF8xLCAxNikNCi1UVVBM RV9FTlRSWSAoUlZWTUYyeDNISSwgdHJ1ZSwgUlZWTUYySEksIDMsIExNVUxf RjIsIDMyKQ0KLVRVUExFX0VOVFJZIChSVlZNRjR4M0hJLCBUQVJHRVRfTUlO X1ZMRU4gPiAzMiwgUlZWTUY0SEksIDMsIExNVUxfRjQsIDY0KQ0KK1RVUExF X0VOVFJZIChSVlZNRjJ4M0hJLCAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZW TUYySEksIDMsIExNVUxfRjIsIDMyKQ0KK1RVUExFX0VOVFJZIChSVlZNRjR4 M0hJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAhVEFSR0VUX1hUSEVBRFZF Q1RPUiwgUlZWTUY0SEksIDMsIExNVUxfRjQsIDY0KQ0KVFVQTEVfRU5UUlkg KFJWVk00eDJISSwgdHJ1ZSwgUlZWTTRISSwgMiwgTE1VTF80LCA0KQ0KVFVQ TEVfRU5UUlkgKFJWVk0yeDJISSwgdHJ1ZSwgUlZWTTJISSwgMiwgTE1VTF8y LCA4KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDJISSwgdHJ1ZSwgUlZWTTFISSwg MiwgTE1VTF8xLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUYyeDJISSwgdHJ1 ZSwgUlZWTUYySEksIDIsIExNVUxfRjIsIDMyKQ0KLVRVUExFX0VOVFJZIChS VlZNRjR4MkhJLCBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUY0SEksIDIs IExNVUxfRjQsIDY0KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4MkhJLCAhVEFS R0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYySEksIDIsIExNVUxfRjIsIDMyKQ0K K1RVUExFX0VOVFJZIChSVlZNRjR4MkhJLCBUQVJHRVRfTUlOX1ZMRU4gPiAz MiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUY0SEksIDIsIExNVUxf RjQsIDY0KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDhIRiwgVEFSR0VUX1ZFQ1RP Ul9FTEVOX0ZQXzE2LCBSVlZNMUhGLCA4LCBMTVVMXzEsIDE2KQ0KLVRVUExF X0VOVFJZIChSVlZNRjJ4OEhGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTYs IFJWVk1GMkhGLCA4LCBMTVVMX0YyLCAzMikNCi1UVVBMRV9FTlRSWSAoUlZW TUY0eDhIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2ICYmIFRBUkdFVF9N SU5fVkxFTiA+IDMyLCBSVlZNRjRIRiwgOCwgTE1VTF9GNCwgNjQpDQorVFVQ TEVfRU5UUlkgKFJWVk1GMng4SEYsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8x NiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYySEYsIDgsIExNVUxf RjIsIDMyKQ0KK1RVUExFX0VOVFJZIChSVlZNRjR4OEhGLCBUQVJHRVRfVkVD VE9SX0VMRU5fRlBfMTYgJiYgVEFSR0VUX01JTl9WTEVOID4gMzIgJiYgIVRB UkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GNEhGLCA4LCBMTVVMX0Y0LCA2NCkN ClRVUExFX0VOVFJZIChSVlZNMXg3SEYsIFRBUkdFVF9WRUNUT1JfRUxFTl9G UF8xNiwgUlZWTTFIRiwgNywgTE1VTF8xLCAxNikNCi1UVVBMRV9FTlRSWSAo UlZWTUYyeDdIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2LCBSVlZNRjJI RiwgNywgTE1VTF9GMiwgMzIpDQotVFVQTEVfRU5UUlkgKFJWVk1GNHg3SEYs IFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNiAmJiBUQVJHRVRfTUlOX1ZMRU4g PiAzMiwgUlZWTUY0SEYsIDcsIExNVUxfRjQsIDY0KQ0KK1RVUExFX0VOVFJZ IChSVlZNRjJ4N0hGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTYgJiYgIVRB UkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GMkhGLCA3LCBMTVVMX0YyLCAzMikN CitUVVBMRV9FTlRSWSAoUlZWTUY0eDdIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVO X0ZQXzE2ICYmIFRBUkdFVF9NSU5fVkxFTiA+IDMyICYmICFUQVJHRVRfWFRI RUFEVkVDVE9SLCBSVlZNRjRIRiwgNywgTE1VTF9GNCwgNjQpDQpUVVBMRV9F TlRSWSAoUlZWTTF4NkhGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTYsIFJW Vk0xSEYsIDYsIExNVUxfMSwgMTYpDQotVFVQTEVfRU5UUlkgKFJWVk1GMng2 SEYsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNiwgUlZWTUYySEYsIDYsIExN VUxfRjIsIDMyKQ0KLVRVUExFX0VOVFJZIChSVlZNRjR4NkhGLCBUQVJHRVRf VkVDVE9SX0VMRU5fRlBfMTYgJiYgVEFSR0VUX01JTl9WTEVOID4gMzIsIFJW Vk1GNEhGLCA2LCBMTVVMX0Y0LCA2NCkNCitUVVBMRV9FTlRSWSAoUlZWTUYy eDZIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2ICYmICFUQVJHRVRfWFRI RUFEVkVDVE9SLCBSVlZNRjJIRiwgNiwgTE1VTF9GMiwgMzIpDQorVFVQTEVf RU5UUlkgKFJWVk1GNHg2SEYsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNiAm JiBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RP UiwgUlZWTUY0SEYsIDYsIExNVUxfRjQsIDY0KQ0KVFVQTEVfRU5UUlkgKFJW Vk0xeDVIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2LCBSVlZNMUhGLCA1 LCBMTVVMXzEsIDE2KQ0KLVRVUExFX0VOVFJZIChSVlZNRjJ4NUhGLCBUQVJH RVRfVkVDVE9SX0VMRU5fRlBfMTYsIFJWVk1GMkhGLCA1LCBMTVVMX0YyLCAz MikNCi1UVVBMRV9FTlRSWSAoUlZWTUY0eDVIRiwgVEFSR0VUX1ZFQ1RPUl9F TEVOX0ZQXzE2ICYmIFRBUkdFVF9NSU5fVkxFTiA+IDMyLCBSVlZNRjRIRiwg NSwgTE1VTF9GNCwgNjQpDQorVFVQTEVfRU5UUlkgKFJWVk1GMng1SEYsIFRB UkdFVF9WRUNUT1JfRUxFTl9GUF8xNiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RP UiwgUlZWTUYySEYsIDUsIExNVUxfRjIsIDMyKQ0KK1RVUExFX0VOVFJZIChS VlZNRjR4NUhGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTYgJiYgVEFSR0VU X01JTl9WTEVOID4gMzIgJiYgIVRBUkdFVF9YVEhFQURWRUNUT1IsIFJWVk1G NEhGLCA1LCBMTVVMX0Y0LCA2NCkNClRVUExFX0VOVFJZIChSVlZNMng0SEYs IFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNiwgUlZWTTJIRiwgNCwgTE1VTF8y LCA4KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDRIRiwgVEFSR0VUX1ZFQ1RPUl9F TEVOX0ZQXzE2LCBSVlZNMUhGLCA0LCBMTVVMXzEsIDE2KQ0KLVRVUExFX0VO VFJZIChSVlZNRjJ4NEhGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTYsIFJW Vk1GMkhGLCA0LCBMTVVMX0YyLCAzMikNCi1UVVBMRV9FTlRSWSAoUlZWTUY0 eDRIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2ICYmIFRBUkdFVF9NSU5f VkxFTiA+IDMyLCBSVlZNRjRIRiwgNCwgTE1VTF9GNCwgNjQpDQorVFVQTEVf RU5UUlkgKFJWVk1GMng0SEYsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNiAm JiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYySEYsIDQsIExNVUxfRjIs IDMyKQ0KK1RVUExFX0VOVFJZIChSVlZNRjR4NEhGLCBUQVJHRVRfVkVDVE9S X0VMRU5fRlBfMTYgJiYgVEFSR0VUX01JTl9WTEVOID4gMzIgJiYgIVRBUkdF VF9YVEhFQURWRUNUT1IsIFJWVk1GNEhGLCA0LCBMTVVMX0Y0LCA2NCkNClRV UExFX0VOVFJZIChSVlZNMngzSEYsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8x NiwgUlZWTTJIRiwgMywgTE1VTF8yLCA4KQ0KVFVQTEVfRU5UUlkgKFJWVk0x eDNIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2LCBSVlZNMUhGLCAzLCBM TVVMXzEsIDE2KQ0KLVRVUExFX0VOVFJZIChSVlZNRjJ4M0hGLCBUQVJHRVRf VkVDVE9SX0VMRU5fRlBfMTYsIFJWVk1GMkhGLCAzLCBMTVVMX0YyLCAzMikN Ci1UVVBMRV9FTlRSWSAoUlZWTUY0eDNIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVO X0ZQXzE2ICYmIFRBUkdFVF9NSU5fVkxFTiA+IDMyLCBSVlZNRjRIRiwgMywg TE1VTF9GNCwgNjQpDQorVFVQTEVfRU5UUlkgKFJWVk1GMngzSEYsIFRBUkdF VF9WRUNUT1JfRUxFTl9GUF8xNiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwg UlZWTUYySEYsIDMsIExNVUxfRjIsIDMyKQ0KK1RVUExFX0VOVFJZIChSVlZN RjR4M0hGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTYgJiYgVEFSR0VUX01J Tl9WTEVOID4gMzIgJiYgIVRBUkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GNEhG LCAzLCBMTVVMX0Y0LCA2NCkNClRVUExFX0VOVFJZIChSVlZNNHgySEYsIFRB UkdFVF9WRUNUT1JfRUxFTl9GUF8xNiwgUlZWTTRIRiwgMiwgTE1VTF80LCA0 KQ0KVFVQTEVfRU5UUlkgKFJWVk0yeDJIRiwgVEFSR0VUX1ZFQ1RPUl9FTEVO X0ZQXzE2LCBSVlZNMkhGLCAyLCBMTVVMXzIsIDgpDQpUVVBMRV9FTlRSWSAo UlZWTTF4MkhGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTYsIFJWVk0xSEYs IDIsIExNVUxfMSwgMTYpDQotVFVQTEVfRU5UUlkgKFJWVk1GMngySEYsIFRB UkdFVF9WRUNUT1JfRUxFTl9GUF8xNiwgUlZWTUYySEYsIDIsIExNVUxfRjIs IDMyKQ0KLVRVUExFX0VOVFJZIChSVlZNRjR4MkhGLCBUQVJHRVRfVkVDVE9S X0VMRU5fRlBfMTYgJiYgVEFSR0VUX01JTl9WTEVOID4gMzIsIFJWVk1GNEhG LCAyLCBMTVVMX0Y0LCA2NCkNCitUVVBMRV9FTlRSWSAoUlZWTUYyeDJIRiwg VEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzE2ICYmICFUQVJHRVRfWFRIRUFEVkVD VE9SLCBSVlZNRjJIRiwgMiwgTE1VTF9GMiwgMzIpDQorVFVQTEVfRU5UUlkg KFJWVk1GNHgySEYsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8xNiAmJiBUQVJH RVRfTUlOX1ZMRU4gPiAzMiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZW TUY0SEYsIDIsIExNVUxfRjQsIDY0KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDhT SSwgdHJ1ZSwgUlZWTTFTSSwgOCwgTE1VTF8xLCAxNikNCi1UVVBMRV9FTlRS WSAoUlZWTUYyeDhTSSwgVEFSR0VUX01JTl9WTEVOID4gMzIsIFJWVk1GMlNJ LCA4LCBMTVVMX0YyLCAzMikNCitUVVBMRV9FTlRSWSAoUlZWTUYyeDhTSSwg KFRBUkdFVF9NSU5fVkxFTiA+IDMyKSAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RP UiwgUlZWTUYyU0ksIDgsIExNVUxfRjIsIDMyKQ0KVFVQTEVfRU5UUlkgKFJW Vk0xeDdTSSwgdHJ1ZSwgUlZWTTFTSSwgNywgTE1VTF8xLCAxNikNCi1UVVBM RV9FTlRSWSAoUlZWTUYyeDdTSSwgVEFSR0VUX01JTl9WTEVOID4gMzIsIFJW Vk1GMlNJLCA3LCBMTVVMX0YyLCAzMikNCitUVVBMRV9FTlRSWSAoUlZWTUYy eDdTSSwgKFRBUkdFVF9NSU5fVkxFTiA+IDMyKSAmJiAhVEFSR0VUX1hUSEVB RFZFQ1RPUiwgUlZWTUYyU0ksIDcsIExNVUxfRjIsIDMyKQ0KVFVQTEVfRU5U UlkgKFJWVk0xeDZTSSwgdHJ1ZSwgUlZWTTFTSSwgNiwgTE1VTF8xLCAxNikN Ci1UVVBMRV9FTlRSWSAoUlZWTUYyeDZTSSwgVEFSR0VUX01JTl9WTEVOID4g MzIsIFJWVk1GMlNJLCA2LCBMTVVMX0YyLCAzMikNCitUVVBMRV9FTlRSWSAo UlZWTUYyeDZTSSwgVEFSR0VUX01JTl9WTEVOID4gMzIgJiYgIVRBUkdFVF9Y VEhFQURWRUNUT1IsIFJWVk1GMlNJLCA2LCBMTVVMX0YyLCAzMikNClRVUExF X0VOVFJZIChSVlZNMXg1U0ksIHRydWUsIFJWVk0xU0ksIDUsIExNVUxfMSwg MTYpDQotVFVQTEVfRU5UUlkgKFJWVk1GMng1U0ksIFRBUkdFVF9NSU5fVkxF TiA+IDMyLCBSVlZNRjJTSSwgNSwgTE1VTF9GMiwgMzIpDQorVFVQTEVfRU5U UlkgKFJWVk1GMng1U0ksIFRBUkdFVF9NSU5fVkxFTiA+IDMyICYmICFUQVJH RVRfWFRIRUFEVkVDVE9SLCBSVlZNRjJTSSwgNSwgTE1VTF9GMiwgMzIpDQpU VVBMRV9FTlRSWSAoUlZWTTJ4NFNJLCB0cnVlLCBSVlZNMlNJLCA0LCBMTVVM XzIsIDgpDQpUVVBMRV9FTlRSWSAoUlZWTTF4NFNJLCB0cnVlLCBSVlZNMVNJ LCA0LCBMTVVMXzEsIDE2KQ0KLVRVUExFX0VOVFJZIChSVlZNRjJ4NFNJLCBU QVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUYyU0ksIDQsIExNVUxfRjIsIDMy KQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4NFNJLCBUQVJHRVRfTUlOX1ZMRU4g PiAzMiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYyU0ksIDQsIExN VUxfRjIsIDMyKQ0KVFVQTEVfRU5UUlkgKFJWVk0yeDNTSSwgdHJ1ZSwgUlZW TTJTSSwgMywgTE1VTF8yLCA4KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDNTSSwg dHJ1ZSwgUlZWTTFTSSwgMywgTE1VTF8xLCAxNikNCi1UVVBMRV9FTlRSWSAo UlZWTUYyeDNTSSwgVEFSR0VUX01JTl9WTEVOID4gMzIsIFJWVk1GMlNJLCAz LCBMTVVMX0YyLCAzMikNCitUVVBMRV9FTlRSWSAoUlZWTUYyeDNTSSwgVEFS R0VUX01JTl9WTEVOID4gMzIgJiYgIVRBUkdFVF9YVEhFQURWRUNUT1IsIFJW Vk1GMlNJLCAzLCBMTVVMX0YyLCAzMikNClRVUExFX0VOVFJZIChSVlZNNHgy U0ksIHRydWUsIFJWVk00U0ksIDIsIExNVUxfNCwgNCkNClRVUExFX0VOVFJZ IChSVlZNMngyU0ksIHRydWUsIFJWVk0yU0ksIDIsIExNVUxfMiwgOCkNClRV UExFX0VOVFJZIChSVlZNMXgyU0ksIHRydWUsIFJWVk0xU0ksIDIsIExNVUxf MSwgMTYpDQotVFVQTEVfRU5UUlkgKFJWVk1GMngyU0ksIFRBUkdFVF9NSU5f VkxFTiA+IDMyLCBSVlZNRjJTSSwgMiwgTE1VTF9GMiwgMzIpDQorVFVQTEVf RU5UUlkgKFJWVk1GMngyU0ksIFRBUkdFVF9NSU5fVkxFTiA+IDMyICYmICFU QVJHRVRfWFRIRUFEVkVDVE9SLCBSVlZNRjJTSSwgMiwgTE1VTF9GMiwgMzIp DQpUVVBMRV9FTlRSWSAoUlZWTTF4OFNGLCBUQVJHRVRfVkVDVE9SX0VMRU5f RlBfMzIsIFJWVk0xU0YsIDgsIExNVUxfMSwgMTYpDQotVFVQTEVfRU5UUlkg KFJWVk1GMng4U0YsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8zMiAmJiBUQVJH RVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUYyU0YsIDgsIExNVUxfRjIsIDMyKQ0K K1RVUExFX0VOVFJZIChSVlZNRjJ4OFNGLCBUQVJHRVRfVkVDVE9SX0VMRU5f RlBfMzIgJiYgVEFSR0VUX01JTl9WTEVOID4gMzIgJiYgIVRBUkdFVF9YVEhF QURWRUNUT1IsIFJWVk1GMlNGLCA4LCBMTVVMX0YyLCAzMikNClRVUExFX0VO VFJZIChSVlZNMXg3U0YsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8zMiwgUlZW TTFTRiwgNywgTE1VTF8xLCAxNikNCi1UVVBMRV9FTlRSWSAoUlZWTUYyeDdT RiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzMyICYmIFRBUkdFVF9NSU5fVkxF TiA+IDMyLCBSVlZNRjJTRiwgNywgTE1VTF9GMiwgMzIpDQorVFVQTEVfRU5U UlkgKFJWVk1GMng3U0YsIFRBUkdFVF9WRUNUT1JfRUxFTl9GUF8zMiAmJiBU QVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAhVEFSR0VUX1hUSEVBRFZFQ1RPUiwg UlZWTUYyU0YsIDcsIExNVUxfRjIsIDMyKQ0KVFVQTEVfRU5UUlkgKFJWVk0x eDZTRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzMyLCBSVlZNMVNGLCA2LCBM TVVMXzEsIDE2KQ0KLVRVUExFX0VOVFJZIChSVlZNRjJ4NlNGLCBUQVJHRVRf VkVDVE9SX0VMRU5fRlBfMzIgJiYgVEFSR0VUX01JTl9WTEVOID4gMzIsIFJW Vk1GMlNGLCA2LCBMTVVMX0YyLCAzMikNCitUVVBMRV9FTlRSWSAoUlZWTUYy eDZTRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzMyICYmIFRBUkdFVF9NSU5f VkxFTiA+IDMyICYmICFUQVJHRVRfWFRIRUFEVkVDVE9SLCBSVlZNRjJTRiwg NiwgTE1VTF9GMiwgMzIpDQpUVVBMRV9FTlRSWSAoUlZWTTF4NVNGLCBUQVJH RVRfVkVDVE9SX0VMRU5fRlBfMzIsIFJWVk0xU0YsIDUsIExNVUxfMSwgMTYp DQotVFVQTEVfRU5UUlkgKFJWVk1GMng1U0YsIFRBUkdFVF9WRUNUT1JfRUxF Tl9GUF8zMiAmJiBUQVJHRVRfTUlOX1ZMRU4gPiAzMiwgUlZWTUYyU0YsIDUs IExNVUxfRjIsIDMyKQ0KK1RVUExFX0VOVFJZIChSVlZNRjJ4NVNGLCBUQVJH RVRfVkVDVE9SX0VMRU5fRlBfMzIgJiYgVEFSR0VUX01JTl9WTEVOID4gMzIg JiYgIVRBUkdFVF9YVEhFQURWRUNUT1IsIFJWVk1GMlNGLCA1LCBMTVVMX0Yy LCAzMikNClRVUExFX0VOVFJZIChSVlZNMng0U0YsIFRBUkdFVF9WRUNUT1Jf RUxFTl9GUF8zMiwgUlZWTTJTRiwgNCwgTE1VTF8yLCA4KQ0KVFVQTEVfRU5U UlkgKFJWVk0xeDRTRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzMyLCBSVlZN MVNGLCA0LCBMTVVMXzEsIDE2KQ0KLVRVUExFX0VOVFJZIChSVlZNRjJ4NFNG LCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMzIgJiYgVEFSR0VUX01JTl9WTEVO ID4gMzIsIFJWVk1GMlNGLCA0LCBMTVVMX0YyLCAzMikNCitUVVBMRV9FTlRS WSAoUlZWTUYyeDRTRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzMyICYmIFRB UkdFVF9NSU5fVkxFTiA+IDMyICYmICFUQVJHRVRfWFRIRUFEVkVDVE9SLCBS VlZNRjJTRiwgNCwgTE1VTF9GMiwgMzIpDQpUVVBMRV9FTlRSWSAoUlZWTTJ4 M1NGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMzIsIFJWVk0yU0YsIDMsIExN VUxfMiwgOCkNClRVUExFX0VOVFJZIChSVlZNMXgzU0YsIFRBUkdFVF9WRUNU T1JfRUxFTl9GUF8zMiwgUlZWTTFTRiwgMywgTE1VTF8xLCAxNikNCi1UVVBM RV9FTlRSWSAoUlZWTUYyeDNTRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQXzMy ICYmIFRBUkdFVF9NSU5fVkxFTiA+IDMyLCBSVlZNRjJTRiwgMywgTE1VTF9G MiwgMzIpDQorVFVQTEVfRU5UUlkgKFJWVk1GMngzU0YsIFRBUkdFVF9WRUNU T1JfRUxFTl9GUF8zMiAmJiBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAhVEFS R0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYyU0YsIDMsIExNVUxfRjIsIDMyKQ0K VFVQTEVfRU5UUlkgKFJWVk00eDJTRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQ XzMyLCBSVlZNNFNGLCAyLCBMTVVMXzQsIDQpDQpUVVBMRV9FTlRSWSAoUlZW TTJ4MlNGLCBUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMzIsIFJWVk0yU0YsIDIs IExNVUxfMiwgOCkNClRVUExFX0VOVFJZIChSVlZNMXgyU0YsIFRBUkdFVF9W RUNUT1JfRUxFTl9GUF8zMiwgUlZWTTFTRiwgMiwgTE1VTF8xLCAxNikNCi1U VVBMRV9FTlRSWSAoUlZWTUYyeDJTRiwgVEFSR0VUX1ZFQ1RPUl9FTEVOX0ZQ XzMyICYmIFRBUkdFVF9NSU5fVkxFTiA+IDMyLCBSVlZNRjJTRiwgMiwgTE1V TF9GMiwgMzIpDQorVFVQTEVfRU5UUlkgKFJWVk1GMngyU0YsIFRBUkdFVF9W RUNUT1JfRUxFTl9GUF8zMiAmJiBUQVJHRVRfTUlOX1ZMRU4gPiAzMiAmJiAh VEFSR0VUX1hUSEVBRFZFQ1RPUiwgUlZWTUYyU0YsIDIsIExNVUxfRjIsIDMy KQ0KVFVQTEVfRU5UUlkgKFJWVk0xeDhESSwgVEFSR0VUX1ZFQ1RPUl9FTEVO XzY0LCBSVlZNMURJLCA4LCBMTVVMXzEsIDE2KQ0KVFVQTEVfRU5UUlkgKFJW Vk0xeDdESSwgVEFSR0VUX1ZFQ1RPUl9FTEVOXzY0LCBSVlZNMURJLCA3LCBM TVVMXzEsIDE2KQ0KZGlmZiAtLWdpdCBhL2djYy9jb25maWcvcmlzY3Yvcmlz Y3YuY2MgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjDQppbmRleCA4Zjc0 Y2QyZTUwMi4uMjhjZjFmNDE0ZTkgMTAwNjQ0DQotLS0gYS9nY2MvY29uZmln L3Jpc2N2L3Jpc2N2LmNjDQorKysgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2 LmNjDQpAQCAtMTQwNiw2ICsxNDA2LDkgQEAgcmlzY3Zfdl9hZGp1c3RfYnl0 ZXNpemUgKG1hY2hpbmVfbW9kZSBtb2RlLCBpbnQgc2NhbGUpDQp7DQogICBp ZiAocmlzY3Zfdl9leHRfdmVjdG9yX21vZGVfcCAobW9kZSkpDQogICAgIHsN CisgICAgICBpZiAoVEFSR0VUX1hUSEVBRFZFQ1RPUikNCisgcmV0dXJuIEJZ VEVTX1BFUl9SSVNDVl9WRUNUT1I7DQorDQogICAgICAgcG9seV9pbnQ2NCBu dW5pdHMgPSBHRVRfTU9ERV9OVU5JVFMgKG1vZGUpOw0KICAgICAgIHBvbHlf aW50NjQgbW9kZV9zaXplID0gR0VUX01PREVfU0laRSAobW9kZSk7DQpAQCAt OTk5NSw3ICs5OTk4LDcgQEAgcmlzY3ZfdXNlX2Rpdm1vZF9leHBhbmRlciAo dm9pZCkNCnN0YXRpYyBtYWNoaW5lX21vZGUNCnJpc2N2X3ByZWZlcnJlZF9z aW1kX21vZGUgKHNjYWxhcl9tb2RlIG1vZGUpDQp7DQotICBpZiAoVEFSR0VU X1ZFQ1RPUikNCisgIGlmIChUQVJHRVRfVkVDVE9SICYmICFUQVJHRVRfWFRI RUFEVkVDVE9SKQ0KICAgICByZXR1cm4gcmlzY3ZfdmVjdG9yOjpwcmVmZXJy ZWRfc2ltZF9tb2RlIChtb2RlKTsNCiAgIHJldHVybiB3b3JkX21vZGU7DQpA QCAtMTAzNDYsNyArMTAzNDksNyBAQCByaXNjdl9tb2RlX3ByaW9yaXR5IChp bnQsIGludCBuKQ0KdW5zaWduZWQgaW50DQpyaXNjdl9hdXRvdmVjdG9yaXpl X3ZlY3Rvcl9tb2RlcyAodmVjdG9yX21vZGVzICptb2RlcywgYm9vbCBhbGwp DQp7DQotICBpZiAoVEFSR0VUX1ZFQ1RPUikNCisgIGlmIChUQVJHRVRfVkVD VE9SICYmICFUQVJHRVRfWFRIRUFEVkVDVE9SKQ0KICAgICByZXR1cm4gcmlz Y3ZfdmVjdG9yOjphdXRvdmVjdG9yaXplX3ZlY3Rvcl9tb2RlcyAobW9kZXMs IGFsbCk7DQogICByZXR1cm4gZGVmYXVsdF9hdXRvdmVjdG9yaXplX3ZlY3Rv cl9tb2RlcyAobW9kZXMsIGFsbCk7DQpAQCAtMTA1MjksNiArMTA1MzIsMTYg QEAgZXh0cmFjdF9iYXNlX29mZnNldF9pbl9hZGRyIChydHggbWVtLCBydHgg KmJhc2UsIHJ0eCAqb2Zmc2V0KQ0KICAgcmV0dXJuIGZhbHNlOw0KfQ0KKy8q IEltcGxlbWVudHMgdGFyZ2V0IGhvb2sgdmVjdG9yX21vZGVfc3VwcG9ydGVk X2FueV90YXJnZXRfcC4gICovDQorDQorc3RhdGljIGJvb2wNCityaXNjdl92 ZWN0b3JfbW9kZV9zdXBwb3J0ZWRfYW55X3RhcmdldF9wIChtYWNoaW5lX21v ZGUgbW9kZSkNCit7DQorICBpZiAoVEFSR0VUX1hUSEVBRFZFQ1RPUikNCisg ICAgcmV0dXJuIGZhbHNlOw0KKyAgcmV0dXJuIHRydWU7DQorfQ0KKw0KLyog SW5pdGlhbGl6ZSB0aGUgR0NDIHRhcmdldCBzdHJ1Y3R1cmUuICAqLw0KI3Vu ZGVmIFRBUkdFVF9BU01fQUxJR05FRF9ISV9PUA0KI2RlZmluZSBUQVJHRVRf QVNNX0FMSUdORURfSElfT1AgIlx0LmhhbGZcdCINCkBAIC0xMDg3Miw2ICsx MDg4NSw5IEBAIGV4dHJhY3RfYmFzZV9vZmZzZXRfaW5fYWRkciAocnR4IG1l bSwgcnR4ICpiYXNlLCBydHggKm9mZnNldCkNCiN1bmRlZiBUQVJHRVRfUFJF RkVSUkVEX0VMU0VfVkFMVUUNCiNkZWZpbmUgVEFSR0VUX1BSRUZFUlJFRF9F TFNFX1ZBTFVFIHJpc2N2X3ByZWZlcnJlZF9lbHNlX3ZhbHVlDQorI3VuZGVm IFRBUkdFVF9WRUNUT1JfTU9ERV9TVVBQT1JURURfQU5ZX1RBUkdFVF9QDQor I2RlZmluZSBUQVJHRVRfVkVDVE9SX01PREVfU1VQUE9SVEVEX0FOWV9UQVJH RVRfUCByaXNjdl92ZWN0b3JfbW9kZV9zdXBwb3J0ZWRfYW55X3RhcmdldF9w DQorDQpzdHJ1Y3QgZ2NjX3RhcmdldCB0YXJnZXRtID0gVEFSR0VUX0lOSVRJ QUxJWkVSOw0KI2luY2x1ZGUgImd0LXJpc2N2LmgiDQpkaWZmIC0tZ2l0IGEv Z2NjL2NvbmZpZy9yaXNjdi9yaXNjdl90aF92ZWN0b3IuaCBiL2djYy9jb25m aWcvcmlzY3YvcmlzY3ZfdGhfdmVjdG9yLmgNCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwMDAwMC4uYjZiNjczOGJkZGENCi0tLSAvZGV2 L251bGwNCisrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3ZfdGhfdmVjdG9y LmgNCkBAIC0wLDAgKzEsNDkgQEANCisvKiBSSVNDLVYgJ1hUaGVhZFZlY3Rv cicgRXh0ZW5zaW9uIGludHJpbnNpY3MgaW5jbHVkZSBmaWxlLg0KKyAgIENv cHlyaWdodCAoQykgMjAyNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu Yy4NCisNCisgICBUaGlzIGZpbGUgaXMgcGFydCBvZiBHQ0MuDQorDQorICAg R0NDIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0 IGFuZC9vciBtb2RpZnkgaXQNCisgICB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZA0KKyAg IGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJz aW9uIDMsIG9yIChhdCB5b3VyDQorICAgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4NCisNCisgICBHQ0MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQNCisgICBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBv ZiBNRVJDSEFOVEFCSUxJVFkNCisgICBvciBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljDQor ICAgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KKw0KKyAgIFVuZGVyIFNl Y3Rpb24gNyBvZiBHUEwgdmVyc2lvbiAzLCB5b3UgYXJlIGdyYW50ZWQgYWRk aXRpb25hbA0KKyAgIHBlcm1pc3Npb25zIGRlc2NyaWJlZCBpbiB0aGUgR0ND IFJ1bnRpbWUgTGlicmFyeSBFeGNlcHRpb24sIHZlcnNpb24NCisgICAzLjEs IGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u Lg0KKw0KKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFuZA0KKyAgIGEgY29w eSBvZiB0aGUgR0NDIFJ1bnRpbWUgTGlicmFyeSBFeGNlcHRpb24gYWxvbmcg d2l0aCB0aGlzIHByb2dyYW07DQorICAgc2VlIHRoZSBmaWxlcyBDT1BZSU5H MyBhbmQgQ09QWUlORy5SVU5USU1FIHJlc3BlY3RpdmVseS4gIElmIG5vdCwg c2VlDQorICAgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LiAgKi8N CisNCisjaWZuZGVmIF9fUklTQ1ZfVEhfVkVDVE9SX0gNCisjZGVmaW5lIF9f UklTQ1ZfVEhfVkVDVE9SX0gNCisNCisjaW5jbHVkZSA8c3RkaW50Lmg+DQor I2luY2x1ZGUgPHN0ZGRlZi5oPg0KKw0KKyNpZm5kZWYgX19yaXNjdl94dGhl YWR2ZWN0b3INCisjZXJyb3IgIlhUaGVhZFZlY3RvciBpbnRyaW5zaWNzIHJl cXVpcmUgdGhlIHh0aGVhZHZlY3RvciBleHRlbnNpb24uIg0KKyNlbHNlDQor I2lmZGVmIF9fY3BsdXNwbHVzDQorZXh0ZXJuICJDIiB7DQorI2VuZGlmDQor DQorLyogTk9URTogVGhpcyBpbXBsZW1lbnRhdGlvbiBvZiByaXNjdl90aF92 ZWN0b3IuaCBpcyBpbnRlbnRpb25hbGx5IHNob3J0LiAgSXQgZG9lcw0KKyAg IG5vdCBkZWZpbmUgdGhlIFJWViB0eXBlcyBhbmQgaW50cmluc2ljIGZ1bmN0 aW9ucyBkaXJlY3RseSBpbiBDIGFuZCBDKysNCisgICBjb2RlLCBidXQgaW5z dGVhZCB1c2VzIHRoZSBmb2xsb3dpbmcgcHJhZ21hIHRvIHRlbGwgR0NDIHRv IGluc2VydCB0aGUNCisgICBuZWNlc3NhcnkgdHlwZSBhbmQgZnVuY3Rpb24g ZGVmaW5pdGlvbnMgaXRzZWxmLiAgVGhlIG5ldCBlZmZlY3QgaXMgdGhlDQor ICAgc2FtZSwgYW5kIHRoZSBmaWxlIGlzIGEgY29tcGxldGUgaW1wbGVtZW50 YXRpb24gb2YgcmlzY3ZfdGhfdmVjdG9yLmguICAqLw0KKyNwcmFnbWEgcmlz Y3YgaW50cmluc2ljICJ4dGhlYWR2ZWN0b3IiDQorDQorI2lmZGVmIF9fY3Bs dXNwbHVzDQorfQ0KKyNlbmRpZiAvLyBfX2NwbHVzcGx1cw0KKyNlbmRpZiAv LyBfX3Jpc2N2X3h0aGVhZHZlY3Rvcg0KKyNlbmRpZiAvLyBfX1JJU0NWX1RI X0VDVE9SX0gNCmRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3RoZWFk LXZlY3Rvci5tZCBiL2djYy9jb25maWcvcmlzY3YvdGhlYWQtdmVjdG9yLm1k DQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwMDAuLjY5 NmI4MTUyNTJkDQotLS0gL2Rldi9udWxsDQorKysgYi9nY2MvY29uZmlnL3Jp c2N2L3RoZWFkLXZlY3Rvci5tZA0KQEAgLTAsMCArMSwxMDIgQEANCisoZGVm aW5lX2NfZW51bSAidW5zcGVjIiBbDQorICBVTlNQRUNfVEhfVldMRFNUDQor XSkNCisNCisoZGVmaW5lX21vZGVfaXRlcmF0b3IgVl9WTFNfVlQgW1YgVkxT IFZUXSkNCisoZGVmaW5lX21vZGVfaXRlcmF0b3IgVl9WQl9WTFNfVlQgW1Yg VkIgVkxTIFZUXSkNCisNCisoZGVmaW5lX3NwbGl0DQorICBbKHNldCAobWF0 Y2hfb3BlcmFuZDpWX1ZCX1ZMU19WVCAwICJyZWdfb3JfbWVtX29wZXJhbmQi KQ0KKyAobWF0Y2hfb3BlcmFuZDpWX1ZCX1ZMU19WVCAxICJyZWdfb3JfbWVt X29wZXJhbmQiKSldDQorICAiVEFSR0VUX1hUSEVBRFZFQ1RPUiINCisgIFso Y29uc3RfaW50IDApXQ0KKyAgew0KKyAgICBlbWl0X2luc24gKGdlbl9wcmVk X3RoX3dob2xlX21vdiAoPE1PREU+bW9kZSwgb3BlcmFuZHNbMF0sIG9wZXJh bmRzWzFdLA0KKyAgICAgICBSVlZfVkxNQVgsIEdFTl9JTlQocmlzY3ZfdmVj dG9yOjpWTE1BWCkpKTsNCisgICAgRE9ORTsNCisgIH0pDQorDQorKGRlZmlu ZV9pbnNuX2FuZF9zcGxpdCAiQHByZWRfdGhfd2hvbGVfbW92PG1vZGU+Ig0K KyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6Vl9WTFNfVlQgMCAicmVnX29yX21l bV9vcGVyYW5kIiAgIj12cix2ciwgbSIpDQorICh1bnNwZWM6Vl9WTFNfVlQN CisgICBbKG1hdGNoX29wZXJhbmQ6Vl9WTFNfVlQgMSAicmVnX29yX21lbV9v cGVyYW5kIiAiIHZyLCBtLHZyIikNCisgICAgKG1hdGNoX29wZXJhbmQgMiAi dmVjdG9yX2xlbmd0aF9vcGVyYW5kIiAgICIgckssIHJLLCBySyIpDQorICAg IChtYXRjaF9vcGVyYW5kIDMgImNvbnN0XzFfb3BlcmFuZCIgICAgICAgICAi ICBpLCBpLCBpIikNCisgICAgKHJlZzpTSSBWTF9SRUdOVU0pDQorICAgIChy ZWc6U0kgVlRZUEVfUkVHTlVNKV0NCisgVU5TUEVDX1RIX1ZXTERTVCkpXQ0K KyAgIlRBUkdFVF9YVEhFQURWRUNUT1IiDQorICAiQA0KKyAgIHZtdi52LnZc dCUwLCUxDQorICAgdmxlLnZcdCUwLCUxDQorICAgdnNlLnZcdCUxLCUwIg0K KyAgIiYmIFJFR19QIChvcGVyYW5kc1swXSkgJiYgUkVHX1AgKG9wZXJhbmRz WzFdKQ0KKyAgICYmIFJFR05PIChvcGVyYW5kc1swXSkgPT0gUkVHTk8gKG9w ZXJhbmRzWzFdKSINCisgIFsoY29uc3RfaW50IDApXQ0KKyAgIiINCisgIFso c2V0X2F0dHIgInR5cGUiICJ2aW1vdix2bGRzLHZsZHMiKQ0KKyAgIChzZXRf YXR0ciAibW9kZSIgIjxNT0RFPiIpDQorICAgKHNldCAoYXR0ciAidGEiKSAo c3ltYm9sX3JlZiAicmlzY3ZfdmVjdG9yOjpUQUlMX1VORElTVFVSQkVEIikp DQorICAgKHNldCAoYXR0ciAibWEiKSAoc3ltYm9sX3JlZiAicmlzY3ZfdmVj dG9yOjpNQVNLX1VORElTVFVSQkVEIikpDQorICAgKHNldCAoYXR0ciAiYXZs X3R5cGVfaWR4IikgKGNvbnN0X2ludCAzKSkNCisgICAoc2V0X2F0dHIgInZs X29wX2lkeCIgIjIiKV0pDQorDQorKGRlZmluZV9pbnNuX2FuZF9zcGxpdCAi QHByZWRfdGhfd2hvbGVfbW92PG1vZGU+Ig0KKyAgWyhzZXQgKG1hdGNoX29w ZXJhbmQ6VkIgMCAicmVnX29yX21lbV9vcGVyYW5kIiAgIj12cix2ciwgbSIp DQorICh1bnNwZWM6VkINCisgICBbKG1hdGNoX29wZXJhbmQ6VkIgMSAicmVn X29yX21lbV9vcGVyYW5kIiAiIHZyLCBtLHZyIikNCisgICAgKG1hdGNoX29w ZXJhbmQgMiAidmVjdG9yX2xlbmd0aF9vcGVyYW5kIiAgICIgckssIHJLLCBy SyIpDQorICAgIChtYXRjaF9vcGVyYW5kIDMgImNvbnN0XzFfb3BlcmFuZCIg ICAgICAgICAiICBpLCBpLCBpIikNCisgICAgKHJlZzpTSSBWTF9SRUdOVU0p DQorICAgIChyZWc6U0kgVlRZUEVfUkVHTlVNKV0NCisgVU5TUEVDX1RIX1ZX TERTVCkpXQ0KKyAgIlRBUkdFVF9YVEhFQURWRUNUT1IiDQorICAiQA0KKyAg IHZtdi52LnZcdCUwLCUxDQorICAgdmxlLnZcdCUwLCUxDQorICAgdnNlLnZc dCUxLCUwIg0KKyAgIiYmIFJFR19QIChvcGVyYW5kc1swXSkgJiYgUkVHX1Ag KG9wZXJhbmRzWzFdKQ0KKyAgICYmIFJFR05PIChvcGVyYW5kc1swXSkgPT0g UkVHTk8gKG9wZXJhbmRzWzFdKSINCisgIFsoY29uc3RfaW50IDApXQ0KKyAg IiINCisgIFsoc2V0X2F0dHIgInR5cGUiICJ2aW1vdix2bGRzLHZsZHMiKQ0K KyAgIChzZXRfYXR0ciAibW9kZSIgIjxNT0RFPiIpDQorICAgKHNldCAoYXR0 ciAidGEiKSAoc3ltYm9sX3JlZiAicmlzY3ZfdmVjdG9yOjpUQUlMX1VORElT VFVSQkVEIikpDQorICAgKHNldCAoYXR0ciAibWEiKSAoc3ltYm9sX3JlZiAi cmlzY3ZfdmVjdG9yOjpNQVNLX1VORElTVFVSQkVEIikpDQorICAgKHNldCAo YXR0ciAiYXZsX3R5cGVfaWR4IikgKGNvbnN0X2ludCAzKSkNCisgICAoc2V0 X2F0dHIgInZsX29wX2lkeCIgIjIiKQ0KKyAgIChzZXQgKGF0dHIgInNldyIp IChjb25zdF9pbnQgOCkpDQorICAgKHNldCAoYXR0ciAidmxtdWwiKSAoc3lt Ym9sX3JlZiAicmlzY3ZfdmVjdG9yOjpMTVVMXzEiKSldKQ0KKw0KKyhkZWZp bmVfaW5zbl9hbmRfc3BsaXQgIipwcmVkX3RoX21vdjxtb2RlPiINCisgIFso c2V0IChtYXRjaF9vcGVyYW5kOlZCX1ZMUyAwICJub25pbW1lZGlhdGVfb3Bl cmFuZCIgICAgICAgICAgICAgICAiPXZyLCAgIG0sICB2ciwgIHZyLCAgdnIi KQ0KKyAoaWZfdGhlbl9lbHNlOlZCX1ZMUw0KKyAgICh1bnNwZWM6VkJfVkxT DQorICAgICBbKG1hdGNoX29wZXJhbmQ6VkJfVkxTIDEgInZlY3Rvcl9hbGxf dHJ1ZXNfbWFza19vcGVyYW5kIiAiV2MxLCBXYzEsIFdjMSwgV2MxLCBXYzEi KQ0KKyAgICAgIChtYXRjaF9vcGVyYW5kIDQgInZlY3Rvcl9sZW5ndGhfb3Bl cmFuZCIgICAgICAgICAgICAiIHJLLCAgckssICBySywgIHJLLCAgcksiKQ0K KyAgICAgIChtYXRjaF9vcGVyYW5kIDUgImNvbnN0X2ludF9vcGVyYW5kIiAg ICAgICAgICAgICAgICAiICBpLCAgIGksICAgaSwgICBpLCAgIGkiKQ0KKyAg ICAgIChyZWc6U0kgVkxfUkVHTlVNKQ0KKyAgICAgIChyZWc6U0kgVlRZUEVf UkVHTlVNKV0gVU5TUEVDX1ZQUkVESUNBVEUpDQorICAgKG1hdGNoX29wZXJh bmQ6VkJfVkxTIDMgInZlY3Rvcl9tb3ZlX29wZXJhbmQiICAgICAgICAgICAg ICAiICBtLCAgdnIsICB2ciwgV2MwLCBXYzEiKQ0KKyAgIChtYXRjaF9vcGVy YW5kOlZCX1ZMUyAyICJ2ZWN0b3JfdW5kZWZfb3BlcmFuZCIgICAgICAgICAg ICAgIiB2dSwgIHZ1LCAgdnUsICB2dSwgIHZ1IikpKV0NCisgICJUQVJHRVRf WFRIRUFEVkVDVE9SIg0KKyAgIkANCisgICAjDQorICAgIw0KKyAgIHZtY3B5 Lm1cdCUwLCUzDQorICAgdm1jbHIubVx0JTANCisgICB2bXNldC5tXHQlMCIN CisgICImJiAhcmVsb2FkX2NvbXBsZXRlZCINCisgIFsoY29uc3RfaW50IDAp XQ0KKyAgew0KKyAgICBpZiAoKE1FTV9QIChvcGVyYW5kc1swXSkgfHwgTUVN X1AgKG9wZXJhbmRzWzNdKSkNCisgICAgICAgIHx8IChSRUdfUCAob3BlcmFu ZHNbMF0pICYmIFJFR19QIChvcGVyYW5kc1szXSkNCisgICAgICYmIElOVFZB TCAob3BlcmFuZHNbNV0pID09IHJpc2N2X3ZlY3Rvcjo6VkxNQVgpKQ0KKyAg ICAgIHsNCisgZW1pdF9tb3ZlX2luc24gKG9wZXJhbmRzWzBdLCBvcGVyYW5k c1szXSk7DQorIERPTkU7DQorICAgICAgfQ0KKyAgICBGQUlMOw0KKyAgfQ0K KyAgWyhzZXRfYXR0ciAidHlwZSIgInZsZG0sdnN0bSx2bWFsdSx2bWFsdSx2 bWFsdSIpDQorICAgKHNldF9hdHRyICJtb2RlIiAiPE1PREU+IildKQ0KZGlm ZiAtLWdpdCBhL2djYy9jb25maWcvcmlzY3YvdGhlYWQuY2MgYi9nY2MvY29u ZmlnL3Jpc2N2L3RoZWFkLmNjDQppbmRleCAwMGIyZTE0YzZjMC4uY2MwNDEw MWIyNTYgMTAwNjQ0DQotLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3RoZWFkLmNj DQorKysgYi9nY2MvY29uZmlnL3Jpc2N2L3RoZWFkLmNjDQpAQCAtMjcsNiAr MjcsNyBAQA0KI2luY2x1ZGUgImJhY2tlbmQuaCINCiNpbmNsdWRlICJ0cmVl LmgiDQojaW5jbHVkZSAicnRsLmgiDQorI2luY2x1ZGUgImluc24tYXR0ci5o Ig0KI2luY2x1ZGUgImV4cGxvdy5oIg0KI2luY2x1ZGUgIm1lbW1vZGVsLmgi DQojaW5jbHVkZSAiZW1pdC1ydGwuaCINCkBAIC04OTAsOCArODkxLDI2IEBA IHRoX2FzbV9vdXRwdXRfb3Bjb2RlIChGSUxFICphc21fb3V0X2ZpbGUsIGNv bnN0IGNoYXIgKnApDQp7DQogICAvKiBXZSBuZWVkIHRvIGFkZCB0aC4gcHJl Zml4IHRvIGFsbCB0aGUgeHRoZWFkdmVjdG9yDQogICAgICBpbnN0cnVjdGlv bnMgaGVyZS4qLw0KLSAgaWYgKGN1cnJlbnRfb3V0cHV0X2luc24gIT0gTlVM TCAmJiBwWzBdID09ICd2JykNCi0gICAgZnB1dHMgKCJ0aC4iLCBhc21fb3V0 X2ZpbGUpOw0KKyAgaWYgKGN1cnJlbnRfb3V0cHV0X2luc24gIT0gTlVMTCkN CisgICAgew0KKyAgICAgIGlmIChnZXRfYXR0cl90eXBlIChjdXJyZW50X291 dHB1dF9pbnNuKSA9PSBUWVBFX1ZTRVRWTCkNCisgew0KKyAgIGlmIChzdHJz dHIgKHAsICJ6ZXJvIikpDQorICAgICB7DQorICAgICAgIGlmIChzdHJzdHIg KHAsICJ6ZXJvLHplcm8iKSkNCisgcmV0dXJuICJ0aC52c2V0dmxpXHR6ZXJv LHplcm8sZSUwLCVtMSI7DQorICAgICAgIGVsc2UNCisgcmV0dXJuICJ0aC52 c2V0dmxpXHR6ZXJvLCUwLGUlMSwlbTIiOw0KKyAgICAgfQ0KKyAgIGVsc2UN CisgICAgIHsNCisgICAgICAgcmV0dXJuICJ0aC52c2V0dmxpXHQlMCwlMSxl JTIsJW0zIjsNCisgICAgIH0NCisgfQ0KKw0KKyAgICAgIGlmIChwWzBdID09 ICd2JykNCisgZnB1dHMgKCJ0aC4iLCBhc21fb3V0X2ZpbGUpOw0KKyAgICB9 DQogICByZXR1cm4gcDsNCn0NCmRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jp c2N2L3ZlY3Rvci5tZCBiL2djYy9jb25maWcvcmlzY3YvdmVjdG9yLm1kDQpp bmRleCAyNGI3YjQzOTRiZS4uMzQ5NDYwOTA5NjIgMTAwNjQ0DQotLS0gYS9n Y2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci5tZA0KKysrIGIvZ2NjL2NvbmZpZy9y aXNjdi92ZWN0b3IubWQNCkBAIC04Nyw3ICs4Nyw3IEBADQo7OyBjaGVjay4g SG93ZXZlciwgd2UgbmVlZCBkZWZhdWx0IHZhbHVlIG9mIFNFVyBmb3IgdnNl dHZsIGluc3RydWN0aW9uIHNpbmNlIHRoZXJlDQo7OyBpcyBubyBmaWVsZCBm b3IgcmF0aW8gaW4gdGhlIHZzZXR2bCBpbnN0cnVjdGlvbiBlbmNvZGluZy4N CihkZWZpbmVfYXR0ciAic2V3IiAiIg0KLSAgKGNvbmQgWyhlcV9hdHRyICJt b2RlIiAiUlZWTUY2NEJJLFJWVk1GMzJCSSxSVlZNRjE2QkksUlZWTUY4Qkks UlZWTUY0QkksUlZWTUYyQkksUlZWTTFCSSxcDQorICAoY29uZCBbKGVxX2F0 dHIgIm1vZGUiICJSVlZNRjhCSSxSVlZNRjRCSSxSVlZNRjJCSSxSVlZNMUJJ LFwNCiAgUlZWTThRSSxSVlZNNFFJLFJWVk0yUUksUlZWTTFRSSxSVlZNRjJR SSxSVlZNRjRRSSxSVlZNRjhRSSxcDQogIFJWVk0xeDhRSSxSVlZNRjJ4OFFJ LFJWVk1GNHg4UUksUlZWTUY4eDhRSSxcDQogIFJWVk0xeDdRSSxSVlZNRjJ4 N1FJLFJWVk1GNHg3UUksUlZWTUY4eDdRSSxcDQpAQCAtOTksNiArOTksMTgg QEANCiAgVjFRSSxWMlFJLFY0UUksVjhRSSxWMTZRSSxWMzJRSSxWNjRRSSxW MTI4UUksVjI1NlFJLFY1MTJRSSxWMTAyNFFJLFYyMDQ4UUksVjQwOTZRSSxc DQogIFYxQkksVjJCSSxWNEJJLFY4QkksVjE2QkksVjMyQkksVjY0QkksVjEy OEJJLFYyNTZCSSxWNTEyQkksVjEwMjRCSSxWMjA0OEJJLFY0MDk2QkkiKQ0K KGNvbnN0X2ludCA4KQ0KKyAoZXFfYXR0ciAibW9kZSIgIlJWVk1GMTZCSSIp DQorICAgIChpZl90aGVuX2Vsc2UgKG1hdGNoX3Rlc3QgIlRBUkdFVF9YVEhF QURWRUNUT1IiKQ0KKyAgICAgIChjb25zdF9pbnQgMTYpDQorICAgICAgKGNv bnN0X2ludCA4KSkNCisgKGVxX2F0dHIgIm1vZGUiICJSVlZNRjMyQkkiKQ0K KyAgICAoaWZfdGhlbl9lbHNlIChtYXRjaF90ZXN0ICJUQVJHRVRfWFRIRUFE VkVDVE9SIikNCisgICAgICAoY29uc3RfaW50IDMyKQ0KKyAgICAgIChjb25z dF9pbnQgOCkpDQorIChlcV9hdHRyICJtb2RlIiAiUlZWTUY2NEJJIikNCisg ICAgKGlmX3RoZW5fZWxzZSAobWF0Y2hfdGVzdCAiVEFSR0VUX1hUSEVBRFZF Q1RPUiIpDQorICAgICAgKGNvbnN0X2ludCA2NCkNCisgICAgICAoY29uc3Rf aW50IDgpKQ0KKGVxX2F0dHIgIm1vZGUiICJSVlZNOEhJLFJWVk00SEksUlZW TTJISSxSVlZNMUhJLFJWVk1GMkhJLFJWVk1GNEhJLFwNCiAgUlZWTTF4OEhJ LFJWVk1GMng4SEksUlZWTUY0eDhISSxcDQogIFJWVk0xeDdISSxSVlZNRjJ4 N0hJLFJWVk1GNHg3SEksXA0KQEAgLTE1OSw5ICsxNzEsOSBAQA0KKGVxX2F0 dHIgIm1vZGUiICJSVlZNNFFJLFJWVk1GMkJJIikgKHN5bWJvbF9yZWYgInJp c2N2X3ZlY3Rvcjo6TE1VTF80IikNCihlcV9hdHRyICJtb2RlIiAiUlZWTTJR SSxSVlZNRjRCSSIpIChzeW1ib2xfcmVmICJyaXNjdl92ZWN0b3I6OkxNVUxf MiIpDQooZXFfYXR0ciAibW9kZSIgIlJWVk0xUUksUlZWTUY4QkkiKSAoc3lt Ym9sX3JlZiAicmlzY3ZfdmVjdG9yOjpMTVVMXzEiKQ0KLSAoZXFfYXR0ciAi bW9kZSIgIlJWVk1GMlFJLFJWVk1GMTZCSSIpIChzeW1ib2xfcmVmICJyaXNj dl92ZWN0b3I6OkxNVUxfRjIiKQ0KLSAoZXFfYXR0ciAibW9kZSIgIlJWVk1G NFFJLFJWVk1GMzJCSSIpIChzeW1ib2xfcmVmICJyaXNjdl92ZWN0b3I6OkxN VUxfRjQiKQ0KLSAoZXFfYXR0ciAibW9kZSIgIlJWVk1GOFFJLFJWVk1GNjRC SSIpIChzeW1ib2xfcmVmICJyaXNjdl92ZWN0b3I6OkxNVUxfRjgiKQ0KKyAo ZXFfYXR0ciAibW9kZSIgIlJWVk1GMlFJLFJWVk1GMTZCSSIpIChzeW1ib2xf cmVmICJUQVJHRVRfWFRIRUFEVkVDVE9SID8gcmlzY3ZfdmVjdG9yOjpMTVVM XzEgOiByaXNjdl92ZWN0b3I6OkxNVUxfRjIiKQ0KKyAoZXFfYXR0ciAibW9k ZSIgIlJWVk1GNFFJLFJWVk1GMzJCSSIpIChzeW1ib2xfcmVmICJUQVJHRVRf WFRIRUFEVkVDVE9SID8gcmlzY3ZfdmVjdG9yOjpMTVVMXzEgOiByaXNjdl92 ZWN0b3I6OkxNVUxfRjQiKQ0KKyAoZXFfYXR0ciAibW9kZSIgIlJWVk1GOFFJ LFJWVk1GNjRCSSIpIChzeW1ib2xfcmVmICJUQVJHRVRfWFRIRUFEVkVDVE9S ID8gcmlzY3ZfdmVjdG9yOjpMTVVMXzEgOiByaXNjdl92ZWN0b3I6OkxNVUxf RjgiKQ0KKGVxX2F0dHIgIm1vZGUiICJSVlZNOEhJIikgKHN5bWJvbF9yZWYg InJpc2N2X3ZlY3Rvcjo6TE1VTF84IikNCihlcV9hdHRyICJtb2RlIiAiUlZW TTRISSIpIChzeW1ib2xfcmVmICJyaXNjdl92ZWN0b3I6OkxNVUxfNCIpDQoo ZXFfYXR0ciAibW9kZSIgIlJWVk0ySEkiKSAoc3ltYm9sX3JlZiAicmlzY3Zf dmVjdG9yOjpMTVVMXzIiKQ0KQEAgLTQzNiw2ICs0NDgsMTAgQEANCiAgdmFl c2tmMSx2YWVza2YyLHZhZXN6LHZzaGEybXMsdnNoYTJjaCx2c2hhMmNsLHZz bTRrLHZzbTRyLFwNCiAgdnNtM21lLHZzbTNjIikNCiAgIChjb25zdF9pbnQg SU5WQUxJRF9BVFRSSUJVVEUpDQorIChhbmQgKGVxX2F0dHIgInR5cGUiICJ2 bGRlLHZzdGUsdmxzZWdkZSx2c3NlZ3RlLHZsc2VnZHMsdnNzZWd0cyxcDQor ICAgICAgICB2bHNlZ2RmZix2c3NlZ3R1eCx2bHNlZ2RveCx2bHNlZ2R1eCIp DQorICAgICAgIChtYXRjaF90ZXN0ICJUQVJHRVRfWFRIRUFEVkVDVE9SIikp DQorICAgIChjb25zdF9pbnQgSU5WQUxJRF9BVFRSSUJVVEUpDQooZXFfYXR0 ciAibW9kZSIgIlJWVk04UUksUlZWTTFCSSIpIChjb25zdF9pbnQgMSkNCihl cV9hdHRyICJtb2RlIiAiUlZWTTRRSSxSVlZNRjJCSSIpIChjb25zdF9pbnQg MikNCihlcV9hdHRyICJtb2RlIiAiUlZWTTJRSSxSVlZNRjRCSSIpIChjb25z dF9pbnQgNCkNCkBAIC05MDUsNiArOTIxLDggQEANCihzeW1ib2xfcmVmICJy aXNjdl92ZWN0b3I6OkZSTV9EWU4iKV0NCihzeW1ib2xfcmVmICJyaXNjdl92 ZWN0b3I6OkZSTV9OT05FIikpKQ0KKyhpbmNsdWRlICJ0aGVhZC12ZWN0b3Iu bWQiKQ0KKw0KOzsgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCjs7IC0tLS0gTWlz Y2VsbGFuZW91cyBPcGVyYXRpb25zDQo7OyAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KQEAgLTEwNzgsNiArMTA5NiwxMiBAQA0KICAgICAgICAtIFdlIGNhbiBu b3QgbGVhdmUgaXQgdG8gVEFSR0VUX1NFQ09OREFSWV9SRUxPQUQgc2luY2Ug aXQgaGFwcGVucw0KYmVmb3JlIHNwaWxsaW5nLiBUaGUgY2xvYmJlciBzY3Jh dGNoIGlzIHVzZWQgYnkgc3BpbGxpbmcgZnJhY3Rpb25hbA0KcmVnaXN0ZXJz IGluIElSQS9MUkEgc28gaXQncyB0b28gZWFybHkuICAqLw0KKyAgaWYgKFRB UkdFVF9YVEhFQURWRUNUT1IpDQorICAgIHsNCisgICAgICBlbWl0X2luc24g KGdlbl9wcmVkX3RoX3dob2xlX21vdiAoPE1PREU+bW9kZSwgb3BlcmFuZHNb MF0sIG9wZXJhbmRzWzFdLA0KKyBSVlZfVkxNQVgsIEdFTl9JTlQocmlzY3Zf dmVjdG9yOjpWTE1BWCkpKTsNCisgICAgICBET05FOw0KKyAgICB9DQogICBp ZiAocmlzY3ZfdmVjdG9yOjpsZWdpdGltaXplX21vdmUgKG9wZXJhbmRzWzBd LCAmb3BlcmFuZHNbMV0pKQ0KICAgICBET05FOw0KQEAgLTExMTQsNyArMTEz OCw3IEBADQooZGVmaW5lX2luc24gIiptb3Y8bW9kZT5fd2hvbGUiDQogICBb KHNldCAobWF0Y2hfb3BlcmFuZDpWX1dIT0xFIDAgInJlZ19vcl9tZW1fb3Bl cmFuZCIgIj12ciwgbSx2ciIpDQoobWF0Y2hfb3BlcmFuZDpWX1dIT0xFIDEg InJlZ19vcl9tZW1fb3BlcmFuZCIgIiAgbSx2cix2ciIpKV0NCi0gICJUQVJH RVRfVkVDVE9SIg0KKyAgIlRBUkdFVF9WRUNUT1IgJiYgIVRBUkdFVF9YVEhF QURWRUNUT1IiDQogICAiQA0KICAgIHZsJW0xcmU8c2V3Pi52XHQlMCwlMQ0K ICAgIHZzJW0xci52XHQlMSwlMA0KQEAgLTExMzUsNiArMTE1OSwxMyBAQA0K KG1hdGNoX29wZXJhbmQ6VkIgMSAiZ2VuZXJhbF9vcGVyYW5kIikpXQ0KICAg IlRBUkdFVF9WRUNUT1IiDQp7DQorICBpZiAoVEFSR0VUX1hUSEVBRFZFQ1RP UikNCisgICAgew0KKyAgICAgIGVtaXRfaW5zbiAoZ2VuX3ByZWRfdGhfd2hv bGVfbW92ICg8TU9ERT5tb2RlLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0s DQorIFJWVl9WTE1BWCwgR0VOX0lOVChyaXNjdl92ZWN0b3I6OlZMTUFYKSkp Ow0KKyAgICAgIERPTkU7DQorICAgIH0NCisNCiAgIGlmIChyaXNjdl92ZWN0 b3I6OmxlZ2l0aW1pemVfbW92ZSAob3BlcmFuZHNbMF0sICZvcGVyYW5kc1sx XSkpDQogICAgIERPTkU7DQp9KQ0KQEAgLTExNDIsNyArMTE3Myw3IEBADQoo ZGVmaW5lX2luc24gIiptb3Y8bW9kZT4iDQogICBbKHNldCAobWF0Y2hfb3Bl cmFuZDpWQiAwICJyZWdpc3Rlcl9vcGVyYW5kIiAiPXZyIikNCihtYXRjaF9v cGVyYW5kOlZCIDEgInJlZ2lzdGVyX29wZXJhbmQiICIgdnIiKSldDQotICAi VEFSR0VUX1ZFQ1RPUiINCisgICJUQVJHRVRfVkVDVE9SICYmICFUQVJHRVRf WFRIRUFEVkVDVE9SIg0KICAgInZtdjFyLnZcdCUwLCUxIg0KICAgWyhzZXRf YXR0ciAidHlwZSIgInZtb3YiKQ0KICAgIChzZXRfYXR0ciAibW9kZSIgIjxN T0RFPiIpXSkNCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvYWJpLTEuYyBiL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYmFzZS9hYmktMS5jDQppbmRleCAyZTBlMTJh YTA0NS4uMmVlZjllMWUxYTggMTAwNjQ0DQotLS0gYS9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvYWJpLTEuYw0KKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL2FiaS0xLmMN CkBAIC0xLDQgKzEsNCBAQA0KLS8qIHsgZGctZG8gY29tcGlsZSB9ICovDQor LyogeyBkZy1kbyBjb21waWxlIHsgdGFyZ2V0IHsgISByaXNjdl94dGhlYWR2 ZWN0b3IgfSB9IH0gKi8NCi8qIHsgZGctc2tpcC1pZiAidGVzdCBydnYgaW50 cmluc2ljIiB7ICotKi0qIH0geyAiKiIgfSB7ICItbWFyY2g9cnYqdioiIH0g fSAqLw0Kdm9pZCBmb28wICgpIHtfX3J2dl9ib29sNjRfdCB0O30NCmRpZmYg LS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvcHJhZ21hLTEuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS9wcmFnbWEtMS5jDQppbmRleCAzZDgxYjE3OTIzNS4uZWYz MjllMzA3ODUgMTAwNjQ0DQotLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvcHJhZ21hLTEuYw0KKysrIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByYWdtYS0xLmMNCkBA IC0xLDQgKzEsNCBAQA0KLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCi8qIHsg ZGctb3B0aW9ucyAiLU8zIC1tYXJjaD1ydjMyZ2MgLW1hYmk9aWxwMzJkIiB9 ICovDQotI3ByYWdtYSByaXNjdiBpbnRyaW5zaWMgInZlY3RvciIgLyogeyBk Zy1lcnJvciB7I3ByYWdtYSByaXNjdiBpbnRyaW5zaWMnIG9wdGlvbiAndmVj dG9yJyBuZWVkcyAnVicgZXh0ZW5zaW9uIGVuYWJsZWR9IH0gKi8NCisjcHJh Z21hIHJpc2N2IGludHJpbnNpYyAidmVjdG9yIiAvKiB7IGRnLWVycm9yIHsj cHJhZ21hIHJpc2N2IGludHJpbnNpYycgb3B0aW9uICd2ZWN0b3InIG5lZWRz ICdWJyBvciAnWFRIRUFEVkVDVE9SJyBleHRlbnNpb24gZW5hYmxlZH0gfSAq Lw0KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvbGliL3RhcmdldC1zdXBw b3J0cy5leHAgYi9nY2MvdGVzdHN1aXRlL2xpYi90YXJnZXQtc3VwcG9ydHMu ZXhwDQppbmRleCBiMjdjMzBiOGM1MS4uYmYwYWQ1MzQyZDYgMTAwNjQ0DQot LS0gYS9nY2MvdGVzdHN1aXRlL2xpYi90YXJnZXQtc3VwcG9ydHMuZXhwDQor KysgYi9nY2MvdGVzdHN1aXRlL2xpYi90YXJnZXQtc3VwcG9ydHMuZXhwDQpA QCAtMTk1Niw2ICsxOTU2LDE4IEBAIHByb2MgY2hlY2tfZWZmZWN0aXZlX3Rh cmdldF9yaXNjdl96YmIgeyB9IHsNCiAgICAgfV0NCn0NCisjIFJldHVybiAx IGlmIHRoZSB0YXJnZXQgYXJjaCBzdXBwb3J0cyB0aGUgWFRoZWFkVmVjdG9y IGV4dGVuc2lvbiwgMCBvdGhlcndpc2UuDQorIyBDYWNoZSB0aGUgcmVzdWx0 Lg0KKw0KK3Byb2MgY2hlY2tfZWZmZWN0aXZlX3RhcmdldF9yaXNjdl94dGhl YWR2ZWN0b3IgeyB9IHsNCisgICAgcmV0dXJuIFtjaGVja19ub19jb21waWxl cl9tZXNzYWdlcyByaXNjdl9leHRfeHRoZWFkdmVjdG9yIGFzc2VtYmx5IHsN CisgICAgICAgI2lmbmRlZiBfX3Jpc2N2X3h0aGVhZHZlY3Rvcg0KKyAgICAg ICAjZXJyb3IgIk5vdCBfX3Jpc2N2X3h0aGVhZHZlY3RvciINCisgICAgICAg I2VuZGlmDQorICAgIH1dDQorfQ0KKw0KKw0KIyBSZXR1cm4gMSBpZiB3ZSBj YW4gZXhlY3V0ZSBjb2RlIHdoZW4gdXNpbmcgZGctYWRkLW9wdGlvbnMgcmlz Y3Zfdg0KcHJvYyBjaGVja19lZmZlY3RpdmVfdGFyZ2V0X3Jpc2N2X3Zfb2sg eyB9IHsNCi0tIA0KMi4xNy4xDQogDQogDQo= ------=_001_NextPart513633523824_=------