<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/123591>123591</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Clang frontend command failed with exit code 139
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
dvora124-wq
</td>
</tr>
</table>
<pre>
Hi,
I've been experimenting with ways to model an AST in modern C++. During one of these experiments, my compiler crashed on me. Per request of the compiler itself, I've attached the output and the associated culprit files below.
The issue seems to arise from a leftover `template <typename T>` declaration:
```
template <typename T> // <<< right here, sorry!
using AstNode = std::variant<AstProgram, AstDecl, AstExpr, AstStmt>;
```
I accidentally left it in place when I was restructuring the program. Once I remove the declaration, the program still doesn't compile (that's correct), but the compiler doesn't crash anymore.
---
[main-8471ef.tar.gz](https://github.com/user-attachments/files/18476429/main-8471ef.tar.gz)
```
Stack dump:
0. Program arguments: clang++ -std=c++20 -Wall -Wextra -Wconversion -Wpedantic -funsigned-char -fsanitize=address,undefined -fno-omit-frame-pointer -g3 -glldb -O0 -c -o target/main.o src/main.cc
1. src/main.cc:69:112: current parser token ';'
2. src/main.cc:68:1: parsing function body 'main'
3. src/main.cc:68:1: in compound statement ('{}')
#0 0x00007fd90b8b0a8a llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/lib/llvm-19/bin/../lib/libLLVM.so.19.1+0xeb0a8a)
#1 0x00007fd90b8ae634 llvm::sys::RunSignalHandlers() (/usr/lib/llvm-19/bin/../lib/libLLVM.so.19.1+0xeae634)
#2 0x00007fd90b7f44f4 (/usr/lib/llvm-19/bin/../lib/libLLVM.so.19.1+0xdf44f4)
#3 0x00007fd90a449da0 (/lib/x86_64-linux-gnu/libc.so.6+0x3fda0)
#4 0x00007fd913a850e4 clang::TemplateArgument::isPackExpansion() const (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x12850e4)
#5 0x00007fd914631acb clang::Sema::getFullyPackExpandedSize(clang::TemplateArgument) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1e31acb)
#6 0x00007fd9145bf020 (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1dbf020)
#7 0x00007fd9145c8bcb (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1dc8bcb)
#8 0x00007fd91459a425 (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1d9a425)
#9 0x00007fd9145d2ab0 (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1dd2ab0)
#10 0x00007fd9145d9867 (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1dd9867)
#11 0x00007fd9145d6d6d (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1dd6d6d)
#12 0x00007fd91459348b (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1d9348b)
#13 0x00007fd91459a3a7 (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1d9a3a7)
#14 0x00007fd91459a232 clang::Sema::SubstTemplateArgument(clang::TemplateArgumentLoc const&, clang::MultiLevelTemplateArgumentList const&, clang::TemplateArgumentLoc&, clang::SourceLocation, clang::DeclarationName const&) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1d9a232)
#15 0x00007fd91445daab (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1c5daab)
#16 0x00007fd91445d57e clang::Sema::SubstDefaultTemplateArgumentIfAvailable(clang::TemplateDecl*, clang::SourceLocation, clang::SourceLocation, clang::Decl*, llvm::ArrayRef<clang::TemplateArgument>, llvm::ArrayRef<clang::TemplateArgument>, bool&) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1c5d57e)
#17 0x00007fd9144e3c61 clang::Sema::FinishTemplateArgumentDeduction(clang::FunctionTemplateDecl*, llvm::SmallVectorImpl<clang::DeducedTemplateArgument>&, unsigned int, clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&, llvm::SmallVectorImpl<clang::Sema::OriginalCallArg> const*, bool, llvm::function_ref<bool ()>) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1ce3c61)
#18 0x00007fd91454001b (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1d4001b)
#19 0x00007fd913d93671 clang::Sema::runWithSufficientStackSpace(clang::SourceLocation, llvm::function_ref<void ()>) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1593671)
#20 0x00007fd9144e5c1b clang::Sema::DeduceTemplateArguments(clang::FunctionTemplateDecl*, clang::TemplateArgumentListInfo*, llvm::ArrayRef<clang::Expr*>, clang::FunctionDecl*&, clang::sema::TemplateDeductionInfo&, bool, bool, clang::QualType, clang::Expr::Classification, llvm::function_ref<bool (llvm::ArrayRef<clang::QualType>)>) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1ce5c1b)
#21 0x00007fd9143cb434 clang::Sema::AddTemplateOverloadCandidate(clang::FunctionTemplateDecl*, clang::DeclAccessPair, clang::TemplateArgumentListInfo*, llvm::ArrayRef<clang::Expr*>, clang::OverloadCandidateSet&, bool, bool, bool, clang::CallExpr::ADLCallKind, clang::OverloadCandidateParamOrder, bool) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1bcb434)
#22 0x00007fd9142a0847 (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1aa0847)
#23 0x00007fd914293c39 (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1a93c39)
#24 0x00007fd9142930d9 clang::Sema::DeduceTemplateSpecializationFromInitializer(clang::TypeSourceInfo*, clang::InitializedEntity const&, clang::InitializationKind const&, llvm::MutableArrayRef<clang::Expr*>) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x1a930d9)
#25 0x00007fd913f4a1f2 clang::Sema::deduceVarTypeFromInitializer(clang::VarDecl*, clang::DeclarationName, clang::QualType, clang::TypeSourceInfo*, clang::SourceRange, bool, clang::Expr*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x174a1f2)
#26 0x00007fd913f4a920 clang::Sema::DeduceVariableDeclarationType(clang::VarDecl*, bool, clang::Expr*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x174a920)
#27 0x00007fd913f4b03c clang::Sema::AddInitializerToDecl(clang::Decl*, clang::Expr*, bool) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x174b03c)
#28 0x00007fd91344e3c1 clang::Parser::ParseDeclarationAfterDeclaratorAndAttributes(clang::Declarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::ForRangeInit*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xc4e3c1)
#29 0x00007fd91344b0c9 clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::ParsedAttributes&, clang::Parser::ParsedTemplateInfo&, clang::SourceLocation*, clang::Parser::ForRangeInit*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xc4b0c9)
#30 0x00007fd91344a4f5 clang::Parser::ParseSimpleDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, bool, clang::Parser::ForRangeInit*, clang::SourceLocation*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xc4a4f5)
#31 0x00007fd913449e79 clang::Parser::ParseDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, clang::SourceLocation*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xc49e79)
#32 0x00007fd9134e9779 clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*, clang::ParsedAttributes&, clang::ParsedAttributes&) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xce9779)
#33 0x00007fd9134e7a6a clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xce7a6a)
#34 0x00007fd9134f05b0 clang::Parser::ParseCompoundStatementBody(bool) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xcf05b0)
#35 0x00007fd9134f16f6 clang::Parser::ParseFunctionStatementBody(clang::Decl*, clang::Parser::ParseScope&) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xcf16f6)
#36 0x00007fd91350b8e3 clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xd0b8e3)
#37 0x00007fd91344c46d clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::ParsedAttributes&, clang::Parser::ParsedTemplateInfo&, clang::SourceLocation*, clang::Parser::ForRangeInit*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xc4c46d)
#38 0x00007fd91350a8be clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec&, clang::AccessSpecifier) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xd0a8be)
#39 0x00007fd91350a25f clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*, clang::AccessSpecifier) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xd0a25f)
#40 0x00007fd91350944c clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xd0944c)
#41 0x00007fd9135078d7 clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xd078d7)
#42 0x00007fd91343457e clang::ParseAST(clang::Sema&, bool, bool) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0xc3457e)
#43 0x00007fd915547379 clang::FrontendAction::Execute() (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x2d47379)
#44 0x00007fd9154b5c74 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x2cb5c74)
#45 0x00007fd9155c57fe clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x2dc57fe)
#46 0x000055891017bc61 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/lib/llvm-19/bin/clang+0x11c61)
#47 0x0000558910178b35 (/usr/lib/llvm-19/bin/clang+0xeb35)
#48 0x00007fd91513509d (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x293509d)
#49 0x00007fd90b7f4290 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/usr/lib/llvm-19/bin/../lib/libLLVM.so.19.1+0xdf4290)
#50 0x00007fd915134b31 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x2934b31)
#51 0x00007fd9150f9ec8 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x28f9ec8)
#52 0x00007fd9150fa13e clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x28fa13e)
#53 0x00007fd9151178fc clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/usr/lib/llvm-19/bin/../lib/libclang-cpp.so.19.1+0x29178fc)
#54 0x0000558910178574 clang_main(int, char**, llvm::ToolContext const&) (/usr/lib/llvm-19/bin/clang+0xe574)
#55 0x00005589101864ba main (/usr/lib/llvm-19/bin/clang+0x1c4ba)
#56 0x00007fd90a433d68 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#57 0x00007fd90a433e25 call_init ./csu/../csu/libc-start.c:128:20
#58 0x00007fd90a433e25 __libc_start_main ./csu/../csu/libc-start.c:347:5
#59 0x0000558910176731 _start (/usr/lib/llvm-19/bin/clang+0xc731)
clang++: error: clang frontend command failed with exit code 139 (use -v to see invocation)
Debian clang version 19.1.6 (1+b1)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm-19/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/main-8471ef.cpp
clang++: note: diagnostic msg: /tmp/main-8471ef.sh
clang++: note: diagnostic msg:
********************
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzsW9tzoziX_2vIi8ouEGDgIQ_Eib_Jt5lJtu3tfkwJSdjawYiRhDuev35LAluAL0mm6a7vYatS3Rikc_mdo3OObkhKti4pvXXCOye8v0G12nBxS3ZcIA8Gk-9_3WSc7G9_Yw6cA8dNHTd9dGC0oyCjtAT0raKCbWmpWLkG35nagO9oL4HiYMsJLQAqQbpcAVaa36IEcwfeOfBuCu5rofvwkgKeA7WhknbISc1vuweYbytWUAGwQHJDCeAl2NIpeKECCPpXTaVqu9umTEla5JpAKypSCmHdWTfjtapqBVDZ_ERScsyQogTguqgEUyBnBZUgowX_Pm11Xm0oYFLWFEhKt0Y_JJikIBd8CxAoaK74jgrgzFxFt1WBFAWOP1f7ipZoS8HK8R-cmQsIxQUSSDFeOr6m7Mzc9s9NL_YEwIELBy70h-YPCLbeKLChgmpFJRdi70DPcdNaalhTqf7gRFO6B1IRzctPd0gwVCrHn6dSvQi-Fmire6dS3VNctI8Pb5VoH5dqq7Tg_t1A0keAMGaElgoVxd6oD5jSZq4KhCn4vqEleATfkQSCSiVqrBpza8irhvMUPJeYgkcg6JbvqPnUhQfOu62BVKwoAOFUlg6M1MHcwIGx2iDlwEgCzIWgWDkw0b2zWvUdo9NZexNA5X7LBZ02Np5MJs2DE95tESsncRB5NJ8qJKbrv53w3oHxRqlKajCNOdZMbepsivnWgYtaUjFpPK114IVxJAcuvDiIZoEWanGGMExath18lwrhPwGpt1XjJe7UcZPWYgCJdd2w8FOAC1SumzEFJsbS97j5CV0w-YaKAky-0TclEJh8w7zcUSEZL8HkW0UJKhXDYJLXpQkDZII3SIBJLlHJFPubOv49IkRQqYdjXRKas5ISMMlLPuFbpia5QFs6qTgrFRVgsvbBZF0UJAOTZxdMMJhwoJBYU9WqPuVACnz4gbHjpp5Wrf_ST2eJ46eeB42GtRC0VKBCQlIBFP-TlsCBkfZKGDluCs9SiDUF3V_3066X1yXWjgV0RNMEdOOGgn-dAiuND_G6JEAqpKhGXzue7h3dOdG9fjB2BA70XeC-ua7rRjlJ3CzOXBQjUBS7bTMK5V42Dy-ClcpYeiUQpg6MbSOBvr9yqQTVI3SmvZmV2q8brotaCgcuCpbpf4vdduJp58q0Povp1H5i2dPT19-nkk-9ZOo58M59o0YeK63XlxbRmR-ck_ZLXS7ZukTFb6gkBRXSSDKGQIalFQj2BIryIMiDH-dCDB3Lxe9yQUGQEOS2XBoib_HsdRZMClbWb5N1WTcfsCY6MxT9nCDXEgw6BD0fxaFLg3Z0GvxWbXBP29HbvGXyBeE_H94qVEoT9AymmJdSfVpnw2yCq6qnuAeNKFbQsCtoMPM9hLOuoEu6Rc3TmqpFXRT7o4iEkqUOCzC-ptg_cIoLolMjnBV91hM9zHIXumPxIoaa5RX1eeE4w9lovAw1yyvu80pQAMPReBlqllfS50UgysbD0FBrMxr0PXfAK4ln0Xi8NDXLyxvwmpEZGY-XpmZ5wYG9_CAezzcMNcvLH_qGj8bD0FCzvIIhLx2Nz4aGZZ1JdTryr8WFJ46bwNYmtE7T3-tCsSe6o8VJJybVpV5nGJw2WvJaYPrE8bGo7Hy8t-XmH7rWtoxGC2HEgGgh7kffICQIjeY62FCzvGZDXmFEr5jznuaoLk6s-pinO8QKlBUXAn8zd0g_A_y7Vmnp2TokFQLtv9Dc8edXk-rDD3TLOC_GtT42mFuL9JNKQH08885bZMFKJjdDQe8pqXEDWdcSi7a0PWMRC8Vyi4riK8WKi8dtVfQRMYQpOQuMGVKHKUJTh_bsdeB-5Docg_KolRWw1eOxzHnb4YOSWoieBVuzEhVzVBSpWOt5cjuAU2vNLt3DDOBVGIfQDRpDJ0bP8axu7GqtPkjvget646ULQ83y6qV3nyT-LLrgYaIuvzG1WdZ5zjCj7VRkWTVTkauD9SKkO87IT4E0NIoc1YTuYCCF2LtQxDaePXRs-eEBdC3hMKkaB_5QsGoWVtI22Iw_gA4Of_i_Q-C_a1Ss9hUdvDYSmad5gaRkOfuAjQ_D5j11jzyNI4w9wrTBrTv0iz8fZ4EfnHeHlByD3POOioIjMkclYQQp-k98Qr9NMaZSviAmfpHDnEi-pOqCE5xxBh0vreXT-yf94r9YSd7j8oIE2j4LQoWlPJpJM2M0a9J-jQ2RGwej1b3IULO8-jU2THzsj6YXMtQsr2DIyyXJRyLXsqKYoYL9bUboQvDtY8mUeaPt0SvM9hVtgnbH2TrfbUfyUCqm9pcq7GNDw1O7SK-l9d_fa6Xrw_fdeExYXdKBtVdX-3mAvPzC1IUYWL8ioWG6iuNXJC4P-s684WPB9j2rNN--oHJNLwzcA5DjoRgZnCyKsyGKCXSvOedXJJg2fAeQRvPLMP4qvRJoFyJgNNArc318MT90_GHFG8nj89OTczqMHhgjI63VpVdN-mYS0avwXsw6eee5Y5w0V1QcfnORliRVSrCsVlSeatk0Og0LJxyOKVV79qVg0u214MI4uoZ6VMtjA4cFKxmAlbk4eResfwleV304XppNBP1VB-JT7Sxec14q-jacJDU4ddH-HKrvr2wMPfIX4a0RPeLd2_vQeKMgD68quWTbqhc_LrnheViHIJwF9X3YT1ucCVNXAX3PNOMBriG1gHsDwBMave_g_1lQ_yrgNDQWONgHjibRO8AtDzt_z2IYUXtB9Ow6xmANQ20PXuPD2i6yXI0GutPHLHM2EnzeMqMhb7C1yPsD5CM0Q_8A-f8UqMeDSQNhYepvKAa5G2buVbHn7R71Ea47TvYOjMetR7ARxIoZDsT0ZvnsqpiHefVQzHdLrFO_wFzXmmO6qhHfKtevh0M3i6n_IeXuac50GTkMsp064udVV0_NXL0d0U9MjpvziYHBghQNUhAOZuT_a6wxM5dG1OIdD5wSxRl9F-9n0XHNx1JRUaLiFP8fTeDv2rBZKzOLGTnTE-7xvFLjYFFKhijBMP9oYdQD6-I4Hh2roXf9TKxgmB-xCtwBVkkQ4KtYPbw1DnSxmPxZ-IyHgNbRIuANEIhiEl1FYMUrs2F9uj7wXKG_avqixHCHrQ16Zn3sTBli1yB-56Qu6OO24kKZLDlqjiNGOav6oBD2g8EusVE3Xa4Gm0Ja2nNLzqNFPSOIFbNXNYZhEPn9en0hdE4oSYoPh2v99OGN4tqs648nFySGtRWsV6eFQRbiqLf3MG-Pnz6WUqES055o6bnd3L4mY9oeYiOeFT7so4rDKKf9ZS0jptVhd8yF8TUdxxyrkBixrNCHqiwM48RzvSgzu-jYe21OdF7YmdogYfeH2y2V3js4BzvOyIdlb_Q3a3Red783iAbyxZn_keNclh7NfDvFD3r5PjTxeayTTTAx1CyvZHj4EiZuZ51_LpDcfKGY76jYH4ow8-VLXS5RTot9D__Rt4fPneuEiZ2OhO4ArCDze6ujRLDdIZDP596cb7eoJMNwcdaDjufoeaV1QoXjzzszUCVYuW6De-Nexw6vr_jtzfOaHxmSDL9K07z1y15j_eJVCcSUPHwekENFoUdhM9Vtv-smndXndOxjpDAxUFqgexkzdPOE4vgi0CY8oJPAfEC_F0sGHXWDS5OeK03TXnIaGYvYaGuxgAMskOfTz2Lxb57Jy0D8m2cnR-GuHZg5-kqFmHaT01M7V7FrHepnIqgxsgj2s7vnRXGOL0l733nu5acziekS8r8QwdHSYGJQsZgFwzQTHgqPQyI8yGxCTHpy6mDFedEG8U8efeykqrBTToRhX6R4FmQIaGE-l05xkNmFsHDWP6rv-2QWg9dXDdSrVEioV4yKwugMNI5Y1gdI5V4SWkkHLspKFS26w07TjeOnUeD4qd9yjIYcKQyBaa8ng0MmzaOmPDGUp9jxUw_Gjp9Ct6UYn6PY0-Gc-Gcp-0Hk-GnYEk4GTjCLfA80JD-FOY4Owf3wTv_5KaBC6ETT3jQCeVucAtx6fI5YQUlz94--Me1JhAKvOUBRSwomO6A4kJQC1qkeNad7mjFUtoQPF5O0v09nurN2-6wVatXcIvJT0N7LqHDnaoabrjaCItJcOjSXfrhkb46bmoK0KCi5Z0aJq3ic6F5ypct1QBhal1wqhsFWrg0dNz2MqH_0Z258vTw9pMsHkK5W6fw3sPrtASyen56evz3-8S-weHx6WILVs3l99z__Al8eXp6_rBxzHexF0EpwTKWkBEizRuXAWOqxq03SudMo6hJILFiljg0EBaZ8oAQg1dD7uNpwobbV4B4brqofpiE3n0X_xw1wuG93Q259kvgJuqG3XuRHfgRhFNxsblGWwwD6fhwgF3lhkGOSxNjDOYlCksTBDbuFLgxdD7qeBwPfn-aZG2NMZoGbh1kGkRO4dItYMdWONuVifWNukd56euR6NwXKaCHN5VsIW-2hE97fiFvjmVm9lk7gFkwqaUkopgp6O__kcLypRXF75f6iSQvtiKgE_19zj3JhxDV3GBuJd7fw_wIAAP__t40VHg">