From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.smtpout.orange.fr (smtp-13.smtpout.orange.fr [80.12.242.13]) by sourceware.org (Postfix) with ESMTPS id E48553858CDB for ; Fri, 7 Oct 2022 20:26:29 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E48553858CDB Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=orange.fr Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=orange.fr Received: from [192.168.1.17] ([86.215.174.255]) by smtp.orange.fr with ESMTPA id gtvGozRKdEkSDgtvGo06ZI; Fri, 07 Oct 2022 22:26:20 +0200 X-ME-Helo: [192.168.1.17] X-ME-Auth: bW9yaW4tbWlrYWVsQG9yYW5nZS5mcg== X-ME-Date: Fri, 07 Oct 2022 22:26:20 +0200 X-ME-IP: 86.215.174.255 Content-Type: multipart/mixed; boundary="------------6dfftixoCxhDWKIZ0TyyEL16" Message-ID: <43da1a08-ddc3-bb5c-6f64-cf17f891e35e@orange.fr> Date: Fri, 7 Oct 2022 22:26:18 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.3.1 From: Mikael Morin Subject: [PATCH, v3] Fortran: error recovery for invalid types in array constructors [PR107000] To: Harald Anlauf Cc: gcc-patches , fortran References: <1bf3b7b5-39ac-0c94-256c-f739a4746a7b@orange.fr> <97dd508f-83b0-5ed0-8cb5-f4f7c8fe08e6@orange.fr> <05a23138-adcd-2526-698c-1fa846f1810b@orange.fr> <05f415c0-80bc-c04e-a142-1251bf82bb1d@gmx.de> <30b93c16-9be9-d2b1-b6c8-c34f4ab8cfff@orange.fr> Content-Language: en-US In-Reply-To: <30b93c16-9be9-d2b1-b6c8-c34f4ab8cfff@orange.fr> X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00,FREEMAIL_FROM,GIT_PATCH_0,JMQ_SPF_NEUTRAL,KAM_DMARC_STATUS,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=unavailable 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. --------------6dfftixoCxhDWKIZ0TyyEL16 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Le 07/10/2022 à 21:47, Mikael Morin a écrit : > Let me have a look. The attached patch works with your test, I just moved the checks into the loops. I'm now checking the patch against the full fortran testsuite. I'm (finally) fine with that version, what do you think of it? --------------6dfftixoCxhDWKIZ0TyyEL16 Content-Type: text/x-patch; charset=UTF-8; name="pr107000_v3.diff" Content-Disposition: attachment; filename="pr107000_v3.diff" Content-Transfer-Encoding: base64 RnJvbSBhMmIzOTNjYWIzODRhMDgxNjQ5NDY5MTZmZjk2ZGQ1NzZlYmY3Yzk3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBIYXJhbGQgQW5sYXVmIDxhbmxhdWZAZ214LmRlPgpE YXRlOiBUdWUsIDQgT2N0IDIwMjIgMjM6MDQ6MDYgKzAyMDAKU3ViamVjdDogW1BBVENIXSBG b3J0cmFuOiBlcnJvciByZWNvdmVyeSBmb3IgaW52YWxpZCB0eXBlcyBpbiBhcnJheQogY29u c3RydWN0b3JzIFtQUjEwNzAwMF0KCmdjYy9mb3J0cmFuL0NoYW5nZUxvZzoKCglQUiBmb3J0 cmFuLzEwNzAwMAoJKiBhcml0aC5jYyAoZ2ZjX2FyaXRoX2Vycm9yKTogRGVmaW5lIGVycm9y IG1lc3NhZ2UgZm9yCglBUklUSF9JTlZBTElEX1RZUEUuCgkocmVkdWNlX3VuYXJ5KTogQ2F0 Y2ggYXJpdGhtZXRpYyBleHByZXNzaW9ucyB3aXRoIGludmFsaWQgdHlwZS4KCShyZWR1Y2Vf YmluYXJ5X2FjKTogTGlrZXdpc2UuCgkocmVkdWNlX2JpbmFyeV9jYSk6IExpa2V3aXNlLgoJ KHJlZHVjZV9iaW5hcnlfYWEpOiBMaWtld2lzZS4KCShldmFsX2ludHJpbnNpYyk6IExpa2V3 aXNlLgoJKGdmY19yZWFsMmNvbXBsZXgpOiBTb3VyY2UgZXhwcmVzc2lvbiBtdXN0IGJlIG9m IHR5cGUgUkVBTC4KCSogZ2ZvcnRyYW4uaCAoZW51bSBhcml0aCk6IEFkZCBBUklUSF9JTlZB TElEX1RZUEUuCgpnY2MvdGVzdHN1aXRlL0NoYW5nZUxvZzoKCglQUiBmb3J0cmFuLzEwNzAw MAoJKiBnZm9ydHJhbi5kZy9wcjEwNzAwMC5mOTA6IE5ldyB0ZXN0LgoKQ28tYXV0aG9yZWQt Ynk6IE1pa2FlbCBNb3JpbiA8bWlrYWVsQGdjYy5nbnUub3JnPgotLS0KIGdjYy9mb3J0cmFu L2FyaXRoLmNjICAgICAgICAgICAgICAgICAgIHwgMzAgKysrKysrKysrKysrKy0tLQogZ2Nj L2ZvcnRyYW4vZ2ZvcnRyYW4uaCAgICAgICAgICAgICAgICAgfCAgMiArLQogZ2NjL3Rlc3Rz dWl0ZS9nZm9ydHJhbi5kZy9wcjEwNzAwMC5mOTAgfCA1MCArKysrKysrKysrKysrKysrKysr KysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA3NiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9u cygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvcHIx MDcwMDAuZjkwCgpkaWZmIC0tZ2l0IGEvZ2NjL2ZvcnRyYW4vYXJpdGguY2MgYi9nY2MvZm9y dHJhbi9hcml0aC5jYwppbmRleCBkNTcwNTlhMzc1Zi4uMDg2YjFmODU2YjEgMTAwNjQ0Ci0t LSBhL2djYy9mb3J0cmFuL2FyaXRoLmNjCisrKyBiL2djYy9mb3J0cmFuL2FyaXRoLmNjCkBA IC0xMTgsNiArMTE4LDkgQEAgZ2ZjX2FyaXRoX2Vycm9yIChhcml0aCBjb2RlKQogICAgIGNh c2UgQVJJVEhfV1JPTkdDT05DQVQ6CiAgICAgICBwID0gR18oIklsbGVnYWwgdHlwZSBpbiBj aGFyYWN0ZXIgY29uY2F0ZW5hdGlvbiBhdCAlTCIpOwogICAgICAgYnJlYWs7CisgICAgY2Fz ZSBBUklUSF9JTlZBTElEX1RZUEU6CisgICAgICBwID0gR18oIkludmFsaWQgdHlwZSBpbiBh cml0aG1ldGljIG9wZXJhdGlvbiBhdCAlTCIpOworICAgICAgYnJlYWs7CiAKICAgICBkZWZh dWx0OgogICAgICAgZ2ZjX2ludGVybmFsX2Vycm9yICgiZ2ZjX2FyaXRoX2Vycm9yKCk6IEJh ZCBlcnJvciBjb2RlIik7CkBAIC0xMjY4LDcgKzEyNzEsMTAgQEAgcmVkdWNlX3VuYXJ5IChh cml0aCAoKmV2YWwpIChnZmNfZXhwciAqLCBnZmNfZXhwciAqKiksIGdmY19leHByICpvcCwK ICAgaGVhZCA9IGdmY19jb25zdHJ1Y3Rvcl9jb3B5IChvcC0+dmFsdWUuY29uc3RydWN0b3Ip OwogICBmb3IgKGMgPSBnZmNfY29uc3RydWN0b3JfZmlyc3QgKGhlYWQpOyBjOyBjID0gZ2Zj X2NvbnN0cnVjdG9yX25leHQgKGMpKQogICAgIHsKLSAgICAgIHJjID0gcmVkdWNlX3VuYXJ5 IChldmFsLCBjLT5leHByLCAmcik7CisgICAgICBpZiAoYy0+ZXhwci0+ZXhwcl90eXBlID09 IEVYUFJfT1AgJiYgYy0+ZXhwci0+dHMudHlwZSA9PSBCVF9VTktOT1dOKQorCXJjID0gQVJJ VEhfSU5WQUxJRF9UWVBFOworICAgICAgZWxzZQorCXJjID0gcmVkdWNlX3VuYXJ5IChldmFs LCBjLT5leHByLCAmcik7CiAKICAgICAgIGlmIChyYyAhPSBBUklUSF9PSykKIAlicmVhazsK QEAgLTEzMDksNiArMTMxNSw4IEBAIHJlZHVjZV9iaW5hcnlfYWMgKGFyaXRoICgqZXZhbCkg KGdmY19leHByICosIGdmY19leHByICosIGdmY19leHByICoqKSwKIAogICAgICAgaWYgKGMt PmV4cHItPmV4cHJfdHlwZSA9PSBFWFBSX0NPTlNUQU5UKQogICAgICAgICByYyA9IGV2YWwg KGMtPmV4cHIsIG9wMiwgJnIpOworICAgICAgZWxzZSBpZiAoYy0+ZXhwci0+ZXhwcl90eXBl ID09IEVYUFJfT1AgJiYgYy0+ZXhwci0+dHMudHlwZSA9PSBCVF9VTktOT1dOKQorCXJjID0g QVJJVEhfSU5WQUxJRF9UWVBFOwogICAgICAgZWxzZQogCXJjID0gcmVkdWNlX2JpbmFyeV9h YyAoZXZhbCwgYy0+ZXhwciwgb3AyLCAmcik7CiAKQEAgLTEzNjEsNiArMTM2OSw4IEBAIHJl ZHVjZV9iaW5hcnlfY2EgKGFyaXRoICgqZXZhbCkgKGdmY19leHByICosIGdmY19leHByICos IGdmY19leHByICoqKSwKIAogICAgICAgaWYgKGMtPmV4cHItPmV4cHJfdHlwZSA9PSBFWFBS X0NPTlNUQU5UKQogCXJjID0gZXZhbCAob3AxLCBjLT5leHByLCAmcik7CisgICAgICBlbHNl IGlmIChjLT5leHByLT5leHByX3R5cGUgPT0gRVhQUl9PUCAmJiBjLT5leHByLT50cy50eXBl ID09IEJUX1VOS05PV04pCisJcmMgPSBBUklUSF9JTlZBTElEX1RZUEU7CiAgICAgICBlbHNl CiAJcmMgPSByZWR1Y2VfYmluYXJ5X2NhIChldmFsLCBvcDEsIGMtPmV4cHIsICZyKTsKIApA QCAtMTQyMCwxNCArMTQzMCwxOSBAQCByZWR1Y2VfYmluYXJ5X2FhIChhcml0aCAoKmV2YWwp IChnZmNfZXhwciAqLCBnZmNfZXhwciAqLCBnZmNfZXhwciAqKiksCiAgICAgICAgYyAmJiBk OwogICAgICAgIGMgPSBnZmNfY29uc3RydWN0b3JfbmV4dCAoYyksIGQgPSBnZmNfY29uc3Ry dWN0b3JfbmV4dCAoZCkpCiAgICAgeworICAgICAgaWYgKChjLT5leHByLT5leHByX3R5cGUg PT0gRVhQUl9PUCAmJiBjLT5leHByLT50cy50eXBlID09IEJUX1VOS05PV04pCisJICB8fCAo ZC0+ZXhwci0+ZXhwcl90eXBlID09IEVYUFJfT1AgJiYgZC0+ZXhwci0+dHMudHlwZSA9PSBC VF9VTktOT1dOKSkKKwlyYyA9IEFSSVRIX0lOVkFMSURfVFlQRTsKKyAgICAgIGVsc2UKIAly YyA9IHJlZHVjZV9iaW5hcnkgKGV2YWwsIGMtPmV4cHIsIGQtPmV4cHIsICZyKTsKLQlpZiAo cmMgIT0gQVJJVEhfT0spCi0JICBicmVhazsKIAotCWdmY19yZXBsYWNlX2V4cHIgKGMtPmV4 cHIsIHIpOworICAgICAgaWYgKHJjICE9IEFSSVRIX09LKQorCWJyZWFrOworCisgICAgICBn ZmNfcmVwbGFjZV9leHByIChjLT5leHByLCByKTsKICAgICB9CiAKLSAgaWYgKGMgfHwgZCkK KyAgaWYgKHJjID09IEFSSVRIX09LICYmIChjIHx8IGQpKQogICAgIHJjID0gQVJJVEhfSU5D T01NRU5TVVJBVEU7CiAKICAgaWYgKHJjICE9IEFSSVRIX09LKQpAQCAtMTYzOCw2ICsxNjUz LDggQEAgZXZhbF9pbnRyaW5zaWMgKGdmY19pbnRyaW5zaWNfb3Agb3AsCiAgIGVsc2UKICAg ICByYyA9IHJlZHVjZV9iaW5hcnkgKGV2YWwuZjMsIG9wMSwgb3AyLCAmcmVzdWx0KTsKIAor ICBpZiAocmMgPT0gQVJJVEhfSU5WQUxJRF9UWVBFKQorICAgIGdvdG8gcnVudGltZTsKIAog ICAvKiBTb21ldGhpbmcgd2VudCB3cm9uZy4gICovCiAgIGlmIChvcCA9PSBJTlRSSU5TSUNf UE9XRVIgJiYgcmMgPT0gQVJJVEhfUFJPSElCSVQpCkBAIC0yMjM4LDYgKzIyNTUsOSBAQCBn ZmNfcmVhbDJjb21wbGV4IChnZmNfZXhwciAqc3JjLCBpbnQga2luZCkKICAgYXJpdGggcmM7 CiAgIGJvb2wgZGlkX3dhcm4gPSBmYWxzZTsKIAorICBpZiAoc3JjLT50cy50eXBlICE9IEJU X1JFQUwpCisgICAgcmV0dXJuIE5VTEw7CisKICAgcmVzdWx0ID0gZ2ZjX2dldF9jb25zdGFu dF9leHByIChCVF9DT01QTEVYLCBraW5kLCAmc3JjLT53aGVyZSk7CiAKICAgbXBjX3NldF9m ciAocmVzdWx0LT52YWx1ZS5jb21wbGV4LCBzcmMtPnZhbHVlLnJlYWwsIEdGQ19NUENfUk5E X01PREUpOwpkaWZmIC0tZ2l0IGEvZ2NjL2ZvcnRyYW4vZ2ZvcnRyYW4uaCBiL2djYy9mb3J0 cmFuL2dmb3J0cmFuLmgKaW5kZXggNGJhYmQ3NzkyNGIuLmZjMGFhNTFkZjU3IDEwMDY0NAot LS0gYS9nY2MvZm9ydHJhbi9nZm9ydHJhbi5oCisrKyBiL2djYy9mb3J0cmFuL2dmb3J0cmFu LmgKQEAgLTIyNiw3ICsyMjYsNyBAQCBlbnVtIGdmY19pbnRyaW5zaWNfb3AKIGVudW0gYXJp dGgKIHsgQVJJVEhfT0sgPSAxLCBBUklUSF9PVkVSRkxPVywgQVJJVEhfVU5ERVJGTE9XLCBB UklUSF9OQU4sCiAgIEFSSVRIX0RJVjAsIEFSSVRIX0lOQ09NTUVOU1VSQVRFLCBBUklUSF9B U1lNTUVUUklDLCBBUklUSF9QUk9ISUJJVCwKLSAgQVJJVEhfV1JPTkdDT05DQVQKKyAgQVJJ VEhfV1JPTkdDT05DQVQsIEFSSVRIX0lOVkFMSURfVFlQRQogfTsKIAogLyogU3RhdGVtZW50 cy4gICovCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL3ByMTA3MDAw LmY5MCBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvcHIxMDcwMDAuZjkwCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4zMDI4OTA3OGM1NwotLS0gL2Rldi9u dWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvcHIxMDcwMDAuZjkwCkBAIC0w LDAgKzEsNTAgQEAKKyEgeyBkZy1kbyBjb21waWxlIH0KKyEgUFIgZm9ydHJhbi8xMDcwMDAg LSBJQ0UgaW4gZ2ZjX3JlYWwyY29tcGxleCwgcmVkdWNlX3VuYXJ5LCByZWR1Y2VfYmluYXJ5 XyoKKyEgQ29udHJpYnV0ZWQgYnkgRy5TdGVpbm1ldHoKKworcHJvZ3JhbSBwCisgIHJlYWwg ICAgOjogeSgxKQorICBjb21wbGV4IDo6IHgoMSkKKyAgeCA9ICgxLjAsIDIuMCkgKiBbcmVh bCA6OiAtJzEnXSAgICAhIHsgZGctZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBv cGVyYXRvciIgfQorICB4ID0gKDEuMCwgMi4wKSAqIFtjb21wbGV4IDo6ICsnMSddICEgeyBk Zy1lcnJvciAiT3BlcmFuZCBvZiB1bmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHggPSBb Y29tcGxleCA6OiAtJzEnXSAqICgxLjAsIDIuMCkgISB7IGRnLWVycm9yICJPcGVyYW5kIG9m IHVuYXJ5IG51bWVyaWMgb3BlcmF0b3IiIH0KKyAgeSA9IFtjb21wbGV4IDo6IC0nMSddICog MiAgICAgICAgICAhIHsgZGctZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVy YXRvciIgfQorICB5ID0gMiAqIFtjb21wbGV4IDo6IC0nMSddICAgICAgICAgICEgeyBkZy1l cnJvciAiT3BlcmFuZCBvZiB1bmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHkgPSAyICog W2NvbXBsZXggOjogLSgudHJ1ZS4pXSAgICAgISB7IGRnLWVycm9yICJPcGVyYW5kIG9mIHVu YXJ5IG51bWVyaWMgb3BlcmF0b3IiIH0KKyAgeSA9IFtjb21wbGV4IDo6IC0oLnRydWUuKV0g KiAyICAgICAhIHsgZGctZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRv ciIgfQorICBwcmludCAqLCAtIFtyZWFsIDo6ICAtJzEnIF0gICAgICAgICEgeyBkZy1lcnJv ciAiT3BlcmFuZCBvZiB1bmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHByaW50ICosIC0g W3JlYWwgOjogWy0nMSddXSAgICAgICAgISB7IGRnLWVycm9yICJPcGVyYW5kIG9mIHVuYXJ5 IG51bWVyaWMgb3BlcmF0b3IiIH0KKyAgcHJpbnQgKiwgLSBbcmVhbCA6OiAgKygudHJ1ZS4p IF0gICAhIHsgZGctZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRvciIg fQorICBwcmludCAqLCAtIFtyZWFsIDo6IFsrKC50cnVlLildXSAgICEgeyBkZy1lcnJvciAi T3BlcmFuZCBvZiB1bmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHByaW50ICosIDIgKiBb cmVhbCA6OiAgLScxJyBdICAgICAgISB7IGRnLWVycm9yICJPcGVyYW5kIG9mIHVuYXJ5IG51 bWVyaWMgb3BlcmF0b3IiIH0KKyAgcHJpbnQgKiwgMiAqIFtyZWFsIDo6ICgtJzEnKV0gICAg ICAhIHsgZGctZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRvciIgfQor ICBwcmludCAqLCBbcmVhbCA6OiAgLScxJyBdICogMiAgICAgICEgeyBkZy1lcnJvciAiT3Bl cmFuZCBvZiB1bmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHByaW50ICosIFtyZWFsIDo6 ICgtJzEnKV0gKiAyICAgICAgISB7IGRnLWVycm9yICJPcGVyYW5kIG9mIHVuYXJ5IG51bWVy aWMgb3BlcmF0b3IiIH0KKyAgcHJpbnQgKiwgMiAqIFtpbnRlZ2VyIDo6IC0oJzEnKV0gICAh IHsgZGctZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRvciIgfQorICBw cmludCAqLCBbaW50ZWdlciA6OiAtKCcxJyldICogMiAgICEgeyBkZy1lcnJvciAiT3BlcmFu ZCBvZiB1bmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHByaW50ICosIDIgKiBbcmVhbCA6 OiAwLCAoLScxJyldICAgISB7IGRnLWVycm9yICJPcGVyYW5kIG9mIHVuYXJ5IG51bWVyaWMg b3BlcmF0b3IiIH0KKyAgcHJpbnQgKiwgW3JlYWwgOjogMCwgKC0nMScpXSAqIDIgICAhIHsg ZGctZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRvciIgfQorICBwcmlu dCAqLCAyICogW3JlYWwgOjogMCwgLScxJ10gICAgICEgeyBkZy1lcnJvciAiT3BlcmFuZCBv ZiB1bmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHByaW50ICosIFtyZWFsIDo6IDAsIC0n MSddICogMiAgICAgISB7IGRnLWVycm9yICJPcGVyYW5kIG9mIHVuYXJ5IG51bWVyaWMgb3Bl cmF0b3IiIH0KKyAgcHJpbnQgKiwgMiAqIFtyZWFsIDo6IDAsIDErJzEnXSAgICAhIHsgZGct ZXJyb3IgIk9wZXJhbmRzIG9mIGJpbmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHByaW50 ICosIFtyZWFsIDo6IDAsIDErJzEnXSAqIDIgICAgISB7IGRnLWVycm9yICJPcGVyYW5kcyBv ZiBiaW5hcnkgbnVtZXJpYyBvcGVyYXRvciIgfQorICBwcmludCAqLCBbcmVhbCA6OiAxLCAr KC50cnVlLildICAgICEgeyBkZy1lcnJvciAiT3BlcmFuZCBvZiB1bmFyeSBudW1lcmljIG9w ZXJhdG9yIiB9CisgIHByaW50ICosIFtyZWFsIDo6IDEsIC0oLnRydWUuKV0gICAgISB7IGRn LWVycm9yICJPcGVyYW5kIG9mIHVuYXJ5IG51bWVyaWMgb3BlcmF0b3IiIH0KKyAgcHJpbnQg KiwgMiAqIFtyZWFsIDo6IDEsICsoLnRydWUuKV0gICAgICAhIHsgZGctZXJyb3IgIk9wZXJh bmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRvciIgfQorICBwcmludCAqLCBbcmVhbCA6OiAx LCArKC50cnVlLildICogMiAgICAgICEgeyBkZy1lcnJvciAiT3BlcmFuZCBvZiB1bmFyeSBu dW1lcmljIG9wZXJhdG9yIiB9CisgIHByaW50ICosIFsxLCAyXSAqIFtyZWFsIDo6IDEsICso LnRydWUuKV0gISB7IGRnLWVycm9yICJPcGVyYW5kIG9mIHVuYXJ5IG51bWVyaWMgb3BlcmF0 b3IiIH0KKyAgcHJpbnQgKiwgW3JlYWwgOjogMSwgKygudHJ1ZS4pXSAqIFsxLCAyXSAhIHsg ZGctZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRvciIgfQorICBwcmlu dCAqLCBbcmVhbCA6OiAxLCAyXSAqIFtyZWFsIDo6IDEsICsoLnRydWUuKV0gISB7IGRnLWVy cm9yICJPcGVyYW5kIG9mIHVuYXJ5IG51bWVyaWMgb3BlcmF0b3IiIH0KKyAgcHJpbnQgKiwg W3JlYWwgOjogMSwgKygudHJ1ZS4pXSAqIFtyZWFsIDo6IDEsIDJdICEgeyBkZy1lcnJvciAi T3BlcmFuZCBvZiB1bmFyeSBudW1lcmljIG9wZXJhdG9yIiB9CisgIHByaW50ICosIFtyZWFs IDo6IDAsIC0nMSddICogW3JlYWwgOjogMSwgKygrKC50cnVlLikpXSAhIHsgZGctZXJyb3Ig Ik9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRvciIgfQorICBwcmludCAqLCBbcmVh bCA6OiAxLCBbKCsoLnRydWUuKSldXSAqIFtyZWFsIDo6IDAsIFsoLScxJyldXSAhIHsgZGct ZXJyb3IgIk9wZXJhbmQgb2YgdW5hcnkgbnVtZXJpYyBvcGVyYXRvciIgfQorCisgICEgTGVn YWw6CisgIHByaW50ICosIDIgKiBbcmVhbCA6OiAxLCBbMl0sIDNdCisgIHByaW50ICosIFty ZWFsIDo6IDEsIFsyXSwgM10gKiAyCisgIHByaW50ICosIFtyZWFsIDo6IDEsIFsyXSwgM10g KiBbcmVhbCA6OiAxLCBbMl0sIDNdCisgIHByaW50ICosIFtyZWFsIDo6IDEsIFsyXSwgM10g KiBbaW50ZWdlciA6OiAxLCBbMl0sIDNdCisgIHByaW50ICosIFtyZWFsIDo6IDEsIFsyXSwg M10gKiBbMSwgWzJdLCAzXQorICBwcmludCAqLCBbcmVhbCA6OiAxLCAgaHVnZSgyLjApXSAq IFtyZWFsIDo6IDEsICByZWFsKDEuMCldCisgIHByaW50ICosIFtyZWFsIDo6IDEsIC0oaHVn ZSgyLjApKV0gKiBbcmVhbCA6OiAxLCArKHJlYWwoMSkpXQorZW5kCi0tIAoyLjM1LjEKCg== --------------6dfftixoCxhDWKIZ0TyyEL16--