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

    <tr>
        <th>Summary</th>
        <td>
            [SLPVectorizer] Assertion `CastInst::castIsValid(opc, C, Ty) && "Invalid constantexpr cast!"' failed.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            llvm:SLPVectorizer,
            crash-on-valid
      </td>
    </tr>

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

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

<pre>
    Reproducer: https://godbolt.org/z/PeoMv3Tsn
```
; bin/opt -passes=slp-vectorizer reduced.ll -S
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

define void @main(ptr %p) {
entry:
  %conv548.2.i.13 = zext i32 0 to i64
  %and551.2.i.13 = and i64 0, %conv548.2.i.13
  %conv548.3.i.13 = zext i32 0 to i64
 %and551.3.i.13 = and i64 0, %conv548.3.i.13
  %0 = trunc i64 %and551.2.i.13 to i32
  %conv54.2.i.14 = and i32 %0, 0
 %conv548.2.i.14 = zext i32 %conv54.2.i.14 to i64
  %and551.2.i.14 = and i64 %and551.2.i.13, %conv548.2.i.14
  %1 = trunc i64 %and551.3.i.13 to i32
  %conv54.3.i.14 = and i32 %1, 0
  %conv548.3.i.14 = zext i32 %conv54.3.i.14 to i64
  %and551.3.i.14 = and i64 %and551.3.i.13, %conv548.3.i.14
  %and551.2.i.15 = and i64 %and551.2.i.14, 0
 %and551.3.i.15 = and i64 %and551.3.i.14, 0
  %and551.2.i.16 = and i64 %and551.2.i.15, 0
  %and551.3.i.16 = and i64 %and551.3.i.15, 0
 %and551.2.i.17 = and i64 %and551.2.i.16, 0
  %and551.3.i.17 = and i64 %and551.3.i.16, 0
  %and551.2.i.18 = and i64 %and551.2.i.17, 0
 %and551.3.i.18 = and i64 %and551.3.i.17, 0
  %and551.2.i.19 = and i64 %and551.2.i.18, 0
  %and551.3.i.19 = and i64 %and551.3.i.18, 0
 %and551.2.i.20 = and i64 %and551.2.i.19, 0
  %and551.3.i.20 = and i64 %and551.3.i.19, 0
  %and551.2.i.21 = and i64 %and551.2.i.20, 0
 %and551.3.i.21 = and i64 %and551.3.i.20, 0
  %gep1 = getelementptr inbounds i8, ptr %p, i64 16
  %gep2 = getelementptr inbounds i8, ptr %p, i64 24
  store i64 %and551.2.i.21, ptr %gep1, align 16
  store i64 %and551.3.i.21, ptr %gep2, align 8
  ret void
}
```
```
opt: /home/dtcxzyw/WorkSpace/Projects/compilers/llvm-project/llvm/lib/IR/Constants.cpp:2202: static llvm::Constant* llvm::ConstantExpr::getCast(unsigned int, llvm::Constant*, llvm::Type*, bool): Assertion `CastInst::castIsValid(opc, C, Ty) && "Invalid constantexpr cast!"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: bin/opt -passes=slp-vectorizer reduced.ll -S
1.      Running pass "function(slp-vectorizer)" on module "reduced.ll"
2.      Running pass "slp-vectorizer" on function "main"
 #0 0x00007c5d3e8138d2 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/libLLVMSupport.so.20.0git+0x2138d2)
 #1 0x00007c5d3e81079f llvm::sys::RunSignalHandlers() (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/libLLVMSupport.so.20.0git+0x21079f)
 #2 0x00007c5d3e8108e5 SignalHandler(int) Signals.cpp:0:0
 #3 0x00007c5d3e242520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #4 0x00007c5d3e2969fc __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #5 0x00007c5d3e2969fc __pthread_kill_internal ./nptl/pthread_kill.c:78:10
 #6 0x00007c5d3e2969fc pthread_kill ./nptl/pthread_kill.c:89:10
 #7 0x00007c5d3e242476 gsignal ./signal/../sysdeps/posix/raise.c:27:6
 #8 0x00007c5d3e2287f3 abort ./stdlib/abort.c:81:7
 #9 0x00007c5d3e22871b _nl_load_domain ./intl/loadmsgcat.c:1177:9
#10 0x00007c5d3e239e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
#11 0x00007c5d36fb0c4d llvm::ConstantExpr::getCast(unsigned int, llvm::Constant*, llvm::Type*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMCore.so.20.0git+0x1b0c4d)
#12 0x00007c5d394573b5 llvm::IRBuilderBase::CreateCast(llvm::Instruction::CastOps, llvm::Value*, llvm::Type*, llvm::Twine const&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x573b5)
#13 0x00007c5d395ab173 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1ab173)
#14 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#15 0x00007c5d395a7a13 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a13)
#16 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#17 0x00007c5d395a7cbb llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7cbb)
#18 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#19 0x00007c5d395a7a41 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a41)
#20 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#21 0x00007c5d395a7a13 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a13)
#22 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#23 0x00007c5d395a7a13 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a13)
#24 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#25 0x00007c5d395a7a13 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a13)
#26 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#27 0x00007c5d395a7a13 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a13)
#28 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#29 0x00007c5d395a7a13 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a13)
#30 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#31 0x00007c5d395a7a13 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a13)
#32 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#33 0x00007c5d395a7a13 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a7a13)
#34 0x00007c5d395acf1e llvm::slpvectorizer::BoUpSLP::vectorizeOperand(llvm::slpvectorizer::BoUpSLP::TreeEntry*, unsigned int, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1acf1e)
#35 0x00007c5d395a8f65 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::slpvectorizer::BoUpSLP::TreeEntry*, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1a8f65)
#36 0x00007c5d395ae278 llvm::slpvectorizer::BoUpSLP::vectorizeTree(llvm::MapVector<llvm::Value*, llvm::SmallVector<llvm::Instruction*, 2u>, llvm::DenseMap<llvm::Value*, unsigned int, llvm::DenseMapInfo<llvm::Value*, void>, llvm::detail::DenseMapPair<llvm::Value*, unsigned int>>, llvm::SmallVector<std::pair<llvm::Value*, llvm::SmallVector<llvm::Instruction*, 2u>>, 0u>> const&, llvm::SmallVectorImpl<std::pair<llvm::Value*, llvm::Value*>>&, llvm::Instruction*) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1ae278)
#37 0x00007c5d395b207c llvm::slpvectorizer::BoUpSLP::vectorizeTree() (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1b207c)
#38 0x00007c5d395c7cac llvm::SLPVectorizerPass::vectorizeStoreChain(llvm::ArrayRef<llvm::Value*>, llvm::slpvectorizer::BoUpSLP&, unsigned int, unsigned int, unsigned int&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1c7cac)
#39 0x00007c5d395c9637 llvm::SLPVectorizerPass::vectorizeStores(llvm::ArrayRef<llvm::StoreInst*>, llvm::slpvectorizer::BoUpSLP&, llvm::DenseSet<std::tuple<llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, unsigned int>, llvm::DenseMapInfo<std::tuple<llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, unsigned int>, void>>&)::'lambda'(std::set<std::pair<unsigned int, int>, llvm::SLPVectorizerPass::vectorizeStores(llvm::ArrayRef<llvm::StoreInst*>, llvm::slpvectorizer::BoUpSLP&, llvm::DenseSet<std::tuple<llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, unsigned int>, llvm::DenseMapInfo<std::tuple<llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, unsigned int>, void>>&)::StoreDistCompare, std::allocator<std::pair<unsigned int, int>>> const&)::operator()(std::set<std::pair<unsigned int, int>, llvm::SLPVectorizerPass::vectorizeStores(llvm::ArrayRef<llvm::StoreInst*>, llvm::slpvectorizer::BoUpSLP&, llvm::DenseSet<std::tuple<llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, unsigned int>, llvm::DenseMapInfo<std::tuple<llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, unsigned int>, void>>&)::StoreDistCompare, std::allocator<std::pair<unsigned int, int>>> const&) const SLPVectorizer.cpp:0:0
#40 0x00007c5d395cb92c llvm::SLPVectorizerPass::vectorizeStores(llvm::ArrayRef<llvm::StoreInst*>, llvm::slpvectorizer::BoUpSLP&, llvm::DenseSet<std::tuple<llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, unsigned int>, llvm::DenseMapInfo<std::tuple<llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, unsigned int>, void>>&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1cb92c)
#41 0x00007c5d395cc20f llvm::SLPVectorizerPass::vectorizeStoreChains(llvm::slpvectorizer::BoUpSLP&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1cc20f)
#42 0x00007c5d395cd30f llvm::SLPVectorizerPass::runImpl(llvm::Function&, llvm::ScalarEvolution*, llvm::TargetTransformInfo*, llvm::TargetLibraryInfo*, llvm::AAResults*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::AssumptionCache*, llvm::DemandedBits*, llvm::OptimizationRemarkEmitter*) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1cd30f)
#43 0x00007c5d395cdf86 llvm::SLPVectorizerPass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMVectorize.so.20.0git+0x1cdf86)
#44 0x00007c5d39ed4015 llvm::detail::PassModel<llvm::Function, llvm::SLPVectorizerPass, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMPasses.so.20.0git+0xd4015)
#45 0x00007c5d371546ed llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMCore.so.20.0git+0x3546ed)
#46 0x00007c5d3d4d7f35 llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMX86CodeGen.so.20.0git+0xd7f35)
#47 0x00007c5d37153256 llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMCore.so.20.0git+0x353256)
#48 0x00007c5d3d4d88f5 llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMX86CodeGen.so.20.0git+0xd88f5)
#49 0x00007c5d3715121a llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/../lib/libLLVMCore.so.20.0git+0x35121a)
#50 0x00007c5d3eb12fc7 llvm::runPassPipeline(llvm::StringRef, llvm::Module&, llvm::TargetMachine*, llvm::TargetLibraryInfoImpl*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::StringRef, llvm::ArrayRef<llvm::PassPlugin>, llvm::ArrayRef<std::function<void (llvm::PassBuilder&)>>, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool, bool, bool, bool, bool, bool) (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/libLLVMOptDriver.so.20.0git+0x2cfc7)
#51 0x00007c5d3eb1e962 optMain (/home/dtcxzyw/WorkSpace/Projects/compilers/LLVM/llvm-build/bin/../lib/libLLVMOptDriver.so.20.0git+0x38962)
#52 0x00007c5d3e229d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#53 0x00007c5d3e229e40 call_init ./csu/../csu/libc-start.c:128:20
#54 0x00007c5d3e229e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#55 0x00005949b291d095 _start (bin/opt+0x1095)
Aborted (core dumped)
```

