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

    <tr>
        <th>Summary</th>
        <td>
            [mlir] `Inline` Pass crashed with Assertion failure "cast<Ty>() argument of incompatible type!"
        </td>
    </tr>

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

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

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

<pre>
    MLIR built at commit  5624e86a
Reproduced with:  
`mlir-opt --inline temp.mlir`

temp.mlir:
``` milr 
module {
  func.func private @func1() -> tensor<24xi1> {
    %17 = llvm.mlir.constant(31 : index) : i64
    %18 = builtin.unrealized_conversion_cast %17 : i64 to index
    %29 = llvm.mlir.constant(24 : index) : i64
    %30 = builtin.unrealized_conversion_cast %29 : i64 to index
    %31 = llvm.mlir.constant(23 : index) : i64
    %32 = builtin.unrealized_conversion_cast %31 : i64 to index
    %35 = llvm.mlir.constant(20 : index) : i64
    %36 = builtin.unrealized_conversion_cast %35 : i64 to index
    %39 = llvm.mlir.constant(18 : index) : i64
    %40 = builtin.unrealized_conversion_cast %39 : i64 to index
    %49 = llvm.mlir.constant(12 : index) : i64
    %50 = builtin.unrealized_conversion_cast %49 : i64 to index
    %51 = llvm.mlir.constant(11 : index) : i64
    %52 = builtin.unrealized_conversion_cast %51 : i64 to index
    %55 = llvm.mlir.constant(9 : index) : i64
    %56 = builtin.unrealized_conversion_cast %55 : i64 to index
    %59 = llvm.mlir.constant(6 : index) : i64
    %60 = builtin.unrealized_conversion_cast %59 : i64 to index
    %63 = llvm.mlir.constant(4 : index) : i64
    %64 = builtin.unrealized_conversion_cast %63 : i64 to index
    %65 = llvm.mlir.constant(3 : index) : i64
    %66 = builtin.unrealized_conversion_cast %65 : i64 to index
    %72 = llvm.mlir.constant(1705294429 : i32) : i32
    %74 = llvm.mlir.constant(1546631969 : i32) : i32
    %75 = llvm.mlir.constant(1.32902208E+9 : f32) : f32
    %76 = llvm.mlir.constant(1.57770394E+9 : f32) : f32
    %79 = llvm.mlir.constant(914179401 : i64) : i64
    %80 = llvm.mlir.constant(1869062064 : i64) : i64
    %81 = llvm.mlir.constant(-1446 : i16) : i16
    %82 = llvm.mlir.constant(1904121856 : i32) : i32
    %83 = llvm.mlir.constant(972215468 : i64) : i64
    %85 = llvm.mlir.constant(899409538 : i64) : i64
    %86 = llvm.mlir.constant(24915 : i16) : i16
    %alloc_2 = memref.alloc() : memref<24xi32>
    %alloc_3 = memref.alloc() : memref<11x12xi16>
 %alloc_4 = memref.alloc() : memref<11x12xi64>
    %96 = spirv.BitCount %82 : i32
    %99 = spirv.IsNan %76 : f32
    %101 = spirv.Not %74 : i32
    %103 = spirv.CL.ceil %75 : f32
    %104 = spirv.CL.ceil %76 : f32
    %105 = spirv.CL.cos %103 : f32
    %106 = spirv.CL.erf %105 : f32
    %108 = spirv.CL.fabs %76 : f32
    %109 = spirv.CL.floor %75 : f32
    %110 = spirv.CL.log %75 : f32
    %111 = spirv.CL.rint %109 : f32
    %112 = spirv.CL.round %106 : f32
    %114 = spirv.CL.sin %103 : f32
    %116 = spirv.CL.tanh %75 : f32
    %118 = spirv.CL.fmax %112, %110 : f32
    %119 = spirv.CL.s_max %74, %96 : i32
    %120 = spirv.CL.s_min %74, %72 : i32
    %123 = spirv.CL.fma %103, %111, %106 : f32
    %124 = spirv.CL.fmax %110, %105 : f32
    %125 = spirv.CL.fmin %116, %123 : f32
    %130 = spirv.FOrdLessThan %105, %118 : f32
 %135 = spirv.FUnordLessThanEqual %124, %104 : f32
    %141 = spirv.LogicalEqual %130, %135 : i1
    %144 = spirv.SGreaterThan %86, %81 : i16
    %153 = spirv.GL.Acos %124 : f32
    %154 = spirv.GL.Asin %124 : f32
    %157 = spirv.GL.Cos %103 : f32
    %158 = spirv.GL.Cosh %108 : f32
    %159 = spirv.GL.Exp %106 : f32
    %160 = spirv.GL.FAbs %158 : f32
    %161 = spirv.GL.FSign %157 : f32
    %168 = spirv.GL.Sinh %112 : f32
    %169 = spirv.GL.Sqrt %153 : f32
    %170 = spirv.GL.Tan %154 : f32
    %171 = spirv.GL.Tanh %161 : f32
    %172 = spirv.GL.FClamp %106, %125, %160 : f32
    %173 = spirv.GL.FMax %114, %171 : f32
    %176 = spirv.GL.FindUMsb %120 : i32
    %180 = spirv.GL.SClamp %85, %79, %80 : i64
    %185 = spirv.GL.UMax %80, %180 : i64
    %188 = vector.broadcast %141 : i1 to vector<2xi1>
    %192 = vector.flat_transpose %188 {columns = 1 : i32, rows = 2 : i32} : vector<2xi1> -> vector<2xi1>
    memref.store %176, %alloc_2[%64] : memref<24xi32>
 %194 = llvm.sext %86 : i16 to i64
    %195 = builtin.unrealized_conversion_cast %194 : i64 to index
    %206 = scf.while (%arg0 = %80) : (i64) -> i64 {
      %alloc_15 = memref.alloc(%50, %195) : memref<?x?x24xi32>
      scf.execute_region {
        %214 = func.call @__mlir_math_fpowi_f32_i32(%172, %101) : (f32, i32) -> f32
        %215 = func.call @__mlir_math_fpowi_f32_i32(%169, %119) : (f32, i32) -> f32
        scf.yield
      }
 scf.condition(%99) %83 : i64
    } do {
    ^bb0(%arg0: i64):
 %alloc_15 = memref.alloc(%30, %36, %32) : memref<?x?x?xi1>
 affine.vector_store %192, %alloc_15[%56, %18, %40] : memref<?x?x?xi1>, vector<2xi1>
      memref.store %arg0, %alloc_4[%60, %52] : memref<11x12xi64>
      scf.yield %185 : i64
    }
    %210 = affine.load %alloc_3[%66, %40] : memref<11x12xi16>
    %213 = tensor.empty() : tensor<24xi1>
    return %213 : tensor<24xi1>
  }
 func.func private @func2(%arg0: tensor<24xi64>, %arg1: tensor<24x11xi1>) -> tensor<11x12xi64> {
    memref.alloca_scope  {
      %255 = func.call @func1() : () -> tensor<24xi1>
    }
    %252 = tensor.empty() : tensor<11x12xi64>
    return %252 : tensor<11x12xi64>
  }
 func.func private @__mlir_math_fpowi_f32_i32(%arg0: f32, %arg1: i32) -> f32 attributes {llvm.linkage = #llvm.linkage<linkonce_odr>} {
    %0 = llvm.mlir.constant(1.000000e+00 : f32) : f32
    %1 = llvm.mlir.constant(0 : i32) : i32
    %2 = llvm.mlir.constant(1 : i32) : i32
    %3 = llvm.mlir.constant(-2147483648 : i32) : i32
    %4 = llvm.mlir.constant(2147483647 : i32) : i32
    %6 = llvm.icmp "sle" %arg1, %1 : i32
    %7 = llvm.icmp "eq" %arg1, %3 : i32
    %8 = llvm.sub %1, %arg1  : i32
    %9 = llvm.select %6, %8, %arg1 : i1, i32
 %10 = llvm.select %7, %4, %9 : i1, i32
    cf.br ^bb3(%0, %arg0, %10 : f32, f32, i32)
  ^bb3(%11: f32, %12: f32, %13: i32):  // 2 preds: ^bb2, ^bb6
    %16 = llvm.fmul %11, %12  : f32
    cf.br ^bb5(%16 : f32)
 ^bb5(%17: f32):  // 2 preds: ^bb3, ^bb4
    %18 = llvm.lshr %13, %2  : i32
    %20 = llvm.fmul %12, %12  : f32
    cf.br ^bb3(%17, %20, %18 : f32, f32, i32)
  }
  func.func private @__mlir_math_ipowi_i1(%arg0: i1, %arg1: i1) -> i1 attributes {llvm.linkage = #llvm.linkage<linkonce_odr>} {
    %0 = llvm.mlir.constant(false) : i1
    %1 = llvm.mlir.constant(true) : i1
    %2 = llvm.icmp "eq" %arg1, %0 : i1
 cf.cond_br %2, ^bb1(%1 : i1), ^bb2
  ^bb1(%3: i1):  // 6 preds: ^bb0, ^bb5, ^bb6, ^bb7, ^bb7, ^bb10
    return %3 : i1
  ^bb2:  // pred: ^bb0
    %9 = llvm.icmp "ne" %arg1, %0 : i1
    cf.cond_br %9, ^bb1(%1 : i1), ^bb1(%1 : i1)
  ^bb8(%10: i1, %11: i1, %12: i1):  // 2 preds: ^bb2, ^bb11
    %14 = llvm.mul %10, %11  : i1
    cf.br ^bb10(%14 : i1)
  ^bb10(%15: i1):  // 2 preds: ^bb8, ^bb9
    %16 = llvm.lshr %12, %1  : i1
    %18 = llvm.mul %11, %11  : i1
    cf.br ^bb8(%15, %18, %16 : i1, i1, i1)
  }
  func.func private @__mlir_math_ipowi_i32(%arg0: i32, %arg1: i32) -> i32 attributes {llvm.linkage = #llvm.linkage<linkonce_odr>} {
    %0 = llvm.mlir.constant(0 : i32) : i32
    %1 = llvm.mlir.constant(1 : i32) : i32
    %2 = llvm.mlir.constant(-1 : i32) : i32
    %3 = llvm.icmp "eq" %arg1, %0 : i32
    cf.cond_br %3, ^bb1(%1 : i32), ^bb2
 ^bb1(%4: i32):  // 6 preds: ^bb0, ^bb5, ^bb6, ^bb7, ^bb7, ^bb10
    return %4 : i32
  ^bb2:  // pred: ^bb0
    %5 = llvm.icmp "sle" %arg1, %0 : i32
    %10 = llvm.and %arg1, %1  : i32
    %11 = llvm.icmp "ne" %10, %0 : i32
    cf.cond_br %11, ^bb1(%2 : i32), ^bb1(%1 : i32)
  ^bb8(%12: i32, %13: i32, %14: i32):  // 2 preds: ^bb2, ^bb11
    %17 = llvm.mul %12, %13  : i32
    cf.br ^bb10(%17 : i32)
  ^bb10(%18: i32):  // 2 preds: ^bb8, ^bb9
    %19 = llvm.lshr %14, %1  : i32
    %20 = llvm.icmp "eq" %19, %0 : i32
    cf.cond_br %20, ^bb1(%18 : i32), ^bb11
 ^bb11:  // pred: ^bb10
    %21 = llvm.mul %13, %13  : i32
    cf.br ^bb8(%18, %21, %19 : i32, i32, i32)
  }
}


```
 
