<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/68623>68623</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
clang crash: Assertion `MSSA->dominates(NewDef, FirstDef) && "Should have dominated the new access"' 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 -O2 crashes.
Bisected to 9acc2f37bdfce08ca0c2faec03392db10d1bb7a9, which was committed by @gchatelet
Compiler explorer: https://godbolt.org/z/veh7xKhK9
```console
% cat a.c
int a, b, c, e, i;
long d;
static int *f = &c;
static int **g = &f;
static short h;
char j[4];
static void k(int *l) {
h = 0;
for (; h <= 23; ++h) {
*l = 8;
for (; b;)
**g = 0;
}
m:
for (i = 0; i <= 3; i++) {
int n;
if (j[i])
break;
if (d)
goto m;
}
int **o[] = {&f, &f};
}
int main() {
int *p = &a;
k(p);
}
%
% clang -O2 a.c
clang-18: /tmp/tmptilctcgw/llvm/lib/Analysis/MemorySSAUpdater.cpp:504: void llvm::MemorySSAUpdater::fixupDefs(const llvm::SmallVectorImpl<llvm::WeakVH>&): Assertion `MSSA->dominates(NewDef, FirstDef) && "Should have dominated the new access"' 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-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/clang-18 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -dumpdir a- -disable-free -clear-ast-before-backend -main-file-name reduced.c -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=none -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fdebug-compilation-dir=/zdata/shaoli/realsmith/watchdir/reduced/case_mk0EhPeR -fcoverage-compilation-dir=/zdata/shaoli/realsmith/watchdir/reduced/case_mk0EhPeR -resource-dir /zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/lib/clang/18 -internal-isystem /zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/lib/clang/18/include -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 -O2 -ferror-limit 19 -fgnuc-version=4.2.1 -fcolor-diagnostics -vectorize-loops -vectorize-slp -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/reduced-86be2c.o -x c reduced.c
1. <eof> parser at end of file
2. Optimizer
#0 0x00007fdd23df667f llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0x92567f)
#1 0x00007fdd23df3be4 SignalHandler(int) Signals.cpp:0:0
#2 0x00007fdd230e6090 (/lib/x86_64-linux-gnu/libc.so.6+0x43090)
#3 0x00007fdd230e600b raise /build/glibc-BHL3KM/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
#4 0x00007fdd230c5859 abort /build/glibc-BHL3KM/glibc-2.31/stdlib/abort.c:81:7
#5 0x00007fdd230c5729 get_sysdep_segment_value /build/glibc-BHL3KM/glibc-2.31/intl/loadmsgcat.c:509:8
#6 0x00007fdd230c5729 _nl_load_domain /build/glibc-BHL3KM/glibc-2.31/intl/loadmsgcat.c:970:34
#7 0x00007fdd230d6fd6 (/lib/x86_64-linux-gnu/libc.so.6+0x33fd6)
#8 0x00007fdd25c821cb llvm::MemorySSAUpdater::fixupDefs(llvm::SmallVectorImpl<llvm::WeakVH> const&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0x27b11cb)
#9 0x00007fdd25c824b3 llvm::MemorySSAUpdater::insertDef(llvm::MemoryDef*, bool) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0x27b14b3)
#10 0x00007fdd253a1d94 (anonymous namespace)::LoopPromoter::insertStoresInLoopExitBlocks() LICM.cpp:0:0
#11 0x00007fdd24fefb8f llvm::LoadAndStorePromoter::run(llvm::SmallVectorImpl<llvm::Instruction*> const&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0x1b1eb8f)
#12 0x00007fdd2539fbd8 llvm::promoteLoopAccessesToScalars(llvm::SmallSetVector<llvm::Value*, 8u> const&, llvm::SmallVectorImpl<llvm::BasicBlock*>&, llvm::SmallVectorImpl<llvm::Instruction*>&, llvm::SmallVectorImpl<llvm::MemoryAccess*>&, llvm::PredIteratorCache&, llvm::LoopInfo*, llvm::DominatorTree*, llvm::AssumptionCache*, llvm::TargetLibraryInfo const*, llvm::TargetTransformInfo*, llvm::Loop*, llvm::MemorySSAUpdater&, llvm::ICFLoopSafetyInfo*, llvm::OptimizationRemarkEmitter*, bool, bool) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0x1ecebd8)
#13 0x00007fdd253ad74c (anonymous namespace)::LoopInvariantCodeMotion::runOnLoop(llvm::Loop*, llvm::AAResults*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::AssumptionCache*, llvm::TargetLibraryInfo*, llvm::TargetTransformInfo*, llvm::ScalarEvolution*, llvm::MemorySSA*, llvm::OptimizationRemarkEmitter*, bool) (.part.0) LICM.cpp:0:0
#14 0x00007fdd253af0ef llvm::LICMPass::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResu
lts&, llvm::LPMUpdater&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0x1ede0ef)
#15 0x00007fdd26cc2e66 llvm::detail::PassModel<llvm::Loop, llvm::LICMPass, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalys
isResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&,
llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/
libLLVM-18git.so+0x37f1e66)
#16 0x00007fdd25412b1b llvm::FunctionToLoopPassAdaptor::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/zdata/shaoli/compilers/ccbuilder-compil
ers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0x1f41b1b)
#17 0x00007fdd26cbfdc6 llvm::detail::PassModel<llvm::Function, llvm::FunctionToLoopPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function>
>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bi
n/../lib/libLLVM-18git.so+0x37eedc6)
#18 0x00007fdd2a6d56b5 llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::PreservedAnalys
es, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cb
afb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libclang-cpp.so.18git+0x208e6b5)
#19 0x00007fdd24008b3d llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/zdata/shaoli/compilers/ccbuilder-compiler
s/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0xb37b3d)
#20 0x00007fdd2a6c3396 llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Module>>:
:run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../l
ib/libclang-cpp.so.18git+0x207c396)
#21 0x00007fdd24006abd llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/zdata/
shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib/libLLVM-18git.so+0xb35abd)
#22 0x00007fdd2a6d6c84 (anonymous namespace)::EmitAssemblyHelper::RunOptimizationPipeline(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::
default_delete<llvm::raw_pwrite_stream>>&, std::unique_ptr<llvm::ToolOutputFile, std::default_delete<llvm::ToolOutputFile>>&) BackendUtil.cpp:0:0
#23 0x00007fdd2a6da4ff (anonymous namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_del
ete<llvm::raw_pwrite_stream>>) BackendUtil.cpp:0:0
#24 0x00007fdd2a6dab49 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptio
ns const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<l
lvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e0
2e14/bin/../lib/libclang-cpp.so.18git+0x2093b49)
#25 0x00007fdd2ab99177 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c9947416
4dcc725820cbbeb2e02e14/bin/../lib/libclang-cpp.so.18git+0x2552177)
#26 0x00007fdd290bc919 clang::ParseAST(clang::Sema&, bool, bool) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/b
in/../lib/libclang-cpp.so.18git+0xa75919)
#27 0x00007fdd2ab98358 clang::CodeGenAction::ExecuteAction() (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/.
./lib/libclang-cpp.so.18git+0x2551358)
#28 0x00007fdd2b831269 clang::FrontendAction::Execute() (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/../lib
/libclang-cpp.so.18git+0x31ea269)
#29 0x00007fdd2b7accbe clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dc
c725820cbbeb2e02e14/bin/../lib/libclang-cpp.so.18git+0x3165cbe)
#30 0x00007fdd2b8c9db6 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725
820cbbeb2e02e14/bin/../lib/libclang-cpp.so.18git+0x3282db6)
#31 0x000055e2c2352aa6 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/clang-18+0x15aa6)
#32 0x000055e2c234a3da ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#33 0x000055e2c234f01c clang_main(int, char**, llvm::ToolContext const&) (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/clang-18+0x1201c)
#34 0x000055e2c2349e55 main (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/clang-18+0xce55)
#35 0x00007fdd230c7083 __libc_start_main /build/glibc-BHL3KM/glibc-2.31/csu/../csu/libc-start.c:342:3
#36 0x000055e2c2349e9e _start (/zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/bin/clang-18+0xce9e)
clang: error: unable to execute command: Aborted
clang: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 18.0.0 (https://github.com/llvm/llvm-project.git cbafb6f2f5c99474164dcc725820cbbeb2e02e14)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /zdata/shaoli/compilers/ccbuilder-compilers/clang-cbafb6f2f5c99474164dcc725820cbbeb2e02e14/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/reduced-f2b9b3.c
clang: note: diagnostic msg: /tmp/reduced-f2b9b3.sh
clang: note: diagnostic msg:
********************
%
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMW9ty46jTfxrNDSWXhCxZusiF48Q7qU3-kxpndy9dCFo2OxLoA5TDPv1XgHyQ7Zkc5pCpynhsRDfdvz7QICBa85UAOAvS8yC9-EA6s5bqTK-JDNcdCWv-oZTs6YzWRKwQMSj8hBFVRK9Bj4LoIoim_vOca6AGGDISFYRSXCWTklUUopySiOKKAI2SpMCsjCMWl-WEFAGeoYc1p2v0QDSismm4sSzKJxSMoxVdEwM1GLQ_zkw2La9BIXhsa6lABckUrY1pdZBMAzwP8HwlWSlrM5JqFeD5fwGe38N68vjn-s9in1OQRf6PSqFlDX0rThElBpER9Q1cGESspKX9oPYD7AcPknPfo5Zihdj2pzbEcIosXYCnFQqSCxTgjH6lQ4Cnq02f6rCPXktl0HrbTNdEoX-D9HwcpBeHne8lZ-hLgPOecx3gAgWTvhNCazdMtCVDqJIKBTgPknP3cGaf48T-DPB5gM_XBxyQY-vY5HtsBoxK-wAXu2dooOXe8MHkwn9rrOmGIvFtZ8Q3kjnBuJfsSDCrsxjIxCvLyILFLVhbkUoF5MuJnuxA6pU0EjV7Hbfyoj3bSR843oKTc2dEPPPGnOxMtKW1lA3hwqI11KHn2W6cgewNba3aWvmO-AU43XNcF6U2RLfu65rCOLdhEuC5aVr_aXhNDV09BHhe1_eN_Y-XAZ5PBamfNNcBnt9AI9XTYjH9q2XEgBrRtg2SaRqNLTPnbY40mQbJ9LCzb634Y9deQKUDnNswM3sUi4bU9d9AjVRXTVsHyWz37B8gX_7-GCSXAc6c2lM01RqU4VKgIItuFotpGCSXTDZcEAOW___g4QIc-HOutHHfC-QYZCjAeLGWXc3QmtwD2tAxZNaABDwgQiloHWAc4AmqCK-B9fnt9vpyurhEuisbbhBBZbdCClobmEYeph5u1l05orLZw7W-b8JWyX-BmgDPudadlXeOiGCIC1p3DJwYLq2iktAvRhHqkkyroFXSSgYMadkp32wpidaScqeD6gTSVPHW9CIvDKFfEOuadhtZ0ch79a2SK0UaRNSqa0AY3TvGf4wYEuC5zfw1D_Cc9onWikpp2fGagQoHrc61aEmqMqtwldKiGE_GcTZmlE5wmuOIliWUGCIM8TjA89K6_XzjkSikNEahUbytAT3m2TIbh534IuSDCGsuusdwJToUQsNNKMt_UWgVYlwhEqKQcU3KGsJKAaCQ1kBUSLQJS6ikgtCiCIKh0MZaWPEaQkEaQApYR4GNKAobBbWkxLpU2EgGNWo5RWHLaVjDPdQI-x9chy0HFDaVIg2EreTC-feFkAJQWDXErENQSkgUVlUbUims_UyQXEiBwkrIUMlOMC5Woe2LwsaFguqs64ek5kSDRmHViQcuWGisXjpILjAKDVErMCFtOwtQmI1RaDoBrmEFApSVmEHZrVag7CMuVkFysWIlCivX3lvMq8m4lfuUtRWQWjfcrAM8fyCGrm1X2-zgslYjGpbNl-hyfQufUVhReQ-KrOAn8Vfgvd2y_FXu6ROgIwvw3Dqos7Qgdcj1kzbQvJckNm30ieKkTJ22YFpvrl_Y1Q2wojTA8z7ythFnR4wDPB-Njj9O9D0eDR7tF3o8at_1BJ9vU79-CDcHhhUoJVVYc5u44wKF1Up0NLwHpbkUQXIxHuFR7Jy5lipknKyE1IZTjcJ7NzHx_yCspWwHDbpuUVgRxpTmKxReLJd_zGbLj9O_L5cX_0w_z_FyNr9aThc3QXIRo1Du5t3e3cM8KwHTkUThI6K7nOQzddxn6iCZgayC5BK1RGlQtvq2KU1WyOYz3xn3nT-1hjf8P1Cb2gonEYoeoyiKJhVjOGFVlk2qvelXP2n_5VZxYdyMceennXzXSZGHpdRGAWncRDqzVYqfVvNfOmk47_NeW_Py-vrvmzDOV9yMtAzwefRY4DSbVLsKLsBJfKB_UsIYLfhKkPojEawG5Utlq45v1n2FE7l_W0Z4wCiCLCqiHgAv0YmoqHlJR1qOMifdOImKaCBccsQzKpEiXIP1FgecDVDLJjz_eJ38ebP9iUeJDU_tRN5Ao580g9YC3An-6BvunRyisz8d6xG15VscJNN4J8l4KAlN87RApLTlzUslMczj4KjcILkdZLIbJD0cZIILtAKz9HIvNaxsMbK8J3X3YgS4MLVLe4Q1ekWJHzqNbLmY78bOTo29FPXSEi6ZtBXC9w1ZTKzHJOPdmJPhmCyrWPY6l0mSimUDl8n3eaY0xzEtX1WAv7L0Rq5K8QX4bxfveFLGMS0HABWHAI3L5FmAuLDLCrdYyA_7utapW_tLWf-uMIzLZAuDTXuDvJ8mJGbF2ApOhBRPjew0spWwbl2uL7y-11K2t0o28gCXhZEK9JWwzy8fuTmvJf2i-7Xr9dXs5jhjWhEGqXdcQVXm-1PPtSRsKphjPhxVdeLFjnrV19B2KsfT391h4zKGMq8GlsJDSxVVyfI9mFoPjcV-6lanoO_kgpKaqBPhvADjgRqA9LdNqL0T590QpNkLF-PnRHPqLO9xfhXxkZVeRe3jcNqvzU-S3ypgVwYUMVLNCF3DUQ8L4JWoZA_D7sGF3wWQ6k4BHD2dat01rRW8Z3vw_M6tza55qYh6svw30J7sd6eI0JVUzUlJrIhHjUcJ61Cxq9ncEi5IBebpJN--LHSrs8_QEPXl0u2xqkFe-33zWwwUSpYPoiY5yG9sMqYvyW9X4p4oToSZSQY30nnkJul8Et4C-TMmmU4_g-5qo09a8Fc42ZvcyyeNy3tZd5tAPO1pb3Qg5zijligzir49M4wPjFdFMJgZrmY3t0Tr07OBN8lBEGw2LG-IICsYZj9PcGimhSGCEcU2lFuTZqfyy9co-r1_TzekuL3Zj9jfMaoYRDCciwYVekYphizb04mBIbzuMy7R-kYyqJ_DemPMw3ytQd1DDyboH2vOfpf90Kiv8IFv2DK5fG_H7L3uB-jyvn7Z63HKO5NJFUOWDbxzsIZLxzEu4_21z7wTrsK4k66QJVpPGWldLXTKXJvurzLZlmjzUuIt8HmNfm5wV-O4jMsBfJNhcJcVo68L7h1isxfB_qMifh90r83XQvD9bPpma3qNXmLTZALA6DAkBtsBJGNpVqY_wKau77egehO4hyn4wCX6sHijY_zuLuG1-64w71m17UjLkXMNv_yPcsjKdOAXg12QcRTlZTJ4TytZV8Od3Oj5bLL0BK_CsCf5PgT7ow0_L1GWyaRM2D52OBrGFE2S4nV5cgPW7IWI_6g8uUPcB0OfK38bY363Gfuy7rlwmNCkGKRJHB-EQ0ZK9oJ0d8qQrzHAL4C-D5B3X02USUrKYRzhg7kpo_mzW5B2XTnVGpqyfvoIdbvZEvzcif1F6C1voeYCApz796P9FpV73T_dTlHaMP-kE_z_Oli2ZgitIg_L9kFxA8vN6609Iq8Jg4p0tVkyqMHAM-T9JJe9ZPA7KetPnWk7M-feybYU3xjzgGo3YIF69f8yvD657MbJgUHIuKreapD99p9qhT0s-gLhpVZ4ASLjQ0TKcYH2dLFa9kw86ENVL3bvii_FyvmjM_1el49AGKgFEEXXn9wWjx5svu51nUkGf4B4ppff6XGd-tLxq12viVid4ra3JWQUF6vP_sDUcZaaHjA8Mu3-Dq9Rneb38BmqmTC3Bza-r_rdHOu1C_e6vi8Hv-Id_dLw1T7yCu_4BXNY_3r-DSVdkZTjYpBOB3szpCyKeDI5YZyZFLprNmHq33G7fUF_OucvwQ-ceLq4m0lh4PGnvTTxOvyQUjdNcTyZDHAZ7AoUUUmLeBDDt0RpmC7uhlovoCF9OLzj9vfmNOhL9SeTtIiHbjE5cIs8SfMTWaWPWZ_VHoF2BjZhnL9LQec1eKHR4yQdbP_jwbq3zJMYZwOjz5V16W2q2lf7vRTeqNrr8A2FkxgIzoZmHizoygmhtIShmb2EV0IbIiictvTXEfp5ZX1_Avl7Qz-Js5SWsA_K8HBTmdOCldlg-vbq77C57496DqE4ws5OfD_PQ7z83wcGzjErB2uc7UmnNAVMcZJiQjJEabzsD5rvrTaUIk920k9m7irB9o2ln5GHbXjmDnn_ZEyeOybsNzVTQoY646HOY5IwgjZWn8V3LqN_8yTBMQAHJZLl0c-Pg6MFTPH77Wn4YVm5Pde1EauKYur9cmMMd-LMQ-1vELxs0PeFH0cxHcA_PtCzgDRF_UmqdxSUQjrYDTs6eDaJ8gQtlza-ltoQZZavOf5FdbeJU__VPXR83EGwZIzt52747AimApAf-L2BKnYJdZMQkTsva790gpQ1ICMR-JByt7OIYO4mRimVAfY1Wn8JpeonmQ1hf6cCsc6x9acXLQadBhTeuzYAxPcS9b50qD-0i-J8FI3c8cvX3bwYrbhBL8esH9svuaxWX7uf0PdbKyAMNX5DcIpaqfmjf-SmlroGdsHVL75rMTSQkHaBNEW7Y86o0avdbiH-jr-9a3X9dZnp3d109hHdfbxE80_X15_-ufrfH2h-dX25QHefXPP5X3-gz5e3nz7fbWW4PXXdJdc2_331ysu2gwLk7nMAQ8RsWT6v_vHx7AqXRZkMblC9jYNev9IGP8oS20thmzuOH9hZwoqkIB_gLM6KLM_jJC4-rM9onqRRnlVxVlJSZuUkjxIYRwwySMZJlX7gZzjCSRxFRVykaVyMcDIGkrFxktIoSSsajCNoCK9HNtxGUq0-uCtOZ1me4eRDTUqotbteinF_owEH6cUHdebCs-xWOhhHNddG7zgYbmroL526a1EWtPe4AvahU_XZ2-94OQz-PwAA__8cNDg8">