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

    <tr>
        <th>Summary</th>
        <td>
            [Clang][ASTImporter] clang::FileID clang::SourceManager::getFileIDLoaded(clang::SourceLocation::UIntTy) const: Assertion `0 && "Invalid SLocOffset or bad function choice"' failed.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang
      </td>
    </tr>

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

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

<pre>
    When running the following on trunk (3d1172813fc640514c6cb421394c34f4b42cb634)

test.sh

```sh
clang++-18 -cc1 -std=c++17 -emit-pch -o qminimalintegration.cpp.oclango qminimalintegration.cpp
clang++-18 -cc1 -x c++ -ast-merge qminimalintegration.cpp.oclango /dev/null -ast-dump-all=json
```

qminimalintegration.cpp

```cpp
template <typename _Tp> struct is_object {};
template <typename _Tp, typename... _Args> struct __is_constructible_impl {};
;
static void __attribute__(())
_movdir64b(void *__dst __attribute__((align_value(64))));
```

The second command crashes with this backtrace

```console
clang++-18: /data/llvm-project/clang/lib/Basic/SourceManager.cpp:865: clang::FileID clang::SourceManager::getFileIDLoaded(clang::SourceLocation::UIntTy) const: Assertion `0 && "Invalid SLocOffset or bad function choice"' 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: clang++-18 -cc1 -x c++ -ast-merge qminimalintegration.cpp.oclango /dev/null -ast-dump-all=json
1.      <eof> parser at end of file
 #0 0x000055555adf59e8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /data/llvm-project/llvm/lib/Support/Unix/Signals.inc:727:0
 #1 0x000055555adf3524 llvm::sys::RunSignalHandlers() /data/llvm-project/llvm/lib/Support/Signals.cpp:105:0
 #2 0x000055555adf413e SignalHandler(int) /data/llvm-project/llvm/lib/Support/Unix/Signals.inc:403:0
 #3 0x00007ffff7bc6980 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12980)
 #4 0x00007ffff67f4e87 raise /build/glibc-CVJwZb/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:51:0
 #5 0x00007ffff67f67f1 abort /build/glibc-CVJwZb/glibc-2.27/stdlib/abort.c:81:0
 #6 0x00007ffff67e63fa __assert_fail_base /build/glibc-CVJwZb/glibc-2.27/assert/assert.c:89:0
 #7 0x00007ffff67e6472 (/lib/x86_64-linux-gnu/libc.so.6+0x30472)
 #8 0x000055555b20348d (/data/llvm-project/build/bin/clang-18+0x5caf48d)
 #9 0x000055555b206a32 clang::SourceManager::getFileIDSlow(unsigned int) const /data/llvm-project/clang/lib/Basic/SourceManager.cpp:776:0
#10 0x000055555b206a32 clang::SourceManager::getFileID(unsigned int) const /data/llvm-project/clang/include/clang/Basic/SourceManager.h:1856:0
#11 0x000055555b2083cf clang::SourceManager::getSLocEntryOrNull(clang::FileID) const /data/llvm-project/clang/include/clang/Basic/SourceManager.h:1825:0
#12 0x000055555b2083cf clang::SourceManager::getDecomposedExpansionLoc(clang::SourceLocation) const /data/llvm-project/clang/include/clang/Basic/SourceManager.h:1281:0
#13 0x000055555b20ad6d clang::SourceManager::getPresumedLoc(clang::SourceLocation, bool) const /data/llvm-project/clang/lib/Basic/SourceManager.cpp:1461:0
#14 0x000055555de7a225 clang::JSONNodeDumper::writeBareSourceLocation(clang::SourceLocation, bool) /data/llvm-project/clang/lib/AST/JSONNodeDumper.cpp:246:0
#15 0x000055555de7a8c0 clang::JSONNodeDumper::writeSourceLocation(clang::SourceLocation) /data/llvm-project/clang/lib/AST/JSONNodeDumper.cpp:301:0
#16 0x000055555de7aac4 llvm::json::OStream::object(llvm::function_ref<void ()>) /data/llvm-project/llvm/include/llvm/Support/JSON.h:997:0
#17 0x000055555de7aac4 llvm::json::OStream::attributeObject(llvm::StringRef, llvm::function_ref<void ()>)::'lambda'()::operator()() const /data/llvm-project/llvm/include/llvm/Support/JSON.h:1028:0
#18 0x000055555de7aac4 void llvm::function_ref<void ()>::callback_fn<llvm::json::OStream::attributeObject(llvm::StringRef, llvm::function_ref<void ()>)::'lambda'()>(long) /data/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:0
#19 0x000055555de7aac4 llvm::function_ref<void ()>::operator()() const /data/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:0
#20 0x000055555de7aac4 llvm::json::OStream::attributeImpl(llvm::StringRef, llvm::function_ref<void ()>) /data/llvm-project/llvm/include/llvm/Support/JSON.h:1046:0
#21 0x000055555de7aac4 llvm::json::OStream::attributeObject(llvm::StringRef, llvm::function_ref<void ()>) /data/llvm-project/llvm/include/llvm/Support/JSON.h:1028:0
#22 0x000055555de7aac4 clang::JSONNodeDumper::writeSourceRange(clang::SourceRange) /data/llvm-project/clang/lib/AST/JSONNodeDumper.cpp:306:0
#23 0x000055555de901a3 llvm::json::OStream::object(llvm::function_ref<void ()>) /data/llvm-project/llvm/include/llvm/Support/JSON.h:997:0
#24 0x000055555de901a3 llvm::json::OStream::attributeObject(llvm::StringRef, llvm::function_ref<void ()>)::'lambda'()::operator()() const /data/llvm-project/llvm/include/llvm/Support/JSON.h:1028:0
#25 0x000055555de901a3 void llvm::function_ref<void ()>::callback_fn<llvm::json::OStream::attributeObject(llvm::StringRef, llvm::function_ref<void ()>)::'lambda'()>(long) /data/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:0
#26 0x000055555de901a3 llvm::function_ref<void ()>::operator()() const /data/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:0
#27 0x000055555de901a3 llvm::json::OStream::attributeImpl(llvm::StringRef, llvm::function_ref<void ()>) /data/llvm-project/llvm/include/llvm/Support/JSON.h:1046:0
#28 0x000055555de901a3 llvm::json::OStream::attributeObject(llvm::StringRef, llvm::function_ref<void ()>) /data/llvm-project/llvm/include/llvm/Support/JSON.h:1028:0
#29 0x000055555de901a3 clang::JSONNodeDumper::Visit(clang::Stmt const*) /data/llvm-project/clang/lib/AST/JSONNodeDumper.cpp:55:0
#30 0x000055555dab9ca8 clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Stmt const*, llvm::StringRef)::'lambda'()::operator()() const /data/llvm-project/clang/include/clang/AST/ASTNodeTraverser.h:142:0
#31 0x000055555dac00c2 void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Stmt const*, llvm::StringRef)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Stmt const*, llvm::StringRef)::'lambda'())::'lambda'(bool)::operator()(bool) const /data/llvm-project/clang/include/clang/AST/JSONNodeDumper.h:82:0
#32 0x000055555dac00c2 std::_Function_handler<void (bool), void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Stmt const*, llvm::StringRef)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Stmt const*, llvm::StringRef)::'lambda'())::'lambda'(bool)>::_M_invoke(std::_Any_data const&, bool&&) /usr/include/c++/7/bits/std_function.h:316:0
#33 0x000055555dabf7be void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Attr const*)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Attr const*)::'lambda'())::'lambda'(bool)::operator()(bool) const /data/llvm-project/clang/include/clang/AST/JSONNodeDumper.h:74:0
#34 0x000055555dabf7be std::_Function_handler<void (bool), void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Attr const*)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Attr const*)::'lambda'())::'lambda'(bool)>::_M_invoke(std::_Any_data const&, bool&&) /usr/include/c++/7/bits/std_function.h:316:0
#35 0x000055555dac3356 void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'())::'lambda'(bool)::operator()(bool) const /data/llvm-project/clang/include/clang/AST/JSONNodeDumper.h:74:0
#36 0x000055555dac3356 std::_Function_handler<void (bool), void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'())::'lambda'(bool)>::_M_invoke(std::_Any_data const&, bool&&) /usr/include/c++/7/bits/std_function.h:316:0
#37 0x000055555dac3356 void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'())::'lambda'(bool)::operator()(bool) const /data/llvm-project/clang/include/clang/AST/JSONNodeDumper.h:74:0
#38 0x000055555dac3356 std::_Function_handler<void (bool), void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'())::'lambda'(bool)>::_M_invoke(std::_Any_data const&, bool&&) /usr/include/c++/7/bits/std_function.h:316:0
#39 0x000055555dab8f63 void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()) /data/llvm-project/clang/include/clang/AST/JSONNodeDumper.h:103:0
#40 0x000055555dab8c6b llvm::PointerIntPairInfo<clang::Decl*, 3u, llvm::PointerLikeTypeTraits<clang::Decl*>>::getPointer(long) /data/llvm-project/llvm/include/llvm/ADT/PointerIntPair.h:192:0
#41 0x000055555dab8c6b llvm::PointerIntPair<clang::Decl*, 3u, clang::Decl::ModuleOwnershipKind, llvm::PointerLikeTypeTraits<clang::Decl*>, llvm::PointerIntPairInfo<clang::Decl*, 3u, llvm::PointerLikeTypeTraits<clang::Decl*>>>::getPointer() const /data/llvm-project/llvm/include/llvm/ADT/PointerIntPair.h:94:0
#42 0x000055555dab8c6b clang::Decl::getNextDeclInContext() /data/llvm-project/clang/include/clang/AST/DeclBase.h:450:0
#43 0x000055555dab8c6b clang::DeclContext::decl_iterator::operator++() /data/llvm-project/clang/include/clang/AST/DeclBase.h:2297:0
#44 0x000055555dab8c6b clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::dumpDeclContext(clang::DeclContext const*) /data/llvm-project/clang/include/clang/AST/ASTNodeTraverser.h:303:0
#45 0x000055555dab8c6b clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()::operator()() const /data/llvm-project/clang/include/clang/AST/ASTNodeTraverser.h:117:0
#46 0x000055555dab90fb void clang::NodeStreamer::AddChild<clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()>(llvm::StringRef, clang::ASTNodeTraverser<clang::JSONDumper, clang::JSONNodeDumper>::Visit(clang::Decl const*)::'lambda'()) /data/llvm-project/clang/include/clang/AST/JSONNodeDumper.h:58:0
#47 0x000055555dab93f6 clang::JSONNodeDumper::~JSONNodeDumper() /data/llvm-project/clang/include/clang/AST/JSONNodeDumper.h:116:0
#48 0x000055555dab93f6 clang::JSONDumper::~JSONDumper() /data/llvm-project/clang/include/clang/AST/JSONNodeDumper.h:370:0
#49 0x000055555dab93f6 clang::Decl::dump(llvm::raw_ostream&, bool, clang::ASTDumpOutputFormat) const /data/llvm-project/clang/lib/AST/ASTDumper.cpp:216:0
#50 0x000055555b9e9809 print /data/llvm-project/clang/lib/Frontend/ASTConsumers.cpp:101:0
#51 0x000055555b9e9809 (anonymous namespace)::ASTPrinter::HandleTranslationUnit(clang::ASTContext&) /data/llvm-project/clang/lib/Frontend/ASTConsumers.cpp:48:0
#52 0x000055555cd2f829 clang::ParseAST(clang::Sema&, bool, bool) /data/llvm-project/clang/lib/Parse/ParseAST.cpp:176:0
#53 0x000055555ba24e1f llvm::IntrusiveRefCntPtr<clang::DiagnosticsEngine>::operator bool() const /data/llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:206:0
#54 0x000055555ba24e1f clang::CompilerInstance::getDiagnostics() const /data/llvm-project/clang/include/clang/Frontend/CompilerInstance.h:344:0
#55 0x000055555ba24e1f clang::ASTMergeAction::ExecuteAction() /data/llvm-project/clang/lib/Frontend/ASTMerge.cpp:80:0
#56 0x000055555bac0b49 clang::FrontendAction::Execute() /data/llvm-project/clang/lib/Frontend/FrontendAction.cpp:1069:0
#57 0x000055555ba4c470 llvm::Error::setChecked(bool) /data/llvm-project/llvm/include/llvm/Support/Error.h:307:0
#58 0x000055555ba4c470 llvm::Error::operator bool() /data/llvm-project/llvm/include/llvm/Support/Error.h:239:0
#59 0x000055555ba4c470 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) /data/llvm-project/clang/lib/Frontend/CompilerInstance.cpp:1057:0
#60 0x000055555bb515f3 std::__shared_ptr_access<clang::FrontendOptions, (__gnu_cxx::_Lock_policy)2, false, false>::_M_get() const /usr/include/c++/7/bits/shared_ptr_base.h:975:0
#61 0x000055555bb515f3 std::__shared_ptr_access<clang::FrontendOptions, (__gnu_cxx::_Lock_policy)2, false, false>::operator*() const /usr/include/c++/7/bits/shared_ptr_base.h:961:0
#62 0x000055555bb515f3 clang::CompilerInvocation::getFrontendOpts() /data/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h:254:0
#63 0x000055555bb515f3 clang::CompilerInstance::getFrontendOpts() /data/llvm-project/clang/include/clang/Frontend/CompilerInstance.h:291:0
#64 0x000055555bb515f3 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /data/llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:273:0
#65 0x000055555956561e cc1_main(llvm::ArrayRef<char const*>, char const*, void*) /data/llvm-project/clang/tools/driver/cc1_main.cpp:294:0
#66 0x000055555955c8f8 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) /data/llvm-project/clang/tools/driver/driver.cpp:366:0
#67 0x000055555955fd64 clang_main(int, char**, llvm::ToolContext const&) /data/llvm-project/clang/tools/driver/driver.cpp:407:0
#68 0x0000555559571681 main /data/llvm-project/build/tools/clang/tools/driver/clang-driver.cpp:16:0
#69 0x00007ffff67d7c87 __libc_start_main /build/glibc-CVJwZb/glibc-2.27/csu/../csu/libc-start.c:344:0
#70 0x000055555955bc2a _start (/data/llvm-project/build/bin/clang-18+0x4007c2a)
./test.sh: line 3: 115781 Aborted                 (core dumped) clang++-18 -cc1 -x c++ -ast-merge qminimalintegration.cpp.oclango /dev/null -ast-dump-all=json
```

