<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/127263>127263</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Assertion failure with structured binding pack in lambda body
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          davidstone
      </td>
    </tr>
</table>

<pre>
    The following valid translation unit:

```c++
struct s {
        int m;
};

template<typename>
void f() {
        [] {
                auto const [...elements] = s();
        };
}
```

causes clang to crash with

```console
clang++: /root/llvm-project/clang/include/clang/AST/Type.h:945: const clang::ExtQualsTypeCommonBase* clang::QualType::getCommonPtr() const: Assertion `!isNull() && "Cannot retrieve a NULL type pointer"' 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: /opt/compiler-explorer/clang-assertions-trunk/bin/clang++ -gdwarf-4 -g -o /app/output.s -mllvm --x86-asm-syntax=intel -fno-verbose-asm -S --gcc-toolchain=/opt/compiler-explorer/gcc-snapshot -fcolor-diagnostics -fno-crash-diagnostics -std=c++26 <source>
1.      <source>:8:33: current parser token ';'
2.      <source>:6:10: parsing function body 'f'
3.      <source>:6:10: in compound statement ('{}')
4.      <source>:7:2: lambda expression parsing
5.      <source>:7:5: in compound statement ('{}')
 #0 0x0000000003e84588 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x3e84588)
 #1 0x0000000003e82244 llvm::sys::CleanupOnSignal(unsigned long) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x3e82244)
 #2 0x0000000003dce648 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #3 0x000077c2af442520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #4 0x000077c2af4969fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
 #5 0x000077c2af442476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
 #6 0x000077c2af4287f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
 #7 0x000077c2af42871b (/lib/x86_64-linux-gnu/libc.so.6+0x2871b)
 #8 0x000077c2af439e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
 #9 0x0000000004283f94 clang::QualType::getNonReferenceType() const (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4283f94)