cc @alexey-bataev 
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsXNly4yoafhpyo7JLAq0XuXCceKZrkupUkumZOxeSsMO0DCpA6aSffgok20KWlcXndOfM6FQfRwv_9vGx_NiApaRrRsg5CC5AcHmGK_XIxXmusuefLz_OUp6_nN-RUvC8yogAaOY8KlVKgGYALgBcrHme8kJNuVgDuPgJ4OKW8Jsn9CAZcC-BOwOh2_yrb9GFk1IG4IKXypmUWEoiAbqURTl5Ipnigv4kwhFE28unReFM7mtJhcWaKCfHChf4hVfKAejSARCSyQagGZmUMHIBmiFoPvStZ9_qq9A3HxO6u_BgDNDMg_FkFbvNFTOPwq146E_udTEILVeUoGVBtm48x-Ey9CcV-874DzYpKKueJ2tW7aTqz5ysKCPOE6e5A3x3gzUYcamEA2BQApg4ILqoixKmxItG2tw5ukDG2VPgx1M4pVMPGdM_ybNyKIKO6yju6Lj2xTHLg8Brl8Ys12UcF8D5ocIeS-h1S3tD6HVDqGvINcWVqFhmBA7c1rYQPHCtfu3vjSFo1Gl77t4zK0DfjuNA1yCAvhVX180-PNuavKNhouEwUW-YXjvMA3yPxomG4-za6vGzrzqPIRYMIeZ3Kqpt5ZggOhDsag2HTAZHJNGQJDqQ7GiNhkyGQyaPSaIhSaM2HrIZDSB7TBAdCHa1JkMm46Ewj0miA0lbK3SHTCYDJo9KoiFJY9MbsAm7nUvb5DFBdCCoX65JWQusiSIF2RCm9BhAWcorlkuHGlz2w8LcaPVCWwV8vwq4a6xScUH6ovRactpPfYsLumYt-33CqEcY7oXjrawgyox_zbAYXfbPFOxbXio9-wBw8cg3BMBFM0UBcPEvLr7flzjTT28F_w_JlARwkfFNSQsi9HVRPG0mZf2uudV_aArg4ssdgIs5Z1JhpuQ0K0uAZhC6euR3pMKKZo4RQDOAZtuCAM56nl49l6J-siZqjqUCMK6YmWLlDtVS835d9ouHl5I0D1POCwAT7ctMSiIU5cwBoauVf2FS1QKZvpPfcEFzAGNeZlp0rj8eXsycAoYAhnqa8oU96VJO1tgmz6VwMuOpp6cqMHJWmBYkn9a4315fze6vHFmlG6oc7KTV2hGk5ELpUaQzGaTqsUqnGd-0MLaRp1JWRNdI3VJYVlQ5cdQjcTKB5aOT4uy7Ejgjjfl7hbPvTl5tyt1EyJ065r9bwdcCbxws1pUmv_bjg3NLr1F5VzFG2drRohqsVcUyDTiAsa1E1wiEDmfOhueVngRCuNe7m_LBI3q7yoymrTFdoJ4Wwl1Pg1zHfXZd142yIEck9lCcwxZh5IusL24FZcqA9iBMi4j3hQT-seRSCYI3hg_zmpGaHfEH29X19bebbSWnFS1yABd1FUynuwZW0FSXu69KTZup5FPoTt01VQBeuM_QxKIB3QXrdYJ1o2TVF-xdxe7pmuHi75jltUfxJ4hHu2vFA7vxxCRwLM8BjJu6qB9vuyHX_L9ThCxF0IeBHulMtLVrTRLSSj70i0z7GBrvjIjlnG_rTMJklTnLZakeBcH58jstiiXdlPUAgw1BNRSsVAWAi3axaQbQzNd5VRTu9Qdv0c8UEQwXg5ojk5S10Aj7NLfFBtXFSUdd1AXXj0JnLU19GE315ZYL8kXmpNSkKbmkzwAuBKaSGN0w0lnjXnVsq4ZxtEIOTnUnalSpvK4-86j2Tueu0V5DcqDBS50lK5YFx_ky57rDMLooM-Hqxxu5znCtzvMi7VJT7bqJ2R0KRAlJwvdRyYjsqKR1Wu02XKVu5ue_cpD8sxv-YR8w54J0OwDPxG0BY3UAiR9EKA1akXy5u9AmibjAkjRRC4IVacBplWRSiaoek-pyWKqvmoVtZL7hoiJDeLUe_qCM1JMBMyb8Bgy_bQfCLpAGJgtHq_9LApx6EWoPDEXZGlXNowv-z_L--ra-2b18EMQeGl-T1AJXZjnmNxPuKFieAcNCy--gla088hG0vpZEYJafBFi3fX9GADU-FoBBB8AIeyPdtmhpMCy0wpFup9Et6tItS9ORblu6ZWlqoRWPdDuNbslB7-Z7I912vZvvtdGC7ki3k-gGvXEwfftgCuFIt9Po1k0VRroN0W1MFU6k25gqvIduY6pwIt0OUoWRbgN0G1OFE-l2mCqMdDtKNzSmCqfRDY2pwnvoNqYKJ9JtTBXeQ7cxVTiRbt1UIV6FwUi3Bi0NhoVWN1UgMIr_ELRucFn7AdD8ta9O7ze4KHpKt7-OrWVgBdCVLXxJmCQ3uDxq5_h331vRL2zFj4qbn9J1jeZEYVrYWm4xPR6s5QS6OlBoQyBVXj8uh3R-HMDauttct76fPqL0y6YsPuDW7mljsmOg693naiq6JVhNpZMUptCNshOayieL14RjxdtJ67Iow-14769vd9rELZayE-a94oLMH-sNGHuxmRD45Y6s-unTbRYDoNZs6jbu4ftP9gsMz2Bqgd5JBbMkRNF7QZevA27Kmd-3fgT0Tg96T1S7c1BVWZD39A7vfNrtSoe69N_p1HbgaHq-pBYCMCrwJs0xgBGA8c5BaYPY9LBdOveFPHLir84Jg_wllWrONyUWRJfceYmLgme4f15whB7dUb0xw3VKoBWZwWck30i-X0K--tqxmHL4-2sAkd9Z2cvSBL57xjFy7VNy7VPNujSv2rMuv7MimmXQXX1oqivfumLw-UDRMVugdBY-sxy9BRRRMZMttnFY7Pb5dFPMDBdYXD3xomrlqPv3D2Yn-IPATK642Bhe95e5pqnA4qW3xGx2R2RVaAw7b645L3tFLvmGMt3v1claV6GU1abUHs9x9nj4_pJsMMtJfkF7bH4tFd3Qn2arxx3ZYPH9akOVIuLz5cCmyi1OoC4nVnH4Jk68jQ8zhosXSeUNZnhN7CWGndCn7FI0EBZS9jouyX3XC44sIGmgbnhOiv54X5lvfQhA_e9_qWZuzWbEbrUY0K1asRaHIy_wQ9LeQmNqYijCEewju3KQgdLC2lpazv08WqE_ogX8aXU01u31t5t_x-Gc5-RvhB00Jl1_VgVHncaEYNAeDG7M1t0Hvo1KV9wsx6XJJvowqwXehVgj8tnagkbCgirutIU4Xr2vLWyxmb8R4A8geIzKf8VqGaCxht6qm6RDYw96-A39TV-N_P8B3c9_DWEb48DeDpt6cJW1l7VFZch7S0tSUGZ_kXivBGVrncP3kP8ArDobuMHZo9HzWq5QpyrdUpwXXytVVmpBix4lJ70-Ek7vQoXBpKjWlB2OT_vyuzR_d5wCmtfnX7Vh1LqabbDb1Z_DUY-Xaqk4b3qiOop_UJYPlfpGBF1RIrbl6q-93_v3V50q8LVUl4I-EXFwrkC2yiKLs16HsyQJocNLdYMp-93eojgJoeUt7OxgT_LEdZbLgqbZUios1DLDRbHcbWTPZHW41b7ZzN8nNH0EaBY0B7ftrKKuVeK7jpGhjKquofpSa58Y7fXeeXNAHNwvAwZ-n1IrlL4oepWjKNFu73VvE4Ag8ZMUJl7uJoFTa9V1ujvfpE7r3GQ_VMxSLhQxrSrjgphDU9oz3s7xOuYzyxzgu7ggz-RlkmKFyZNzlp-jPEEJPiPnXgT9JImCMDl7PCduGAUuDtIcEy_HaZhj148xSlY59tw0PqPn0IW-GyPXDYIEJtOIIA_FCc6xF4SrhADfJRtMi6km15SL9Zk5D-bcc8MwjM4KnJJCmqMIIWyas5VPmgNq5gBCc1jMhLPJU33kDQTB5Zk4bzi7lsB3CyqV3BtSVBXmlENbYXD5q4_VOatEcf7xc3MaqJ7O4X8DAAD__-T-tj0">