From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pj1-x1031.google.com (mail-pj1-x1031.google.com [IPv6:2607:f8b0:4864:20::1031]) by sourceware.org (Postfix) with ESMTPS id 322423858D20; Thu, 26 Oct 2023 17:14:51 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 322423858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 322423858D20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::1031 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1698340494; cv=none; b=bzsdPXow7toJhKSXK9FawyccJ0ZhPIHyzu1CKH2/sNrkTvMHJP5m3rhTg/qhMJRpzlnhRam4b2F3vO/CvyOHBt/Ir9hLIr8sMpHcfs8Lc/7lrrxfNSnvZ5eyQXRvw1eU1n/kKK2tg0h0MHSdI72edghRcYT6H9ghVTgRqTC5Y0I= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1698340494; c=relaxed/simple; bh=bgi887t6sPfFrMn/tuzQe5qapkgKakR3pL32y4KM+XQ=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=GFyVOVRFrS5qUmpSY8rrExXq/sM/hOvPM71770rNLGennFyh/wYuSl+aWaII4J5EV5bPTFeRHdNEX+8kbG9IQM28RHJTBkO9ibAE9Smoqgi8qh2bUg7swhxEc4gWSxfD/Jvg+zbif8lT3h86Cfq2TjmPg2Xgsx5RUqSWKTKfplo= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pj1-x1031.google.com with SMTP id 98e67ed59e1d1-27d425a2dd0so955781a91.2; Thu, 26 Oct 2023 10:14:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1698340490; x=1698945290; darn=gcc.gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=Lj4cG0BYwPdLAXRGcAi1MkFbJ+Fd87CaHpKHlTirvdc=; b=Jcqvaco5NACBdCVy7Cc6pkbVLHKz3QiRUxwhPzc45yoN4gCPWigcu5xcuJ/NfEeYNp Ta5nnusj+lwxT+nh0/O26KDKqlg1POnYGBepzotQs1Cb2AgN2fTYTIeQlWrw+9GeTX7O j7TCfnREMoaM2BkA6CcqLYdfSAD8Fwm5PJ2ZxRXSmGr30vpLN8fPmfxhukr6K3F0cTd4 k8+lZy/jtt4RfydTptHnyXi7zUiS+xfs1gOBnd/nOwpFWI8PGweKTGhonbyCXGhq+/a2 uz4wKzR24Nqg2C7/2CYelbc4h9tJThTdESb9HtKBLh1tvJTj5334RkIVuOX/8/zJFJzE SVAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1698340490; x=1698945290; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Lj4cG0BYwPdLAXRGcAi1MkFbJ+Fd87CaHpKHlTirvdc=; b=pxzPsC1lZfv9Perh//90l+Mmfn/jfyLURG1bXBTpSpkBeHdCkeA5lmCMhQxrr/T0N4 L6e6qbHDXokqNyIPpctRuHjTaMOvU63IFhjkNrV4YBdwmT/24hHrIoXSWaj8YNGaZLur IAdQglafo8kPRhyPLhFIguyJiC5WikxNOeK0ZWdkOwEdcDujHXI9tOjpYMfa25/vdtpk bP3fzpG5z3NZECVTb7zcUqF6p3CDQqRG54cOsUmhHEVHpD4aXtzUmSI/51zIy3lxieaN kf4GuemcEvHroufa+SyId5qKFn0H7edJ34Ca1fIYmS9XpvV+EVdvLkxDn3vCw+QVbj9G 1QIg== X-Gm-Message-State: AOJu0Yyu3KEInVIBFB4WCbUglsuHaySvWBdjEhrLCHQcaH5rFVMZ3b56 29RGjp7WSbkR9/k0rFv8j5vMVowuzV4cdgejV4PDi0GzRew= X-Google-Smtp-Source: AGHT+IGSncRqZ/z7AboELulRntRoeavhGVj007EcVqTG2oRZeSigNtM3yzpXDvAFpA3GJS1/uUgo3D8ARGO0L8AwLHg= X-Received: by 2002:a17:90a:f30d:b0:27d:2cc3:c805 with SMTP id ca13-20020a17090af30d00b0027d2cc3c805mr62251pjb.46.1698340489681; Thu, 26 Oct 2023 10:14:49 -0700 (PDT) MIME-Version: 1.0 From: Paul Richard Thomas Date: Thu, 26 Oct 2023 18:14:38 +0100 Message-ID: Subject: [Patch, fortran] PR104625 ICE in fixup_array_ref, at fortran/resolve.cc:9275 since r10-2912-g70570ec192745095 To: "fortran@gcc.gnu.org" , gcc-patches , Harald Anlauf Content-Type: multipart/mixed; boundary="000000000000993c900608a1b547" X-Spam-Status: No, score=-7.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,HTML_MESSAGE,KAM_NUMSUBJECT,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,WEIRD_PORT 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: --000000000000993c900608a1b547 Content-Type: multipart/alternative; boundary="000000000000993c8f0608a1b545" --000000000000993c8f0608a1b545 Content-Type: text/plain; charset="UTF-8" Hi All, The attached patch fixes the original problem, in which parentheses around the selector in select type constructs caused ICES. Stacked parentheses caused problems in trans-stmt.cc. Rather than tracking this down, the redundant parentheses were removed on resolution of the selector expression. Fixing the primary problem revealed "Unclassifiable statement" errors when using array references of the associate variable and this was fixed as well. Finally, the error triggered by using associate variables associated with non-variable selectors was corrected to ensure that only vector indexed selectors were flagged up as such. The secondary error in associate_55.f90 was corrected for this, since the selector might or might not be vector indexed. Regtests fine - OK for trunk? Paul Fortran: Fix some problems with SELECT TYPE selectors [PR104625]. 2023-10-26 Paul Thomas gcc/fortran PR fortran/104625 * expr.cc (gfc_check_vardef_context): Check that the target does have a vector index before emitting the specific error. * match.cc (copy_ts_from_selector_to_associate): Ensure that class valued operator expressions set the selector rank and use the rank to provide the associate variable with an appropriate array spec. * resolve.cc (resolve_operator): Reduce stacked parentheses to a single pair. (fixup_array_ref): Extract selector symbol from parentheses. gcc/testsuite/ PR fortran/104625 * gfortran.dg/pr104625.f90: New test. * gfortran.dg/associate_55.f90: Change error check text. --000000000000993c8f0608a1b545-- --000000000000993c900608a1b547 Content-Type: text/x-patch; charset="US-ASCII"; name="submit.diff" Content-Disposition: attachment; filename="submit.diff" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lo7g0th20 ZGlmZiAtLWdpdCBhL2djYy9mb3J0cmFuL2V4cHIuY2MgYi9nY2MvZm9ydHJh bi9leHByLmNjCmluZGV4IDY2M2ZlNjNkZWE2Li5jNjY4YmFlZWY4YyAxMDA2 NDQKLS0tIGEvZ2NjL2ZvcnRyYW4vZXhwci5jYworKysgYi9nY2MvZm9ydHJh bi9leHByLmNjCkBAIC02NDc0LDcgKzY0NzQsOCBAQCBnZmNfY2hlY2tfdmFy ZGVmX2NvbnRleHQgKGdmY19leHByKiBlLCBib29sIHBvaW50ZXIsIGJvb2wg YWxsb2Nfb2JqLAogCXsKIAkgIGlmIChjb250ZXh0KQogCSAgICB7Ci0JICAg ICAgaWYgKGFzc29jLT50YXJnZXQtPmV4cHJfdHlwZSA9PSBFWFBSX1ZBUklB QkxFKQorCSAgICAgIGlmIChhc3NvYy0+dGFyZ2V0LT5leHByX3R5cGUgPT0g RVhQUl9WQVJJQUJMRQorCQkgICYmIGdmY19oYXNfdmVjdG9yX2luZGV4IChh c3NvYy0+dGFyZ2V0KSkKIAkJZ2ZjX2Vycm9yICgiJXFzIGF0ICVMIGFzc29j aWF0ZWQgdG8gdmVjdG9yLWluZGV4ZWQgdGFyZ2V0IgogCQkJICAgIiBjYW5u b3QgYmUgdXNlZCBpbiBhIHZhcmlhYmxlIGRlZmluaXRpb24iCiAJCQkgICAi IGNvbnRleHQgKCVzKSIsCmRpZmYgLS1naXQgYS9nY2MvZm9ydHJhbi9tYXRj aC5jYyBiL2djYy9mb3J0cmFuL21hdGNoLmNjCmluZGV4IGM5MjZmMzgwNThm Li4wNTk5NWM2Zjk3ZiAxMDA2NDQKLS0tIGEvZ2NjL2ZvcnRyYW4vbWF0Y2gu Y2MKKysrIGIvZ2NjL2ZvcnRyYW4vbWF0Y2guY2MKQEAgLTYzNDEsMTIgKzYz NDEsMTMgQEAgY29weV90c19mcm9tX3NlbGVjdG9yX3RvX2Fzc29jaWF0ZSAo Z2ZjX2V4cHIgKmFzc29jaWF0ZSwgZ2ZjX2V4cHIgKnNlbGVjdG9yKQogICBl bHNlIGlmIChzZWxlY3Rvci0+dHMudHlwZSA9PSBCVF9DTEFTUwogCSAgICYm IENMQVNTX0RBVEEgKHNlbGVjdG9yKQogCSAgICYmIENMQVNTX0RBVEEgKHNl bGVjdG9yKS0+YXMKLQkgICAmJiByZWYgJiYgcmVmLT50eXBlID09IFJFRl9B UlJBWSkKKwkgICAmJiAoKHJlZiAmJiByZWYtPnR5cGUgPT0gUkVGX0FSUkFZ KQorCSAgICAgICB8fCBzZWxlY3Rvci0+ZXhwcl90eXBlID09IEVYUFJfT1Ap KQogICAgIHsKICAgICAgIC8qIEVuc3VyZSB0aGF0IHRoZSBhcnJheSByZWZl cmVuY2UgdHlwZSBpcyBzZXQuICBXZSBjYW5ub3QgdXNlCiAJIGdmY19yZXNv bHZlX2V4cHIgYXQgdGhpcyBwb2ludCwgc28gdGhlIHVzYWJsZSBwYXJ0cyBv ZgogCSByZXNvbHZlLmNjKHJlc29sdmVfYXJyYXlfcmVmKSBhcmUgZW1wbG95 ZWQgdG8gZG8gaXQuICAqLwotICAgICAgaWYgKHJlZi0+dS5hci50eXBlID09 IEFSX1VOS05PV04pCisgICAgICBpZiAocmVmICYmIHJlZi0+dS5hci50eXBl ID09IEFSX1VOS05PV04pCiAJewogCSAgcmVmLT51LmFyLnR5cGUgPSBBUl9F TEVNRU5UOwogCSAgZm9yIChpbnQgaSA9IDA7IGkgPCByZWYtPnUuYXIuZGlt ZW4gKyByZWYtPnUuYXIuY29kaW1lbjsgaSsrKQpAQCAtNjM2MCw3ICs2MzYx LDcgQEAgY29weV90c19mcm9tX3NlbGVjdG9yX3RvX2Fzc29jaWF0ZSAoZ2Zj X2V4cHIgKmFzc29jaWF0ZSwgZ2ZjX2V4cHIgKnNlbGVjdG9yKQogCSAgICAg IH0KIAl9CiAKLSAgICAgIGlmIChyZWYtPnUuYXIudHlwZSA9PSBBUl9GVUxM KQorICAgICAgaWYgKCFyZWYgfHwgcmVmLT51LmFyLnR5cGUgPT0gQVJfRlVM TCkKIAlzZWxlY3Rvci0+cmFuayA9IENMQVNTX0RBVEEgKHNlbGVjdG9yKS0+ YXMtPnJhbms7CiAgICAgICBlbHNlIGlmIChyZWYtPnUuYXIudHlwZSA9PSBB Ul9TRUNUSU9OKQogCXNlbGVjdG9yLT5yYW5rID0gcmVmLT51LmFyLmRpbWVu OwpAQCAtNjM3MiwxMiArNjM3MywxNSBAQCBjb3B5X3RzX2Zyb21fc2VsZWN0 b3JfdG9fYXNzb2NpYXRlIChnZmNfZXhwciAqYXNzb2NpYXRlLCBnZmNfZXhw ciAqc2VsZWN0b3IpCiAKICAgaWYgKHJhbmspCiAgICAgewotICAgICAgZm9y IChpbnQgaSA9IDA7IGkgPCByZWYtPnUuYXIuZGltZW4gKyByZWYtPnUuYXIu Y29kaW1lbjsgaSsrKQotCWlmIChyZWYtPnUuYXIuZGltZW5fdHlwZVtpXSA9 PSBESU1FTl9FTEVNRU5UCi0JICAgIHx8IChyZWYtPnUuYXIuZGltZW5fdHlw ZVtpXSA9PSBESU1FTl9VTktOT1dOCi0JCSYmIHJlZi0+dS5hci5lbmRbaV0g PT0gTlVMTAotCQkmJiByZWYtPnUuYXIuc3RyaWRlW2ldID09IE5VTEwpKQot CSAgcmFuay0tOworICAgICAgaWYgKHJlZikKKwl7CisJICBmb3IgKGludCBp ID0gMDsgaSA8IHJlZi0+dS5hci5kaW1lbiArIHJlZi0+dS5hci5jb2RpbWVu OyBpKyspCisJICAgIGlmIChyZWYtPnUuYXIuZGltZW5fdHlwZVtpXSA9PSBE SU1FTl9FTEVNRU5UCisJICAgICAgfHwgKHJlZi0+dS5hci5kaW1lbl90eXBl W2ldID09IERJTUVOX1VOS05PV04KKwkJICAmJiByZWYtPnUuYXIuZW5kW2ld ID09IE5VTEwKKwkJICAmJiByZWYtPnUuYXIuc3RyaWRlW2ldID09IE5VTEwp KQorCSAgICAgIHJhbmstLTsKKwl9CiAKICAgICAgIGlmIChyYW5rKQogCXsK ZGlmZiAtLWdpdCBhL2djYy9mb3J0cmFuL3Jlc29sdmUuY2MgYi9nY2MvZm9y dHJhbi9yZXNvbHZlLmNjCmluZGV4IDg2MWY2OWFjMjBmLi45ZjRkYzA3MjY0 NSAxMDA2NDQKLS0tIGEvZ2NjL2ZvcnRyYW4vcmVzb2x2ZS5jYworKysgYi9n Y2MvZm9ydHJhbi9yZXNvbHZlLmNjCkBAIC00MTM4LDYgKzQxMzgsMTYgQEAg cmVzb2x2ZV9vcGVyYXRvciAoZ2ZjX2V4cHIgKmUpCiAgIGJvb2wgZHVhbF9s b2N1c19lcnJvcjsKICAgYm9vbCB0ID0gdHJ1ZTsKIAorICAvKiBSZWR1Y2Ug c3RhY2tlZCBwYXJlbnRoZXNlcyB0byBzaW5nbGUgcGFpciAgKi8KKyAgd2hp bGUgKGUtPmV4cHJfdHlwZSA9PSBFWFBSX09QCisJICYmIGUtPnZhbHVlLm9w Lm9wID09IElOVFJJTlNJQ19QQVJFTlRIRVNFUworCSAmJiBlLT52YWx1ZS5v cC5vcDEtPmV4cHJfdHlwZSA9PSBFWFBSX09QCisJICYmIGUtPnZhbHVlLm9w Lm9wMS0+dmFsdWUub3Aub3AgPT0gSU5UUklOU0lDX1BBUkVOVEhFU0VTKQor ICAgIHsKKyAgICAgIGdmY19leHByICp0bXAgPSBnZmNfY29weV9leHByIChl LT52YWx1ZS5vcC5vcDEpOworICAgICAgZ2ZjX3JlcGxhY2VfZXhwciAoZSwg dG1wKTsKKyAgICB9CisKICAgLyogUmVzb2x2ZSBhbGwgc3Vibm9kZXMtLSBn aXZlIHRoZW0gdHlwZXMuICAqLwogCiAgIHN3aXRjaCAoZS0+dmFsdWUub3Au b3ApCkBAIC05NDUxLDggKzk0NjEsMjUgQEAgZml4dXBfYXJyYXlfcmVmIChn ZmNfZXhwciAqKmV4cHIxLCBnZmNfZXhwciAqZXhwcjIsCiB7CiAgIGdmY19y ZWYgKm5yZWYgPSAoKmV4cHIxKS0+cmVmOwogICBnZmNfc3ltYm9sICpzeW0x ID0gKCpleHByMSktPnN5bXRyZWUtPm4uc3ltOwotICBnZmNfc3ltYm9sICpz eW0yID0gZXhwcjIgPyBleHByMi0+c3ltdHJlZS0+bi5zeW0gOiBOVUxMOwor ICBnZmNfc3ltYm9sICpzeW0yOworICBnZmNfZXhwciAqc2VsZWN0b3IgPSBn ZmNfY29weV9leHByIChleHByMik7CisKICAgKCpleHByMSktPnJhbmsgPSBy YW5rOworICBpZiAoc2VsZWN0b3IpCisgICAgeworICAgICAgZ2ZjX3Jlc29s dmVfZXhwciAoc2VsZWN0b3IpOworICAgICAgaWYgKHNlbGVjdG9yLT5leHBy X3R5cGUgPT0gRVhQUl9PUAorCSAgJiYgc2VsZWN0b3ItPnZhbHVlLm9wLm9w ID09IElOVFJJTlNJQ19QQVJFTlRIRVNFUykKKwlzeW0yID0gc2VsZWN0b3It PnZhbHVlLm9wLm9wMS0+c3ltdHJlZS0+bi5zeW07CisgICAgICBlbHNlIGlm IChzZWxlY3Rvci0+ZXhwcl90eXBlID09IEVYUFJfVkFSSUFCTEUKKwkgICAg ICAgfHwgc2VsZWN0b3ItPmV4cHJfdHlwZSA9PSBFWFBSX0ZVTkNUSU9OKQor CXN5bTIgPSBzZWxlY3Rvci0+c3ltdHJlZS0+bi5zeW07CisgICAgICBlbHNl CisJZ2NjX3VucmVhY2hhYmxlICgpOworICAgIH0KKyAgZWxzZQorICAgIHN5 bTIgPSBOVUxMOworCiAgIGlmIChzeW0xLT50cy50eXBlID09IEJUX0NMQVNT KQogICAgIHsKICAgICAgIGlmICgoKmV4cHIxKS0+dHMudHlwZSAhPSBCVF9D TEFTUykKZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcv YXNzb2NpYXRlXzU1LmY5MCBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcv YXNzb2NpYXRlXzU1LmY5MAppbmRleCAyYjllOGM3MjdmOS4uMjQ1ZGJmYzcy MTggMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvYXNz b2NpYXRlXzU1LmY5MAorKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2Fzc29jaWF0ZV81NS5mOTAKQEAgLTI2LDcgKzI2LDcgQEAgY29udGFpbnMK ICAgICBjbGFzcyh0ZXN0X3QpLCBpbnRlbnQoaW5vdXQpIDo6IG9iagogICAg IGludGVnZXIsIGludGVudChpbikgOjogYQogICAgIGFzc29jaWF0ZSAoc3Rh dGUgPT4gb2JqJXN0YXRlKFRFU1RfU1RBVEVTKSkgISB7IGRnLWVycm9yICJu byBJTVBMSUNJVCB0eXBlIiB9Ci0gICAgICBzdGF0ZSA9IGEgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAhIHsgZGctZXJyb3IgInZlY3Rvci1p bmRleGVkIHRhcmdldCIgfQorICAgICAgc3RhdGUgPSBhICAhIHsgZGctZXJy b3IgImNhbm5vdCBiZSB1c2VkIGluIGEgdmFyaWFibGUgZGVmaW5pdGlvbiBj b250ZXh0IiB9CiAhICAgICAgc3RhdGUoVEVTVF9TVEFURSkgPSBhCiAgICAg ZW5kIGFzc29jaWF0ZQogICBlbmQgc3Vicm91dGluZSB0ZXN0X2FsdGVyX3N0 YXRlMgo= --000000000000993c900608a1b547 Content-Type: text/x-fortran; charset="US-ASCII"; name="pr104625.f90" Content-Disposition: attachment; filename="pr104625.f90" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lo7g1cgb1 ISB7IGRnLWRvIGNvbXBpbGUgfQohCiEgQ2hlY2sgdGhlIGZpeCBmb3IgUFIx MDQ2MjUgaW4gd2hpY2ggdGhlIHNlbGVjdG9ycyBpbiBwYXJlbnRoZXNlcyB1 c2VkCiEgdG8gY2F1c2UgSUNFcy4gVGhlICJVbmNsYXNzaWZpYWJsZSBzdGF0 ZW1lbnQiIGVycm9ycyB3ZXJlIHVuY292ZXJlZCBvbmNlCiEgdGhlIElDRXMg d2VyZSBmaXhlZC4KIQpwcm9ncmFtIHAKICBpbXBsaWNpdCBub25lCiAgdHlw ZSB0CiAgICAgaW50ZWdlciA6OiBhCiAgZW5kIHR5cGUKY29udGFpbnMKICBz dWJyb3V0aW5lIHMoeCkKISAgIGNsYXNzKHQpIDo6IHggICAgICAgICAgISBX YXMgT0sKICAgIGNsYXNzKHQpIDo6IHgoOikgICAgICAgISBVc2VkIHRvIElD RSBpbiBjb21iaW5hdGlvbiB3aXRoIGJlbG93CiAgICBjbGFzcyh0KSwgYWxs b2NhdGFibGUgOjogcig6KQoKICAgIHNlbGVjdCB0eXBlICh5ID0+ICB4KSAg ISBPSwogICAgICB0eXBlIGlzICh0KQogICAgICAgIHklYSA9IDk5CiAgICBl bmQgc2VsZWN0CiAgICBzZWxlY3QgdHlwZSAoeiA9PiAoeCkpICAhIFVzZWQg dG8gSUNFCiAgICAgIHR5cGUgaXMgKHQpCiAgICAgICAgciA9IHooMSkgICAg ICAgICAgICAhIFVzZWQgdG8gZ2l2ZSAiVW5jbGFzc2lmaWFibGUgc3RhdGVt ZW50IiBlcnJvcgogICAgICAgIHolYSA9IDk5ICAgICAgICAgICAgISB7IGRn LWVycm9yICJjYW5ub3QgYmUgdXNlZCBpbiBhIHZhcmlhYmxlIGRlZmluaXRp b24iIH0KICAgIGVuZCBzZWxlY3QKICAgIHNlbGVjdCB0eXBlICh1ID0+ICgo eCkpKSAhIFVzZWQgdG8gSUNFCiAgICAgIHR5cGUgaXMgKHQpCiAgICAgICAg ciA9IHUoMSkgICAgICAgICAgICAhIFVzZWQgdG8gZ2l2ZSAiVW5jbGFzc2lm aWFibGUgc3RhdGVtZW50IiBlcnJvcgogICAgICAgIHUlYSA9IDk5ICAgICAg ICAgICAgISB7IGRnLWVycm9yICJjYW5ub3QgYmUgdXNlZCBpbiBhIHZhcmlh YmxlIGRlZmluaXRpb24iIH0KICAgIGVuZCBzZWxlY3QKICBlbmQKZW5kCg== --000000000000993c900608a1b547--