#10 0x0000000006961919 clang::Sema::tryCaptureVariable(clang::ValueDecl*, clang::SourceLocation, clang::Sema::TryCaptureKind, clang::SourceLocation, bool, clang::QualType&, clang::QualType&, unsigned int const*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x6961919)
#11 0x0000000006965876 clang::Sema::BuildDeclRefExpr(clang::ValueDecl*, clang::QualType, clang::ExprValueKind, clang::DeclarationNameInfo const&, clang::NestedNameSpecifierLoc, clang::NamedDecl*, clang::SourceLocation, clang::TemplateArgumentListInfo const*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x6965876)
#12 0x000000000696ce97 clang::Sema::BuildDeclRefExpr(clang::ValueDecl*, clang::QualType, clang::ExprValueKind, clang::SourceLocation, clang::CXXScopeSpec const*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x696ce97)
#13 0x00000000068b3443 CheckBindingsCount(clang::Sema&, clang::DecompositionDecl*, clang::QualType, llvm::ArrayRef<clang::BindingDecl*>, unsigned int) SemaDeclCXX.cpp:0:0
#14 0x00000000068b5249 checkMemberDecomposition(clang::Sema&, llvm::ArrayRef<clang::BindingDecl*>, clang::ValueDecl*, clang::QualType, clang::CXXRecordDecl const*) SemaDeclCXX.cpp:0:0
#15 0x00000000068b6a1b clang::Sema::CheckCompleteDecompositionDeclaration(clang::DecompositionDecl*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x68b6a1b)
#16 0x00000000067fd367 clang::Sema::CheckCompleteVariableDeclaration(clang::VarDecl*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x67fd367)
#17 0x00000000068044d7 clang::Sema::AddInitializerToDecl(clang::Decl*, clang::Expr*, bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x68044d7)
#18 0x000000000649500a clang::Parser::ParseDeclarationAfterDeclaratorAndAttributes(clang::Declarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::ForRangeInit*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x649500a)
#19 0x00000000064a40b9 clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::ParsedAttributes&, clang::Parser::ParsedTemplateInfo&, clang::SourceLocation*, clang::Parser::ForRangeInit*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64a40b9)
#20 0x00000000064acab7 clang::Parser::ParseSimpleDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, bool, clang::Parser::ForRangeInit*, clang::SourceLocation*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64acab7)
#21 0x00000000064acf79 clang::Parser::ParseDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, clang::SourceLocation*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64acf79)
#22 0x000000000655b552 clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*, clang::ParsedAttributes&, clang::ParsedAttributes&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x655b552)
#23 0x000000000655c280 clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x655c280)
#24 0x000000000655d145 clang::Parser::ParseCompoundStatementBody(bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x655d145)
#25 0x00000000064fa982 clang::Parser::ParseLambdaExpressionAfterIntroducer(clang::LambdaIntroducer&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64fa982)
#26 0x00000000064fba6b clang::Parser::ParseLambdaExpression() (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64fba6b)
#27 0x00000000064db9d5 clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, bool&, clang::Parser::TypeCastState, bool, bool*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64db9d5)
#28 0x00000000064dc387 clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, clang::Parser::TypeCastState, bool, bool*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64dc387)
#29 0x00000000064dc419 clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64dc419)
#30 0x00000000064e0e59 clang::Parser::ParseExpression(clang::Parser::TypeCastState) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64e0e59)
#31 0x0000000006564fb9 clang::Parser::ParseExprStatement(clang::Parser::ParsedStmtContext) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x6564fb9)
#32 0x000000000655b32e clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*, clang::ParsedAttributes&, clang::ParsedAttributes&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x655b32e)
#33 0x000000000655c280 clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x655c280)
#34 0x000000000655d145 clang::Parser::ParseCompoundStatementBody(bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x655d145)
#35 0x000000000655e94a clang::Parser::ParseFunctionStatementBody(clang::Decl*, clang::Parser::ParseScope&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x655e94a)
#36 0x000000000646fd63 clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x646fd63)
#37 0x00000000064a4a9d clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::ParsedAttributes&, clang::Parser::ParsedTemplateInfo&, clang::SourceLocation*, clang::Parser::ForRangeInit*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64a4a9d)
#38 0x0000000006570276 clang::Parser::ParseDeclarationAfterTemplate(clang::DeclaratorContext, clang::Parser::ParsedTemplateInfo&, clang::ParsingDeclRAIIObject&, clang::SourceLocation&, clang::ParsedAttributes&, clang::AccessSpecifier) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x6570276)
#39 0x000000000657db7c clang::Parser::ParseTemplateDeclarationOrSpecialization(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::AccessSpecifier) (.part.0) ParseTemplate.cpp:0:0
#40 0x000000000657de9a clang::Parser::ParseDeclarationStartingWithTemplate(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x657de9a)
#41 0x00000000064ad123 clang::Parser::ParseDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, clang::SourceLocation*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x64ad123)
#42 0x000000000646ba57 clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x646ba57)
#43 0x000000000646c90d clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x646c90d)
#44 0x000000000645edaa clang::ParseAST(clang::Sema&, bool, bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x645edaa)
#45 0x000000000481c648 clang::CodeGenAction::ExecuteAction() (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x481c648)
#46 0x0000000004ae3345 clang::FrontendAction::Execute() (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4ae3345)
#47 0x0000000004a66c4e clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4a66c4e)
#48 0x0000000004bd1b3e clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x4bd1b3e)
#49 0x0000000000d4e78f cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0xd4e78f)
#50 0x0000000000d4620a ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#51 0x0000000004862c29 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::'lambda'()>(long) Job.cpp:0:0
#52 0x0000000003dceaf4 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x3dceaf4)
#53 0x000000000486321f clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (.part.0) Job.cpp:0:0
#54 0x000000000482639d clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x482639d)
#55 0x000000000482741e clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x482741e)
#56 0x000000000482f3d5 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0x482f3d5)
#57 0x0000000000d4b583 clang_main(int, char**, llvm::ToolContext const&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0xd4b583)
#58 0x0000000000c143a4 main (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0xc143a4)
#59 0x000077c2af429d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#60 0x000077c2af429e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#61 0x0000000000d45cb5 _start (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+++0xd45cb5)
clang++: error: clang frontend command failed with exit code 134 (use -v to see invocation)
Compiler returned: 134
```

https://godbolt.org/z/avMqhff3c
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzsW01z2ziT_jX0BSUVCX6JBx9o2X7Xs54kG3uzublAsClhTQEcAHTk-fVbACnxQ7IcZ8yZbL2Z8lREstF4-ulGowkCRCm24gDnTnjhhJdnpNZrIc9z8sRypQWHs0zkz-f3a0CFKEvxjfEVeiIly5GWhKuSaCY4qjnTjp86rv2L3OaPOvjC_Lmp0rKmGinkxBdWKGFco43j26v4sv3hpho2VUk0OP5SP1fAyQYc_8px0yfBclQ4eOHgpNPSoO5duwmptUBUcKWRE17M53MoYQNcKyvoXyLVKNl1mXTdx5d99A0gSmoFCtGS8BUymiVRa_SN6fXYWMGVKME0MbKt6X6KHHwthdAOvi7Lp82skuJ_gZrLVu6acVrWOfTupHf3Dr6-f65gvnb8NAlCo6gxqpHxU8dPr7b6v2pSKiO4FJuN4BdEgYPTvpCRMALN1Qp0I_lJy5ZMq9boT5UCad1pLMIeUx_qstxRjiMHR8jBeEk4FxpJ0JLBEyCCPvz37S0y7kKVYFyDdDB2cIwKwkrI546bfrq9Su-ukKqzDdOIoKxeIQmVkNpwuta6UgYfvnbw9YrpdZ3Nqdi0lB0yx5SqQTn4GhGeo5Y_pNfQuicj9FFLQsHBS1RJqKSgoBTkSIlaNrdNS6KUoIxoyJGsOVJUskobvHea0EeU15uqiWp37rjJJylWkmwQkau6iajGu6Ky3hSbipUgZ7CtSiENCY0_Z2THq5ppWfNHB19njHfuNoGCZqv8G5HFLECzFZoJo5dUldFe66rWc4VmG8MCms22i2hG1GamnrkmW8e_NJyXaFZwMXsCmQkF5jma3aHZbEXpTAtR0jVh3PEvT-I1woqTSq2FRrOCilLIWc7IigulGVVNH5bj4W2lc8e_bMe7CRN_2TJtB69n6Bvc89OF46e-b-O6lhK4RhWRCiTS4hE4cnBsRiWOHTfFR5pHjp96rmlumpmsVNSc2ug1Gcu0L5rW_snWjCPDhKh5jpQm2uYKZIM-NmklvjQ_cOK4aXBEUez4KTZ6SrLJcoJgW0lQysBocTluGr7QMHwjAORg30Xu1t3958MiCBcLZEeJHd_qWTU_PknGtQ3j-2YgLDohSb49CKUlkI0d1kvEuG4G-eKd4tnBF-62hdeB90bgMQ6CY-CXJRBeVx_5HVtxYlJQze08laNSmC6mgGrAdFDxAGpOIQoWaGki_zNQ8QTyucH2H4Tnpelx0XI4kFkKrmGr57QyicS1_zf6_VZ_HFNMiiDAIXZbo0qWOfh6u4geomBWMl5vZyteNw_oXIl5ZCHbJh3gYKgwiZKCokqvJZD84ZGV5du02_ad9nAMN4gjtFKWgrfCDuKoUxwNFeNFXPiIZGZmeJNa27BTGx-o9bI3K_SyTuFiqNBPIIneptA26RQm_QAL8MIvkuDkvP1B8M9QgAROwT7oTd_vPRxaPA1aM3AHaSdKIi_xkj7aO9iQ5peWz0tS6VrCFyIZyUoDtCf5hZQ1XAItHZya1NNXYvPjraC2qBw_3Pdwv-_hPxnPX9WRCVGOhPbcNtnv5Sf7tGPK1aZQMqjfPf20jHZ8eyO-w0UcHWfjomZlbvj8DMXVtpLfzXZn6nJYVFbStjpCrlFEpGX2A9nADS_EjpUxkR9AaciN1F0FlBUM5K2gYyGygfwHYuG-fUtI20rslindBzORi4wTOhfhkYsoJPE_76KTvC2_fr2jorIumZgrw0bHlT_gapH5QeCj5Rro4wXjOeMrtRS1mT8XYwIPAusSbLmkmAHyOm1ddZFKSZ4_Q-H4y55s2_9OkX81HvaGHoPESCy_fh1N5ca4YGRciIMEUWPc77DJQA4Qv2jiDwH9S2G0_PrV1CnShuYgHE7bG47sjYiXHQ986-Gl2FQlaDhwXJtJhowcd-_7R2gDu4vQaGBUXOR-9MJoHhi1m-NetOcLkRNa0eDsrIiHrnGDIH_BijTPbzjTjJTsT5D3ogE58sSRWGryV9pNrBO4xsLujFoMjAqS0HVJH9In-97Y-91zRlpoOwDttZApz1OtJctqDerQ3EboMOcc9JDvZqBTU2C_1bWQnwlfgeF8olhoiOloS4a0kcDNkldp-5cUdTUk5lPzHmuemnnjaEZumWtfd47xMOD9bfweyo8nuXGQ_t3MW273zGN3xDwlWXzS3DtmssmpnHiS4DEdR-l93QGHEkdK55PUvuakKag35HbUe2Pqi_j1oP-5SP8HKCziXvQO69owzMIQn47e3arVRznOvINk21U4dxtSll-AmmQ7KHLu9GYXST6ubZHzeq4wjb7PR0fzxNt99P4-aFjufOCPfEDxwv0BH_wspE9BmKGkIywYEZZ7QXjSgGW75ron7kLkzw5eTFXUNJA6wMMiOihIsjg9ym7tAvPVfn3Zjq8brqXIawqjd8pGuP90krBtYHdGRSOjMhJlbzJq_7HpvXEaJB3OYZkc5FmSvxItROkByheEjZy93r2Z72bQ5t9Tw8p-xCNK24A8bDpN6reWd7yMKu2c-ovThctf5uWnIsOY25GRjMkIvNOlRGq_pZtc8j2UjEycxJ6gt6Toj6pScCE8bc_PYYXF2VkxLPBCM7Rft2Kf5F825MisNsEkYOF2xhyUWj6GX6XW5KWWj6Hzwa9S622llv__rdTywxFgSILT60fX7U6CMeBXF8cOY4WK9lvSFGYaQzozR8VXVOSR_11mXkLB-JHF6d7Cz3QLY7dEQzfyb9lknyQaQjq64vHyGEnyX8tjEy2PkSTvmB9WmWHs4uG3zVfXc3fWv23B5q0s9hz7Ob25-Zg1m89eI_vtqzwppaDU_jPpJLnCkty5IBm5IM9iepKrHVU9V3yUFjIp2Z__yPLZcdrmFZF6bqYrNAB--B0rcMckQPLd3xXuNJGa8dX_ML3-sXD8IQKmiAxj9j4ygvECau7h07PIrwXUhqSOQjyaiDMSnn6LvtpqkJyUL1L5HlQczFMTzbLG2o4Lf8QFTdzTs-y9qG7hCcrD75EfK_JHDZ_0qKTeT8v2i_mRgrr75vm7yOsSbjaVkLsX1mmWxayZHQnDijkIISeHicbu-X5hb8Bw9WMCwBZSB3hQMQcLj0bBYrBzQOTwL-CpLR-bW1dboLWG9tYky3gtkA7moOINCPj-8E3kWprEw_MjOCdC2GDoEMZDhFFEAxgS2fR5w5UmnMJxLl82aZL4bXF2VgwKtiDLvcyH4Z4Ai7cz5mmfcBenjJ0kBbX4OvSDWsfNA4gXBaLUe9gQNnxt72-8WRPZbYlpN9sM7uElehIsn8aIBuXehtAd2RBhl6Ad7Uvv3uaF4wsQN5uqPGrQaNeR0dFO1L33tgTlkj2BPCyfQm-YJCJMcWIp6Snd7cl_kJZV-3R3_OaqEaGkLDNCHx8KPkzsTcdt6Cy9pdhsCM_Ho_io9-xxBHNPVKZ3YgjokaMl46t2umhcu2_w8EC3W89rLjKiGH1QVrylcCBsbjxoSZhWu8cjdaQszVBoloHa50YkHa1l787gmD8cN2cJ7Lb_HVV4sdv4_pvIjjjjYLs6Kfo7649tSm-efK75HSmgfB5wedpvE2y_bxB3Ae-PgsvHXoH-nYNj9G5zPAqCIWs48odrGgPWrNfIwcy4o3KQukcNjcBLizsnRNNBOTPV1vXG7C6URsUMjgMP3krKbyJTLzPym8humdIDRk7l4n0EVIQZ59tdpt9PYhsmfwuVhqyOymhEZeEPv5v2YV_2fg8KhCOVwUsu-BupnKBatfR05MWjOTwLF-2b9a4S2YG3qSRtE8HrM_S71x4GWYd7UP251At8EiCD-L07blR3HSejMzxJnrzxiJRtslcYuWOFELjo4cG0eVCaSP3QM-u7u4Cg14U3cnJIsxA1yt_fT0Z503X_mZ8ikNLMKu05YFS0Lw2ItvHfHMy1p5gRbJkJpxyQ5wcGY60AzZ6QFkgBINYr5k1PuyIeSdC15GCGn2l5eHJ6dKpX5Jko9VzIlYOv_3TwNXn6_Y91Ufj0LD_388RPyBmce7GfhFEcxsHZ-jzLEw_8rKBFGBY0h4ISAAokhjwjIZAzdo5dHLrYC7Dn4dCfY3DzgkKW4aSII584gQsbwsq5GUWm7zN7dPjcwzGO_LOSZFAqe_YdYw7fkH3qYOyEl2fy3J46zuqVcgK3ZEqrTo1muoTz7sS0YbSW0FDanHavJeQoa3bto4rQR8T47phoJvLns1qW5z9-9Lk14ekc_18AAAD__-O6uoo">