<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/71308>71308</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Clang crash: Assertion `DT.dominates(RHead, LHead) && "No dominance between recurrences used by one SCEV?"' failed.
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
shao-hua-li
</td>
</tr>
</table>
<pre>
clang at -O3 crashes on the test case.
Bisected to dae5cd73cb38b7176f10ffa527ae4d083fdc0efe, which was committed by @fhahn
Compiler explorer: https://godbolt.org/z/4Pjqc7noM
```console
% cat a.c
int a, b, c, d, e, f;
long g, i;
static char j;
char k;
int l[100][10];
static char *m = &j;
static char **n = &m;
int o() {
if (d)
return 1;
if (b || c && a)
e = 0;
return e;
}
int p() {
int h = o();
return h;
}
void q() {
for (;;) {
f = 26;
for (; f >= 9; f--)
**n = 0;
for (; i; i = **n + i)
for (; (char)(p() + g + f + *m); k = k + 1)
l[f + **n + i][k] = 3;
}
}
void r() {
q();
*n = 0;
}
int main() {}
%
% clang -O3 a.c
clang-17: /tmp/tmpugc75gu1/tmpuqgk6cd5/llvm/lib/Analysis/ScalarEvolution.cpp:739: std::optional<int> CompareSCEVComplexity(llvm::EquivalenceClasses<const llvm
::SCEV*>&, llvm::EquivalenceClasses<const llvm::Value*>&, const llvm::LoopInfo*, const llvm::SCEV*, const llvm::SCEV*, llvm::DominatorTree&, unsigned int): As
sertion `DT.dominates(RHead, LHead) && "No dominance between recurrences used by one SCEV?"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: /zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/clang-17 -cc1 -triple x86_64-unknown
-linux-gnu -emit-obj -dumpdir a- -disable-free -clear-ast-before-backend -main-file-name a.c -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=n
one -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fcover
age-compilation-dir=/zdata/shaoli/realsmith/watchdir/reduced/case_3fHl3yik -resource-dir /zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f1
0ffa527ae4d083fdc0efe/lib/clang/17 -internal-isystem /zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/lib/clang/17/i
nclude -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include -internal-externc-isystem
/usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O3 -fdebug-compilation-dir=/zdata/shaoli/realsmith/wa
tchdir/reduced/case_3fHl3yik -ferror-limit 19 -fgnuc-version=4.2.1 -fcolor-diagnostics -vectorize-loops -vectorize-slp -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1
-o /tmp/a-8db52a.o -x c a.c
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module 'a.c'.
4. Running pass 'Loop Pass Manager' on function '@q'
5. Running pass 'Loop Strength Reduction' on basic block '%for.body'
#0 0x00007f9d0fa6e47f llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d08
3fdc0efe/bin/../lib/libLLVM-17git.so+0x91147f)
#1 0x00007f9d0fa6bbd4 SignalHandler(int) Signals.cpp:0:0
#2 0x00007f9d0ed72090 (/lib/x86_64-linux-gnu/libc.so.6+0x43090)
#3 0x00007f9d0ed7200b raise /build/glibc-BHL3KM/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
#4 0x00007f9d0ed51859 abort /build/glibc-BHL3KM/glibc-2.31/stdlib/abort.c:81:7
#5 0x00007f9d0ed51729 get_sysdep_segment_value /build/glibc-BHL3KM/glibc-2.31/intl/loadmsgcat.c:509:8
#6 0x00007f9d0ed51729 _nl_load_domain /build/glibc-BHL3KM/glibc-2.31/intl/loadmsgcat.c:970:34
#7 0x00007f9d0ed62fd6 (/lib/x86_64-linux-gnu/libc.so.6+0x33fd6)
#8 0x00007f9d118ff85f CompareSCEVComplexity(llvm::EquivalenceClasses<llvm::SCEV const*, std::less<llvm::SCEV const*>>&, llvm::EquivalenceClasses<llvm::Value
const*, std::less<llvm::Value const*>>&, llvm::LoopInfo const*, llvm::SCEV const*, llvm::SCEV const*, llvm::DominatorTree&, unsigned int) ScalarEvolution.cpp:
0:0
#9 0x00007f9d1191314a void std::__merge_adaptive<llvm::SCEV const**, long, llvm::SCEV const**, __gnu_cxx::__ops::_Iter_comp_iter<GroupByComplexity(llvm::Smal
lVectorImpl<llvm::SCEV const*>&, llvm::LoopInfo*, llvm::DominatorTree&)::'lambda0'(llvm::SCEV const*, llvm::SCEV const*)>>(llvm::SCEV const**, llvm::SCEV cons
t**, llvm::SCEV const**, long, long, llvm::SCEV const**, long, __gnu_cxx::__ops::_Iter_comp_iter<GroupByComplexity(llvm::SmallVectorImpl<llvm::SCEV const*>&,
llvm::LoopInfo*, llvm::DominatorTree&)::'lambda0'(llvm::SCEV const*, llvm::SCEV const*)>) ScalarEvolution.cpp:0:0
#10 0x00007f9d11913398 void std::__stable_sort_adaptive<llvm::SCEV const**, llvm::SCEV const**, long, __gnu_cxx::__ops::_Iter_comp_iter<GroupByComplexity(llvm
::SmallVectorImpl<llvm::SCEV const*>&, llvm::LoopInfo*, llvm::DominatorTree&)::'lambda0'(llvm::SCEV const*, llvm::SCEV const*)>>(llvm::SCEV const**, llvm::SCE
V const**, llvm::SCEV const**, long, __gnu_cxx::__ops::_Iter_comp_iter<GroupByComplexity(llvm::SmallVectorImpl<llvm::SCEV const*>&, llvm::LoopInfo*, llvm::Dom
inatorTree&)::'lambda0'(llvm::SCEV const*, llvm::SCEV const*)>) ScalarEvolution.cpp:0:0
#11 0x00007f9d119138a3 GroupByComplexity(llvm::SmallVectorImpl<llvm::SCEV const*>&, llvm::LoopInfo*, llvm::DominatorTree&) ScalarEvolution.cpp:0:0
#12 0x00007f9d1192f007 llvm::ScalarEvolution::getAddExpr(llvm::SmallVectorImpl<llvm::SCEV const*>&, llvm::SCEV::NoWrapFlags, unsigned int) (/zdata/shaoli/comp
ilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib/libLLVM-17git.so+0x27d2007)
#13 0x00007f9d11931086 llvm::ScalarEvolution::getAddExpr(llvm::SmallVectorImpl<llvm::SCEV const*>&, llvm::SCEV::NoWrapFlags, unsigned int) (/zdata/shaoli/comp
ilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib/libLLVM-17git.so+0x27d4086)
#14 0x00007f9d10b40996 llvm::ScalarEvolution::getAddExpr(llvm::SCEV const*, llvm::SCEV const*, llvm::SCEV::NoWrapFlags, unsigned int) (/zdata/shaoli/compilers
/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib/libLLVM-17git.so+0x19e3996)
#15 0x00007f9d1192e5e0 llvm::ScalarEvolution::getMinusSCEV(llvm::SCEV const*, llvm::SCEV const*, llvm::SCEV::NoWrapFlags, unsigned int) (/zdata/shaoli/compile
rs/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib/libLLVM-17git.so+0x27d15e0)
#16 0x00007f9d1106c7bb (anonymous namespace)::LSRInstance::NarrowSearchSpaceByPickingWinnerRegs() LoopStrengthReduce.cpp:0:0
#17 0x00007f9d1108c948 (anonymous namespace)::LSRInstance::LSRInstance(llvm::Loop*, llvm::IVUsers&, llvm::ScalarEvolution&, llvm::DominatorTree&, llvm::LoopIn
fo&, llvm::TargetTransformInfo const&, llvm::AssumptionCache&, llvm::TargetLibraryInfo&, llvm::MemorySSAUpdater*) LoopStrengthReduce.cpp:0:0
#18 0x00007f9d1108dc8f ReduceLoopStrength(llvm::Loop*, llvm::IVUsers&, llvm::ScalarEvolution&, llvm::DominatorTree&, llvm::LoopInfo&, llvm::TargetTransformInf
o const&, llvm::AssumptionCache&, llvm::TargetLibraryInfo&, llvm::MemorySSA*) LoopStrengthReduce.cpp:0:0
#19 0x00007f9d11090dd2 (anonymous namespace)::LoopStrengthReduce::runOnLoop(llvm::Loop*, llvm::LPPassManager&) LoopStrengthReduce.cpp:0:0
#20 0x00007f9d1185281b llvm::LPPassManager::runOnFunction(llvm::Function&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d08
3fdc0efe/bin/../lib/libLLVM-17git.so+0x26f581b)
#21 0x00007f9d0fc24dc1 llvm::FPPassManager::runOnFunction(llvm::Function&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d08
3fdc0efe/bin/../lib/libLLVM-17git.so+0xac7dc1)
#22 0x00007f9d0fc25009 llvm::FPPassManager::runOnModule(llvm::Module&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc
0efe/bin/../lib/libLLVM-17git.so+0xac8009)
#23 0x00007f9d0fc25882 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib/libLLVM-17git.so+0xac8882)
#24 0x00007f9d160eeb33 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib/libclang-cpp.so.17git+0x1f5cb33)
#25 0x00007f9d1657b362 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib/libclang-cpp.so.17git+0x23e9362)
#26 0x00007f9d14b7f7f9 clang::ParseAST(clang::Sema&, bool, bool) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib/libclang-cpp.so.17git+0x9ed7f9)
#27 0x00007f9d16579968 clang::CodeGenAction::ExecuteAction() (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/.
./lib/libclang-cpp.so.17git+0x23e7968)
#28 0x00007f9d17198429 clang::FrontendAction::Execute() (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/../lib
/libclang-cpp.so.17git+0x3006429)
#29 0x00007f9d171196e6 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10f
fa527ae4d083fdc0efe/bin/../lib/libclang-cpp.so.17git+0x2f876e6)
#30 0x00007f9d17230326 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa52
7ae4d083fdc0efe/bin/../lib/libclang-cpp.so.17git+0x309e326)
#31 0x0000559bfb3b009c cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/clang-17+0x1609c)
#32 0x0000559bfb3ac02a ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#33 0x0000559bfb3ad54c clang_main(int, char**, llvm::ToolContext const&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/clang-17+0x1354c)
#34 0x0000559bfb3a6dc5 main (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/clang-17+0xcdc5)
#35 0x00007f9d0ed53083 __libc_start_main /build/glibc-BHL3KM/glibc-2.31/csu/../csu/libc-start.c:342:3
#36 0x0000559bfb3a6e0e _start (/zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin/clang-17+0xce0e)
clang: error: unable to execute command: Aborted
clang: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 17.0.0 (https://github.com/llvm/llvm-project.git dae5cd73cb38b7176f10ffa527ae4d083fdc0efe)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /zdata/shaoli/compilers/ccbuilder-compilers/clang-dae5cd73cb38b7176f10ffa527ae4d083fdc0efe/bin
clang: note: diagnostic msg:
********************
PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /tmp/a-1c3813.c
clang: note: diagnostic msg: /tmp/a-1c3813.sh
clang: note: diagnostic msg:
********************
%
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzse1tzmzjY_6chNxo8IMzpIheOE287_3SbSbLdS48QD1gbkKgkcthP_x9J2AHHaZJu2_R9551pCRbSc_g9J0kIohSrOcCxF5948ekR6fVGyGO1IcLf9MRv2FEhyodj2hBeI6KR_zlCVBK1AYUER3oDSIPSiBIFMy849YKFu54wBVRDibRAJYGYlmlEiygr0jBNqjCoKhLjlMC8DLKoKmkAFXh4ie42jG7QHVGIirZl2pAoHpA3D6oN2XA05rEUbccakAjuu0ZIkF60QButO-VFCw-vPLyqRVmIRs-ErD28-tfDq_nFP19pysWnMSUvCdw_KrgSDQytOEaUaERm1DUwrhExUhbmQs2lNBcreeVFJ65bI3iNatPGdm1KE80oohsi0T-7VvvzZvfT0G-8-CQMAi8-tTfm7yEaHl60yItOkYeTf57r4eEF33ZqJ1yEhzMP58hLh0bEKuThrPRwPjQghCToXnIU7oaioVuBvHTppUtEDWkPJwaW0UCwXIPRuIEU7Jq89PRRnO6JOMg0byyZQdanxDZPid0KVqKvT6hVwuCRmf7RyR4jhCrLBicjDmg0xD4_M11y-8v3J7qiCdIjnUcUmL0Mphg6Y9M8JTQa4eHMWNF0wNkOHnyCanut7NU4gUMG3VjiN7Y53COLrFPthozYWye78eJTOzoaAbBDdAqtfGqor_vmOYDFxNgtYXxEZscIx6OwswnHZJtd8NkmP0xNkHt4pdvOXfuapnHdh8Ovr_VNQsvYw6umuW3NH1Z4eLXgpHlQTHl4dUVJQ-TZrWh6zQSf0a7zokUa5Yay0qVJHtFCdOYhabxoybj2ojNk0g2RcLU8-2JuG7hn-sHDmeVjx5x97dktaYBTWDZEKVBetDQpRSPbyalnuxoqxhbRmQ2gJXo9FdvpC2l6mBDY73EuRPeRV8Ja_OnjrQDffvTYeCpaxokW8loCDCx7bstHaYLVusACLdSQiUAa_JCXBKfXs9INBuXh7PIDEJs1z91Nvk0hHsZ_CuS6cgqoAH0HwJEE2ktp4FCoV64eCA7IihmtPIw9nKKKsAbKoQZdnJ8trs6Q6ouWaURQ0ddIQiekNvVor0QwvemLGRXtyGea29bvpPgHqPbwiinVG9lXiHCjLG36Emzxs7UQFYTeaEmorQOdhE4KCsqIqkQvXbMZSZQSlBFT02TPkaKSdXoQ-UoTeoPKvjXO6JqCmYveCylqSVpEZN23wLUaQuDfkmji4ZUp1w3z8IoOBdGISmnRs6YE6U9abRC9viCvChOrq23sIZ_SEPlasq4BdJ8l62Tu9_yGizvuZPYbxvt7v-Y98qFl2hfFP8g3apVMIuIjv2SKFA34lQRAPm2ASJ8o7RdQCQm-wRJ4iXyTJvyKNeBz0oLJA8hvJTSCEuNZfitKaFDHKPI7Rv0GbqFB2P1gyu8YIL-tJGnB7wTj2kwPTgcpjfv4VUv0xgcpuUB-VXU-FdxYUXvRqeDIr7jwpeh5yXjtm77Ib22oyJ5qIX3SMKJAIb_q-R3jpa-NXsqLTjHyNZE1aJ92vYHJT-bI1z0H21ADB2nkLqHo6xqkecR47UWndVkgv6LiFqSTlNQwGNBpXTKjxiHjSyCNapneeHh1RzTdmK6muewplMaIRME6qj400QO7Qb4E55yG5I_2psF_n_Epl5HtYA-vjFdZ83DS-Ew9KA3tr_LufUlMrDvZhxg_KFmvDLDGERsz4BVdLZuaUg-vhqDZhYnha2rXbPb0cqDvU25wb27oluu2hg6sh_4HiD1PAr2GD9pnYau1X1mf_i6XdZK_7LgVSCmk3zCT28Mc-VXNe-rfglRMcC86nc_wLLRh1Ajpl4zUXCjNqEL-LZjQZf-C3wjRTRpU0yG_ImUpFauRf7pe_7Fcrj8svpytT_9eXK7wern6uF5cffKi08HBkS8epyLEz8oixmQmkH-P6OPEJRzSuBctQVRmJtERqUCa9ZTJdKJCJs25znjovBQluERhQXQPo-HhZc9NvkAdUQp5OF31nNpqe2EaPhFOapCmKAqOWlH2DZheRiCcDuVm_gwpM2s4RKbasvBw6s2Dr-aPJRTPDtO40hJ4rTfo0tjR6uAoFUQxiopG0BtLDMeVkDOzzNzRRB6OAhTcB0EQpFVeBhVJYJ5Wo-mIelDu5kIyrm3xvHYVeDQfk-RuLZSWQNphxuImKnaS_RMzzGCt_SpqY9rlgoYV5-dfPvlhWjM9U8LDJ8F9HobztHqcvHs4CvdQKIpyjq5YzUnzgfCyMfbJBqVcsxrms4H9vyOEx4SgTHGQBwMMTqIDuaZhBZ0pMUusdPMoyIOJcNETmkGBJGHKuNvKwmfSniHjn3w4j_7fp91PPItM0lNW5C006kGV0BmYe87uXcOtlYP35qclPaNetIhDL1qEj5LMp5LEYRbniBRmvvdaSXTpcLCjLJPMMBl5ZLzPJMU5qkGvndxrBbWZna1vzdT8tXwZ140tJqRsVU2JYx0HZjKdPfJODvFe82ZtBq5LYSZL_41lnhqPieaPPNMpzwRXZfI2l4miqkwmLpONaIZhVlVZXH3vwmq6YHGrmGHZslvFNaC-1dUs61-5ANtferk16at42gEvMd0u1yZ6fEPFVz16xaINHV4ODzO4aRLJJ9bLwyicE2T3BXbKr9ctyBrWpCSdZrfwLTs5YQWvv6mP7bVe17xf0_v7LRfRDfl__VGDXJscvWZ2jr_8Q4q-O3l4xpWuWtIM23RfbO3_2HbNt13kOVO9Au7cPfBw2pC2KElgK172PXbNt47z_OjnCAwzq2_2OWSSV5lm2-vHmuhtxhkM-jtY6NmIGsWSKezBfixFefYklpRdUq6VkPoNEfXrzDXe0Hqz0f5nRpTT-T1B_7lwb_dpf4sgCfeDJCMReidg9iF5nQZ4qgGugiAdgzOl4Rpr0IuyPLvv5I_TzG2Wmrs_xd-SdKuG1OrQdOAbS6PBNX7GBuNLSyOcljgI0t1c0kAbTaGNwiBL_g_a74F2HmTJBNrxeioMinmQ598N7XdNXH8Epg637XbYL8U0zCHK8ymm8V4mgBiCV2D6ifFeuTcyvwuqTqd38dQwhmCCajJBNUhoWhRGfMIFf2hFrxAnLajObg0NZez86vIjV5pwCgMaREpxdwVE0s2V6XrycMHoDeP134xzkJdgYLJvLE2F2G5t2Z0tOJz306lcGc3n2ZvlGjeMrW-EeGLcj1_-Uhb-_fS051j7zw-tEfcrotPL1MW9x9f2Nce1JFxVQrbjBexez4VSfWvfqS4J3Txl5Cids0IS-eBq8F6PT9AK-XB1tfirK4mZI9npxKstku1ZpKRZ5TYnYUzifYF-FcTDO6yfD_QbEZ5uDwR5UJb4RZ9_QnvYuu35Z-7gf8ke5xcXRKnddnXyBpHxdBWWxTgLi2dJPwq23XCfCPfYmPy-e8w4qeIsLMY5FE83mSmelzQcgbD6XwcCoWlJwwkGeA-DOAjyV2Dwyb5dmSCwbfoV-hvNh526t-mfBUE-0T_a1z_L8Ej_BmpCH9z9CAk3WR7QeFcU3qp_luGJ_pMZbxIAFFHkTiE5fc5apk_c0YTPve567eFs9Pj08SXjGa8Z36bdUZcPQEqQbpLx2eZnNcngo65LUcIfwF_o5RL5C53OCa8PdRmVLS0Zry-h2isCgwEXewQHEBZDlE8KI9eyV-wWLqFacn2h5WQhdVsNex0r1sCVe1ltllOjrfOes689rLu9kZLcrbs7yTSst2_zRoNKqEjf6HUJDWh4YeCw4_PePumI0K6bKTGzvunWDVVMiyiaeOZk3ZDEaREl-IBBloKrvt0mJ_dy0E4a3Fv4vzjbc9nF1fVScA33-reI0mcQwRHkUTKN1cmcf16kVVrlY0QuiFSwuLqe6nsFLRmcvxCiefz7m2qeQ5lW0ySd7rlCnifZgbwxxKbLW_dAew3bcM3eRV2nwSvNneZJNtF6MnFPwzyb44m5V9K48S4ljdV-L4W3qm43H55XOAqCZI6nZs6nCod5AsnUzE7C6WJx39LPI_Tzwn1YJ_7noK-yNIHJ9snkPEiY4igweWBcoJ36j9jcDgcFp1A8wc4tcX6Whzj5_xMYUZBDhKdgbGfscZwXVREVQZBTRGm4Hs5Wj1aDUpIHU9yjpf0qYLKRuUTTNry0b6B-MiYvHTJ1lTAJcjrRGU91JjTABG2tvgyvbS7_5p7uUwD2l8ZCNENNHE2WclRKdgvy4ApydwhmK1YZz6nzy60x7J6ag_rQ-6LnmL4v_FE8n8I_39MzKWmMhmMn7ygoLWk8kXP_lE4UZBFar018rZUmUq_fclaGqn4bp-7WPrR07KmZaI7N9ZF9sg8TBIAc43cGCgLYAbVNiMgepTQ3PSdFA0gLBC6k7PdXhJf2UH8hpIbyubHuY41qKDLbgcOJfFT2lqw76mUw6BUg_9a2ASA2StRj6dBwnhOF6SyY2bNqbzu3P6uZfsOnZwNvt6gyWk1Pt49OObl-GwmkRPYQuundCcXu3SNbWpoGylMmf_FJ_amBuDDLoQV6PAGLWmXr4OCu_-Hf6OO54WOLxfX1YvkBXX84Q6vP5-ef__745x9o9fH87Apdf7bNJ3_9gS7PLj5fXu9kuDj0sUSmTP579oOJXQcJyH4NACUiekfyZfXHZ3ZDGmVhNPnG6K1j1eaNuP8o9HcfTG2_Xjwqj6Myj3JyBMdhkudhatYIR5vjcF7EmGaEhlVUlEUSQZbk8yIOi7LEcQFH7BgHOArDIA7yMInyWUJwWhZhAQRSGgSJNw-gJayZmRCbCVkf2Y9ijtMwCrKjhhTQKPsVKcbDcXrsxadH8tiGZNHXypsHDVNaPVLQTDdwvLTRbj-kcR8QvdenQ0e9bI6__9sgi8T_DwAA__8u1_ZP">