trace:
```console
Assertion failed: (isa<To>(Val) && "cast<Ty>() argument of incompatible type!"), function cast, file Casting.h, line 578.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: mlir-opt -inline reduce_temp153.mlir
 #0 0x00000001025af774 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/workspace/build/bin/mlir-opt+0x1002f7774)
 #1 0x00000001025ad910 llvm::sys::RunSignalHandlers() (/workspace/build/bin/mlir-opt+0x1002f5910)
 #2 0x00000001025afe3c SignalHandler(int) (/workspace/build/bin/mlir-opt+0x1002f7e3c)
 #3 0x00000001b0a454c4 (/usr/lib/system/libsystem_platform.dylib+0x1803414c4)
 #4 0x00000001b0a2dee0 (/usr/lib/system/libsystem_pthread.dylib+0x180329ee0)
 #5 0x00000001b0968340 (/usr/lib/system/libsystem_c.dylib+0x180264340)
 #6 0x00000001b0967754 (/usr/lib/system/libsystem_c.dylib+0x180263754)
 #7 0x0000000106a3da0c mlir::scf::WhileOp::getConditionOp() (.cold.4) (/workspace/build/bin/mlir-opt+0x104785a0c)
 #8 0x0000000103b265b0 mlir::scf::WhileOp::getYieldOp() (/workspace/build/bin/mlir-opt+0x10186e5b0)
 #9 0x0000000103b5a04c (anonymous namespace)::RemoveLoopInvariantArgsFromBeforeBlock::matchAndRewrite(mlir::scf::WhileOp, mlir::PatternRewriter&) const (/workspace/build/bin/mlir-opt+0x1018a204c)
#10 0x000000010647d4e8 mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<mlir::LogicalResult (mlir::Pattern const&)>)::$_2::operator()() const (/workspace/build/bin/mlir-opt+0x1041c54e8)
#11 0x000000010647a7e4 mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<mlir::LogicalResult (mlir::Pattern const&)>) (/workspace/build/bin/mlir-opt+0x1041c27e4)
#12 0x0000000104e3a7b4 (anonymous namespace)::GreedyPatternRewriteDriver::processWorklist() (/workspace/build/bin/mlir-opt+0x102b827b4)
#13 0x0000000104e37fe4 mlir::applyPatternsAndFoldGreedily(mlir::Region&, mlir::FrozenRewritePatternSet const&, mlir::GreedyRewriteConfig, bool*) (/workspace/build/bin/mlir-opt+0x102b7ffe4)
#14 0x0000000104de3c64 (anonymous namespace)::Canonicalizer::runOnOperation() (/workspace/build/bin/mlir-opt+0x102b2bc64)
#15 0x0000000104dccecc mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/workspace/build/bin/mlir-opt+0x102b14ecc)
#16 0x0000000104dcd5bc mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (/workspace/build/bin/mlir-opt+0x102b155bc)
#17 0x0000000104df2d18 (anonymous namespace)::InlinerPass::optimizeSCCAsync(llvm::MutableArrayRef<mlir::CallGraphNode*>, mlir::MLIRContext*)::$_0::operator()(mlir::CallGraphNode*) const (/workspace/build/bin/mlir-opt+0x102b3ad18)
#18 0x0000000104df283c (anonymous namespace)::InlinerPass::inlineSCC((anonymous namespace)::Inliner&, (anonymous namespace)::CGUseList&, (anonymous namespace)::CallGraphSCC&, mlir::MLIRContext*) (/workspace/build/bin/mlir-opt+0x102b3a83c)
#19 0x0000000104deaad4 (anonymous namespace)::InlinerPass::runOnOperation() (/workspace/build/bin/mlir-opt+0x102b32ad4)
#20 0x0000000104dccecc mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/workspace/build/bin/mlir-opt+0x102b14ecc)
#21 0x0000000104dcd5bc mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (/workspace/build/bin/mlir-opt+0x102b155bc)
#22 0x0000000104dcf474 mlir::PassManager::run(mlir::Operation*) (/workspace/build/bin/mlir-opt+0x102b17474)
#23 0x0000000104dc76d8 performActions(llvm::raw_ostream&, std::__1::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, mlir::MlirOptMainConfig const&) (/workspace/build/bin/mlir-opt+0x102b0f6d8)
#24 0x0000000104dc6c00 mlir::LogicalResult llvm::function_ref<mlir::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&)::$_1>(long, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) (/workspace/build/bin/mlir-opt+0x102b0ec00)
#25 0x0000000104e540c8 mlir::splitAndProcessBuffer(std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, bool, bool) (/workspace/build/bin/mlir-opt+0x102b9c0c8)
#26 0x0000000104dc15b4 mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&) (/workspace/build/bin/mlir-opt+0x102b095b4)
#27 0x0000000104dc1a24 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&) (/workspace/build/bin/mlir-opt+0x102b09a24)
#28 0x00000001022bad40 main (/workspace/build/bin/mlir-opt+0x100002d40)
#29 0x000000010e041088 

``` 
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsXFtz27iS_jX0CysqAARvD36QZXs2VckkFWf21D6pIBKUsKEIDgg69vz6LRLgBbxKmjmzW2fP1MSiSHTj6yu6AdqkKNgxo_Tech8s9_GOlPLExf2OpynPuZBlAe4OPH6___zp4zf7ULJU2kTaET-fmbRt10OYBh6xwKMFtt9oLnhcRjS2fzJ5spytbasnlgfOKRMfeC7tDx9YlrKM2pKe80112_KAHlb_7O4725Zc_W-fWSo0zzOPy5Talv-gvtt2UmbRpvph54K9EkltC4PqO7RQYKHQ_mA5T7akWcGF5ewQfmOwutNjYdsWcqFvW86jnaav5xrHJuJZIUkmLRQ40K7kYllM3yqW9RcPm_RBTV9ri2WbMhOUpOwPGu8jnr1SUTCe7SNSyHaymoctuebbZ1bPMQMG4XUwDrgCTMdjGkwt_RwY5wIw6AowjapnwbgLYMAFYLxrwLgrYBbMVPvDChh8jZmcFTPhJTBoHYx7DRi8AsZd8Bl4QTS51_iMu-Iz7oLPhBdgucZl3BWXcRes5K1j8a4xkrtiJM-Zx3JBkvHwFVg8ZwXLgo0uyDHeNTbyVmzkowXn9YGLQowbHA6yepcGF7zAxcWe58DQW-eyoBe4cVAIEALBk4UeFH3SsUqGrLwlVq7v-8AJ8WWsFrw4hBj6IQZtUM7ZLABL2dMLgYeAh1e5LGSaDxBjHVTQaxlAz2SwZO0QYIhg4HprdgoWYin0EaosHqzKsmDsIAwxCF1nncmCmREOobumEJKmPNorrZzpWdBkU9_S9VRFom7rcspBlvM0wcG5iAOEbxC9VRhaJi0HfA0HDw9hhEoTRc7E6-aByR0vM9mafGzDMOyN_1j8SrI2bMYhAAHsjf6Vyzbmx4whcHpjd582EWVpG91TvPHM-Dks7mA8L7p5p8Z75ngqko7P1PjAHJ-QQ7GIJxyMTzkXSwJDYBKk_Lg4HJrDBVOGVRNPEaABAS-zuFPFFMXABAXLFlUKByqVJDstijBU6Zm8aagW2nVKmSIdaLfYa1ofa9LQm_ZDBEaUSqyW0p8ODYicEVytjhYtbK7mVIrwnMigJZ3RFnKHpNocVRrbdQgnSJ2-zM9fRPyJFsX3E9HmdFv8wYC-Ju7P-_xbxjvyp99Lkmq5Wvh4GgPu--snfmQRSTt6pxW_aTjggLyvuJdfBCWSikaEoNFAACfTOXT7pvvl02bbZAc0g9bFA4LG92cJfJNgt5J-3GA0_tTlmSmC0CR4essXPc0D5vjnrcpXauYpAjggeGHHrJNtimIgwwtT8Q51rzUmGMjw8ruQnX0mCPyBEN-1y7ozVvDhaPypE26KAA2E3qXk3Ci2Das2QLyZdOQP_Ov5cxPWbVz4cwi8ASnL4t8-F4cuWU2komCgl5cWdtBg9cMmJsDMZo1r8vhNYw7aUJylVHZ_pZHkYnMQnMTtrg5uIrDqK9SIqkZSO04mmxD12SQpkXspSFbkvKDtPP5DxNPynBX1WNjVoDtb8J_qbpev_cf6cjiv2gCbR6PLq0JyQbVRtA50IWi5D3W3Z7mPy8VfLVev6ynom2wr0jox1f3WUKOhe83OWYhXts6a2iZKNj9PLK1kCiphxFH5jbayKhQsFOhSutZSxdXYGOyVs9CdrkZdt_WZ0B0Vp5bz_Fb9myiU7RojfaNRKele0CPj2XB2JZKuReqtzoikqW1hsN9Xxf3-TORpn-T8J9snDtrX3hGo4G4XJdiTNlHuozuZWmgjKtsp3eun9MJ2LQ2vnLLSxDujaWyo3n_UX6vHEc9iJhnP1GyhmkJ3XsNA9R_tmA_2eN2nwwF0ztC1Ue2W8wXGbtdqp4mSriccGb361482kiQsoxsVi_su4kJkRBx0Vci5bRIO9AUGoyAcz4V2C9E-jvdaF_3psQ745q6LRpNOt1w9M3ZJdmwZM1x15a9Vk3ISd0gcjcSbF3-ifWwYq2VJ7fxv6DmX773ucXQg0BELKkuRdTwWBnfSzB5DINPjDFZKf1r34giHAyBsTDo8xugbwHTzvsuSfRHxnNoTOQ25EwHePzbRwTt_grJgU717u6b6aS_qqd9F6wQrJljJWY1ZdI7q2WGQrmwipWCHUtKi0ma9vqUs-0GOVK8qTv-e5eyqK55FdM9jUeGtlufBmdPSBtgG1P9RCz0AsLYft7AHBtZ2rpa2v9ZoFza9PiCIfRw4Hg7WuCxslLZM_DUmvV0vFtXlICpSaiHUGlXn0ult1jE1_X1M7Ezv_fVKnlLVrj1nsqf3mvplUkojtTHdVK19ct0Q6hW0q7TAFAe_yZTNRsAkuW3bUbI5CLUmOioUQDdp147bveAw1vE2_HocIDRDCaLBd6ezoVWfE6NnCz3byM4FjYs641Ts1PjqatDJ9mycnEvVPLd2RfY4NHpSuk2R0oulRpv9537v8QJGp8U4eQysckFxElpuhRFN-wICE3KhC-VyWtx6jq6DWTdel7hXkyerkyeDgwIKDtMm7Ipp-HcnzYSkBe22tS9NkVKUc1TosrwATFpdre4Ptfk7d9bK62I6bB8hI6D0QKcb13NFb-CKoGXi9gKnufInriCYWm6dgQI0rt7M1by9aWfyWaOobCL7gpGSTV2Fl-hq4lEfcqAfmw4KofkVTep2PhXB4Z5cz590yLaR1-R8OBmxUDchEM8I0A5wL8IYtBjD2XTZpqI2rYwhDrLXKMEuSxW0mAc9C_T6a1D7888koWH1xharN_b3V2-rRdfS6xF_omD7cE3FdkFCG6w5vUB1ZqJRrS_DrNYfiKeLgH9WVhudyF2V1twLq8qZrcqeixB13mRUotNEcCGVtjlm1UA6bnuKR1MWmrLeVDJFZpz1Sjn1fcaql-dTf5x5uskmNDWVUP05KdoRwWUwZ1NqOJFS8bI9-9XdKORgeKk9ERjZLJg0KDRiDs46OgSD_ZKxAZwLDRC02tU1aOviYX_Pmi3WoN1F_2fzEmgjVP0hBYno-EXRKhHylKq726KgQjKe2QlhqZYbBawglrP7zutdleA_Sap2ET0LeZVhIlLI6vm7el49JOJYnmkmbZ7YLIv4OSeSHVJqy_ecWpWojf6rlaueseZS3WAptXekkCw7bk7VnfodWNcPNgrk109P25cnuygPZyZtYh_Koy1ozoW0JbdPUuaVTyrrHZk8lYdNxM8Weq7MpD8-5IL_N42khZ5ZUZS0qCxdZRuWRWkZU1ueqB0JUpzsA4l-1LrT079IEv2w4_Kct8oEGwuEXwU_CnJuRa8Do3uXV7_KK2hcRnQv6TmHrqNe3m3aUwfY4E3tYAAIkEsS38e1c1UzOdvivVAXXwXLZI3je21UFHSDBPm554UUlJxrC-1sVq1yodqXev7JxY8ir4meDyVL4-qTZRZ6bqBa6AG8QQBQ4vs-7jV8yIEDfHEIwRS-b2X2wo4ZSf-DZHFKRdFsZF0NwQ2rLNSDgIYqok5kG5NV_nqzxNSJjOmc3nQHQLCLI6z5loWonIkdLPRcvBeSntVXdb3PUyITLs6b-L0eU00RAAdDHJlKxeYUKKYUXDiFPAlK4sEMKKTU1JlrzBB6gYMvnCEyeSMPO9jk7Q14-757oYJGvB3fNTXj923tEScmILKb192dbREl6uIfJ5bSL7n6cqRy1xx6fMk7x9tEPI03-Aa_wH7gEmD6RdCH5hyQ5x7AJdD-i9E07sO6BggMPOoeTP2HJhCXABxVfEnGs_czLws7I2eq2Yc6POmZv9JPnOcfs1ciGMnkVhyLZ8HPDzThgj6kPPqhxp6JjE7bLP5Gfwomq1SzICXa9XTwlUhJRaYJRZ2MQruuu68XnCCAOwtUqcjIlR72Y0yD8ezbPE9ZROpznTVxvuRUEHVWtl0XZddLfM0atlfHKwfOq1IgGDFQ0itN6EOMWSavnMV_mklHrN-f-UaLMpWX8dXeYiG8R-qS1xriQrmvduKbLIph5GIaGBaFA4sSn-J_W_QvtegNZkI-xYaZjBUYU4f4B7yWcX4RlMbvptIfBXulGnAueESL4h9c_EhZBfmW9IgOAfIPJlhnANZPDJ8ieZ42sIptFj_zNK6xsvTd0Oi3-kUD7Sbd7WfB_6CNQJrPC5U9xfdHKy3o0TueJexYDaicq3bQGyT2k2RgHmxIHFMn8lbNs6seVs7E_mgsIsrsS9aLn9sMgg6RZ8JzTXhRRKP-mh5TSVjaRO93_iX_SopiG5O8DXhRZgNnL4pRfM9H_jYj6XvBis8kI8cq8hsD7Owyq3_FL76xYkYHiGlkrlLeQNzYPVwv7leW06p5GOS2amgrhfeXy2-my6L4mBVS1J1NtQCM8ml_gJpZPdDYvxJBM_kxS3gTHLc5PHTdg6li31RxguKqx192-I91MyZq19Erm2Rn9gd92e22xXsWGS3V51KSQ0q3QpD3b4MsvCNp-osg-elXHtNKKJW_uwGfP338tuOZpG9a5m5VBTOr6gL3W9dbdHBIDM31NhgqLnBWS8eR4lRb-7Lb1YAuodW-upaSfvmtoJ9Ym0VXM5hWVI3EWzHBLdoLHNPtwkGeJSRezbMj7f01WdZBJDayLAL_r7Isgv_Osv_kLIvQQMUJ9vEAWSPrpP-YqroFko9908mdASTfiwM7pyLh4ryta-ZiZWeskLF6tN9D3dKeiKDxPpfCcnYd6QsvRUQ_H4XlPM0Ud8MkYzxLmfiSy8-EZars61fm16sCJF5spHI0KPoiLwL97QizVbiltxhrqszY7yUdaeozPXPx_lAmifL6MWFME1Kmch_TlEo6T-w8jXqhoQXrrqZ-EpE0PZDoxz7JDEF6mr_aF_4-CTu8j4ykNJJVu1FI8T72siVP6ioL9f5jkPLs-L8t24L1bvB8GgFgeL7ZT1AXg6i_DVTkKZPbLP6qGsxGsv8j_vwvEX-LI7plT33eYPMwApGZ7YZNFXQPeDpG_vVj_oYYCl1zkwT5Q30SNK9PXbVEJ6Lqk63pAC9SsOxYdUmrMt6EnSATu9HEIHQgMQb2mdS_e3fd6Q8AKMZmcjFqfAowBEFgT5602nfxvROHTkju6D30QhS6APvu3ek-CeKAQgRwAkMHewjRCPk-CRPgAIgjeMfuEUAOCJALAgChu4lCz4kDEoWRi31MQgsDeiYs3dTHzFwc7-ojy3sPh753l5IDTYv6rxIhlNGfdv3QQshyH-_EfX3YeSiPhYVBygpZdFwkk2n954xqM7mPtuUB1aFUAlUVnToB1X-kyDYPh8v6FyFuPPu9K0V6f_tJbS35_wQAAP__ghpF1A">