Removing the line with just a semicolon causes a segmentation fault instead.

I found these similar closed issues https://github.com/llvm/llvm-project/issues/31270 and https://github.com/llvm/llvm-project/issues/22247 while checking for duplicates but they looks unrelated to ASTImporter.

CC @jcsxky and @balazske since you've been involved in the other ASTImporter issues, lmk if the CC is unwanted and I wont do it in the future
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsXFtzo7ie_zTKiyouEPeHPDhOXJuzPdNdnZzZqn2hhBC2JiCxkshlH_azb0mY2Cgkdi49x9Onu1wdW4D0-_3vCCSsFFtxSs9AdA6iixPc6bWQZ_esLKhcnRSifDz7rzXlUHacM76Cek1hJepa3JtfgkMtO34LAUqD0vcTlPpBReLQi_yQxKQIkR9kIQnCKixCRIo4CAHKgHcBvHn_v6ZKz9R6twnEXv8ZmkmN-Qqgc4DOT_0UnhLiw1OlSxBckL7ZT-ApbZg-bckangr4Pw3jrME145quJNZM8Blp25mwXb14_JXhHuBmKHiKlT5tqFzRvcMAtCzpHUBL3tV1f2HZNe0prmsQXPypBHcY74rhVYzOdU_tmjZtjTWFIFjox5Zy3FCY37QguIRKy45oyFQuij8p0RAk5yC5AMH5nmvRAg6_Z7MZzOdypXY6zHOmciJ4_5MVNc1Z09Zu909flMaaEXgnWAnzHGstWdFpmucApfaTPdlI3oi7ksk4LABK7QUAzfO8VHrqSlyzFc_vcN1RgNI43PTUf55gTMn6Zk2hokTwEhLRNNj8lVitqYL3TK-hXjMFC0xutcSETqtAcCVqOmVCIJhbU8AaA7Ss67vmtJXCqACg5ebUZc0KgJbnWDEC0PJadJLQ3zDHKyqt2oN5Gkemp_6CYA6C-ZLV9Opit2V0Xd-0oro_74vAJS0BSp-d_0UQa1992z-vuL55BCiDVqlmzLlSVJozIIg9DwIUAxRDgNAVv8M1K-H1F0G-VpWiGgoJC1zCquPEXkHWghEKEAIogRVmNS1nvZS-fbmcX19C1RUN0xDDoltBSVshNdQCrrVulUGElgAtV0yvu2JGRLMR4XNJMqU6qgBaQqM_xkndldRGLKvLHf2hBWwlbaUgVClaQmWlYJrNlVgpQRjWtDRhDyoiWas3kK81JrfQOLFBZpu8GfCyb1KsJG4glquuoVyrrab-ykDiGywgWFBRGQdtsVRUQqwh5SUUFazYYKEQoMCD3oPneV5k_uGyijKaQitbawfqUfVfvknGtWV-04sv3Z4k8X0ulJYUN9YqFpBxbWznRYMflGft_bprjb4BWv6TswfTwFYc12rGOAHBPEEJCObeFrLvQA4iFE5B_t7xvqf_wLysqVR9YHkzqgFO74G-F43hIAdO6AcUjgYGKP1MgYReMEYQbBAkVVVVSUHiLPVgnkuqtJA0lxpa5pveH9I4j8PTmvHu4XTFu_5Aq9eS4nKmxMwD6Nx78FGWek9B2AwT7g4TJ1VI0wRKzBQ1vIqO1aVx0poV5HTxxz_u_7t4-olmKAFoqSwPgJazmfn1qEraGmfteprqUd1ZNLwzP23XM8M48seEIwdJnFQ-xIWwTA9DosteGvYqO0jqDBKPB6FxUGGTcWwYzE0Qywt8OPf-uqcv_ZDZeMjEHTJM0AG6I0ZrsdVa4IUJGmkt3TXPAnlBmJabPqdNcSBTMD6kJpO_TO8RwVWYlqP-M6f_GAfo0Gx0XYt7gNKO2wq0HMKGTTmfkS2TJN4K2EQO7wNg3w90k4Z2WqZBr014SSMHs-9gTgNS7cdskvEl1_Lxq_y9q-txxh8I_SAGKBozQO9icEGJaFqhaHn50GKumOBfBHm1dPlBhNBuaDCEAocQLuNyP6FvkqquoeVeFgtYCFF_qif4YexwCHc5lDTBCEW7HP5x_fX330VJL7qmHUjcS6bpOZbURXwYmwN5zK9vAFqOx9_QQKHjHJHLIiXeQSzewuAzkAeeI__YRY7JbhVj6zn77et1X1nZH_1d26j6GorsXNIKBIvNHZK9hQouDyk6tr6wadjWH4aK9YEsS8bwk3fBf7pd-_qcx7WWjK--08qYzOH0-rMASmrcFCUGJtmmT-2ipRJrIYd7yvQAr3qDWHwPpWO5pFNysaAPpWRPIbiuzb1KXnEQLI5Lrpeme2HM_h22Nb8wLnJ982W5GR_Xlw9aYmXlGTqZI3vdyg4Q5GcawOvY47ElIO9jHnLVtPVn6PGT7NwJvMg_Fv__MX6M0BS_wxPLd8xXdCqrbA58TkpxdBKMMWeej4O_T0pB4bvg__QpBUVTcvmVUt6XUlD8upUddUpJPuYhR55S0mPx_x_kx9kUvz0p5Q-mmHbyiG70ZlYezT8nk0RjHxlPCpe4yAhOd5HOr29MHzcS31GpDNaFw2PDAS1eI3h5KMdd5e3o9AcE6pfnB3rxucx7VYdoLL9xcYSJ5xHUR-wdjqaf3pAHZc_LcrFmdTkW5_EL-_Jlp_s78Xjh0Gb24gWbeuNMzUt25bilsarUMSo0ZVT2CbgBlg8JJF9vHjpsA9vAAC1-GeGx89hnhJuR899yxu_ErbnH2NrAnD_mxv4GAPF29i22H5ssOiXHltg_iwRomdhpf636ByT5kCetOQb-OF0HgZMkqqSgx2tfc63lbtY8ekM6GPCRha0kHJtJOGUmP03Y-vc1q-MJRJGTGIMgio_XYi4oqf9WFnMw4CMPRPGUmfw0gejf16yOJxAlvwLRUQA-8kCU_gpEP6VZHU8gypyaO63i4JfF_Css5lMDib_74idAQejO06YkLnYmHL4JxjWVV1x_w0xe8UqMRWF4bGYpgm48V7G59Au7pTePrZGlsb3Jq42gNrJaUb258OPPc8bge_7ZeEos9N_Cfw9395j99psou5p-vedUqjVr_5Px8iNymrr0r9HOlII-_NhqQkXZONeFaEpDk6JeUf07fdCm4YovBNf0Qe97YXufD5nOzrGimweB3hibO4E1hW0AYhtKSuqc6U3h4JQRfZz-RLwIOQ_IQ3cqxQX8uYGv7Jp2VwTPQuDmwNueRb3pwUrgBrzoL5XAh3LVZJH5w55A-Y6pxO4TPK8qflUAf_sKIBo_Ug4TV81BFe97pPx_TuMHY9ZUneLUo2F6AMxnEH8YvCBxEoFbLrvwtknKLvp6felTX9O75miG_9rpttNLIRv89mUOT84_fh_akXQ0XuCQ0Sz1MthKxg8eaClNWDd1jhltIbjqGiq3q5_GrzFH_tSAAKWYC_7YiE5BjhuqWrtmLHuSh11ONqi7XyZ1IzFXtX3l-p_82bS1hdLnofgNLz28ziYcu1M0qlZIiarUqGmL4huWilpNjB750QY7yn_jG--23-Hv_PpmELazfCUarzvAKKR-tVMWXnEtO8Xu6HdaLbj-pt2al-EVF0ozoi75inH67JWmDfCPl4bPofQ1jfPKYhROMdqBvBBNy2pTYyqNOaFPteIOl4_m1R0bcYfr40U4LmqjaA_o-fXNb1Su6JxsF9RePlDS6aHpwKA2ZcO252E18DiQRfEYGPGKcGS_Q08TwN4NadznU5iIszG0ZAwtJGHi7ZjupZRDSa2oXqwpubXLlPc60v43smzXm3JyXCVF6cGgphzkUzChwBFUNoVpr0e45vWy0t8bPp-5xtNy2LFQ43EKKiI_qoKd6c1crbGkZd5qmWNCqHJuXIchv7YGrjLRFKA0z1e8y8nDw6aXL4Lc5q2oGXkEKEPmrArXim6_7EzHrah2Y8RhE21bpMVwV5Yl43flYv-46G5vOeafx9lZOxajKc6TNno32lVgRfUO373rsd8Ysoexer-KxkE7Dg7G7GSaH4h4J8mgzJFxuAfvxuMnRD3y_me03vTO6ID6xka95YtjDuVoMr5fj0eZMoviKPYpJMTPG8z4qJCeS4kfv9v3ccka77yi0E-bjds2zz8O5aKFqI1tl5LdmTuK5YBggO3MWsXxGHZE0iqFA_mF30tj9z60wXX9ByVaSPuO9RSHeDyFZ_pwJlAOC8zPyPRfhjUh8bjAihOHSlXGm3Usgw7sWuZewlag878EaOjk4jgdA038OPWhgfjySMNK9WGkl_VtDpyOxndunOJsvPS-TEiawDyvWUFypbHU-YDlkMX-RHXDLgf9V3vQ9mMX_rslZeI5aioIwrAf-L2L9UPPSwjCT4v1DZhhp6VgDmvGKTTuCn0_SlIfzgshNS2h-8_EEyGp3fDE1GTZv2BPk8kNe77TRtwNG1JZOnafnj87pSGGijaMiFpwSHCnqLJNq4ZybWHACne1howrTfGwGU3__xWsRMdL062iULGG1caZa6FoCfsNZj6wMU3go8Sze8y8vw-EUJjA-zWrKSSmVjZSqISEZdfWjGBNFSw6bRg8wlqIWwU7Lmlt97PRAs6vb64aU4pSOWK-WEAQen8S9XD7aCGC0Ctwjf9X3RpBcELho-gASu4oLCjlkPE7Ud_ZDRGsFoReU7nbPRwwL2Dd3EJW2dMWC8gMpHvMDSIz0hW8F1zDUkCmh96qTneSnpRnQZkFGT6hZ37iocCLgzg8WZ9lNERhkYWkKBJSmmwTlkXg0ciLKM1S74SdIQ8FPvJ9P4xQGM68OMxSlOAsIomXFAEIPdpgVs-MoGdCrk4s3LMk8qLwpMYFrZXdFg2hjc0jEF2cyDOrmKJbKRB6NVNabXvQTNd2L7WFvSK6ANH5jkBAdPFT7N500sn67P0WbCX8_wEAAP__NqTTOQ">