From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbgau2.qq.com (smtpbgau2.qq.com [54.206.34.216]) by sourceware.org (Postfix) with ESMTPS id 23F353858C2C for ; Wed, 3 Jan 2024 06:47:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 23F353858C2C 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 23F353858C2C Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=54.206.34.216 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1704264448; cv=none; b=dDhJY462QCykmtZMH8bpZziUYbjQPM2k/lBG1VbLRxbvWG14WGCXcHp1I8jIY/2gSrJt1+m/h7skEEANSAKmJmAs03eYC4FWRGAGNf+GdSTIgJLFbys6uJu8TK2MyIfLuUql6Yi0vW1HkokGd2VKVGLHmS8Hhtk3VwS7LVkbU6o= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1704264448; c=relaxed/simple; bh=rdhTis+XjDEgo3nDAZP4x24tPv1os2TkcTojaoB6Q2s=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=lLUdVhhvstBs5DJ4OK6v2cZpiQ2KWV/zfcY162JEWrmAroxIUm7a6nrvB8e+UL3nokOtycxL40vBVXwm2Kt6Sd/d/CkfCROusreR2BkoppnpNSay56ivb9izWtCNqve72MGecOoXRVbmcIi++Px3Yo4prQa2mngMP8MJYR+CB2I= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtp62t1704264424tsrrecwy Received: from LAPTOP-EPITNQBU ( [58.60.1.10]) by bizesmtp.qq.com (ESMTP) with id ; Wed, 03 Jan 2024 14:47:03 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: kN2ypXZVqgxxTzhVaXmQK8a7TjTgVBIZuRLjNpiEXi//GuH2LGt2r9wZYP9cC aq6/jIqdBq4cSjJ1wq4dONEhC1BKhp4gMQJ3Zu42Obmg8T/0LDJrrYA07Vq23NCJXQ7/Voq 1oKJxOVS8qZQ6Qm1qc2AH8VqoVpkNNFZKVP4V9urnLFAeKqn7wQDVn591tK0qIbF+8tIR2Q f11d1i6s7rt+6Y7U3TRDhUFqRt+pi8omiCbZgk8FIp2rGB3HUPVymZvTUMCDJnVy5X/Gv9l WR34f9h2S5B4A0GOIVD3pGI/QA+gMxNzfK9nCpv+AKhFDOVRoCPXLJUYf7jjRIGRjrNerpH /ndva+REIFCglbSm7pGeJxhtuuunQnmE4NY2rCJlAaK9wg4TpESj7vwv71ea1taf+P3U0J6 cteT3KBHvD16IeiQAnxc+AfA7L4eTVhc X-QQ-GoodBg: 2 X-BIZMAIL-ID: 10541469769943402972 Date: Wed, 3 Jan 2024 14:47:04 +0800 From: "juzhe.zhong@rivai.ai" To: wangfeng , gcc-patches Cc: kito.cheng , jeffreyalaw , wangfeng Subject: Re: [PATCH v7 2/2] RISC-V: Add crypto vector api-testing cases. References: <20240103052145.28042-1-wangfeng@eswincomputing.com> X-Priority: 3 X-GUID: C945521E-2171-4477-80F0-99FA70B2423B X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: Content-Type: multipart/alternative; boundary="----=_001_NextPart470035686613_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=1.5 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_SHORT,MIME_BASE64_TEXT,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE,UNWANTED_LANGUAGE_BODY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Level: * 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_NextPart470035686613_=---- Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: base64 TEdUTS4NCg0KDQoNCmp1emhlLnpob25nQHJpdmFpLmFpDQogDQpGcm9tOiBG ZW5nIFdhbmcNCkRhdGU6IDIwMjQtMDEtMDMgMTM6MjENClRvOiBnY2MtcGF0 Y2hlcw0KQ0M6IGtpdG8uY2hlbmc7IGplZmZyZXlhbGF3OyBqdXpoZS56aG9u ZzsgRmVuZyBXYW5nDQpTdWJqZWN0OiBbUEFUQ0ggdjcgMi8yXSBSSVNDLVY6 IEFkZCBjcnlwdG8gdmVjdG9yIGFwaS10ZXN0aW5nIGNhc2VzLg0KUGF0Y2gg djc6IEFkZCBuZXdsaW5lIGF0IHRoZSBlbmQgb2YgZmlsZS4NClBhdGNoIHY2 OiBNb3ZlIGludHJpbnNpYyB0ZXN0cyBpbnRvIHJ2di9iYXNlLg0KUGF0Y2gg djU6IFJlYmFzZQ0KUGF0Y2ggdjQ6IEFkZCBzb21lIFJWMzIgdnggY29uc3Ry YWludCB0ZXN0Y2FzZS4NClBhdGNoIHYzOiBSZWZpbmUgY3J5cHRvIHZlY3Rv ciBhcGktdGVzdGluZyBjYXNlcy4NClBhdGNoIHYyOiBVcGRhdGUgbWFyY2gg aW5mbyBhY2NvcmRpbmcgdG8gdGhlIGNoYW5nZSBvZiByaXNjdi1jb21tb24u Yw0KIA0KVGhpcyBwYXRjaCBhZGQgY3J5cHRvIHZlY3RvciBhcGktdGVzdGlu ZyBjYXNlcyBiYXNlZCBvbg0KaHR0cHM6Ly9naXRodWIuY29tL3Jpc2N2LW5v bi1pc2EvcnZ2LWludHJpbnNpYy1kb2MvYmxvYi9lb3BjL3ZlY3Rvci1jcnlw dG8vYXV0by1nZW5lcmF0ZWQvdmVjdG9yLWNyeXB0bw0KZ2NjL3Rlc3RzdWl0 ZS9DaGFuZ2VMb2c6DQogDQoqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv enZiYi1pbnRyaW5zaWMuYzogTmV3IHRlc3QuDQoqIGdjYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvenZiYl92YW5kbl92eF9jb25zdHJhaW50LmM6IE5ldyB0 ZXN0Lg0KKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2YmMtaW50cmlu c2ljLmM6IE5ldyB0ZXN0Lg0KKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3p2YmNfdnhfY29uc3RyYWludC0xLmM6IE5ldyB0ZXN0Lg0KKiBnY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3p2YmNfdnhfY29uc3RyYWludC0yLmM6IE5l dyB0ZXN0Lg0KKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2a2ctaW50 cmluc2ljLmM6IE5ldyB0ZXN0Lg0KKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3p2a25lZC1pbnRyaW5zaWMuYzogTmV3IHRlc3QuDQoqIGdjYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvenZrbmhhLWludHJpbnNpYy5jOiBOZXcgdGVz dC4NCiogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS96dmtuaGItaW50cmlu c2ljLmM6IE5ldyB0ZXN0Lg0KKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3p2a3NlZC1pbnRyaW5zaWMuYzogTmV3IHRlc3QuDQoqIGdjYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvenZrc2gtaW50cmluc2ljLmM6IE5ldyB0ZXN0Lg0K KiBnY2MudGFyZ2V0L3Jpc2N2L3p2a2IuYzogTmV3IHRlc3QuDQotLS0NCi4u Li9yaXNjdi9ydnYvYmFzZS96dmJiLWludHJpbnNpYy5jICAgICAgICAgICB8 IDE3OSArKysrKysrKysrKysrKysrKysNCi4uLi9yaXNjdi9ydnYvYmFzZS96 dmJiX3ZhbmRuX3Z4X2NvbnN0cmFpbnQuYyB8ICAxNSArKw0KLi4uL3Jpc2N2 L3J2di9iYXNlL3p2YmMtaW50cmluc2ljLmMgICAgICAgICAgIHwgIDYyICsr KysrKw0KLi4uL3Jpc2N2L3J2di9iYXNlL3p2YmNfdnhfY29uc3RyYWludC0x LmMgICAgIHwgIDE0ICsrDQouLi4vcmlzY3YvcnZ2L2Jhc2UvenZiY192eF9j b25zdHJhaW50LTIuYyAgICAgfCAgMTQgKysNCi4uLi9yaXNjdi9ydnYvYmFz ZS96dmtnLWludHJpbnNpYy5jICAgICAgICAgICB8ICAyNCArKysNCi4uLi9y aXNjdi9ydnYvYmFzZS96dmtuZWQtaW50cmluc2ljLmMgICAgICAgICB8IDEw NCArKysrKysrKysrDQouLi4vcmlzY3YvcnZ2L2Jhc2UvenZrbmhhLWludHJp bnNpYy5jICAgICAgICAgfCAgMzMgKysrKw0KLi4uL3Jpc2N2L3J2di9iYXNl L3p2a25oYi1pbnRyaW5zaWMuYyAgICAgICAgIHwgIDMzICsrKysNCi4uLi9y aXNjdi9ydnYvYmFzZS96dmtzZWQtaW50cmluc2ljLmMgICAgICAgICB8ICAz MyArKysrDQouLi4vcmlzY3YvcnZ2L2Jhc2UvenZrc2gtaW50cmluc2ljLmMg ICAgICAgICAgfCAgMjQgKysrDQpnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvenZrYi5jICAgICAgICAgfCAgMTMgKysNCjEyIGZpbGVzIGNoYW5n ZWQsIDU0OCBpbnNlcnRpb25zKCspDQpjcmVhdGUgbW9kZSAxMDA2NDQgZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2YmItaW50 cmluc2ljLmMNCmNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZiYl92YW5kbl92eF9jb25zdHJh aW50LmMNCmNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZiYy1pbnRyaW5zaWMuYw0KY3JlYXRl IG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS96dmJjX3Z4X2NvbnN0cmFpbnQtMS5jDQpjcmVhdGUgbW9kZSAx MDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3p2YmNfdnhfY29uc3RyYWludC0yLmMNCmNyZWF0ZSBtb2RlIDEwMDY0NCBn Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZrZy1p bnRyaW5zaWMuYw0KY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS96dmtuZWQtaW50cmluc2ljLmMN CmNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvenZrbmhhLWludHJpbnNpYy5jDQpjcmVhdGUgbW9k ZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3p2a25oYi1pbnRyaW5zaWMuYw0KY3JlYXRlIG1vZGUgMTAwNjQ0IGdj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS96dmtzZWQt aW50cmluc2ljLmMNCmNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZrc2gtaW50cmluc2ljLmMN CmNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvenZrYi5jDQogDQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2YmItaW50cmluc2ljLmMgYi9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZiYi1p bnRyaW5zaWMuYw0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAw MDAwMDAwLi5iN2UyNWJmZTgxOQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2YmItaW50 cmluc2ljLmMNCkBAIC0wLDAgKzEsMTc5IEBADQorLyogeyBkZy1kbyBjb21w aWxlIH0gKi8NCisvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2NfenZi Yl96dmU2NHggLW1hYmk9bHA2NGQgLVduby1wc2FiaSIgfSAqLw0KKyNpbmNs dWRlICJyaXNjdl92ZWN0b3IuaCINCisNCit2dWludDhtZjhfdCB0ZXN0X3Zh bmRuX3Z2X3U4bWY4KHZ1aW50OG1mOF90IHZzMiwgdnVpbnQ4bWY4X3QgdnMx LCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZhbmRuX3Z2X3U4 bWY4KHZzMiwgdnMxLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtMV90IHRlc3Rf dmFuZG5fdnhfdTMybTEodnVpbnQzMm0xX3QgdnMyLCB1aW50MzJfdCByczEs IHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmFuZG5fdnhfdTMy bTEodnMyLCByczEsIHZsKTsNCit9DQorDQordnVpbnQzMm0yX3QgdGVzdF92 YW5kbl92dl91MzJtMl9tKHZib29sMTZfdCBtYXNrLCB2dWludDMybTJfdCB2 czIsIHZ1aW50MzJtMl90IHZzMSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4g X19yaXNjdl92YW5kbl92dl91MzJtMl9tKG1hc2ssIHZzMiwgdnMxLCB2bCk7 DQorfQ0KKw0KK3Z1aW50MTZtZjJfdCB0ZXN0X3ZhbmRuX3Z4X3UxNm1mMl9t KHZib29sMzJfdCBtYXNrLCB2dWludDE2bWYyX3QgdnMyLCB1aW50MTZfdCBy czEsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmFuZG5fdnhf dTE2bWYyX20obWFzaywgdnMyLCByczEsIHZsKTsNCit9DQorDQordnVpbnQz Mm00X3QgdGVzdF92YW5kbl92dl91MzJtNF90dW11KHZib29sOF90IG1hc2ss IHZ1aW50MzJtNF90IG1hc2tlZG9mZiwgdnVpbnQzMm00X3QgdnMyLCB2dWlu dDMybTRfdCB2czEsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3Zf dmFuZG5fdnZfdTMybTRfdHVtdShtYXNrLCBtYXNrZWRvZmYsIHZzMiwgdnMx LCB2bCk7DQorfQ0KKw0KK3Z1aW50NjRtNF90IHRlc3RfdmFuZG5fdnhfdTY0 bTRfdHVtdSh2Ym9vbDE2X3QgbWFzaywgdnVpbnQ2NG00X3QgbWFza2Vkb2Zm LCB2dWludDY0bTRfdCB2czIsIHVpbnQ2NF90IHJzMSwgc2l6ZV90IHZsKSB7 DQorICByZXR1cm4gX19yaXNjdl92YW5kbl92eF91NjRtNF90dW11KG1hc2ss IG1hc2tlZG9mZiwgdnMyLCByczEsIHZsKTsNCit9DQorDQordnVpbnQ4bThf dCB0ZXN0X3ZicmV2X3ZfdThtOCh2dWludDhtOF90IHZzMiwgc2l6ZV90IHZs KSB7DQorICByZXR1cm4gX19yaXNjdl92YnJldl92X3U4bTgodnMyLCB2bCk7 DQorfQ0KKw0KK3Z1aW50MTZtMV90IHRlc3RfdmJyZXZfdl91MTZtMV9tKHZi b29sMTZfdCBtYXNrLCB2dWludDE2bTFfdCB2czIsIHNpemVfdCB2bCkgew0K KyAgcmV0dXJuIF9fcmlzY3ZfdmJyZXZfdl91MTZtMV9tKG1hc2ssIHZzMiwg dmwpOw0KK30NCisNCit2dWludDMybTRfdCB0ZXN0X3ZicmV2X3ZfdTMybTRf dHVtdSh2Ym9vbDhfdCBtYXNrLCB2dWludDMybTRfdCBtYXNrZWRvZmYsIHZ1 aW50MzJtNF90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNj dl92YnJldl92X3UzMm00X3R1bXUobWFzaywgbWFza2Vkb2ZmLCB2czIsIHZs KTsNCit9DQorDQordnVpbnQxNm1mNF90IHRlc3RfdmJyZXY4X3ZfdTE2bWY0 KHZ1aW50MTZtZjRfdCB2czIsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9f cmlzY3ZfdmJyZXY4X3ZfdTE2bWY0KHZzMiwgdmwpOw0KK30NCisNCit2dWlu dDMybTFfdCB0ZXN0X3ZicmV2OF92X3UzMm0xX20odmJvb2wzMl90IG1hc2ss IHZ1aW50MzJtMV90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19y aXNjdl92YnJldjhfdl91MzJtMV9tKG1hc2ssIHZzMiwgdmwpOw0KK30NCisN Cit2dWludDY0bTFfdCB0ZXN0X3ZicmV2OF92X3U2NG0xX3R1bXUodmJvb2w2 NF90IG1hc2ssIHZ1aW50NjRtMV90IG1hc2tlZG9mZiwgdnVpbnQ2NG0xX3Qg dnMyLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZicmV2OF92 X3U2NG0xX3R1bXUobWFzaywgbWFza2Vkb2ZmLCB2czIsIHZsKTsNCit9DQor DQordnVpbnQxNm00X3QgdGVzdF92cmV2OF92X3UxNm00KHZ1aW50MTZtNF90 IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92cmV2OF92 X3UxNm00KHZzMiwgdmwpOw0KK30NCisNCit2dWludDhtNF90IHRlc3RfdnJl djhfdl91OG00X20odmJvb2wyX3QgbWFzaywgdnVpbnQ4bTRfdCB2czIsIHNp emVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnJldjhfdl91OG00X20o bWFzaywgdnMyLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtMV90IHRlc3RfdnJl djhfdl91MzJtMV90dW11KHZib29sMzJfdCBtYXNrLCB2dWludDMybTFfdCBt YXNrZWRvZmYsIHZ1aW50MzJtMV90IHZzMiwgc2l6ZV90IHZsKSB7DQorICBy ZXR1cm4gX19yaXNjdl92cmV2OF92X3UzMm0xX3R1bXUobWFzaywgbWFza2Vk b2ZmLCB2czIsIHZsKTsNCit9DQorDQordnVpbnQ4bThfdCB0ZXN0X3Zyb2xf dnZfdThtOCh2dWludDhtOF90IHZzMiwgdnVpbnQ4bThfdCB2czEsIHNpemVf dCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnJvbF92dl91OG04KHZzMiwg dnMxLCB2bCk7DQorfQ0KKw0KK3Z1aW50MTZtNF90IHRlc3RfdnJvbF92eF91 MTZtNCh2dWludDE2bTRfdCB2czIsIHNpemVfdCByczEsIHNpemVfdCB2bCkg ew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnJvbF92eF91MTZtNCh2czIsIHJzMSwg dmwpOw0KK30NCisNCit2dWludDE2bWYyX3QgdGVzdF92cm9sX3Z2X3UxNm1m Ml9tKHZib29sMzJfdCBtYXNrLCB2dWludDE2bWYyX3QgdnMyLCB2dWludDE2 bWYyX3QgdnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3Zy b2xfdnZfdTE2bWYyX20obWFzaywgdnMyLCB2czEsIHZsKTsNCit9DQorDQor dnVpbnQ2NG0xX3QgdGVzdF92cm9sX3Z4X3U2NG0xX20odmJvb2w2NF90IG1h c2ssIHZ1aW50NjRtMV90IHZzMiwgc2l6ZV90IHJzMSwgc2l6ZV90IHZsKSB7 DQorICByZXR1cm4gX19yaXNjdl92cm9sX3Z4X3U2NG0xX20obWFzaywgdnMy LCByczEsIHZsKTsNCit9DQorDQordnVpbnQ4bTFfdCB0ZXN0X3Zyb2xfdnZf dThtMV90dW11KHZib29sOF90IG1hc2ssIHZ1aW50OG0xX3QgbWFza2Vkb2Zm LCB2dWludDhtMV90IHZzMiwgdnVpbnQ4bTFfdCB2czEsIHNpemVfdCB2bCkg ew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnJvbF92dl91OG0xX3R1bXUobWFzaywg bWFza2Vkb2ZmLCB2czIsIHZzMSwgdmwpOw0KK30NCisNCit2dWludDE2bTJf dCB0ZXN0X3Zyb2xfdnhfdTE2bTJfdHVtdSh2Ym9vbDhfdCBtYXNrLCB2dWlu dDE2bTJfdCBtYXNrZWRvZmYsIHZ1aW50MTZtMl90IHZzMiwgc2l6ZV90IHJz MSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92cm9sX3Z4X3Ux Nm0yX3R1bXUobWFzaywgbWFza2Vkb2ZmLCB2czIsIHJzMSwgdmwpOw0KK30N CisNCit2dWludDhtOF90IHRlc3RfdnJvcl92dl91OG04KHZ1aW50OG04X3Qg dnMyLCB2dWludDhtOF90IHZzMSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4g X19yaXNjdl92cm9yX3Z2X3U4bTgodnMyLCB2czEsIHZsKTsNCit9DQorDQor dnVpbnQzMm0yX3QgdGVzdF92cm9yX3Z4X3UzMm0yKHZ1aW50MzJtMl90IHZz Miwgc2l6ZV90IHJzMSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNj dl92cm9yX3Z4X3UzMm0yKHZzMiwgcnMxLCB2bCk7DQorfQ0KKw0KK3Z1aW50 MTZtZjJfdCB0ZXN0X3Zyb3JfdnZfdTE2bWYyX20odmJvb2wzMl90IG1hc2ss IHZ1aW50MTZtZjJfdCB2czIsIHZ1aW50MTZtZjJfdCB2czEsIHNpemVfdCB2 bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnJvcl92dl91MTZtZjJfbShtYXNr LCB2czIsIHZzMSwgdmwpOw0KK30NCisNCit2dWludDE2bTFfdCB0ZXN0X3Zy b3JfdnhfdTE2bTFfbSh2Ym9vbDE2X3QgbWFzaywgdnVpbnQxNm0xX3QgdnMy LCBzaXplX3QgcnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2 X3Zyb3JfdnhfdTE2bTFfbShtYXNrLCB2czIsIHJzMSwgdmwpOw0KK30NCisN Cit2dWludDE2bWYyX3QgdGVzdF92cm9yX3Z2X3UxNm1mMl90dW11KHZib29s MzJfdCBtYXNrLCB2dWludDE2bWYyX3QgbWFza2Vkb2ZmLCB2dWludDE2bWYy X3QgdnMyLCB2dWludDE2bWYyX3QgdnMxLCBzaXplX3QgdmwpIHsNCisgIHJl dHVybiBfX3Jpc2N2X3Zyb3JfdnZfdTE2bWYyX3R1bXUobWFzaywgbWFza2Vk b2ZmLCB2czIsIHZzMSwgdmwpOw0KK30NCisNCit2dWludDY0bTFfdCB0ZXN0 X3Zyb3JfdnhfdTY0bTFfdHVtdSh2Ym9vbDY0X3QgbWFzaywgdnVpbnQ2NG0x X3QgbWFza2Vkb2ZmLCB2dWludDY0bTFfdCB2czIsIHNpemVfdCByczEsIHNp emVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnJvcl92eF91NjRtMV90 dW11KG1hc2ssIG1hc2tlZG9mZiwgdnMyLCByczEsIHZsKTsNCit9DQorDQor dnVpbnQ4bTJfdCB0ZXN0X3ZjbHpfdl91OG0yKHZ1aW50OG0yX3QgdnMyLCBz aXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZjbHpfdl91OG0yKHZz MiwgdmwpOw0KK30NCisNCit2dWludDY0bTJfdCB0ZXN0X3ZjbHpfdl91NjRt Ml9tKHZib29sMzJfdCBtYXNrLCB2dWludDY0bTJfdCB2czIsIHNpemVfdCB2 bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmNsel92X3U2NG0yX20obWFzaywg dnMyLCB2bCk7DQorfQ0KKw0KK3Z1aW50MTZtZjRfdCB0ZXN0X3ZjdHpfdl91 MTZtZjQodnVpbnQxNm1mNF90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1 cm4gX19yaXNjdl92Y3R6X3ZfdTE2bWY0KHZzMiwgdmwpOw0KK30NCisNCit2 dWludDMybThfdCB0ZXN0X3ZjdHpfdl91MzJtOF9tKHZib29sNF90IG1hc2ss IHZ1aW50MzJtOF90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19y aXNjdl92Y3R6X3ZfdTMybThfbShtYXNrLCB2czIsIHZsKTsNCit9DQorDQor dnVpbnQxNm1mNF90IHRlc3RfdndzbGxfdnhfdTE2bWY0KHZ1aW50OG1mOF90 IHZzMiwgc2l6ZV90IHJzMSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19y aXNjdl92d3NsbF92eF91MTZtZjQodnMyLCByczEsIHZsKTsNCit9DQorDQor dnVpbnQxNm0xX3QgdGVzdF92d3NsbF92dl91MTZtMSh2dWludDhtZjJfdCB2 czIsIHZ1aW50OG1mMl90IHZzMSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4g X19yaXNjdl92d3NsbF92dl91MTZtMSh2czIsIHZzMSwgdmwpOw0KK30NCisN Cit2dWludDMybTJfdCB0ZXN0X3Z3c2xsX3Z2X3UzMm0yX20odmJvb2wxNl90 IG1hc2ssIHZ1aW50MTZtMV90IHZzMiwgdnVpbnQxNm0xX3QgdnMxLCBzaXpl X3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3Z3c2xsX3Z2X3UzMm0yX20o bWFzaywgdnMyLCB2czEsIHZsKTsNCit9DQorDQordnVpbnQzMm0yX3QgdGVz dF92d3NsbF92eF91MzJtMl9tKHZib29sMTZfdCBtYXNrLCB2dWludDE2bTFf dCB2czIsIHNpemVfdCByczEsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9f cmlzY3ZfdndzbGxfdnhfdTMybTJfbShtYXNrLCB2czIsIHJzMSwgdmwpOw0K K30NCisNCit2dWludDE2bWY0X3QgdGVzdF92d3NsbF92dl91MTZtZjRfdHVt dSh2Ym9vbDY0X3QgbWFzaywgdnVpbnQxNm1mNF90IG1hc2tlZG9mZiwgdnVp bnQ4bWY4X3QgdnMyLCB2dWludDhtZjhfdCB2czEsIHNpemVfdCB2bCkgew0K KyAgcmV0dXJuIF9fcmlzY3ZfdndzbGxfdnZfdTE2bWY0X3R1bXUobWFzaywg bWFza2Vkb2ZmLCB2czIsIHZzMSwgdmwpOw0KK30NCisNCit2dWludDE2bWY0 X3QgdGVzdF92d3NsbF92eF91MTZtZjRfdHVtdSh2Ym9vbDY0X3QgbWFzaywg dnVpbnQxNm1mNF90IG1hc2tlZG9mZiwgdnVpbnQ4bWY4X3QgdnMyLCBzaXpl X3QgcnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3Z3c2xs X3Z4X3UxNm1mNF90dW11KG1hc2ssIG1hc2tlZG9mZiwgdnMyLCByczEsIHZs KTsNCit9DQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz IHt2c2V0dmxpXHMqemVybyxccypbYS14MC05XSssXHMqW2EteDAtOV0rLG1b YS14MC05XSssXHMqdGEsXHMqbWF9IDI2IH0gfSAqLw0KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzKnplcm8sXHMq W2EteDAtOV0rLFxzKlthLXgwLTldKyxtW2EteDAtOV0rLFxzKnR1LFxzKm11 fSAxMSB9IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIt dGltZXMge3ZhbmRuXC52dlxzK3ZbMC05XSssXHMqdlswLTldKyxccyp2WzAt OV19IDMgfSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzIHt2YW5kblwudnZccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqdlsw LTldKyxccyp2MC50fSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dmFuZG5cLnZ4XHMrdlswLTldKyxccyp2WzAt OV0rLFxzKmFbMC05XX0gMyB9IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXItdGltZXMge3ZhbmRuXC52eFxzK3ZbMC05XSssXHMqdlsw LTldKyxccyphWzAtOV0rLFxzKnYwLnR9IDIgfSB9ICovDQorLyogeyBkZy1m aW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2YnJldlwudlxzK3ZbMC05 XSssXHMqdlswLTldfSAzIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dmJyZXZcLnZccyt2WzAtOV0rLFxzKnZbMC05 XSssXHMqdjAudH0gMiB9IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1h c3NlbWJsZXItdGltZXMge3ZicmV2OFwudlxzK3ZbMC05XSssXHMqdlswLTld fSAzIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10 aW1lcyB7dmJyZXY4XC52XHMrdlswLTldKyxccyp2WzAtOV0rLFxzKnYwLnR9 IDIgfSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2cmV2OFwudlxzK3ZbMC05XSssXHMqdlswLTldfSAzfSB9ICovDQor LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2cmV2OFwu dlxzK3ZbMC05XSssXHMqdlswLTldKyxccyp2MC50fSAyIH0gfSAqLw0KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnJvbFwudnZc cyt2WzAtOV0rLFxzKnZbMC05XSssXHMqdlswLTldfSAzIH0gfSAqLw0KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnJvbFwudnZc cyt2WzAtOV0rLFxzKnZbMC05XSssXHMqdlswLTldKyxccyp2MC50fSAyIH0g fSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dnJvbFwudnhccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqYVswLTldfSAzIH0g fSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dnJvbFwudnhccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqYVswLTldKyxccyp2 MC50fSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dnJvclwudnZccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqdlsw LTldfSAzIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dnJvclwudnZccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqdlsw LTldKyxccyp2MC50fSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dnJvclwudnhccyt2WzAtOV0rLFxzKnZbMC05 XSssXHMqYVswLTldfSAzIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dnJvclwudnhccyt2WzAtOV0rLFxzKnZbMC05 XSssXHMqYVswLTldKyxccyp2MC50fSAyIH0gfSAqLw0KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmNselwudlxzK3ZbMC05XSss XHMqdlswLTldfSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci10aW1lcyB7dmNselwudlxzK3ZbMC05XSssXHMqdlswLTldKyxc cyp2MC50fSAxIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci10aW1lcyB7dmN0elwudlxzK3ZbMC05XSssXHMqdlswLTldfSAyIH0g fSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dmN0elwudlxzK3ZbMC05XSssXHMqdlswLTldKyxccyp2MC50fSAxIH0gfSAq Lw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dndz bGxcLnZ2XHMrdlswLTldKyxccyp2WzAtOV0rLFxzKnZbMC05XX0gMyB9IH0g Ki8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Z3 c2xsXC52dlxzK3ZbMC05XSssXHMqdlswLTldKyxccyp2WzAtOV0rLFxzKnYw LnR9IDIgfSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzIHt2d3NsbFwudnhccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqYVsw LTldfSAzIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dndzbGxcLnZ4XHMrdlswLTldKyxccyp2WzAtOV0rLFxzKmFb MC05XSssXHMqdjAudH0gMiB9IH0gKi8NCmRpZmYgLS1naXQgYS9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZiYl92YW5kbl92 eF9jb25zdHJhaW50LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvenZiYl92YW5kbl92eF9jb25zdHJhaW50LmMNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAwMC4uYjNlODc5ZTY5 OTUNCi0tLSAvZGV2L251bGwNCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS96dmJiX3ZhbmRuX3Z4X2NvbnN0cmFpbnQu Yw0KQEAgLTAsMCArMSwxNSBAQA0KKy8qIHsgZGctZG8gY29tcGlsZSB9ICov DQorLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnYzMmdjX3p2YmJfenZlNjR4 IC1tYWJpPWlscDMyIC1PMyAtV25vLXBzYWJpIiB9ICovDQorI2luY2x1ZGUg InJpc2N2X3ZlY3Rvci5oIg0KKw0KK3Z1aW50NjRtMV90IHRlc3RfdmFuZG5f dnhfdTY0bTEodnVpbnQ2NG0xX3QgdnMyLCB1aW50NjRfdCByczEsIHNpemVf dCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmFuZG5fdnhfdTY0bTEodnMy LCByczEsIHZsKTsNCit9DQorDQordnVpbnQ2NG0xX3QgdGVzdF92YW5kbl92 eF91NjRtMV9leHRlbmQodnVpbnQ2NG0xX3QgdnMyLCBzaXplX3QgdmwpIHsN CisgIHVpbnQzMl90IHJzMSA9IDB4MTIzNDU2Nzg7DQorICByZXR1cm4gX19y aXNjdl92YW5kbl92eF91NjRtMSh2czIsIHJzMSwgdmwpOw0KK30NCisNCisv KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZhbmRuXC52 dlxzK3ZbMC05XSssXHMqdlswLTldKyxccyp2WzAtOV19IDEgfSB9ICovDQor LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2YW5kblwu dnhccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqYVswLTldfSAxIH0gfSAqLw0K ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS96dmJjLWludHJpbnNpYy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2YmMtaW50cmluc2ljLmMNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAwMC4uYWUyYTViNjUy ZDUNCi0tLSAvZGV2L251bGwNCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS96dmJjLWludHJpbnNpYy5jDQpAQCAtMCww ICsxLDYyIEBADQorLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCisvKiB7IGRn LW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2NfenZiYyAtbWFiaT1scDY0ZCAtTzIg LVduby1wc2FiaSIgfSAqLw0KKw0KKyNpbmNsdWRlICJyaXNjdl92ZWN0b3Iu aCINCisNCit2dWludDY0bTFfdCB0ZXN0X3ZjbG11bF92dl91NjRtMSh2dWlu dDY0bTFfdCB2czIsIHZ1aW50NjRtMV90IHZzMSwgc2l6ZV90IHZsKSB7DQor ICByZXR1cm4gX19yaXNjdl92Y2xtdWxfdnZfdTY0bTEodnMyLCB2czEsIHZs KTsNCit9DQorDQordnVpbnQ2NG0xX3QgdGVzdF92Y2xtdWxfdnhfdTY0bTEo dnVpbnQ2NG0xX3QgdnMyLCB1aW50NjRfdCByczEsIHNpemVfdCB2bCkgew0K KyAgcmV0dXJuIF9fcmlzY3ZfdmNsbXVsX3Z4X3U2NG0xKHZzMiwgcnMxLCB2 bCk7DQorfQ0KKw0KK3Z1aW50NjRtMl90IHRlc3RfdmNsbXVsX3Z2X3U2NG0y X20odmJvb2wzMl90IG1hc2ssIHZ1aW50NjRtMl90IHZzMiwgdnVpbnQ2NG0y X3QgdnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZjbG11 bF92dl91NjRtMl9tKG1hc2ssIHZzMiwgdnMxLCB2bCk7DQorfQ0KKw0KK3Z1 aW50NjRtMl90IHRlc3RfdmNsbXVsX3Z4X3U2NG0yX20odmJvb2wzMl90IG1h c2ssIHZ1aW50NjRtMl90IHZzMiwgdWludDY0X3QgcnMxLCBzaXplX3Qgdmwp IHsNCisgIHJldHVybiBfX3Jpc2N2X3ZjbG11bF92eF91NjRtMl9tKG1hc2ss IHZzMiwgcnMxLCB2bCk7DQorfQ0KKw0KK3Z1aW50NjRtNF90IHRlc3RfdmNs bXVsX3Z2X3U2NG00X3R1bXUodmJvb2wxNl90IG1hc2ssIHZ1aW50NjRtNF90 IG1hc2tlZG9mZiwgdnVpbnQ2NG00X3QgdnMyLCB2dWludDY0bTRfdCB2czEs IHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmNsbXVsX3Z2X3U2 NG00X3R1bXUobWFzaywgbWFza2Vkb2ZmLCB2czIsIHZzMSwgdmwpOw0KK30N CisNCit2dWludDY0bTRfdCB0ZXN0X3ZjbG11bF92eF91NjRtNF90dW11KHZi b29sMTZfdCBtYXNrLCB2dWludDY0bTRfdCBtYXNrZWRvZmYsIHZ1aW50NjRt NF90IHZzMiwgdWludDY0X3QgcnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVy biBfX3Jpc2N2X3ZjbG11bF92eF91NjRtNF90dW11KG1hc2ssIG1hc2tlZG9m ZiwgdnMyLCByczEsIHZsKTsNCit9DQorDQordnVpbnQ2NG0yX3QgdGVzdF92 Y2xtdWxoX3Z2X3U2NG0yKHZ1aW50NjRtMl90IHZzMiwgdnVpbnQ2NG0yX3Qg dnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZjbG11bGhf dnZfdTY0bTIodnMyLCB2czEsIHZsKTsNCit9DQorDQordnVpbnQ2NG0yX3Qg dGVzdF92Y2xtdWxoX3Z4X3U2NG0yKHZ1aW50NjRtMl90IHZzMiwgdWludDY0 X3QgcnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZjbG11 bGhfdnhfdTY0bTIodnMyLCByczEsIHZsKTsNCit9DQorDQordnVpbnQ2NG0x X3QgdGVzdF92Y2xtdWxoX3Z4X3U2NG0xX20odmJvb2w2NF90IG1hc2ssIHZ1 aW50NjRtMV90IHZzMiwgdWludDY0X3QgcnMxLCBzaXplX3QgdmwpIHsNCisg IHJldHVybiBfX3Jpc2N2X3ZjbG11bGhfdnhfdTY0bTFfbShtYXNrLCB2czIs IHJzMSwgdmwpOw0KK30NCisNCit2dWludDY0bTJfdCB0ZXN0X3ZjbG11bGhf dnZfdTY0bTJfbSh2Ym9vbDMyX3QgbWFzaywgdnVpbnQ2NG0yX3QgdnMyLCB2 dWludDY0bTJfdCB2czEsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlz Y3ZfdmNsbXVsaF92dl91NjRtMl9tKG1hc2ssIHZzMiwgdnMxLCB2bCk7DQor fQ0KKw0KK3Z1aW50NjRtOF90IHRlc3RfdmNsbXVsaF92dl91NjRtOF90dW11 KHZib29sOF90IG1hc2ssIHZ1aW50NjRtOF90IG1hc2tlZG9mZiwgdnVpbnQ2 NG04X3QgdnMyLCB2dWludDY0bThfdCB2czEsIHNpemVfdCB2bCkgew0KKyAg cmV0dXJuIF9fcmlzY3ZfdmNsbXVsaF92dl91NjRtOF90dW11KG1hc2ssIG1h c2tlZG9mZiwgdnMyLCB2czEsIHZsKTsNCit9DQorDQordnVpbnQ2NG04X3Qg dGVzdF92Y2xtdWxoX3Z4X3U2NG04X3R1bXUodmJvb2w4X3QgbWFzaywgdnVp bnQ2NG04X3QgbWFza2Vkb2ZmLCB2dWludDY0bThfdCB2czIsIHVpbnQ2NF90 IHJzMSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92Y2xtdWxo X3Z4X3U2NG04X3R1bXUobWFzaywgbWFza2Vkb2ZmLCB2czIsIHJzMSwgdmwp Ow0KK30NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e3ZzZXR2bGlccyp6ZXJvLFxzKlthLXgwLTldKyxccypbYS14MC05XSssbVth LXgwLTldKyxccyp0YSxccyptYX0gOCB9IH0gKi8NCisvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccyp6ZXJvLFxzKlth LXgwLTldKyxccypbYS14MC05XSssbVthLXgwLTldKyxccyp0dSxccyptdX0g NCB9IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGlt ZXMge3ZjbG11bFwudnZccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqdlswLTld fSAzIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10 aW1lcyB7dmNsbXVsXC52dlxzK3ZbMC05XSssXHMqdlswLTldKyxccyp2WzAt OV0rLFxzKnYwLnR9IDIgfSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4t YXNzZW1ibGVyLXRpbWVzIHt2Y2xtdWxcLnZ4XHMrdlswLTldKyxccyp2WzAt OV0rLFxzKmFbMC05XX0gMyB9IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXItdGltZXMge3ZjbG11bFwudnhccyt2WzAtOV0rLFxzKnZb MC05XSssXHMqYVswLTldKyxccyp2MC50fSAyIH0gfSAqLw0KKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmNsbXVsaFwudnZccyt2 WzAtOV0rLFxzKnZbMC05XSssXHMqdlswLTldfSAzIH0gfSAqLw0KKy8qIHsg ZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmNsbXVsaFwudnZc cyt2WzAtOV0rLFxzKnZbMC05XSssXHMqdlswLTldKyxccyp2MC50fSAyIH0g fSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dmNsbXVsaFwudnhccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqYVswLTldfSAz IH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1l cyB7dmNsbXVsaFwudnhccyt2WzAtOV0rLFxzKnZbMC05XSssXHMqYVswLTld Kyxccyp2MC50fSAyIH0gfSAqLw0KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS96dmJjX3Z4X2NvbnN0cmFp bnQtMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3p2YmNfdnhfY29uc3RyYWludC0xLmMNCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwMDAwMC4uOGMxNzE2MzczZTgNCi0tLSAvZGV2 L251bGwNCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS96dmJjX3Z4X2NvbnN0cmFpbnQtMS5jDQpAQCAtMCwwICsxLDE0 IEBADQorLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCisvKiB7IGRnLW9wdGlv bnMgIi1tYXJjaD1ydjMyZ2NfenZiYyAtbWFiaT1pbHAzMiAtTzMgLVduby1w c2FiaSIgfSAqLw0KKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCisNCit2 dWludDY0bTFfdCB0ZXN0X3ZjbG11bF92eF91NjRtMSh2dWludDY0bTFfdCB2 czIsIHVpbnQ2NF90IHJzMSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19y aXNjdl92Y2xtdWxfdnhfdTY0bTEodnMyLCByczEsIHZsKTsNCit9DQorDQor dnVpbnQ2NG0xX3QgdGVzdF92Y2xtdWxoX3Z4X3U2NG0xKHZ1aW50NjRtMV90 IHZzMiwgdWludDY0X3QgcnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBf X3Jpc2N2X3ZjbG11bGhfdnhfdTY0bTEodnMyLCByczEsIHZsKTsNCit9DQor DQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2Y2xt dWxcLnZ2XHMrdlswLTldKyxccyp2WzAtOV0rLFxzKnZbMC05XX0gMSB9IH0g Ki8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Zj bG11bGhcLnZ2XHMrdlswLTldKyxccyp2WzAtOV0rLFxzKnZbMC05XX0gMSB9 IH0gKi8NCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvenZiY192eF9jb25zdHJhaW50LTIuYyBiL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS96dmJjX3Z4X2Nv bnN0cmFpbnQtMi5jDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAw MDAwMDAwMDAuLjllZTcwZDdlYjcyDQotLS0gL2Rldi9udWxsDQorKysgYi9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZiY192 eF9jb25zdHJhaW50LTIuYw0KQEAgLTAsMCArMSwxNCBAQA0KKy8qIHsgZGct ZG8gY29tcGlsZSB9ICovDQorLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2 NGdjX3p2YmMgLW1hYmk9bHA2NGQgLU8zIC1Xbm8tcHNhYmkiIH0gKi8NCisj aW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQorDQordnVpbnQ2NG0xX3QgdGVz dF92Y2xtdWxfdnhfdTY0bTFfZXh0ZW5kKHZ1aW50NjRtMV90IHZzMiwgdWlu dDMyX3QgcnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3Zj bG11bF92eF91NjRtMSh2czIsIHJzMSwgdmwpOw0KK30NCisNCit2dWludDY0 bTFfdCB0ZXN0X3ZjbG11bGhfdnhfdTY0bTFfZXh0ZW5kKHZ1aW50NjRtMV90 IHZzMiwgdWludDMyX3QgcnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBf X3Jpc2N2X3ZjbG11bGhfdnhfdTY0bTEodnMyLCByczEsIHZsKTsNCit9DQor DQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2Y2xt dWxcLnZ4XHMrdlswLTldKyxccyp2WzAtOV0rLFxzKmFbMC05XX0gMSB9IH0g Ki8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Zj bG11bGhcLnZ4XHMrdlswLTldKyxccyp2WzAtOV0rLFxzKmFbMC05XX0gMSB9 IH0gKi8NCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvenZrZy1pbnRyaW5zaWMuYyBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS96dmtnLWludHJpbnNpYy5j DQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwMDAuLmZh NjgzMTBiYjFjDQotLS0gL2Rldi9udWxsDQorKysgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZrZy1pbnRyaW5zaWMuYw0K QEAgLTAsMCArMSwyNCBAQA0KKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQor LyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjX3p2a2dfenZlNjR4IC1t YWJpPWxwNjRkIC1PMiAtV25vLXBzYWJpIiB9ICovDQorDQorI2luY2x1ZGUg InJpc2N2X3ZlY3Rvci5oIg0KKw0KK3Z1aW50MzJtZjJfdCB0ZXN0X3ZnbXVs X3Z2X3UzMm1mMih2dWludDMybWYyX3QgdmQsIHZ1aW50MzJtZjJfdCB2czIs IHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmdtdWxfdnZfdTMy bWYyKHZkLCB2czIsIHZsKTsNCit9DQorDQordnVpbnQzMm0xX3QgdGVzdF92 Z211bF92dl91MzJtMV90dSh2dWludDMybTFfdCB2ZCwgdnVpbnQzMm0xX3Qg dnMyLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZnbXVsX3Z2 X3UzMm0xX3R1KHZkLCB2czIsIHZsKTsNCit9DQorDQordnVpbnQzMm0yX3Qg dGVzdF92Z2hzaF92dl91MzJtMih2dWludDMybTJfdCB2ZCwgdnVpbnQzMm0y X3QgdnMyLCB2dWludDMybTJfdCB2czEsIHNpemVfdCB2bCkgew0KKyAgcmV0 dXJuIF9fcmlzY3Zfdmdoc2hfdnZfdTMybTIodmQsIHZzMiwgdnMxLCB2bCk7 DQorfQ0KKw0KK3Z1aW50MzJtNF90IHRlc3Rfdmdoc2hfdnZfdTMybTRfdHUo dnVpbnQzMm00X3QgdmQsIHZ1aW50MzJtNF90IHZzMiwgdnVpbnQzMm00X3Qg dnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZnaHNoX3Z2 X3UzMm00X3R1KHZkLCB2czIsIHZzMSwgdmwpOw0KK30NCisvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccyp6ZXJvLFxz KlthLXgwLTldKyxccypbYS14MC05XSssbVthLXgwLTldKyxccyp0YSxccypt YX0gMiB9IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIt dGltZXMge3ZzZXR2bGlccyp6ZXJvLFxzKlthLXgwLTldKyxccypbYS14MC05 XSssbVthLXgwLTldKyxccyp0dSxccyptYX0gMiB9IH0gKi8NCisvKiB7IGRn LWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZnbXVsXC52dlxzK3Zb MC05XSssXHMqdlswLTldfSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBz Y2FuLWFzc2VtYmxlci10aW1lcyB7dmdoc2hcLnZ2XHMrdlswLTldKyxccyp2 WzAtOV19IDIgfSB9ICovDQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2a25lZC1pbnRyaW5zaWMuYyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS96dmtu ZWQtaW50cmluc2ljLmMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAw MDAwMDAwMDAwMC4uNDE0MTU3Mzc5ZGENCi0tLSAvZGV2L251bGwNCisrKyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS96dmtu ZWQtaW50cmluc2ljLmMNCkBAIC0wLDAgKzEsMTA0IEBADQorLyogeyBkZy1k byBjb21waWxlIH0gKi8NCisvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0 Z2NfenZrbmVkX3p2ZTY0eCAtbWFiaT1scDY0ZCAtTzIgLVduby1wc2FiaSIg fSAqLw0KKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCisNCit2dWludDMy bWYyX3QgdGVzdF92YWVzZGZfdnZfdTMybWYyKHZ1aW50MzJtZjJfdCB2ZCwg dnVpbnQzMm1mMl90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19y aXNjdl92YWVzZGZfdnZfdTMybWYyKHZkLCB2czIsIHZsKTsNCit9DQorDQor dnVpbnQzMm1mMl90IHRlc3RfdmFlc2RmX3ZzX3UzMm1mMl91MzJtZjIodnVp bnQzMm1mMl90IHZkLCB2dWludDMybWYyX3QgdnMyLCBzaXplX3QgdmwpIHsN CisgIHJldHVybiBfX3Jpc2N2X3ZhZXNkZl92c191MzJtZjJfdTMybWYyKHZk LCB2czIsIHZsKTsNCit9DQorDQordnVpbnQzMm0yX3QgdGVzdF92YWVzZGZf dnZfdTMybTJfdHUodnVpbnQzMm0yX3QgdmQsIHZ1aW50MzJtMl90IHZzMiwg c2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92YWVzZGZfdnZfdTMy bTJfdHUodmQsIHZzMiwgdmwpOw0KK30NCisNCit2dWludDMybTJfdCB0ZXN0 X3ZhZXNkZl92c191MzJtMl91MzJtMl90dSh2dWludDMybTJfdCB2ZCwgdnVp bnQzMm0yX3QgdnMyLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2 X3ZhZXNkZl92c191MzJtMl91MzJtMl90dSh2ZCwgdnMyLCB2bCk7DQorfQ0K Kw0KK3Z1aW50MzJtMV90IHRlc3RfdmFlc2RtX3Z2X3UzMm0xKHZ1aW50MzJt MV90IHZkLCB2dWludDMybTFfdCB2czIsIHNpemVfdCB2bCkgew0KKyAgcmV0 dXJuIF9fcmlzY3ZfdmFlc2RtX3Z2X3UzMm0xKHZkLCB2czIsIHZsKTsNCit9 DQorDQordnVpbnQzMm00X3QgdGVzdF92YWVzZG1fdnNfdTMybTFfdTMybTQo dnVpbnQzMm00X3QgdmQsIHZ1aW50MzJtMV90IHZzMiwgc2l6ZV90IHZsKSB7 DQorICByZXR1cm4gX19yaXNjdl92YWVzZG1fdnNfdTMybTFfdTMybTQodmQs IHZzMiwgdmwpOw0KK30NCisNCit2dWludDMybTFfdCB0ZXN0X3ZhZXNkbV92 dl91MzJtMV90dSh2dWludDMybTFfdCB2ZCwgdnVpbnQzMm0xX3QgdnMyLCBz aXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZhZXNkbV92dl91MzJt MV90dSh2ZCwgdnMyLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtMl90IHRlc3Rf dmFlc2RtX3ZzX3UzMm0xX3UzMm0yX3R1KHZ1aW50MzJtMl90IHZkLCB2dWlu dDMybTFfdCB2czIsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3Zf dmFlc2RtX3ZzX3UzMm0xX3UzMm0yX3R1KHZkLCB2czIsIHZsKTsNCit9DQor DQordnVpbnQzMm0yX3QgdGVzdF92YWVzZWZfdnZfdTMybTIodnVpbnQzMm0y X3QgdmQsIHZ1aW50MzJtMl90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1 cm4gX19yaXNjdl92YWVzZWZfdnZfdTMybTIodmQsIHZzMiwgdmwpOw0KK30N CisNCit2dWludDMybTJfdCB0ZXN0X3ZhZXNlZl92c191MzJtMl91MzJtMih2 dWludDMybTJfdCB2ZCwgdnVpbnQzMm0yX3QgdnMyLCBzaXplX3QgdmwpIHsN CisgIHJldHVybiBfX3Jpc2N2X3ZhZXNlZl92c191MzJtMl91MzJtMih2ZCwg dnMyLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtNF90IHRlc3RfdmFlc2VmX3Z2 X3UzMm00X3R1KHZ1aW50MzJtNF90IHZkLCB2dWludDMybTRfdCB2czIsIHNp emVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmFlc2VmX3Z2X3UzMm00 X3R1KHZkLCB2czIsIHZsKTsNCit9DQorDQordnVpbnQzMm04X3QgdGVzdF92 YWVzZWZfdnNfdTMybTRfdTMybThfdHUodnVpbnQzMm04X3QgdmQsIHZ1aW50 MzJtNF90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92 YWVzZWZfdnNfdTMybTRfdTMybThfdHUodmQsIHZzMiwgdmwpOw0KK30NCisN Cit2dWludDMybThfdCB0ZXN0X3ZhZXNlbV92dl91MzJtOCh2dWludDMybThf dCB2ZCwgdnVpbnQzMm04X3QgdnMyLCBzaXplX3QgdmwpIHsNCisgIHJldHVy biBfX3Jpc2N2X3ZhZXNlbV92dl91MzJtOCh2ZCwgdnMyLCB2bCk7DQorfQ0K Kw0KK3Z1aW50MzJtOF90IHRlc3RfdmFlc2VtX3ZzX3UzMm04X3UzMm04KHZ1 aW50MzJtOF90IHZkLCB2dWludDMybThfdCB2czIsIHNpemVfdCB2bCkgew0K KyAgcmV0dXJuIF9fcmlzY3ZfdmFlc2VtX3ZzX3UzMm04X3UzMm04KHZkLCB2 czIsIHZsKTsNCit9DQorDQordnVpbnQzMm1mMl90IHRlc3RfdmFlc2VtX3Z2 X3UzMm1mMl90dSh2dWludDMybWYyX3QgdmQsIHZ1aW50MzJtZjJfdCB2czIs IHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmFlc2VtX3Z2X3Uz Mm1mMl90dSh2ZCwgdnMyLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtOF90IHRl c3RfdmFlc2VtX3ZzX3UzMm1mMl91MzJtOF90dSh2dWludDMybThfdCB2ZCwg dnVpbnQzMm1mMl90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19y aXNjdl92YWVzZW1fdnNfdTMybWYyX3UzMm04X3R1KHZkLCB2czIsIHZsKTsN Cit9DQorDQordnVpbnQzMm1mMl90IHRlc3RfdmFlc2tmMV92aV91MzJtZjIo dnVpbnQzMm1mMl90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19y aXNjdl92YWVza2YxX3ZpX3UzMm1mMih2czIsIDAsIHZsKTsNCit9DQorDQor dnVpbnQzMm0xX3QgdGVzdF92YWVza2YxX3ZpX3UzMm0xX3R1KHZ1aW50MzJt MV90IG1hc2tlZG9mZiwgdnVpbnQzMm0xX3QgdnMyLCBzaXplX3QgdmwpIHsN CisgIHJldHVybiBfX3Jpc2N2X3ZhZXNrZjFfdmlfdTMybTFfdHUobWFza2Vk b2ZmLCB2czIsIDAsIHZsKTsNCit9DQorDQordnVpbnQzMm0yX3QgdGVzdF92 YWVza2YyX3ZpX3UzMm0yKHZ1aW50MzJtMl90IHZkLCB2dWludDMybTJfdCB2 czIsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmFlc2tmMl92 aV91MzJtMih2ZCwgdnMyLCAwLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtNF90 IHRlc3RfdmFlc2tmMl92aV91MzJtNF90dSh2dWludDMybTRfdCB2ZCwgdnVp bnQzMm00X3QgdnMyLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2 X3ZhZXNrZjJfdmlfdTMybTRfdHUodmQsIHZzMiwgMCwgdmwpOw0KK30NCisN Cit2dWludDMybTRfdCB0ZXN0X3ZhZXN6X3ZzX3UzMm0xX3UzMm00KHZ1aW50 MzJtNF90IHZkLCB2dWludDMybTFfdCB2czIsIHNpemVfdCB2bCkgew0KKyAg cmV0dXJuIF9fcmlzY3ZfdmFlc3pfdnNfdTMybTFfdTMybTQodmQsIHZzMiwg dmwpOw0KK30NCisNCit2dWludDMybThfdCB0ZXN0X3ZhZXN6X3ZzX3UzMm0x X3UzMm04X3R1KHZ1aW50MzJtOF90IHZkLCB2dWludDMybTFfdCB2czIsIHNp emVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmFlc3pfdnNfdTMybTFf dTMybThfdHUodmQsIHZzMiwgdmwpOw0KK30NCisvKiB7IGRnLWZpbmFsIHsg c2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccyp6ZXJvLFxzKlthLXgw LTldKyxccypbYS14MC05XSssbVthLXgwLTldKyxccyp0YSxccyptYX0gMTEg fSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz IHt2c2V0dmxpXHMqemVybyxccypbYS14MC05XSssXHMqW2EteDAtOV0rLG1b YS14MC05XSssXHMqdHUsXHMqbWF9IDExIH0gfSAqLw0KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmFlc2RmXC52dlxzK3ZbMC05 XSssXHMqdlswLTldfSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dmFlc2RmXC52c1xzK3ZbMC05XSssXHMqdlsw LTldfSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dmFlc2RtXC52dlxzK3ZbMC05XSssXHMqdlswLTldfSAyIH0g fSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dmFlc2RtXC52c1xzK3ZbMC05XSssXHMqdlswLTldfSAyIH0gfSAqLw0KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmFlc2VmXC52 dlxzK3ZbMC05XSssXHMqdlswLTldfSAyIH0gfSAqLw0KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmFlc2VmXC52c1xzK3ZbMC05 XSssXHMqdlswLTldfSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci10aW1lcyB7dmFlc2VtXC52dlxzK3ZbMC05XSssXHMqdlsw LTldfSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dmFlc2VtXC52c1xzK3ZbMC05XSssXHMqdlswLTldfSAyIH0g fSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7 dmFlc2tmMVwudmlccyt2WzAtOV0rLFxzKnZbMC05XSssMH0gMiB9IH0gKi8N CisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZhZXNr ZjJcLnZpXHMrdlswLTldKyxccyp2WzAtOV0rLDB9IDIgfSB9ICovDQorLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2YWVzelwudnNc cyt2WzAtOV0rLFxzKnZbMC05XX0gMiB9IH0gKi8NCmRpZmYgLS1naXQgYS9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZrbmhh LWludHJpbnNpYy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3p2a25oYS1pbnRyaW5zaWMuYw0KbmV3IGZpbGUgbW9kZSAx MDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwLi40MDAwOWFkZjZiYg0KLS0tIC9k ZXYvbnVsbA0KKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3p2a25oYS1pbnRyaW5zaWMuYw0KQEAgLTAsMCArMSwzMyBA QA0KKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQorLyogeyBkZy1vcHRpb25z ICItbWFyY2g9cnY2NGdjX3p2a25oYV96dmU2NHggLW1hYmk9bHA2NGQgLU8y IC1Xbm8tcHNhYmkiIH0gKi8NCisNCisjaW5jbHVkZSAicmlzY3ZfdmVjdG9y LmgiDQorDQordnVpbnQzMm1mMl90IHRlc3RfdnNoYTJjbF92dl91MzJtZjIo dnVpbnQzMm1mMl90IHZkLCB2dWludDMybWYyX3QgdnMyLCB2dWludDMybWYy X3QgdnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZzaGEy Y2xfdnZfdTMybWYyKHZkLCB2czIsIHZzMSwgdmwpOw0KK30NCisNCit2dWlu dDMybTFfdCB0ZXN0X3ZzaGEyY2xfdnZfdTMybTFfdHUodnVpbnQzMm0xX3Qg dmQsIHZ1aW50MzJtMV90IHZzMiwgdnVpbnQzMm0xX3QgdnMxLCBzaXplX3Qg dmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZzaGEyY2xfdnZfdTMybTFfdHUo dmQsIHZzMiwgdnMxLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtMl90IHRlc3Rf dnNoYTJjaF92dl91MzJtMih2dWludDMybTJfdCB2ZCwgdnVpbnQzMm0yX3Qg dnMyLCB2dWludDMybTJfdCB2czEsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJu IF9fcmlzY3ZfdnNoYTJjaF92dl91MzJtMih2ZCwgdnMyLCB2czEsIHZsKTsN Cit9DQorDQordnVpbnQzMm00X3QgdGVzdF92c2hhMmNoX3Z2X3UzMm00X3R1 KHZ1aW50MzJtNF90IHZkLCB2dWludDMybTRfdCB2czIsIHZ1aW50MzJtNF90 IHZzMSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92c2hhMmNo X3Z2X3UzMm00X3R1KHZkLCB2czIsIHZzMSwgdmwpOw0KK30NCisNCit2dWlu dDMybTRfdCB0ZXN0X3ZzaGEybXNfdnZfdTMybTQodnVpbnQzMm00X3QgdmQs IHZ1aW50MzJtNF90IHZzMiwgdnVpbnQzMm00X3QgdnMxLCBzaXplX3Qgdmwp IHsNCisgIHJldHVybiBfX3Jpc2N2X3ZzaGEybXNfdnZfdTMybTQodmQsIHZz MiwgdnMxLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtOF90IHRlc3RfdnNoYTJt c192dl91MzJtOF90dSh2dWludDMybThfdCB2ZCwgdnVpbnQzMm04X3QgdnMy LCB2dWludDMybThfdCB2czEsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9f cmlzY3ZfdnNoYTJtc192dl91MzJtOF90dSh2ZCwgdnMyLCB2czEsIHZsKTsN Cit9DQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2 c2V0dmxpXHMqemVybyxccypbYS14MC05XSssXHMqW2EteDAtOV0rLG1bYS14 MC05XSssXHMqdGEsXHMqbWF9IDMgfSB9ICovDQorLyogeyBkZy1maW5hbCB7 IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMqemVybyxccypbYS14 MC05XSssXHMqW2EteDAtOV0rLG1bYS14MC05XSssXHMqdHUsXHMqbWF9IDMg fSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz IHt2c2hhMmNsXC52dlxzK3ZbMC05XSssXHMqdlswLTldfSAyIH0gfSAqLw0K Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNoYTJj aFwudnZccyt2WzAtOV0rLFxzKnZbMC05XX0gMiB9IH0gKi8NCisvKiB7IGRn LWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzaGEybXNcLnZ2XHMr dlswLTldKyxccyp2WzAtOV19IDIgfSB9ICovDQpkaWZmIC0tZ2l0IGEvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2a25oYi1p bnRyaW5zaWMuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS96dmtuaGItaW50cmluc2ljLmMNCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwMDAwMC4uNzhhZWJlYmI1Y2UNCi0tLSAvZGV2 L251bGwNCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS96dmtuaGItaW50cmluc2ljLmMNCkBAIC0wLDAgKzEsMzMgQEAN CisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KKy8qIHsgZGctb3B0aW9ucyAi LW1hcmNoPXJ2NjRnY196dmtuaGIgLW1hYmk9bHA2NGQgLU8yIC1Xbm8tcHNh YmkiIH0gKi8NCisNCisjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQorDQor dnVpbnQzMm1mMl90IHRlc3RfdnNoYTJjbF92dl91MzJtZjIodnVpbnQzMm1m Ml90IHZkLCB2dWludDMybWYyX3QgdnMyLCB2dWludDMybWYyX3QgdnMxLCBz aXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZzaGEyY2xfdnZfdTMy bWYyKHZkLCB2czIsIHZzMSwgdmwpOw0KK30NCisNCit2dWludDMybWYyX3Qg dGVzdF92c2hhMmNsX3Z2X3UzMm1mMl90dSh2dWludDMybWYyX3QgdmQsIHZ1 aW50MzJtZjJfdCB2czIsIHZ1aW50MzJtZjJfdCB2czEsIHNpemVfdCB2bCkg ew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnNoYTJjbF92dl91MzJtZjJfdHUodmQs IHZzMiwgdnMxLCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtMV90IHRlc3RfdnNo YTJjaF92dl91MzJtMSh2dWludDMybTFfdCB2ZCwgdnVpbnQzMm0xX3QgdnMy LCB2dWludDMybTFfdCB2czEsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9f cmlzY3ZfdnNoYTJjaF92dl91MzJtMSh2ZCwgdnMyLCB2czEsIHZsKTsNCit9 DQorDQordnVpbnQzMm0yX3QgdGVzdF92c2hhMmNoX3Z2X3UzMm0yX3R1KHZ1 aW50MzJtMl90IHZkLCB2dWludDMybTJfdCB2czIsIHZ1aW50MzJtMl90IHZz MSwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92c2hhMmNoX3Z2 X3UzMm0yX3R1KHZkLCB2czIsIHZzMSwgdmwpOw0KK30NCisNCit2dWludDMy bTJfdCB0ZXN0X3ZzaGEybXNfdnZfdTMybTIodnVpbnQzMm0yX3QgdmQsIHZ1 aW50MzJtMl90IHZzMiwgdnVpbnQzMm0yX3QgdnMxLCBzaXplX3QgdmwpIHsN CisgIHJldHVybiBfX3Jpc2N2X3ZzaGEybXNfdnZfdTMybTIodmQsIHZzMiwg dnMxLCB2bCk7DQorfQ0KKw0KK3Z1aW50NjRtOF90IHRlc3RfdnNoYTJtc192 dl91NjRtOF90dSh2dWludDY0bThfdCB2ZCwgdnVpbnQ2NG04X3QgdnMyLCB2 dWludDY0bThfdCB2czEsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlz Y3ZfdnNoYTJtc192dl91NjRtOF90dSh2ZCwgdnMyLCB2czEsIHZsKTsNCit9 DQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0 dmxpXHMqemVybyxccypbYS14MC05XSssXHMqW2EteDAtOV0rLG1bYS14MC05 XSssXHMqdGEsXHMqbWF9IDMgfSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNj YW4tYXNzZW1ibGVyLXRpbWVzIHt2c2V0dmxpXHMqemVybyxccypbYS14MC05 XSssXHMqW2EteDAtOV0rLG1bYS14MC05XSssXHMqdHUsXHMqbWF9IDMgfSB9 ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2 c2hhMmNsXC52dlxzK3ZbMC05XSssXHMqdlswLTldfSAyIH0gfSAqLw0KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNoYTJjaFwu dnZccyt2WzAtOV0rLFxzKnZbMC05XX0gMiB9IH0gKi8NCisvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzaGEybXNcLnZ2XHMrdlsw LTldKyxccyp2WzAtOV19IDIgfSB9ICovDQpkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3p2a3NlZC1pbnRy aW5zaWMuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS96dmtzZWQtaW50cmluc2ljLmMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQppbmRleCAwMDAwMDAwMDAwMC4uYjY1NWZlODNlYjUNCi0tLSAvZGV2L251 bGwNCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS96dmtzZWQtaW50cmluc2ljLmMNCkBAIC0wLDAgKzEsMzMgQEANCisv KiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KKy8qIHsgZGctb3B0aW9ucyAiLW1h cmNoPXJ2NjRnY196dmtzZWRfenZlNjR4IC1tYWJpPWxwNjRkIC1PMiAtV25v LXBzYWJpIiB9ICovDQorDQorI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0K Kw0KK3Z1aW50MzJtZjJfdCB0ZXN0X3ZzbTRrX3ZpX3UzMm1mMih2dWludDMy bWYyX3QgdnMyLCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3Zz bTRrX3ZpX3UzMm1mMih2czIsIDAsIHZsKTsNCit9DQorDQordnVpbnQzMm0x X3QgdGVzdF92c200a192aV91MzJtMV90dSh2dWludDMybTFfdCBtYXNrZWRv ZmYsIHZ1aW50MzJtMV90IHZzMiwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4g X19yaXNjdl92c200a192aV91MzJtMV90dShtYXNrZWRvZmYsIHZzMiwgMCwg dmwpOw0KK30NCisNCit2dWludDMybTJfdCB0ZXN0X3ZzbTRyX3Z2X3UzMm0y KHZ1aW50MzJtMl90IHZkLCB2dWludDMybTJfdCB2czIsIHNpemVfdCB2bCkg ew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnNtNHJfdnZfdTMybTIodmQsIHZzMiwg dmwpOw0KK30NCisNCit2dWludDMybTRfdCB0ZXN0X3ZzbTRyX3Z2X3UzMm00 X3R1KHZ1aW50MzJtNF90IHZkLCB2dWludDMybTRfdCB2czIsIHNpemVfdCB2 bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdnNtNHJfdnZfdTMybTRfdHUodmQs IHZzMiwgdmwpOw0KK30NCisNCit2dWludDMybTRfdCB0ZXN0X3ZzbTRyX3Zz X3UzMm1mMl91MzJtNCh2dWludDMybTRfdCB2ZCwgdnVpbnQzMm1mMl90IHZz Miwgc2l6ZV90IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92c200cl92c191 MzJtZjJfdTMybTQodmQsIHZzMiwgdmwpOw0KK30NCisNCit2dWludDMybThf dCB0ZXN0X3ZzbTRyX3ZzX3UzMm0xX3UzMm04X3R1KHZ1aW50MzJtOF90IHZk LCB2dWludDMybTFfdCB2czIsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9f cmlzY3ZfdnNtNHJfdnNfdTMybTFfdTMybThfdHUodmQsIHZzMiwgdmwpOw0K K30NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Zz ZXR2bGlccyp6ZXJvLFxzKlthLXgwLTldKyxccypbYS14MC05XSssbVthLXgw LTldKyxccyp0YSxccyptYX0gMyB9IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsg c2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccyp6ZXJvLFxzKlthLXgw LTldKyxccypbYS14MC05XSssbVthLXgwLTldKyxccyp0dSxccyptYX0gMyB9 IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e3ZzbTRrXC52aVxzK3ZbMC05XSssXHMqdlswLTldKywwfSAyIH0gfSAqLw0K Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNtNHJc LnZ2XHMrdlswLTldKyxccyp2WzAtOV19IDIgfSB9ICovDQorLyogeyBkZy1m aW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2c200clwudnNccyt2WzAt OV0rLFxzKnZbMC05XX0gMiB9IH0gKi8NCmRpZmYgLS1naXQgYS9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvenZrc2gtaW50cmlu c2ljLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvenZrc2gtaW50cmluc2ljLmMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQpp bmRleCAwMDAwMDAwMDAwMC4uMzUzZTRlNzE3NzUNCi0tLSAvZGV2L251bGwN CisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS96dmtzaC1pbnRyaW5zaWMuYw0KQEAgLTAsMCArMSwyNCBAQA0KKy8qIHsg ZGctZG8gY29tcGlsZSB9ICovDQorLyogeyBkZy1vcHRpb25zICItbWFyY2g9 cnY2NGdjX3p2a3NoX3p2ZTY0eCAtbWFiaT1scDY0ZCAtTzIgLVduby1wc2Fi aSIgfSAqLw0KKw0KKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCisNCit2 dWludDMybWYyX3QgdGVzdF92c20zY192aV91MzJtZjIodnVpbnQzMm1mMl90 IHZkLCB2dWludDMybWYyX3QgdnMyLCBzaXplX3QgdmwpIHsNCisgIHJldHVy biBfX3Jpc2N2X3ZzbTNjX3ZpX3UzMm1mMih2ZCwgdnMyLCAwLCB2bCk7DQor fQ0KKw0KK3Z1aW50MzJtMV90IHRlc3RfdnNtM2NfdmlfdTMybTFfdHUodnVp bnQzMm0xX3QgdmQsIHZ1aW50MzJtMV90IHZzMiwgc2l6ZV90IHZsKSB7DQor ICByZXR1cm4gX19yaXNjdl92c20zY192aV91MzJtMV90dSh2ZCwgdnMyLCAw LCB2bCk7DQorfQ0KKw0KK3Z1aW50MzJtMl90IHRlc3RfdnNtM21lX3Z2X3Uz Mm0yKHZ1aW50MzJtMl90IHZzMiwgdnVpbnQzMm0yX3QgdnMxLCBzaXplX3Qg dmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZzbTNtZV92dl91MzJtMih2czIs IHZzMSwgdmwpOw0KK30NCisNCit2dWludDMybTRfdCB0ZXN0X3ZzbTNtZV92 dl91MzJtNF90dSh2dWludDMybTRfdCBtYXNrZWRvZmYsIHZ1aW50MzJtNF90 IHZzMiwgdnVpbnQzMm00X3QgdnMxLCBzaXplX3QgdmwpIHsNCisgIHJldHVy biBfX3Jpc2N2X3ZzbTNtZV92dl91MzJtNF90dShtYXNrZWRvZmYsIHZzMiwg dnMxLCB2bCk7DQorfQ0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyB7dnNldHZsaVxzKnplcm8sXHMqW2EteDAtOV0rLFxzKlthLXgw LTldKyxtW2EteDAtOV0rLFxzKnRhLFxzKm1hfSAyIH0gfSAqLw0KKy8qIHsg ZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dnNldHZsaVxzKnpl cm8sXHMqW2EteDAtOV0rLFxzKlthLXgwLTldKyxtW2EteDAtOV0rLFxzKnR1 LFxzKm1hfSAyIH0gfSAqLw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci10aW1lcyB7dnNtM2NcLnZpXHMrdlswLTldKyxccyp2WzAtOV0rLDB9 IDIgfSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzIHt2c20zbWVcLnZ2XHMrdlswLTldKyxccyp2WzAtOV0rLFxzKnZbMC05 XSt9IDIgfSB9ICovDQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3p2a2IuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9yaXNjdi96dmtiLmMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAw MDAwMDAwMDAwMC4uZDVjMjhlNzllZjYNCi0tLSAvZGV2L251bGwNCisrKyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi96dmtiLmMNCkBAIC0w LDAgKzEsMTMgQEANCisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KKy8qIHsg ZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY196dmtiIiB7IHRhcmdldCB7IHJ2 NjQgfSB9IH0gKi8NCisvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjMyZ2Nf enZrYiIgeyB0YXJnZXQgeyBydjMyIH0gfSB9ICovDQorDQorI2lmbmRlZiBf X3Jpc2N2X3p2a2INCisjZXJyb3IgIkZlYXR1cmUgbWFjcm8gbm90IGRlZmlu ZWQiDQorI2VuZGlmDQorDQoraW50DQorZm9vIChpbnQgYSkNCit7DQorICBy ZXR1cm4gYTsNCit9DQotLSANCjIuMTcuMQ0KIA0KIA0K ------=_001_NextPart470035686613_=------