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

    <tr>
        <th>Summary</th>
        <td>
            [MLIR]`-arith-unsigned-when-equivalent` pass: `mlir::dataflow::IntegerValueRange::getValue()` leads to Assertion `!isUninitialized()'
        </td>
    </tr>

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

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

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

<pre>
    Test on llvm release 16:

Steps to reproduce:
```
mlir-opt test.mlir -arith-unsigned-when-equivalent
```
Test case:
```
func.func @main(%arg0: index,%stream : !gpu.async.token) {
  %name = gpu.launch async[%stream] blocks(%arg3, %arg4, %arg5) in (%arg9 = %arg0, %arg10 = %arg0, %arg11 = %arg0)
            threads(%arg6, %arg7, %arg8) in (%arg12 = %arg0, %arg13 = %arg0, %arg14 = %arg0)
  {
    gpu.terminator
 }
  return
}
```
crash trace:
```
mlir-opt: /home/ty/fuzzer/llvm-project-16/mlir/include/mlir/Analysis/DataFlow/IntegerRangeAnalysis.h:42: const mlir::ConstantIntRanges &mlir::dataflow::IntegerValueRange::getValue() const: Assertion `!isUninitialized()' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: /home/ty/fuzzer/llvm-project-16/mlir/build/bin/mlir-opt test.mlir -arith-unsigned-when-equivalent
 #0 0x0000000000481cad llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/ty/fuzzer/llvm-project-16/llvm/lib/Support/Unix/Signals.inc:567:11
 #1 0x000000000048213b PrintStackTraceSignalHandler(void*) /home/ty/fuzzer/llvm-project-16/llvm/lib/Support/Unix/Signals.inc:641:1
 #2 0x00000000004804d6 llvm::sys::RunSignalHandlers() /home/ty/fuzzer/llvm-project-16/llvm/lib/Support/Signals.cpp:104:5
 #3 0x0000000000482865 SignalHandler(int) /home/ty/fuzzer/llvm-project-16/llvm/lib/Support/Unix/Signals.inc:412:1
 #4 0x00007fcb14bc7980 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12980)
 #5 0x00007fcb13ab7e87 raise /build/glibc-CVJwZb/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:51:0
 #6 0x00007fcb13ab97f1 abort /build/glibc-CVJwZb/glibc-2.27/stdlib/abort.c:81:0
 #7 0x00007fcb13aa93fa __assert_fail_base /build/glibc-CVJwZb/glibc-2.27/assert/assert.c:89:0
 #8 0x00007fcb13aa9472 (/lib/x86_64-linux-gnu/libc.so.6+0x30472)
 #9 0x00000000009084bc mlir::dataflow::IntegerValueRange::getValue() const /home/ty/fuzzer/llvm-project-16/mlir/include/mlir/Analysis/DataFlow/IntegerRangeAnalysis.h:0:5
#10 0x0000000003a50763 mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3::operator()(mlir::Value) const /home/ty/fuzzer/llvm-project-16/mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp:133:62
#11 0x0000000003a506cd decltype(auto) llvm::callable_detail::Callable<mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, false>::operator()<mlir::Value, 0>(mlir::Value&&) const /home/ty/fuzzer/llvm-project-16/llvm/include/llvm/ADT/STLExtras.h:265:12
#12 0x0000000003a50614 llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>::operator*() const /home/ty/fuzzer/llvm-project-16/llvm/include/llvm/ADT/STLExtras.h:420:42
#13 0x0000000003a50560 mlir::ConstantIntRanges* std::__uninitialized_copy<false>::__uninit_copy<llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, mlir::ConstantIntRanges*>(llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, mlir::ConstantIntRanges*) /usr/lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/stl_uninitialized.h:83:45
#14 0x0000000003a50501 mlir::ConstantIntRanges* std::uninitialized_copy<llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, mlir::ConstantIntRanges*>(llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, mlir::ConstantIntRanges*) /usr/lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/stl_uninitialized.h:131:7
#15 0x0000000003a5031d void llvm::SmallVectorTemplateBase<mlir::ConstantIntRanges, false>::uninitialized_copy<llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, mlir::ConstantIntRanges*>(llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, mlir::ConstantIntRanges*) /home/ty/fuzzer/llvm-project-16/llvm/include/llvm/ADT/SmallVector.h:360:3
#16 0x0000000003a50190 void llvm::SmallVectorImpl<mlir::ConstantIntRanges>::append<llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, void>(llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>, llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>) /home/ty/fuzzer/llvm-project-16/llvm/include/llvm/ADT/SmallVector.h:691:5
#17 0x0000000003a4e445 llvm::SmallVector<mlir::ConstantIntRanges, 1u>::SmallVector<llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>>(llvm::iterator_range<llvm::mapped_iterator<llvm::detail::indexed_accessor_range_base<mlir::OperandRange, mlir::OpOperand*, mlir::Value, mlir::Value, mlir::Value>::iterator, mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int)::$_3, mlir::ConstantIntRanges>> const&) /home/ty/fuzzer/llvm-project-16/llvm/include/llvm/ADT/SmallVector.h:1223:3
#18 0x0000000003a4dede mlir::dataflow::IntegerRangeAnalysis::visitNonControlFlowArguments(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::IntegerValueRangeLattice*>, unsigned int) /home/ty/fuzzer/llvm-project-16/mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp:131:36
#19 0x000000000090bebc mlir::dataflow::SparseDataFlowAnalysis<mlir::dataflow::IntegerValueRangeLattice>::visitNonControlFlowArgumentsImpl(mlir::Operation*, mlir::RegionSuccessor const&, llvm::ArrayRef<mlir::dataflow::AbstractSparseLattice*>, unsigned int) /home/ty/fuzzer/llvm-project-16/mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h:331:3
#20 0x0000000003a5404b mlir::dataflow::AbstractSparseDataFlowAnalysis::visitBlock(mlir::Block*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp:171:12
#21 0x0000000003a53348 mlir::dataflow::AbstractSparseDataFlowAnalysis::initializeRecursively(mlir::Operation*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp:59:28
#22 0x0000000003a533a7 mlir::dataflow::AbstractSparseDataFlowAnalysis::initializeRecursively(mlir::Operation*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp:60:20
#23 0x0000000003a533a7 mlir::dataflow::AbstractSparseDataFlowAnalysis::initializeRecursively(mlir::Operation*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp:60:20
#24 0x0000000003a53246 mlir::dataflow::AbstractSparseDataFlowAnalysis::initialize(mlir::Operation*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp:47:10
#25 0x0000000003a2ef2b mlir::DataFlowSolver::initializeAndRun(mlir::Operation*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Analysis/DataFlowFramework.cpp:70:25
#26 0x000000000090f7d4 (anonymous namespace)::ArithUnsignedWhenEquivalentPass::runOnOperation() /home/ty/fuzzer/llvm-project-16/mlir/lib/Dialect/Arith/Transforms/UnsignedWhenEquivalent.cpp:123:23
#27 0x0000000003a69757 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) /home/ty/fuzzer/llvm-project-16/mlir/lib/Pass/Pass.cpp:471:21
#28 0x0000000003a69d6d mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Pass/Pass.cpp:534:16
#29 0x0000000003a6b6ac mlir::PassManager::runPasses(mlir::Operation*, mlir::AnalysisManager) /home/ty/fuzzer/llvm-project-16/mlir/lib/Pass/Pass.cpp:839:10
#30 0x0000000003a6b5d1 mlir::PassManager::run(mlir::Operation*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Pass/Pass.cpp:819:60
#31 0x0000000003a61f32 performActions(llvm::raw_ostream&, bool, bool, std::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, bool, bool) /home/ty/fuzzer/llvm-project-16/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:91:17
#32 0x0000000003a61b8f processBuffer(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, bool, bool, bool, bool, bool, bool, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, llvm::ThreadPool*) /home/ty/fuzzer/llvm-project-16/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:139:12
#33 0x0000000003a61948 mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool)::$_0::operator()(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) const /home/ty/fuzzer/llvm-project-16/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:181:12
#34 0x0000000003a6183d mlir::LogicalResult llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool)::$_0>(long, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) /home/ty/fuzzer/llvm-project-16/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:12
#35 0x0000000003b93a99 llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::operator()(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) const /home/ty/fuzzer/llvm-project-16/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:12
#36 0x0000000003b93075 mlir::splitAndProcessBuffer(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, bool, bool) /home/ty/fuzzer/llvm-project-16/mlir/lib/Support/ToolUtilities.cpp:28:12
#37 0x0000000003a60873 mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool) /home/ty/fuzzer/llvm-project-16/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:186:10
#38 0x0000000003a60a0f mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::PassPipelineCLParser const&, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool, bool) /home/ty/fuzzer/llvm-project-16/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:209:10
#39 0x0000000003a61651 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&, bool) /home/ty/fuzzer/llvm-project-16/mlir/lib/Tools/mlir-opt/MlirOptMain.cpp:306:14
#40 0x0000000000411609 main /home/ty/fuzzer/llvm-project-16/mlir/tools/mlir-opt/mlir-opt.cpp:271:7
#41 0x00007fcb13a9ac87 __libc_start_main /build/glibc-CVJwZb/glibc-2.27/csu/../csu/libc-start.c:344:0
#42 0x00000000004112ea _start (/home/ty/fuzzer/llvm-project-16/mlir/build/bin/mlir-opt+0x4112ea)
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsXFtv46q3_zT0BTWywdeHPqTtRGeOpmeqtrOPtF8ibJOEfwn2Btxp9qf_C2zHNr2lnXZmNElVJTbGrMtvsRaLAEQpthSUnoDwFITnR6TWq1KenFLC_6bVaiOPsrLYnNxQpWEpIOd3aygpp0RR6EcAT4F3Drz281rTSkFdQkkrWRZ1TvsKkdf-29s1Z_K4rDTUVOmJuYPHRDK9Oq6FZag4_r6i4pj-U7M7wqnQjzZj2cqJepLOohb5xHxAEHhrwgRACUAhkUsP4ClkoqD3AJ0BFCotKVlDUwqQv6zqCVEbkU90eUsFQCkE8WnTJoQAhYKsKQT4HJqanNQiX0H7gtFj1xoIz2HGy_xWbcligM5gcxn0l6EhwATcVktt2x2n23q-90S5Py5PO077P72SlBQ9I1H_dtxfJi4jPnqCIn6iPHiCk4H6oFWapnLNBNGlbMtBfN7VkFTXUrSIdsUOtLkkagW1JC9bWQPqbFWuKUAzvQFotqj__ZdKgGbGoo8rWf6H5vrYjwCambcAmjGR87qgfcFUEL5RTAE0OyeazHj5HaDZZ6HpksorIpa0qzFZATwNkCGbl0JpaFvAU4CnZ-aeCP1ZaPuKggBF_eOCaLIwDdu7tu2_CK-prd0UL6m2RRaktCFhaE2VolKzUkCjAeQz9U0wwTQjnP1Li6Y6QDFcEMZpMWmUdPnl0_T6E1R1tmYaEpjVS9N_S6lNT15pXSlDFs0Ami2ZXtXZJC_XreYcBRq1KVVToyNIRAFbJUK9orABLCP5rQVt0vkMkt_Col5XWxS9CfDSS1kuJVlDIpf1mgqt3gRiVjNemG_T82dv9ToQIOxB797b_gWJn5PCusMGE7VRzcWlZEJboW6saaKkryTJ93nZugZkOyAT2vqWneXqlM4ygGbXdWVwAmj2TbB7U8CWgnA1YSIHeBpGMcBT3--F8B0hkI8z6HDctPE_RBTc8JDclawAaPpxbEaBb9jsuUQOl15QRI-p-qoWI2ZV2yF-mM2Ov7wyRul7gVFmzx92tZhEIXTV9qHIBj4aqyxoWYoXeeYHWR6niQfnc0mVLiWdS9149Lb1-ySaR8ExZ6K-P16KunlQNSFiosqJB9Cpd--jNBm4cIBwOCSDSRbTJIaSMEXhoLMtOcvy47O__vf739n2Fk1QDNBMWTkAmk0m5m6jCloZb1E3YqqNurPciNrc2qYn1paNjXg9J5HDSRovfEiy0kq6Gye6aLRh37JEEodIPCZCUrwgcD4n1s_OjRedZ2R32Zv3thcNyXRMMnFJBjHaAbvcoBZZ1LAXxGiEWjqy19RLgiyH7xBzfn5M9fqOaLzZyCdjEnpxhF8SbNRo8-SOKab_rxRnpdCy5IaJ6TbqoKRv8GtFJTEB1vrDswGpK7pkpbiu85wqVco2Jjc-vvdcUynJ5oouAD7bWf1fiNbMxJEpwJ9Mc12oamNH8xpAwRw3l6VlspRduB_w3yL4ZvgaC3wFZq0DxYa1CPXA-S5wUV7AguZcbypjYqTWpeGzV11OOCcZp_OCasJ4O5hqC1_W55-MOjqDC8JNDvTpUQsYkm0t4Ax6tt2HthHZ_9dbSBu9-g7eFkzPb0z0uvny6V5L0vRiFIXGKgb2gB7Ygx8MNLgmVUWLOdOtXPisfza0B5vO0WJOWkDm0ujS-uiRFiyiomjc2wjRr1X77AHWW83tUNQBsWV4VGcfDfSZBOgRs52-Mcq8xggD5DVJ2tYIsWuEYeQ9yziaQqWL5ul8Xg9zrXleVhuAz8Yds6vUPT1Y-N5Y-As1WiLJwSL2ySIOaO8T2i_0_2ayoFb9QHuZ548nfPEkNCl6k0M7H33wywE6tf_b-hkzep0pzcfRygbExAzSg0F2FTyIh56_czx8NBoe7P1g74d4t78WcUB7n9D-zeOdj32Ap3Ef70I33mG_gHclG_7Mc70mnP9Fc13KG7quONH01LXFR6R1Z2gO0fHQOw7R8WARh-i4t2jvFB3fZ96zj1k28OHIM5994IvcwOen3jOB7_O64i8EvM4gjB2L4hDb9sy27ZKRQwTbO9wPaO8P2h8Xn6LUHy_ziMfxKaBBED4eml7Ow_x6i_X4vYPt7o3tOpGp01uD38EU9ssUBqx9nEvzEcLjMXfi-LSCFnTfoPqJC9B8m_f06neXRGb0mSWR1xWRinakegBer4mufz4Hm02vfjJ000xpSXLdSPr-uO247rMhP1rxiRvotsghd81n4AXZk8iN5XqI4BaLU17mtyOttyWvzMR3sFNHyNZCY3-8JA65SyQxDpIfkrOfcb6ieS0Vu6N884yh_QyxQ-OuUdJL7S4ExJjEf5zUdv4Feb3U7sqz_ZDaXV-AURC9k9S_WNTA7rsZiOr8tIToAg2dVtfedcnvqHSFmYriqhY_SaSZJGv6vZS3rSixRa1PxlDkRM5FXAQQoISIUmzWZa2gIGuqKrv3Ke0iENOrb20Q-f8VFZ-2G6wuiWrRk7X4KgaCvXIrz0iwc0Z4sx3NkgZodiOJUItSrpXdU_MYK50rtkM1NAg5Tv4ZpXE46p6DROBrdVN-rYxQ04JUNmVoZRvhZ6V2o_nTcb7D6YIIsqR2VJ-VJX_HIVXDkP3a2rCJSMjv1ZC4aiii4tVquGQV5Uy4PdRU3UoXvbtehi8ZUp-F0tIOt9rlxk9XaCg3D1reL4mkJo9YlN2I60c64UPVhzgwdtgPV1HqqD6LSO5w3Olgq2iiFN01B3igyHeUJsHp2Btiz5UmLPwXpPkI7_cIq37aBKotq84oLPIXGMGKSuNJprnhQb2ww7MzyO57u0JOrYikxbzS42mF67KWOb1YynFuOkTr4svnK5M50HvdItm_vqiFZWsunQH_l3LJcsKvqKq53Q34uMJtHtwO-8esv1nPN2XJ1WD3LUCzC87k10pfECZa1ds5P79fjYGRq_ksWcBKlibVOa0XC7vJ8jnFD5ci_lPTB4q-oOtSbrqmBvULuiA11_OCcqrp0--0M0kPIX7p-2PQGgwnmuhnskOl5eZBQnhj93leWm5-pAPtBKzfdP8-s8HYRTYdZTaDJn4bhH8NYq-1q7af9jNgXnP5YEfgr1CcC98PbkLczfYSJ6vGgWt7CR6OYcYgvgX130K123mmnHCekfx2vhAjtg997D37mP05oRTLX6Wvh13rHbfMzVowCB9unnM2cOJxgpulmKTpH9B__hDP-TaQo8QBOXJB9uJw0MFUxZmeiuLSGaT93i7kt0D0xRrvNhjvDxYxEfSbZpxpRrsECLmQu1MfXhLjw1jt_eLIBw9_IifzdqdwPOItfnM4x9B0UzBnXy6JVFQ-kSG_J0Y_ByvkubMk7pyPH4X-k1i1s1z5ijTzWc6swLWWTCyv6GJ3NX2suNizphlsxQ2c87V8P_JSuCb2LLpX8qEfctBddtqOx3s_An987E5K8iSG8zlnWT5Xmkg971jZ5aCfXNXd9pTm0j607dhDf3AQ9Kf-GPLIFR5RAhvC7eE_73HsmT0eqGl8ez7Q9sS8o-IEFylOyRE98aPE89I0SaOj1QmOwwWOIuLHOc4oSkOPpn7oRVGAEp9gcsROkIewh1HqBygIo4mfh8RDEUW5FyWIhCDw6JowPjH8Tkq5PLKHxJ1EfpyGR5xklCt7_iRCgn6H9iFACITnR_LEypjVSwUCjzOlVd-KZprbgysvvny-AuE5iLyXjnOLPFg1vzhAEHk7_37fFI_PQDJtcUoKe-DlrkfvHdWSn7z9TD2rsf8GAAD___1UZaQ">