From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 994CA3858D35 for ; Wed, 15 Feb 2023 17:29:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 994CA3858D35 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1676482141; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=BQGD6STcN78X7gMiF6jkKXXnqDRfPsSbPY3z7BzcZmg=; b=iA5pVXBc/S/l6XZ9bji0FS7pXrqyc7HYVIWs/kqjk6WqtTTHb/vw1LVD8zrK0+lsW6BO1P mHz1aXzS/1c1BcCRyq4TjHm/Gex1Z+LzMMpApJ0Qrods6POiSGnvL8SsA+S2vl5BYyYowa wtugEVZx0vnlMVUDwPavnRvF90YP/1o= Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-544-W_M0HXfxPw6KKP42X3fEFw-1; Wed, 15 Feb 2023 12:28:59 -0500 X-MC-Unique: W_M0HXfxPw6KKP42X3fEFw-1 Received: by mail-qk1-f198.google.com with SMTP id z40-20020a05620a262800b0073b344eb74dso6195387qko.10 for ; Wed, 15 Feb 2023 09:28:59 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:from:references:to:content-language:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=ekUkefpjRbD7Z9p1Fv/iKZSH+tLZ4gqnNLrDBBUn1Ic=; b=DYs+q7yWwV/bXcf4xBvnYudq7gU4MTIGNz/TW9iX1g78WeeyGyxu/4WS+MC4RSy5g3 mhQuhM+tX3HcoYkiWHQfnUUCd4ciX9OHWKtExvA/MCmYj7Yi0m0fNmop5hUGchmeB5EU oicDtIFni0V55Usk/jp7ZhCny3nySoWHUVo5ufZU6m0Uuist7pnhA6kuU2ZrWz6V09aH 8/ST+WjH0uat8yu9Y2Zhwr6Lb/Xzg8fBZ5cwTLgP+7ofRytPGmQH+U/ZE7cvCzMryGoU +HRezmJG2NtgrBdNhNFm0ZzZqCS27XK/cZYoC5db0XB2RsEBvCxBfbI4oz4TaA6TIqJ2 i2RQ== X-Gm-Message-State: AO0yUKWUMHFYzkII4mzlCrIf0fgnljfov2frne7AMoLWoE5q8z6zb7q2 yr+jMo49jAPq1f7muv2EQzNmupwXy+0JvdXQULcfyb24p0inSln7yP/fznIfhqAD3/TcKoUc0zw xQoGcDJ3xyj6snaxcUTFPrpE= X-Received: by 2002:a05:622a:1c6:b0:3b9:bc26:3349 with SMTP id t6-20020a05622a01c600b003b9bc263349mr4825793qtw.37.1676482138522; Wed, 15 Feb 2023 09:28:58 -0800 (PST) X-Google-Smtp-Source: AK7set8oGr8FgD+PlpCYVvkP1koTOwDt1+GIPjNyFB8+4donIMGi6u7kQn/TiZvZ8FG+/aFdhEuvpw== X-Received: by 2002:a05:622a:1c6:b0:3b9:bc26:3349 with SMTP id t6-20020a05622a01c600b003b9bc263349mr4825766qtw.37.1676482138228; Wed, 15 Feb 2023 09:28:58 -0800 (PST) Received: from [192.168.1.18] ([79.123.83.169]) by smtp.gmail.com with ESMTPSA id t23-20020ac87397000000b003ab7aee56a0sm13339679qtp.39.2023.02.15.09.28.56 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 15 Feb 2023 09:28:57 -0800 (PST) Message-ID: Date: Wed, 15 Feb 2023 17:28:56 +0000 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Subject: Re: [RFC v0 0/6] ASCII Command for output section To: binutils@emagii.com, binutils@sourceware.org References: <20230215114052.28292-1-binutils@emagii.com> From: Nick Clifton In-Reply-To: <20230215114052.28292-1-binutils@emagii.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/mixed; boundary="------------l2c8XZPpsrR0K05B0WYT9tHt" Content-Language: en-GB X-Spam-Status: No, score=-9.2 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,TXREP 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. --------------l2c8XZPpsrR0K05B0WYT9tHt Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Ulf, What do you think of this alternative version of your patch ? It will still need tweaking so that the tests will work on big-endian architectures, and the documentation will need fixing, but I think that it does most of what you want. Cheers Nick --------------l2c8XZPpsrR0K05B0WYT9tHt Content-Type: text/x-patch; charset=UTF-8; name="ascii.patch" Content-Disposition: attachment; filename="ascii.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xkL05FV1MgYi9sZC9ORVdTCmluZGV4IDRjZTdlMTlkNDBiLi4zOGFmOWNi YTg3NyAxMDA2NDQKLS0tIGEvbGQvTkVXUworKysgYi9sZC9ORVdTCkBAIC0xLDUgKzEsMTEgQEAK IC0qLSB0ZXh0IC0qLQogCisqIFRoZSBsaW5rZXIgc2NyaXB0IHN5bnRheCBoYXMgYSBuZXcgY29t bWFuZCBmb3Igb3V0cHV0IHNlY3Rpb25zOiAKKyAgQVNDSUkgKDxzaXplPikgInN0cmluZyIgKEFs dCAxID0gV29ya2luZykKKyAgQVNDSUkgPHNpemU+LCAic3RyaW5nIiAgKEFsdCAyID0gTm90IFdv cmtpbmcpCisgIFRoaXMgd2lsbCByZXNlcnZlIGEgemVybyBmaWxsZWQgYmxvY2sgb2YgPHNpemU+ IGJ5dGVzIGF0IHRoZSBjdXJyZW50CisgIGxvY2F0aW9uIGFuZCBpbnNlcnQgYSB6ZXJvLXRlcm1p bmF0ZWQgc3RyaW5nIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGJsb2NrLgorCiAqIFRoZSBsaW5r ZXIgc2NyaXB0IHN5bnRheCBoYXMgYSBuZXcgY29tbWFuZCBmb3Igb3V0cHV0IHNlY3Rpb25zOiBB U0NJWiAic3RyaW5nIgogICBUaGlzIHdpbGwgaW5zZXJ0IGEgemVyby10ZXJtaW5hdGVkIHN0cmlu ZyBhdCB0aGUgY3VycmVudCBsb2NhdGlvbi4KIApkaWZmIC0tZ2l0IGEvbGQvbGQudGV4aSBiL2xk L2xkLnRleGkKaW5kZXggMzM1ODg2ZDRlNmIuLmUzMDllZWJmYTQzIDEwMDY0NAotLS0gYS9sZC9s ZC50ZXhpCisrKyBiL2xkL2xkLnRleGkKQEAgLTUzMDgsNiArNTMwOCw3IEBAIEMgaWRlbnRpZmll cnMgYmVjYXVzZSB0aGV5IGNvbnRhaW4gYSBAc2FtcHsufSBjaGFyYWN0ZXIuCiBAY2luZGV4IGRh dGEKIEBjaW5kZXggc2VjdGlvbiBkYXRhCiBAY2luZGV4IG91dHB1dCBzZWN0aW9uIGRhdGEKK0Br aW5kZXggQVNDSUkgKEB2YXJ7ZXhwcmVzc2lvbn0pIGBgQHZhcntzdHJpbmd9JycKIEBraW5kZXgg QVNDSVogYGBAdmFye3N0cmluZ30nJwogQGtpbmRleCBCWVRFKEB2YXJ7ZXhwcmVzc2lvbn0pCiBA a2luZGV4IFNIT1JUKEB2YXJ7ZXhwcmVzc2lvbn0pCkBAIC01MzQ1LDE0ICs1MzQ2LDI3IEBAIFdo ZW4gdGhlIG9iamVjdCBmaWxlIGZvcm1hdCBkb2VzIG5vdCBoYXZlIGFuIGV4cGxpY2l0IGVuZGlh bm5lc3MsIGFzIGlzCiB0cnVlIG9mLCBmb3IgZXhhbXBsZSwgUy1yZWNvcmRzLCB0aGUgdmFsdWUg d2lsbCBiZSBzdG9yZWQgaW4gdGhlCiBlbmRpYW5uZXNzIG9mIHRoZSBmaXJzdCBpbnB1dCBvYmpl Y3QgZmlsZS4KIAorWW91IGNhbiBpbmNsdWRlIGEgZml4ZWQgc2l6ZSBzdHJpbmcgaW4gYW4gb3V0 cHV0IHNlY3Rpb24gYnkgdXNpbmcgQGNvZGV7QVNDSUl9LgorVGhlIGtleXdvcmQgaXMgZm9sbG93 ZWQgYnkgYSBzaXplIGFuZCBhIHN0cmluZyB3aGljaCBpcyBzdG9yZWQgYXQKK3RoZSBjdXJyZW50 IHZhbHVlIG9mIHRoZSBsb2NhdGlvbiBjb3VudGVyIGFkZGluZyB6ZXJvIGJ5dGVzIGF0IHRoZSBl bmQuCisKIFlvdSBjYW4gaW5jbHVkZSBhIHplcm8tdGVybWluYXRlZCBzdHJpbmcgaW4gYW4gb3V0 cHV0IHNlY3Rpb24gYnkgdXNpbmcKIEBjb2Rle0FTQ0lafS4gIFRoZSBrZXl3b3JkIGlzIGZvbGxv d2VkIGJ5IGEgc3RyaW5nIHdoaWNoIGlzIHN0b3JlZCBhdAotdGhlIGN1cnJlbnQgdmFsdWUgb2Yg dGhlIGxvY2F0aW9uIGNvdW50ZXIgYWRkaW5nIGEgemVybyBieXRlIGF0IHRoZQotZW5kLiAgSWYg dGhlIHN0cmluZyBpbmNsdWRlcyBzcGFjZXMgaXQgbXVzdCBiZSBlbmNsb3NlZCBpbiBkb3VibGUK LXF1b3Rlcy4gIFRoZSBzdHJpbmcgbWF5IGNvbnRhaW4gJ1xuJywgJ1xyJywgJ1x0JyBhbmQgb2N0 YWwgbnVtYmVycy4KLUhleCBudW1iZXJzIGFyZSBub3Qgc3VwcG9ydGVkLgordGhlIGN1cnJlbnQg dmFsdWUgb2YgdGhlIGxvY2F0aW9uIGNvdW50ZXIgYWRkaW5nIGEgemVybyBieXRlIGF0IHRoZSBl bmQuICAKKworSWYgdGhlIHN0cmluZyBpbiBhbiBAY29kZXtBU0NJWn0gb3IgQGNvZGV7QVNDSVp9 IGNvbW1hbmQgaW5jbHVkZXMgc3BhY2VzCitpdCBtdXN0IGJlIGVuY2xvc2VkIGluIGRvdWJsZSBx dW90ZXMuCitJZiB0aGUgc3RyaW5nIGlzIHRvbyBsb25nLCBhIHdhcm5pbmcgaXMgaXNzdWVkIGFu ZCB0aGUgc3RyaW5nIGlzIHRydW5jYXRlZC4KK1RoZSBzdHJpbmcgY2FuIGhhdmUgQyBlc2NhcGUg Y2hhcmFjdGVycyBsaWtlICdcbicsICdccicsICdcdCcgYW5kIG9jdGFsIG51bWJlcnMuCitUaGUg J1wiJyBlc2NhcGUgaXMgbm90IHN1cHBvcnRlZC4KKworRXhhbXBsZSAxOiBUaGlzIGlzIHN0cmlu ZyBvZiAxNiBjaGFyYWN0ZXJzIGFuZCB3aWxsIGNyZWF0ZSBhIDMyIGJ5dGUgYXJlYQorQHNtYWxs ZXhhbXBsZQorICBBU0NJSSAzMiwgIlRoaXMgaXMgMTYgYnl0ZXMiCisgIEFTQ0lJICgzMikgIlRo aXMgaXMgMTYgYnl0ZXMiCitAZW5kIHNtYWxsZXhhbXBsZQogCi1Gb3IgZXhhbXBsZSwgdGhpcyBz dHJpbmcgb2YgMTYgY2hhcmFjdGVycyB3aWxsIGNyZWF0ZSBhIDE3IGJ5dGUgYXJlYQorRXhhbXBs ZSAyOiBUaGlzIGlzIGEgc3RyaW5nIG9mIDE2IGNoYXJhY3RlcnMgYW5kIHdpbGwgY3JlYXRlIGEg MTcgYnl0ZSBhcmVhCiBAc21hbGxleGFtcGxlCiAgIEFTQ0laICJUaGlzIGlzIDE2IGJ5dGVzIgog QGVuZCBzbWFsbGV4YW1wbGUKZGlmZiAtLWdpdCBhL2xkL2xkZ3JhbS55IGIvbGQvbGRncmFtLnkK aW5kZXggODI0MGNmOTczMjcuLmZhZmZlZWM5NGI4IDEwMDY0NAotLS0gYS9sZC9sZGdyYW0ueQor KysgYi9sZC9sZGdyYW0ueQpAQCAtMTI1LDcgKzEyNSw3IEBAIHN0YXRpYyBpbnQgZXJyb3JfaW5k ZXg7CiAlcmlnaHQgVU5BUlkKICV0b2tlbiBFTkQKICVsZWZ0IDx0b2tlbj4gJygnCi0ldG9rZW4g PHRva2VuPiBBTElHTl9LIEJMT0NLIEJJTkQgUVVBRCBTUVVBRCBMT05HIFNIT1JUIEJZVEUgQVND SVoKKyV0b2tlbiA8dG9rZW4+IEFMSUdOX0sgQkxPQ0sgQklORCBRVUFEIFNRVUFEIExPTkcgU0hP UlQgQllURSBBU0NJSSBBU0NJWgogJXRva2VuIFNFQ1RJT05TIFBIRFJTIElOU0VSVF9LIEFGVEVS IEJFRk9SRQogJXRva2VuIERBVEFfU0VHTUVOVF9BTElHTiBEQVRBX1NFR01FTlRfUkVMUk9fRU5E IERBVEFfU0VHTUVOVF9FTkQKICV0b2tlbiBTT1JUX0JZX05BTUUgU09SVF9CWV9BTElHTk1FTlQg U09SVF9OT05FCkBAIC02NjgsOSArNjY4LDE1IEBAIHN0YXRlbWVudDoKIAkJewogCQkgIGxhbmdf YWRkX2RhdGEgKChpbnQpICQxLCAkMyk7CiAJCX0KKyAgICAgICAgfCBBU0NJSSAnKCcgbXVzdGJl X2V4cCAnKScgTkFNRQorCQl7CisJCSAgLyogJ3ZhbHVlJyBpcyBhIG1lbW9yeSBsZWFrLCBkbyB3 ZSBjYXJlPyAgKi8KKwkJICBldHJlZV90eXBlICp2YWx1ZSA9ICQzOworCQkgIGxhbmdfYWRkX3N0 cmluZyAodmFsdWUtPnZhbHVlLnZhbHVlLCAkNSk7CisJCX0KIAl8IEFTQ0laIE5BTUUKIAkJewot CQkgIGxhbmdfYWRkX3N0cmluZyAoJDIpOworCQkgIGxhbmdfYWRkX3N0cmluZyAoMCwgJDIpOwog CQl9CiAJfCBGSUxMICcoJyBmaWxsX2V4cCAnKScKIAkJewpkaWZmIC0tZ2l0IGEvbGQvbGRsYW5n LmMgYi9sZC9sZGxhbmcuYwppbmRleCBiMjA0NTVjOTM3My4uODJlNjIzYTZmNGEgMTAwNjQ0Ci0t LSBhL2xkL2xkbGFuZy5jCisrKyBiL2xkL2xkbGFuZy5jCkBAIC04MzYxLDE1ICs4MzYxLDE2IEBA IGxhbmdfYWRkX2RhdGEgKGludCB0eXBlLCB1bmlvbiBldHJlZV91bmlvbiAqZXhwKQogICBuZXdf c3RtdC0+dHlwZSA9IHR5cGU7CiB9CiAKLXZvaWQKLWxhbmdfYWRkX3N0cmluZyAoY29uc3QgY2hh ciAqcykKK3N0YXRpYyBjaGFyICoKK2NvbnZlcnRfc3RyaW5nIChjb25zdCBjaGFyICogcykKIHsK LSAgYmZkX3ZtYSAgbGVuID0gc3RybGVuIChzKTsKLSAgYmZkX3ZtYSAgaTsKLSAgYm9vbCAgICAg ZXNjYXBlID0gZmFsc2U7CisgIGludCAgICAgbGVuID0gc3RybGVuIChzKTsKKyAgaW50ICAgICBp OworICBib29sICAgIGVzY2FwZSA9IGZhbHNlOworICBjaGFyICogIGJ1ZmZlciA9IG1hbGxvYyAo bGVuICsgMSk7CisgIGNoYXIgKiAgYjsKIAotICAvKiBBZGQgYnl0ZSBleHByZXNzaW9ucyB1bnRp bCBlbmQgb2Ygc3RyaW5nLiAgKi8KLSAgZm9yIChpID0gMCA7IGkgPCBsZW47IGkrKykKKyAgZm9y IChpID0gMCwgYiA9IGJ1ZmZlcjsgaSA8IGxlbjsgaSsrKQogICAgIHsKICAgICAgIGNoYXIgYyA9 ICpzKys7CiAKQEAgLTg0MDQsNyArODQwNSw3IEBAIGxhbmdfYWRkX3N0cmluZyAoY29uc3QgY2hh ciAqcykKIAkJICAgIHZhbHVlICs9IChjIC0gJzAnKTsKIAkJICAgIGkrKzsKIAkJICAgIHMrKzsK LQorIAogCQkgICAgYyA9ICpzOwogCQkgICAgaWYgKChjID49ICcwJykgJiYgKGMgPD0gJzcnKSkK IAkJICAgICAgewpAQCAtODQyMiwyNiArODQyMyw1OCBAQCBsYW5nX2FkZF9zdHJpbmcgKGNvbnN0 IGNoYXIgKnMpCiAJCSAgICBpLS07CiAJCSAgICBzLS07CiAJCSAgfQotCisJCQogCQljID0gdmFs dWU7CiAJICAgICAgfQogCSAgICAgIGJyZWFrOwogCSAgICB9Ci0KLQkgIGxhbmdfYWRkX2RhdGEg KEJZVEUsIGV4cF9pbnRvcCAoYykpOwogCSAgZXNjYXBlID0gZmFsc2U7CiAJfQogICAgICAgZWxz ZQogCXsKIAkgIGlmIChjID09ICdcXCcpCi0JICAgIGVzY2FwZSA9IHRydWU7Ci0JICBlbHNlCi0J ICAgIGxhbmdfYWRkX2RhdGEgKEJZVEUsIGV4cF9pbnRvcCAoYykpOworCSAgICB7CisJICAgICAg ZXNjYXBlID0gdHJ1ZTsKKwkgICAgICBjb250aW51ZTsKKwkgICAgfQogCX0KKworICAgICAgKiBi ICsrID0gYzsKICAgICB9CiAKLSAgLyogUmVtZWJlciB0byB0ZXJtaW5hdGUgdGhlIHN0cmluZy4g ICovCi0gIGxhbmdfYWRkX2RhdGEgKEJZVEUsIGV4cF9pbnRvcCAoMCkpOworICAqIGIgPSAwOwor ICByZXR1cm4gYnVmZmVyOworfQorCit2b2lkCitsYW5nX2FkZF9zdHJpbmcgKGludCBzaXplLCBj b25zdCBjaGFyICpzKQoreworICBpbnQgICAgIGxlbjsKKyAgaW50ICAgICBpOworICBjaGFyICog IHN0cmluZzsKKworICBzdHJpbmcgPSBjb252ZXJ0X3N0cmluZyAocyk7CisgIGxlbiA9IHN0cmxl biAoc3RyaW5nKTsKKworICAvKiBDaGVjayBpZiBpdCBpcyBBU0NJWiBjb21tYW5kIChsZW4gPT0g MCkgKi8KKyAgaWYgKHNpemUgPT0gMCkKKyAgICBzaXplID0gbGVuICsgMTsKKyAgZWxzZSBpZiAo bGVuID4gc2l6ZSkKKyAgICB7CisgICAgICAvKiBXZSBjYW5ub3QgZml0IHRoZSAnXDAnIGF0IHRo ZSBlbmQuICAqLworICAgICAgbGVuID0gc2l6ZTsKKworICAgICAgZWluZm8gKF8oIiVQOiVwUzog d2FybmluZzogQVNDSUkgc3RyaW5nIGRvZXMgbm90IGZpdCBpbiBhbGxvY2F0ZWQgc3BhY2UsIgor ICAgICAgICAgICAgICAgIiB0cnVuY2F0ZWRcbiIpLCBOVUxMKTsKKyAgICB9CisKKyAgZm9yIChp ID0gMCA7IGkgPCBsZW4gOyBpKyspCisgICAgbGFuZ19hZGRfZGF0YSAoQllURSwgZXhwX2ludG9w IChzdHJpbmdbaV0pKTsKKworICB3aGlsZSAoaSsrIDwgc2l6ZSkKKyAgICBsYW5nX2FkZF9kYXRh IChCWVRFLCBleHBfaW50b3AgKCdcMCcpKTsKKworICBmcmVlIChzdHJpbmcpOwogfQogCiAvKiBD cmVhdGUgYSBuZXcgcmVsb2Mgc3RhdGVtZW50LiAgUkVMT0MgaXMgdGhlIEJGRCByZWxvY2F0aW9u IHR5cGUgdG8KZGlmZiAtLWdpdCBhL2xkL2xkbGFuZy5oIGIvbGQvbGRsYW5nLmgKaW5kZXggMzI4 MTkwNjZiOGEuLmZlODVlMTU5YWE3IDEwMDY0NAotLS0gYS9sZC9sZGxhbmcuaAorKysgYi9sZC9s ZGxhbmcuaApAQCAtNjQ2LDggKzY0Niw5IEBAIGV4dGVybiB2b2lkIHBvcF9zdGF0X3B0cgogICAo dm9pZCk7CiBleHRlcm4gdm9pZCBsYW5nX2FkZF9kYXRhCiAgIChpbnQsIHVuaW9uIGV0cmVlX3Vu aW9uICopOworZXh0ZXJuIGJmZF92bWEgY2hhcmNvdW50KGNvbnN0IGNoYXIgKnMpOwogZXh0ZXJu IHZvaWQgbGFuZ19hZGRfc3RyaW5nCi0gIChjb25zdCBjaGFyICopOworICAoaW50LCBjb25zdCBj aGFyICpzKTsKIGV4dGVybiB2b2lkIGxhbmdfYWRkX3JlbG9jCiAgIChiZmRfcmVsb2NfY29kZV9y ZWFsX3R5cGUsIHJlbG9jX2hvd3RvX3R5cGUgKiwgYXNlY3Rpb24gKiwgY29uc3QgY2hhciAqLAog ICAgdW5pb24gZXRyZWVfdW5pb24gKik7CmRpZmYgLS1naXQgYS9sZC9sZGxleC5sIGIvbGQvbGRs ZXgubAppbmRleCAzMjMzNmNmMGJlMi4uOTEwZTdlYTNiOGIgMTAwNjQ0Ci0tLSBhL2xkL2xkbGV4 LmwKKysrIGIvbGQvbGRsZXgubApAQCAtMzA5LDYgKzMwOSw3IEBAIFZfSURFTlRJRklFUiBbKj8u JF9hLXpBLVpcW1xdXC1cIVxeXFxdKFsqPy4kX2EtekEtWjAtOVxbXF1cLVwhXF5cXF18OjopKgog PFdJTEQ+IkxPTkciCQkJCXsgUlRPS0VOKExPTkcpOyB9CiA8V0lMRD4iU0hPUlQiCQkJCXsgUlRP S0VOKFNIT1JUKTsgfQogPFdJTEQ+IkJZVEUiCQkJCXsgUlRPS0VOKEJZVEUpOyB9Cis8V0lMRD4i QVNDSUkiCQkJCXsgUlRPS0VOKEFTQ0lJKTsgfQogPFdJTEQ+IkFTQ0laIgkJCQl7IFJUT0tFTihB U0NJWik7IH0KIDxTQ1JJUFQ+Ik5PRkxPQVQiCQkJeyBSVE9LRU4oTk9GTE9BVCk7IH0KIDxTQ1JJ UFQsRVhQUkVTU0lPTj4iTk9DUk9TU1JFRlMiCXsgUlRPS0VOKE5PQ1JPU1NSRUZTKTsgfQpkaWZm IC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xkLXNjcmlwdHMvYXNjaXouZCBiL2xkL3Rlc3RzdWl0ZS9s ZC1zY3JpcHRzL2FzY2l6LmQKaW5kZXggNjE1Y2Y5OTczMmYuLmQzYjhlODlmYjMxIDEwMDY0NAot LS0gYS9sZC90ZXN0c3VpdGUvbGQtc2NyaXB0cy9hc2Npei5kCisrKyBiL2xkL3Rlc3RzdWl0ZS9s ZC1zY3JpcHRzL2FzY2l6LmQKQEAgLTEsMTcgKzEsMTIgQEAKICNzb3VyY2U6IGFzY2l6LnMKICNs ZDogLVQgYXNjaXoudAotI29iamR1bXA6IC1zIC1qIC50ZXh0Ci0jdGFyZ2V0OiBbaXNfZWxmX2Zv cm1hdF0KLSNza2lwOiBtaXBzKi0qLSoKLSNza2lwOiB0aWxlZ3gqLSotKiB0aWxlcHJvLSotKgot IyBDT0ZGLCBQRSBhbmQgTUlQUyB0YXJnZXRzIGFsaWduIGNvZGUgdG8gYSAxNiBieXRlIGJvdW5k YXJ5Ci0jIHRpbGVneCBhbmR0aWxlcHJvIGFsaWducyBjb2RlIHRvIGEgOCBieXRlIGJvdW5kYXJ5 LgorI29iamR1bXA6IC1zIC1qIC5kYXRhCiAKIC4qOiAgICAgZmlsZSBmb3JtYXQgLioKIAotQ29u dGVudHMgb2Ygc2VjdGlvbiAudGV4dDoKLSAuLi4uIDAxMDEwMTAxIDU0Njg2OTczIDIwNjk3MzIw IDYxMjA3Mzc0ICAuLi4uVGhpcyBpcyBhIHN0Ci0gLi4uLiA3MjY5NmU2NyAwMC4uLi4uLiAuLi4u Li4uLiAuLi4uLi4uLiAgcmluZy4uLi4uLi4uLi4uLgotIC4uLi4gNTQ2ODY5NzMgMjA2OTczMjAg NjE2ZTZmNzQgNjg2NTcyMjAgIFRoaXMgaXMgYW5vdGhlciAKLSAuLi4uIDBhNzM3NDcyIDY5NmU2 NzUzIDAwICAgICAgICAgICAgICAgICAuc3RyaW5nUy4uLi4uLi4uCitDb250ZW50cyBvZiBzZWN0 aW9uIC5kYXRhOgorIC4uLi4gNTQ2ODY5NzMgMjA2OTczMjAgNjEyMDczNzQgNzI2OTZlNjcgIFRo aXMgaXMgYSBzdHJpbmcKKyAuLi4uIDAwNTQ2ODY5IDczMjA2OTczIDIwNjE2ZTZmIDc0Njg2NTcy ICAuVGhpcyBpcyBhbm90aGVyCisgLi4uLiAwYTUzNzQ3MiA2OTZlNjcwMCAwMDZlNmY3MSA3NTZm NzQ2NSAgLlN0cmluZy4ubm9xdW90ZQorIC4uLi4gNzMwMCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHMuICAgICAgICAgICAgICAKICNwYXNzCmRpZmYgLS1naXQgYS9sZC90ZXN0c3Vp dGUvbGQtc2NyaXB0cy9hc2Npei50IGIvbGQvdGVzdHN1aXRlL2xkLXNjcmlwdHMvYXNjaXoudApp bmRleCBhYjY2ZjlhNWJmYi4uM2FlYjdkMGM3NjcgMTAwNjQ0Ci0tLSBhL2xkL3Rlc3RzdWl0ZS9s ZC1zY3JpcHRzL2FzY2l6LnQKKysrIGIvbGQvdGVzdHN1aXRlL2xkLXNjcmlwdHMvYXNjaXoudApA QCAtMSwyMyArMSwxNiBAQAotTUVNT1JZIHsKLSAgcm9tIDogT1JJR0lOID0gMHgwMDAwMCwgTEVO R1RIID0gMHgxMDAwMAotICByYW0gOiBPUklHSU4gPSAweDEwMDAwLCBMRU5HVEggPSAweDEwMDAw Ci19CiAKIF9zdGFydCA9IDB4MDAwMDAwOwogU0VDVElPTlMKIHsKICAgLiA9IDB4MTAwMCArIFNJ WkVPRl9IRUFERVJTOwotICAudGV4dCBBTElHTiAoMHgyMCkgOgotICAgIHsKLSAgICAgICooLnRl eHQpCisgIAorICAuZGF0YSA6IEFUICgweDEwMDAwKQorICB7CiAgICAgICBBU0NJWiAiVGhpcyBp cyBhIHN0cmluZyIKLSAgICAgIC4gPSBBTElHTigweDIwKTsKLSAgICAgIGFsaWduX2xhYmVsID0g LjsKLSAgICAgIEFTQ0laICJUaGlzIGlzIGFub3RoZXIgXG5zdHJpbmdcMTIzIgotICAgICAgdW5h bGlnbl9sYWJlbCA9IC47Ci0gICAgfQotICAuZGF0YSA6IEFUICgweDEwMDAwKSB7ICooLmRhdGEp IH0gPnJhbSAvKiBOTyBkZWZhdWx0IEFUPnJvbSAqLwotICAuID0gQUxJR04oMHgyMCk7Ci0gIC5i c3MgOiB7ICooLmJzcykgfSA+cmFtIC8qIE5PIGRlZmF1bHQgQVQ+cm9tICovCisgICAgICBBU0NJ WiAiVGhpcyBpcyBhbm90aGVyXG5cMTIzdHJpbmciCisgICAgICBBU0NJWiAiIgorICAgICAgQVND SVogbm9xdW90ZXMKKyAgfQorICAKICAgL0RJU0NBUkQvIDogeyAqKCopIH0KIH0KZGlmZiAtLWdp dCBhL2xkL3Rlc3RzdWl0ZS9sZC1zY3JpcHRzL3NjcmlwdC5leHAgYi9sZC90ZXN0c3VpdGUvbGQt c2NyaXB0cy9zY3JpcHQuZXhwCmluZGV4IGE1NzRkZGUwMzRjLi41NmUxMmRhOGU2MSAxMDA2NDQK LS0tIGEvbGQvdGVzdHN1aXRlL2xkLXNjcmlwdHMvc2NyaXB0LmV4cAorKysgYi9sZC90ZXN0c3Vp dGUvbGQtc2NyaXB0cy9zY3JpcHQuZXhwCkBAIC0yMjgsNiArMjI4LDcgQEAgZm9yZWFjaCB0ZXN0 X3NjcmlwdCAkdGVzdF9zY3JpcHRfbGlzdCB7CiB9CiAKIHJ1bl9kdW1wX3Rlc3QgImFzY2l6Igor cnVuX2R1bXBfdGVzdCAiYXNjaWkiCiBydW5fZHVtcF90ZXN0ICJhbGlnbi13aXRoLWlucHV0Igog cnVuX2R1bXBfdGVzdCAicHIyMDMwMiIKIHJ1bl9kdW1wX3Rlc3QgIm91dHB1dC1zZWN0aW9uLXR5 cGVzIgotLS0gL2Rldi9udWxsCTIwMjMtMDItMTUgMDg6MDc6MTkuODA5MDAxMDg5ICswMDAwCisr KyBjdXJyZW50L2xkL3Rlc3RzdWl0ZS9sZC1zY3JpcHRzL2FzY2lpLnMJMjAyMy0wMi0xNSAxMTo0 Mzo0OS45ODQ0OTA4NjkgKzAwMDAKQEAgLTAsMCArMSw5IEBACisgICAgLmV4dGVybiBlY2Nfc3Rh cnQKKwkuc2VjdGlvbiAudGV4dAorbWFpbjoKKwkubG9uZyAweDQ1NDQ0RjQzCisJLmxvbmcgZWNj X3N0YXJ0CisJLnNlY3Rpb24gLmRhdGEKKwkubG9uZyAweDlhYmNkZWYwCisJLnNlY3Rpb24gLmJz cworCS5sb25nIDAKLS0tIC9kZXYvbnVsbAkyMDIzLTAyLTE1IDA4OjA3OjE5LjgwOTAwMTA4OSAr MDAwMAorKysgY3VycmVudC9sZC90ZXN0c3VpdGUvbGQtc2NyaXB0cy9hc2NpaS50CTIwMjMtMDIt MTUgMTY6NTE6MTEuMjY1ODQxMzA2ICswMDAwCkBAIC0wLDAgKzEsNTEgQEAKK01FTU9SWSB7Cisg IHJvbSA6IE9SSUdJTiA9IDB4MDAwMDAwLCBMRU5HVEggPSAweDQwMDAwMAorICByYW0gOiBPUklH SU4gPSAweDQwMDAwMCwgTEVOR1RIID0gMHgxMDAwMAorfQorCitfc3RhcnQgPSAweDAwMDAwMDsK K1NFQ1RJT05TCit7CisgIC4gPSAweDEwMDAgKyBTSVpFT0ZfSEVBREVSUzsKKyAgLnRleHQgQUxJ R04gKDB4MTAwKSA6CisKKyAgICB7CisgICAgICBJTkNMVURFICJoZWFkZXIuaW5jIgorCisgICAg ICBGSUxMKDB4RkYpCisgICAgICBlbnRyeSA9IC47CisgICAgICAqKC50ZXh0KQorICAgICAgLiA9 IEFMSUdOKDB4MTAwKTsKKyAgICAgIEFTQ0lJICgxMjgpICJUaGlzIGlzIGEgc3RyaW5nLCAxMjgg Ynl0ZSBsb25nIgorLyogICAgICBBU0NJSSAoMzIpICJUaGlzIGlzIGEgc3RyaW5nIiAqLworICAg ICAgTE9ORyhlY2Nfc3RhcnQpCisgICAgICAuID0gQUxJR04oMTYpOworICAgICAgYWxpZ25fbGFi ZWwgPSAuOworICAgICAgQVNDSVogIlRoaXMgaXMgYW4gdW5hbGlnbmVkIHN0cmluZyIKKyAgICAg IHVuYWxpZ25fbGFiZWwgPSAuOworICAgICAgQllURSgxKQorICAgICAgQllURSgyKQorICAgICAg QllURSgzKQorICAgICAgQllURSg0KQorICAgICAgQllURSg0KQorICAgICAgQllURSg3KQorICAg ICAgQllURSgxKQorICAgICAgQllURSgxKQorICAgICAgLiA9IEFMSUdOKDE2KTsKKyAgICAgIEJZ VEUoMSkKKyAgICAgIC4gPSBBTElHTigxNik7CisgICAgICAvKiBBU0NJSSAoOCkgIlRoaXMgaXMg d2F5IHRvbyBsb25nIiAqLworICAgICAgLiA9IEFMSUdOKDE2KTsKKyAgICAgIEFTQ0lJICg2NCkg IkkgbWVhbnQgdG8gc2F5OiBUaGlzIGlzIHdheSB0b28gbG9uZyIKKyAgICAgIC4gPSBBTElHTigx MDI0KTsKKyAgICAgIEFTQ0lJICg1MTIpICJBIHZlcnkgbG9uZyBzdHJpbmcgZm9sbG93ZWQgYnkg YSAnMDEnIgorICAgICAgQllURSgxKQorICAgICAgZWNjX2VuZCA9IC47CisgICAgfSA+IHJvbQor CisgIC5kYXRhIDogQVQgKDB4NDAwMDAwKSB7ICooLmRhdGEpIH0gPnJhbSAvKiBOTyBkZWZhdWx0 IEFUPnJvbSAqLworICAuID0gQUxJR04oMHgyMCk7CisgIC5ic3MgOiB7ICooLmJzcykgfSA+cmFt IC8qIE5PIGRlZmF1bHQgQVQ+cm9tICovCisgIC9ESVNDQVJELyA6IHsgKigqKSB9Cit9CisKLS0t IC9kZXYvbnVsbAkyMDIzLTAyLTE1IDA4OjA3OjE5LjgwOTAwMTA4OSArMDAwMAorKysgY3VycmVu dC9sZC90ZXN0c3VpdGUvbGQtc2NyaXB0cy9hc2NpaS5kCTIwMjMtMDItMTUgMTc6MjU6MzMuNDA2 MTgxMTAzICswMDAwCkBAIC0wLDAgKzEsMTU1IEBACisjc291cmNlOiBhc2NpaS5zCisjbGQ6IC1U IGFzY2lpLnQKKyNvYmpkdW1wOiAtcyAtaiAudGV4dAorI25vdGFyZ2V0OiBbaXNfYW91dF9mb3Jt YXRdCisjeGZhaWw6IHRpYzR4LSotKiB0aWM1NHgtKi0qCisKKy4qOiAgICAgZmlsZSBmb3JtYXQg LioKKworQ29udGVudHMgb2Ygc2VjdGlvbiAudGV4dDoKKyAxMTAwIDQzNGY0NDQ1IGRlYWRiZWVm IDAwMDAwMDAwIDAwMDAwMDAwICBDT0RFLi4uLi4uLi4uLi4uCisgMTExMCAwMDEyMDAwMCBmMTA4 MDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLgorIDExMjAgMDEwMjAzMDQg MTcwMDAwMDAgMDAwMDQ3MTEgZGVhZGJlZWYgIC4uLi4uLi4uLi5HLi4uLi4KKyAxMTMwIDcwNzI2 ZjY3IDcyNjE2ZDIwIDZlNjE2ZDY1IDAwMDAwMDAwICBwcm9ncmFtIG5hbWUuLi4uCisgMTE0MCA2 NTZkNzA3NCA3OTAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgZW1wdHkuLi4uLi4uLi4uLgorIDEx NTAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4K KyAxMTYwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4uLi4uLi4u Li4uCisgMTE3MCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4u Li4uLi4uLgorIDExODAgNjM2ZjZkNmQgNjU2ZTc0MjAgMzEwYTAwMDAgMDAwMDAwMDAgIGNvbW1l bnQgMS4uLi4uLi4KKyAxMTkwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAu Li4uLi4uLi4uLi4uLi4uCisgMTFhMCA2MzZmNmQ2ZCA2NTZlNzQyMCAzMjBhMDAwMCAwMDAwMDAw MCAgY29tbWVudCAyLi4uLi4uLgorIDExYjAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAw MDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4KKyAxMWMwIDYzNmY2ZDZkIDY1NmU3NDIwIDMzMGEwMDAw IDAwMDAwMDAwICBjb21tZW50IDMuLi4uLi4uCisgMTFkMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAw MDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLgorIDExZTAgNjM2ZjZkNmQgNjU2ZTc0MjAg MzQwYTAwMDAgMDAwMDAwMDAgIGNvbW1lbnQgNC4uLi4uLi4KKyAxMWYwIDAwMDAwMDAwIDAwMDAw MDAwIGRlYWRiZWVmIDQzNGY0NDQ1ICAuLi4uLi4uLi4uLi5DT0RFCisgMTIwMCA0MzRmNDQ0NSAx MDExMDAwMCBmZmZmZmZmZiBmZmZmZmZmZiAgQ09ERS4uLi4uLi4uLi4uLgorIDEyMTAgZmZmZmZm ZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAxMjIwIGZm ZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgMTIz MCBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgor IDEyNDAgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4u Li4KKyAxMjUwIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4u Li4uLi4uCisgMTI2MCBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4u Li4uLi4uLi4uLgorIDEyNzAgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4u Li4uLi4uLi4uLi4uLi4KKyAxMjgwIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZm ICAuLi4uLi4uLi4uLi4uLi4uCisgMTI5MCBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZm ZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIDEyYTAgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYg ZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAxMmIwIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZm ZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgMTJjMCBmZmZmZmZmZiBmZmZmZmZmZiBm ZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIDEyZDAgZmZmZmZmZmYgZmZmZmZm ZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAxMmUwIGZmZmZmZmZmIGZm ZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgMTJmMCBmZmZmZmZm ZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIDEzMDAgNTQ2 ODY5NzMgMjA2OTczMjAgNjEyMDczNzQgNzI2OTZlNjcgIFRoaXMgaXMgYSBzdHJpbmcKKyAxMzEw IDJjMjAzMTMyIDM4MjA2Mjc5IDc0NjUyMDZjIDZmNmU2NzAwICAsIDEyOCBieXRlIGxvbmcuCisg MTMyMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4u LgorIDEzMzAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4u Li4uLi4KKyAxMzQwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4u Li4uLi4uLi4uCisgMTM1MCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4u Li4uLi4uLi4uLi4uLgorIDEzNjAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAg IC4uLi4uLi4uLi4uLi4uLi4KKyAxMzcwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAw MDAwICAuLi4uLi4uLi4uLi4uLi4uCisgMTM4MCAxMDExMDAwMCBmZmZmZmZmZiBmZmZmZmZmZiBm ZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIDEzOTAgNTQ2ODY5NzMgMjA2OTczMjAgNjE2ZTIw NzUgNmU2MTZjNjkgIFRoaXMgaXMgYW4gdW5hbGkKKyAxM2EwIDY3NmU2NTY0IDIwNzM3NDcyIDY5 NmU2NzAwIDAxMDIwMzA0ICBnbmVkIHN0cmluZy4uLi4uCisgMTNiMCAwNDA3MDEwMSBmZmZmZmZm ZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIDEzYzAgMDFmZmZmZmYgZmZm ZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAxM2QwIDQ5MjA2ZDY1 IDYxNmU3NDIwIDc0NmYyMDczIDYxNzkzYTIwICBJIG1lYW50IHRvIHNheTogCisgMTNlMCA1NDY4 Njk3MyAyMDY5NzMyMCA3NzYxNzkyMCA3NDZmNmYyMCAgVGhpcyBpcyB3YXkgdG9vIAorIDEzZjAg NmM2ZjZlNjcgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIGxvbmcuLi4uLi4uLi4uLi4KKyAu Li4uIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4uLi4uLi4uLi4u CisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4u Li4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4u Li4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4u Li4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAg Li4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZm ZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZm ZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZm ZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZm ZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZm IGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZm ZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYg ZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZm ZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBm ZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4u Li4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4K KyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4u Li4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4u Li4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4u Li4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAu Li4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZm ZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZm ZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZm IGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZm ZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYg ZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZm ZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBm ZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZm ZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZm ZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4u LiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgor IC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4u Li4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4u Li4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4u Li4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4u Li4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZm ICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZm ZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYg ZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZm ZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBm ZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZm ZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZm ZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZm ZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZm ZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4u IGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisg Li4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4u LgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4u Li4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4u Li4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4u Li4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYg IC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZm ZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBm ZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZm ZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZm ZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZm ZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZm ZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZm IGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiBmZmZm ZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4g ZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAu Li4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4u CisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAgLi4uLi4uLi4uLi4u Li4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgIC4uLi4uLi4u Li4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmICAuLi4u Li4uLi4uLi4uLi4uCisgLi4uLiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiBmZmZmZmZmZiAg Li4uLi4uLi4uLi4uLi4uLgorIC4uLi4gZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZm ZmYgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZm ZmZmZmZmICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiA0MTIwNzY2NSA3Mjc5MjA2YyA2ZjZlNjcy MCA3Mzc0NzI2OSAgQSB2ZXJ5IGxvbmcgc3RyaQorIC4uLi4gNmU2NzIwNjYgNmY2YzZjNmYgNzc2 NTY0MjAgNjI3OTIwNjEgIG5nIGZvbGxvd2VkIGJ5IGEKKyAuLi4uIDIwMjczMDMxIDI3MDAwMDAw IDAwMDAwMDAwIDAwMDAwMDAwICAgJzAxJy4uLi4uLi4uLi4uCisgLi4uLiAwMDAwMDAwMCAwMDAw MDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gMDAwMDAwMDAg MDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIDAwMDAw MDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiAw MDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLgorIC4u Li4gMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4K KyAuLi4uIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4uLi4uLi4u Li4uCisgLi4uLiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4u Li4uLi4uLgorIC4uLi4gMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4u Li4uLi4uLi4uLi4KKyAuLi4uIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAu Li4uLi4uLi4uLi4uLi4uCisgLi4uLiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAw MCAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAw MDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAw IDAwMDAwMDAwICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAw MDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gMDAwMDAwMDAgMDAwMDAwMDAg MDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIDAwMDAwMDAwIDAwMDAw MDAwIDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiAwMDAwMDAwMCAw MDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gMDAwMDAw MDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIDAw MDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4uLi4uLi4uLi4uCisgLi4u LiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLgor IC4uLi4gMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4u Li4KKyAuLi4uIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4uLi4u Li4uLi4uCisgLi4uLiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4u Li4uLi4uLi4uLgorIC4uLi4gMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4u Li4uLi4uLi4uLi4uLi4KKyAuLi4uIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAw ICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAw MDAwMCAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAg MDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAw MDAwIDAwMDAwMDAwICAuLi4uLi4uLi4uLi4uLi4uCisgLi4uLiAwMDAwMDAwMCAwMDAwMDAwMCAw MDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLgorIC4uLi4gMDAwMDAwMDAgMDAwMDAw MDAgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4KKyAuLi4uIDAxICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAuICAgICAgICAgICAgICAgCisjcGFzcwotLS0gL2Rl di9udWxsCTIwMjMtMDItMTUgMDg6MDc6MTkuODA5MDAxMDg5ICswMDAwCisrKyBjdXJyZW50L2xk L3Rlc3RzdWl0ZS9sZC1zY3JpcHRzL2hlYWRlci5pbmMJMjAyMy0wMi0xNSAxNjo0OTo0NS4wMjYw NDEwMzIgKzAwMDAKQEAgLTAsMCArMSwzNCBAQAorICAgICAgLyogSEVBREVSICovCisgICAgICBG SUxMKDB4RkYpCisgICAgICBRVUFEKDB4RUZCRUFEREU0NTQ0NEY0Myk7CisgICAgICBjcmM2NCA9 IC47CisgICAgICBRVUFEKDApCisgICAgICBlY2Nfc3RhcnQgPSAuOworICAgICAgLyogUHJvZ3Jh bSBFbnRyeSAqLworICAgICAgTE9ORyhlbnRyeSkKKworICAgICAgLyogUHJvZ3JhbSBzaXplICov CisgICAgICBMT05HKGVjY19lbmQgLSBlY2Nfc3RhcnQpCisKKyAgICAgIC8qIFRpbWUgU3RhbXAg Ki8KKyAgICAgIHRpbWVfc2luY2VfZXBvY2ggPSAuOworICAgICAgUVVBRCgwKQorCisgICAgICAv KiAzMiBieXRlcyBoZXJlICovCisgICAgICAvKiBWZXJzaW9uIGluZm8gKi8KKyAgICAgIEJZVEUo MSkKKyAgICAgIEJZVEUoMikKKyAgICAgIEJZVEUoMykKKyAgICAgIEJZVEUoNCkKKyAgICAgIExP TkcoMHgxNykKKyAgICAgIExPTkcoMHgxMTQ3MDAwMCkKKyAgICAgIExPTkcoMHhFRkJFQURERSkK KyAgICAgIC8qIDQ4IGJ5dGVzIGhlcmUgKi8KKyAgICAgIEFTQ0lJICgxNikgInByb2dyYW0gbmFt ZSIKKyAgICAgIC8qIDY0IGJ5dGVzIGhlcmUgKi8KKyAgICAgIEFTQ0lJICg2NCkgImVtcHR5Igor ICAgICAgQVNDSUkgKDMyKSAiY29tbWVudCAxXG4iCisgICAgICBBU0NJSSAoMzIpICJjb21tZW50 IDJcbiIKKyAgICAgIEFTQ0lJICgzMikgImNvbW1lbnQgM1xuIgorICAgICAgQVNDSUkgKDI0KSAi Y29tbWVudCA0XG4iCisgICAgICBRVUFEKDB4NDU0NDRGNDNFRkJFQURERSk7Cg== --------------l2c8XZPpsrR0K05B0WYT9tHt--