<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/86790>86790</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
using enum declaration with anonymous enum crashes clang frontend
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
svetli97
</td>
</tr>
</table>
<pre>
Minimal example:
```
enum {A, S, D, F}; // the enum is in an outer scope to avoid name collisions. This seems unrelated to the bug.
// enum Asdf {A, S, D, F}; // naming the enum prevents the crash
int main()
{
using asdf = decltype(A);
using enum asdf; // this line causes the crash
return 0;
}
```
Needs additional clang command line argument "-std=c++20" (or later) to support using-enum-declarations.
The gcc compiler compiles this code without any problems.
Downloaded compilers from https://winlibs.com/
exact file download link: https://github.com/brechtsanders/winlibs_mingw/releases/download/13.1.0-16.0.5-11.0.0-ucrt-r5/winlibs-x86_64-posix-seh-gcc-13.1.0-llvm-16.0.5-mingw-w64ucrt-11.0.0-r5.zip
OS: Windows
Expected behavior: the code should compile.
Observed behavior: clang frontend crashes with the following error message:
```
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: C:/Users/svetlin.totev/libs/mingw64/bin/clang.exe -cc1 -triple x86_64-w64-windows-gnu -emit-obj -mrelax-all -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name test.cpp -mrelocation-model pic -pic-level 2 -mframe-pointer=none -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -mms-bitfields -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -mllvm -treat-scalable-fixed-error-as-warning -debugger-tuning=gdb -fcoverage-compilation-dir=C:/Users/svetlin.totev/Documents/test -resource-dir C:/Users/svetlin.totev/libs/mingw64/lib/clang/16 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++ -internal-isystem C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/x86_64-w64-mingw32 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/backward -internal-isystem C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/13.1.0 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/13.1.0/x86_64-w64-mingw32 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/13.1.0/backward -internal-isystem C:/Users/svetlin.totev/libs/mingw64/include/c++/13.1.0 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/include/c++/13.1.0/x86_64-w64-mingw32 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/include/c++/13.1.0/backward -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++ -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/x86_64-w64-mingw32 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/backward -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1.0 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1.0/x86_64-w64-mingw32 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1.0/backward -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1/x86_64-w64-mingw32 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1/backward -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13/x86_64-w64-mingw32 -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13/backward -internal-isystem C:/Users/svetlin.totev/libs/mingw64/lib/clang/16/include -internal-isystem C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include -internal-isystem C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/usr/include -internal-isystem C:/Users/svetlin.totev/libs/mingw64/include -std=c++20 -fdeprecated-macro -fdebug-compilation-dir=C:/Users/svetlin.totev/Documents/test -ferror-limit 19 -fmessage-length=208 -fno-use-cxa-atexit -fgnuc-version=4.2.1 -fno-implicit-modules -fcxx-exceptions -fexceptions -exception-model=seh -fcolor-diagnostics -faddrsig -o C:/Users/SVETLI~1.TOT/AppData/Local/Temp/test-6235c7.o -x c++ test.cpp
1. test.cpp:6:20: current parser token ';'
2. test.cpp:4:1: parsing function body 'main'
3. test.cpp:4:1: in compound statement ('{}')
Exception Code: 0xC0000005
#0 0x00007ffc8f81c940 clang::DeclarationName::getFETokenInfo() const (C:\Users\svetlin.totev\libs\mingw64\bin\libclangSema.dll+0x55c940)
#1 0x00007ffc8f5921ae clang::IdentifierResolver::begin(clang::DeclarationName) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangSema.dll+0x2d21ae)
#2 0x00007ffc8f68d0e4 clang::Sema::PushOnScopeChains(clang::NamedDecl*, clang::Scope*, bool) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangSema.dll+0x3cd0e4)
#3 0x00007ffc8f739dd8 clang::Sema::ActOnUsingEnumDeclaration(clang::Scope*, clang::AccessSpecifier, clang::SourceLocation, clang::SourceLocation, clang::SourceLocation, clang::IdentifierInfo&, clang::CXXScopeSpec*) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangSema.dll+0x479dd8)
#4 0x00007ffce334d0af clang::Parser::ParseUsingDeclaration(clang::DeclaratorContext, clang::Parser::ParsedTemplateInfo const&, clang::SourceLocation, clang::SourceLocation&, clang::ParsedAttributes&, clang::AccessSpecifier) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x3d0af)
#5 0x00007ffce338040d clang::Parser::ParseUsingDirectiveOrDeclaration(clang::DeclaratorContext, clang::Parser::ParsedTemplateInfo const&, clang::SourceLocation&, clang::ParsedAttributes&) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x7040d)
#6 0x00007ffce332ce33 clang::Parser::ParseDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, clang::SourceLocation*) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x1ce33)
#7 0x00007ffce338ea4e clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*, clang::ParsedAttributes&, clang::ParsedAttributes&) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x7ea4e)
#8 0x00007ffce3370d8c clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x60d8c)
#9 0x00007ffce3362e8e clang::Parser::ParseCompoundStatementBody(bool) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x52e8e)
#10 0x00007ffce3366709 clang::Parser::ParseFunctionStatementBody(clang::Decl*, clang::Parser::ParseScope&) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x56709)
#11 0x00007ffce3354dd9 clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x44dd9)
#12 0x00007ffce3328f35 clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::ParsedAttributes&, clang::SourceLocation*, clang::Parser::ForRangeInit*) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x18f35)
#13 0x00007ffce3378243 clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec&, clang::AccessSpecifier) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x68243)
#14 0x00007ffce33861a2 clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*, clang::AccessSpecifier) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x761a2)
#15 0x00007ffce3359d76 clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x49d76)
#16 0x00007ffce3332963 clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x22963)
#17 0x00007ffce33934b0 clang::ParseAST(clang::Sema&, bool, bool) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangParse.dll+0x834b0)
#18 0x00007ffce46caa52 clang::FrontendAction::Execute() (C:\Users\svetlin.totev\libs\mingw64\bin\libclangFrontend.dll+0x4aa52)
#19 0x00007ffce46d051c clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangFrontend.dll+0x5051c)
#20 0x00007ffd25b739dd clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (C:\Users\svetlin.totev\libs\mingw64\bin\libclangFrontendTool.dll+0x39dd)
#21 0x00007ff74529ac56 (C:\Users\svetlin.totev\libs\mingw64\bin\clang.exe+0xac56)
#22 0x00007ff74529b385 (C:\Users\svetlin.totev\libs\mingw64\bin\clang.exe+0xb385)
#23 0x00007ff745296db6 (C:\Users\svetlin.totev\libs\mingw64\bin\clang.exe+0x6db6)
#24 0x00007ff7452912ee (C:\Users\svetlin.totev\libs\mingw64\bin\clang.exe+0x12ee)
#25 0x00007ff745291406 (C:\Users\svetlin.totev\libs\mingw64\bin\clang.exe+0x1406)
#26 0x00007ffd2d1d257d (C:\Windows\System32\KERNEL32.DLL+0x1257d)
#27 0x00007ffd2dbeaa58 (C:\Windows\SYSTEM32\ntdll.dll+0x5aa58)
clang: error: clang frontend command failed due to signal (use -v to see invocation)
(built by Brecht Sanders) clang version 16.0.5
Target: x86_64-w64-windows-gnu
Thread model: posix
InstalledDir: C:/Users/svetlin.totev/libs/mingw64/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: C:/Users/SVETLI~1.TOT/AppData/Local/Temp/test-0047ff.cpp
clang: note: diagnostic msg: C:/Users/SVETLI~1.TOT/AppData/Local/Temp/test-0047ff.sh
clang: note: diagnostic msg:
********************
```
The files mentioned in the error message:
C:/Users/SVETLI~1.TOT/AppData/Local/Temp/test-0047ff.cpp:
```
# 1 "test.cpp"
# 1 "<built-in>" 1
# 1 "<built-in>" 3
# 459 "<built-in>" 3
# 1 "<command line>" 1
# 1 "<built-in>" 2
# 1 "test.cpp" 2
enum {A, S, D, F};
int main()
{
using asdf = decltype(A);
using enum asdf;
return 0;
}
```
C:/Users/SVETLI~1.TOT/AppData/Local/Temp/test-0047ff.sh:
```
# Crash reproducer for (built by Brecht Sanders) clang version 16.0.5
# Driver args: "test.cpp" "-o" "text.exe" "-std=c++20"
# Original command: "C:/Users/svetlin.totev/libs/mingw64/bin/clang.exe" "-cc1" "-triple" "x86_64-w64-windows-gnu" "-emit-obj" "-mrelax-all" "-disable-free" "-clear-ast-before-backend" "-disable-llvm-verifier" "-discard-value-names" "-main-file-name" "test.cpp" "-mrelocation-model" "pic" "-pic-level" "2" "-mframe-pointer=none" "-fmath-errno" "-ffp-contract=on" "-fno-rounding-math" "-mconstructor-aliases" "-mms-bitfields" "-funwind-tables=2" "-target-cpu" "x86-64" "-tune-cpu" "generic" "-mllvm" "-treat-scalable-fixed-error-as-warning" "-debugger-tuning=gdb" "-fcoverage-compilation-dir=C:/Users/svetlin.totev/Documents/test" "-resource-dir" "C:/Users/svetlin.totev/libs/mingw64/lib/clang/16" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/x86_64-w64-mingw32" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/backward" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/13.1.0" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/13.1.0/x86_64-w64-mingw32" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include/c++/13.1.0/backward" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/include/c++/13.1.0" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/include/c++/13.1.0/x86_64-w64-mingw32" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/include/c++/13.1.0/backward" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/x86_64-w64-mingw32" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/c++/backward" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1.0" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1.0/x86_64-w64-mingw32" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1.0/backward" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1/x86_64-w64-mingw32" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13.1/backward" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13/x86_64-w64-mingw32" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/gcc/x86_64-w64-mingw32/13.1.0/include/g++-v13/backward" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/lib/clang/16/include" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/include" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/x86_64-w64-mingw32/usr/include" "-internal-isystem" "C:/Users/svetlin.totev/libs/mingw64/include" "-std=c++20" "-fdeprecated-macro" "-fdebug-compilation-dir=C:/Users/svetlin.totev/Documents/test" "-ferror-limit" "19" "-fmessage-length=208" "-fno-use-cxa-atexit" "-fgnuc-version=4.2.1" "-fno-implicit-modules" "-fcxx-exceptions" "-fexceptions" "-exception-model=seh" "-fcolor-diagnostics" "-faddrsig" "-o" "C:/Users/SVETLI~1.TOT/AppData/Local/Temp/test-6235c7.o" "-x" "c++" "test.cpp"
"C:/Users/svetlin.totev/libs/mingw64/bin/clang.exe" "-cc1" "-triple" "x86_64-w64-windows-gnu" "-emit-obj" "-mrelax-all" "-disable-free" "-clear-ast-before-backend" "-disable-llvm-verifier" "-discard-value-names" "-main-file-name" "test.cpp" "-mrelocation-model" "pic" "-pic-level" "2" "-mframe-pointer=none" "-fmath-errno" "-ffp-contract=on" "-fno-rounding-math" "-mconstructor-aliases" "-mms-bitfields" "-funwind-tables=2" "-target-cpu" "x86-64" "-tune-cpu" "generic" "-mllvm" "-treat-scalable-fixed-error-as-warning" "-debugger-tuning=gdb" "-fcoverage-compilation-dir=C:/Users/svetlin.totev/Documents/test" "-std=c++20" "-fdeprecated-macro" "-fdebug-compilation-dir=C:/Users/svetlin.totev/Documents/test" "-ferror-limit" "19" "-fmessage-length=208" "-fno-use-cxa-atexit" "-fgnuc-version=4.2.1" "-fno-implicit-modules" "-fcxx-exceptions" "-fexceptions" "-exception-model=seh" "-fcolor-diagnostics" "-faddrsig" "-x" "c++" "test-0047ff.cpp"
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsXElz6ziS_jX0BQEFCYpaDj7Ikl39YlzlF8-u7p5TBwQkJXSRAAcAZb05zG-fALiIpOWlbHmZmHrhUlEgkMuXCRBIZooaIzYS4DxILoJkdUZLu1X63OzAZmI-PVsr_vP8VyFFTjMEe5oXGQTxIghXQbgIJmH957-CLHMUTC8WAVmiW_exch9XwXQVxBcoIFcBuUJ2C8j3FAYJiahEqrSgkWGqAGQVojslOJI0B8RUlgkjlDQjdLcVBhmA3KBSasioBe66O3rrcjOqRaqYeAYLw9Pn5ZE0F3JzEKvQsANpjW9hmpptRVlIi3IqZEBmAZnX3KYX1QUqjSNCPcd4hTiwzP4sICCzhesdN_0Qqrt6Xq5_DxphUCYkIEZLAw9EcKM12FJLFLYknTbHrPEbADeIci6sUJJmiGVUbhBTeU4lr9hQvSlzkBYFhGBjeRCvWEAuAnJBwoAQFJCZ0shBrQMyd2ibsiiUtpUS2CmBna5UU-vNVPG-2wLaMOaYFSID3VyYSkWmOKB7YbeqtIjKn6jQap1B3gxfqXuZKcqBtxQMSrXK0dbawjj_84DdC5mJtRkxlbuGygn3lFmUigwQr8k4Xf8I4sVg9EbYbbmuB681sK01VHLQ5kD6X8437gNypSEDasDdasgG5CqKR9EoxNFkFI4SHEWjcBTikmmLdXIggvezyb8mY1woI_bYwBZvGMP12Czb5Q0BzwzfT8aeRE1OJ6P_FkWl3M2tU-MfQnJ1b2qr-8_LfQHMTYg1bOlOKO36ee9xUJutKrMWy1F34M3agN4NBlaekmolLUheeSAYbzFPNFVZpu69F2utNMrBGLp5dF34fn25uL1EplznwiLqZivS4N3IqqeM4rCp_4cLrf4NzAbkShhTekMg58dCsqzkcJgqaE3ZH1ZTBm6yFxoKrRgYAxwZVeqq2Y2kxigm_DKiS4kM06KwNTi3lrI_EC_zolUqHKHvWm00zdtp48RGy0r2303lONXKKUdWWdg54cXaNXvTTsbO09wScuUhHsEeEGYsQthqUWSAak-5d_9VVsYbWSIMubBYrf-NcO6Wvj2mWYYwF4auM8CpBkcnA6oxNRavIVUasAPC2a_t54HcgRapAO2bGdUc72hWAnYLrkHYLXHYTR_fgCwYO2JFUTFWzE9znCsOGSoEQ7gQDGewgwwRhPNU0xxwoYR0S0a8kkoCwmlO7RaD1lIhnKYFZko6C9kgXimJcCoV1qqU3K0pri_COVPSWF0yqzSmmXBzD-E8N3gtbCog4wbhtJQOJWyddiaIVwRhS_UGLGZF6cDEkzHCtpTgGzYgQTuhc4eEAx2oxYbRrIJR7IFj79KYGnxPtXQ-jjmsy80GtCMk5CaIVxu-RjhlageabgBXE6uChgun9zNOsVKsdiBy5RBGWEPlnG78n3apTKwbl3KL0gRhj7-kGRbmp7GQ_2mSHUf0jTFxM6-aa45X9ZT4MEZHO34kdzeX7qnmH8mzekJ8PMdPB7sV44SovyvAH4_lR8FWLS0bxh6zX8v0PRaHN3B_L-DfJtInW2ZTCYJ3J_P8E0jxlSz1ULSvZLGvIMOXtdaXstXnS_BF7fQeVjpsfA9c33m78l7kS6NPyqSlNAjuIJxyKDQwd_zFOWVa-aZ1uTnFaSatDlGZcAf-aO5OgFWIAGcgN3brjmrhrDr4lQYw21NMLeyFG7uRJXOnVCOUDOLVeETcyue6irzIBBPWnT_LzB0IU7bfY9gzKHz4yXHufGmvqwNrEK8MbP3BLVMac0E3UhkrmBtHOddGbBBWQ5Bv_355d_3tf6LR3c1dQK4WRbGilgbk6loxmgXk6g7yolYdT0icsOlIIbxHzT6oOUNXcYRodGiIF5MgXpDQB11KrUFaVFBtQCOr_gCJAjIN4gv36ceSEfL_OgTGQbyI3Hg3zh1X01IypzNaK_7TEaiCljWF-AkKQvoQkTuII2OphTo0OHOjpxfBdOUumtjnZQMuWioObny4X4b-X1KHKwMShyjcu6ZpmrJZOovYfBxW8SUHcrxYHYKHv9EcqsYN2KvLOwfAN5mqKuCKfEDASePNkywr8yTLvjcmSz8HkmUzB5LlWsiq2bO9hZyOeJYF5CLcJ4mTp1XJCRz1BE7mJKLQFfgbB2l9AOUHGJXtQFfta9j42PATupH5icUn3EnXE5_0xJ_MeAjjrvhufHX1vTTbG3nLVAHLLRXS9IV3EnOnQUB8_LxLw42pm9dKZadXLGZO7p5icU-xaTznfHZcsQWzN_J3NxcuZZl3jNBXsKtFp3nBGBhzWwDzRh6q7oM013Uc7GQ3D05VOfxkcH_5z396cZ1YXuRTAz6eOjx7gI87gEMcj3lI065M3_061bn2kD8Kd3ND6aWSFvZ2oOIDctwtqxm14CCpZv9DYP4U5MPBFZuFtVqsSwvmYY8HznAC3D3Xg6c7WHu4J33cZ-E45C_AXWhgVuzgRn-yCV6E8slxnDqYejhO-jgS9_Gktq_G7e1-9nyPIY_TrAF9DCMHUQ_D6cAXgY7hSQxvm21Dzw0XqQXd1W7m3-xUiuU0y_4OzCodxMuuxja39fIckzKILx-BreewbtDLjDRc919ppNM7ssO4Z4RZ3wjTkM_YK4zwVVA_OWITB0gPsXkfsQmB2dNuu6y3vS1yF4r_DMjsZLubvsSJE-iQREDiKBxIPJmG8yclvqp3-UOJB8vWI37e85ZqH_Qevpw4NXp6Rn09kzHnL9NzBamQ4uHa_L069RyW6Jf460sea91R19TCYfZfC2Pfx5PHDo4eXmTwEJulcfLsQ-wXrcriUZiqPeRQ3RftDf7sE-pRQK-U_kHlBr5J8U5QRg6pHpTxYBmdkfHz-4Eb3XHAb3U05iG0b326P2ue99-IThwePcAGB4DZJKLkpRuoHm6PTtyTw_bsYe70j2uHSg-2wf49mfPp5EnYLveVWz26_3wvqE6_fjldPd0WjcEuPCbzydOz7k4V17CDrHp6dWG4Keh_lfDdDnYs7Yr3A9Kj-5VDZOBXHzb8lhdKW__gfJ_HHnFK9nxisI-ex-N1-ACFxe3dIELhBK_UqTYiJwy39CWeOYF6Evc2neMJozTpTf6rOjls4Sd51Xa5B1Y6UGcnEbFhcXAvJ0RPynlfSh4mUW9rvKyzB79JY6lk0JOzFr0H-UCtE7nHA00SJ2hXE9LZAHKSrH18q6tJLfNBoV37oJ09pfCJ5nmjwZ1S2SF2Mee8p0RndzcdJ2ROWTJ5Pe82Rc4zc7R6zMiA2TqeJadi5mj1mMUDZhO-PplmjlaP2XjALCIAp2LmaPWYJUNm4_BkmjlaPWaTrpfziJNkyjvMmsTWZHnrX3fFJEiW_3H547fL65iMVtfXtQrJtO930x7ZNVCazI6T_c_bu8tfPVlpeXZw5cQNaWk2E6pKbz2WEVsnUadUZMARL33iuhEbSTPHuDSA8M63ASDRmayt1LN1KTKL1j_RhU89RrdN7nF9IEL1KzBUJQfXidU-u9FJdDxTtEm_1kA5ql96LZBPPK5u-YUhy4CvhH5t9mofI6msf_tzeJ2GcuPvNKq-4a-TqVxnES_u7hbLv6G7v12iq5vr65t_fPvtF3T17fryFt3d-OaL339BPy6_3_y4C5rc3e_HsoBnHutHM4HbDhqQT3wFjqhtSb5A_7e8RwzD8TRND28NP4ZdU2jwPLeuZU5g4X7C-N0WfAa_QTlIN2-AIyGrEo2jCecnQvqR_PWAxChCASHtS1NCBneCeOnnMxbS70EJip7tER96jJP5s30aKt0CjhfzGsrb0aS593T1TtfeT1fCtBUuryyGeVGpyzEzncb_n_CBpS8v8EsJLxlolCqNXruSO4IrLXagEdUbX0kwsEtACFb1hYW9rR6r5JFanQPVGy02whf8VJ7iSLtBbyxUaFgzFjWXVdFC_e2RB1LdtSlgaL4fyhialm4xQ8vrkZKG4ZheYUPn5rC8oeXeK3JoMe5j_6Dgob5RCNZ0aYsf6gbSjj1WCNHc7JRDtE3Dooj2xrA0ouVwpECivdctk2gpPSiWaM3YlkwcTImdC9S36_KJ-ntdRNHyqop0God4QUFFa59jZRWttKcrrmhIdkss6ra355tVpId5Wq8k_9IE-U9herTj50jSZBB-Fv8mxfFzuX8hgzzIlj6xIB9mhM_F-zOgfVM9w9eR5P2Nc5rCjy8g1IMah68n0de05uPFIV9NuK8nz_8Bi35Ze341ab68Ld_bkscKTj506_X-rHqFKO-1zXksllGdAIcFKp0bJylTael1ilXqtmh-OKsfKVzpHs775SvtnWNFLN1hw1KWw7m3V9BykPFB09Hils7xeVDi0t6pC12GEaZTFL00NPf1RX-f-CB6-ldQ6q-g1P_3oNRfi99nLn6PL1Td10JtcL3_YuCMn8d8Hs_pGZxH0yhK4nkUz8-255PxLEnH83mSpBDPo4iz8Yyl0SRKp2uYMnYmzklIxmFMplEUk3AyohMSs2hN53MeQQIsGIeQU5GNnB-PlN6c-R89Op9NpvPwLKNryIz_xTZC6r0ICZLVmT73a8663JhgHGbCWHOgYIXN4LzzvqXzu13VTztRqeTPXJWmut_87FP_3fdZqbPz1_9mk9fgfwMAAP__zUs5sQ">