<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/125306>125306</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[RISC-V] LLVM ERROR: Invalid size request on a scalable vector
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
ewlu
</td>
</tr>
</table>
<pre>
Testcase:
```llvm ir
target datalayout = "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128"
target triple = "riscv64-unknown-linux-gnu"
define i32 @main(ptr %0) #0 {
entry:
store <16 x i16> zeroinitializer, ptr null, align 2
store <8 x i32> zeroinitializer, ptr %0, align 4
store <4 x i32> zeroinitializer, ptr getelementptr inbounds nuw (i8, ptr null, i64 64), align 4
store i32 0, ptr getelementptr inbounds nuw (i8, ptr null, i64 80), align 4
%1 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 29916), align 4
%broadcast.splatinsert53 = insertelement <4 x i32> zeroinitializer, i32 %1, i64 0
%2 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 28484), align 4
%broadcast.splatinsert55 = insertelement <4 x i32> zeroinitializer, i32 %2, i64 0
%3 = call <4 x i32> @llvm.smin.v4i32(<4 x i32> %broadcast.splatinsert53, <4 x i32> %broadcast.splatinsert55)
%4 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 28368), align 4
%broadcast.splatinsert57 = insertelement <4 x i32> zeroinitializer, i32 %4, i64 0
%5 = call <4 x i32> @llvm.smin.v4i32(<4 x i32> %3, <4 x i32> %broadcast.splatinsert57)
store i16 0, ptr getelementptr inbounds nuw (i8, ptr null, i64 3704), align 2
store i16 0, ptr getelementptr inbounds nuw (i8, ptr null, i64 4630), align 2
%6 = shufflevector <4 x i32> %5, <4 x i32> zeroinitializer, <2 x i32> <i32 0, i32 4>
store <2 x i32> %6, ptr getelementptr inbounds nuw (i8, ptr null, i64 16), align 4
store i16 0, ptr getelementptr inbounds nuw (i8, ptr null, i64 5556), align 2
store i16 0, ptr getelementptr inbounds nuw (i8, ptr null, i64 6482), align 2
store <2 x i32> zeroinitializer, ptr getelementptr inbounds nuw (i8, ptr null, i64 24), align 4
store i16 0, ptr getelementptr inbounds nuw (i8, ptr null, i64 7408), align 2
store i16 0, ptr getelementptr inbounds nuw (i8, ptr null, i64 8334), align 2
store <2 x i32> zeroinitializer, ptr getelementptr inbounds nuw (i8, ptr null, i64 32), align 4
store i16 0, ptr %0, align 2
store <2 x i32> zeroinitializer, ptr getelementptr inbounds nuw (i8, ptr null, i64 40), align 4
%7 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 29916), align 4
%broadcast.splatinsert165 = insertelement <4 x i32> poison, i32 %7, i64 0
%8 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 28484), align 4
%broadcast.splatinsert167 = insertelement <4 x i32> poison, i32 %8, i64 0
%9 = call <4 x i32> @llvm.smin.v4i32(<4 x i32> %broadcast.splatinsert165, <4 x i32> %broadcast.splatinsert167)
%10 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 28368), align 4
%broadcast.splatinsert169 = insertelement <4 x i32> poison, i32 %10, i64 0
%11 = call <4 x i32> @llvm.smin.v4i32(<4 x i32> %9, <4 x i32> %broadcast.splatinsert169)
store i16 0, ptr null, align 2
%12 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 29916), align 4
%broadcast.splatinsert179 = insertelement <4 x i32> poison, i32 %12, i64 0
%13 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 28484), align 4
%broadcast.splatinsert181 = insertelement <4 x i32> poison, i32 %13, i64 0
%14 = call <4 x i32> @llvm.smin.v4i32(<4 x i32> %broadcast.splatinsert179, <4 x i32> %broadcast.splatinsert181)
%15 = load i32, ptr getelementptr inbounds nuw (i8, ptr null, i64 28368), align 4
%broadcast.splatinsert183 = insertelement <4 x i32> poison, i32 %15, i64 0
%16 = call <4 x i32> @llvm.smin.v4i32(<4 x i32> %14, <4 x i32> %broadcast.splatinsert183)
%17 = shufflevector <4 x i32> %11, <4 x i32> %16, <2 x i32> <i32 0, i32 4>
store <2 x i32> %17, ptr null, align 4
ret i32 0
}
; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare <4 x i32> @llvm.smin.v4i32(<4 x i32>, <4 x i32>) #1
; uselistorder directives
uselistorder ptr null, { 0, 1, 11, 6, 17, 16, 10, 15, 14, 9, 13, 12, 5, 4, 3, 8, 7, 2 }
uselistorder ptr @llvm.smin.v4i32, { 5, 4, 3, 2, 1, 0 }
attributes #0 = { "target-features"="+64bit,+a,+c,+d,+f,+m,+relax,+v,+zaamo,+zalrsc,+zicsr,+zifencei,+zmmul,+zve32f,+zve32x,+zve64d,+zve64f,+zve64x,+zvl128b,+zvl32b,+zvl64b,-b,-e,-experimental-sdext,-experimental-sdtrig,-experimental-smctr,-experimental-ssctr,-experimental-svukte,-experimental-xqcia,-experimental-xqciac,-experimental-xqcicli,-experimental-xqcicm,-experimental-xqcics,-experimental-xqcicsr,-experimental-xqciint,-experimental-xqcilo,-experimental-xqcilsm,-experimental-xqcisls,-experimental-zalasr,-experimental-zicfilp,-experimental-zicfiss,-experimental-zvbc32e,-experimental-zvkgs,-h,-sha,-shcounterenw,-shgatpa,-shtvala,-shvsatpa,-shvstvala,-shvstvecd,-smaia,-smcdeleg,-smcsrind,-smdbltrp,-smepmp,-smmpm,-smnpm,-smrnmi,-smstateen,-ssaia,-ssccfg,-ssccptr,-sscofpmf,-sscounterenw,-sscsrind,-ssdbltrp,-ssnpm,-sspm,-ssqosid,-ssstateen,-ssstrict,-sstc,-sstvala,-sstvecd,-ssu64xl,-supm,-svade,-svadu,-svbare,-svinval,-svnapot,-svpbmt,-svvptc,-xcvalu,-xcvbi,-xcvbitmanip,-xcvelw,-xcvmac,-xcvmem,-xcvsimd,-xmipscmove,-xmipslsp,-xsfcease,-xsfvcp,-xsfvfnrclipxfqf,-xsfvfwmaccqqq,-xsfvqmaccdod,-xsfvqmaccqoq,-xsifivecdiscarddlone,-xsifivecflushdlone,-xtheadba,-xtheadbb,-xtheadbs,-xtheadcmo,-xtheadcondmov,-xtheadfmemidx,-xtheadmac,-xtheadmemidx,-xtheadmempair,-xtheadsync,-xtheadvdot,-xventanacondops,-xwchc,-za128rs,-za64rs,-zabha,-zacas,-zama16b,-zawrs,-zba,-zbb,-zbc,-zbkb,-zbkc,-zbkx,-zbs,-zca,-zcb,-zcd,-zce,-zcf,-zcmop,-zcmp,-zcmt,-zdinx,-zfa,-zfbfmin,-zfh,-zfhmin,-zfinx,-zhinx,-zhinxmin,-zic64b,-zicbom,-zicbop,-zicboz,-ziccamoa,-ziccif,-zicclsm,-ziccrse,-zicntr,-zicond,-zihintntl,-zihintpause,-zihpm,-zimop,-zk,-zkn,-zknd,-zkne,-zknh,-zkr,-zks,-zksed,-zksh,-zkt,-ztso,-zvbb,-zvbc,-zvfbfmin,-zvfbfwma,-zvfh,-zvfhmin,-zvkb,-zvkg,-zvkn,-zvknc,-zvkned,-zvkng,-zvknha,-zvknhb,-zvks,-zvksc,-zvksed,-zvksg,-zvksh,-zvkt,-zvl1024b,-zvl16384b,-zvl2048b,-zvl256b,-zvl32768b,-zvl4096b,-zvl512b,-zvl65536b,-zvl8192b" }
attributes #1 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
```
Command/backtrace:
```
$ /scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc reduced.ll
LLVM ERROR: Invalid size request on a scalable vector.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: /scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc reduced.ll
1. Running pass 'Function Pass Manager' on module 'reduced.ll'.
2. Running pass 'RISC-V DAG->DAG Pattern Instruction Selection' on function '@main'
#0 0x000061aae52a1672 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x2092672)
#1 0x000061aae529e6bf llvm::sys::RunSignalHandlers() (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x208f6bf)
#2 0x000061aae529e7fc SignalHandler(int) Signals.cpp:0:0
#3 0x00007b9270045320 (/lib/x86_64-linux-gnu/libc.so.6+0x45320)
#4 0x00007b927009eb1c __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
#5 0x00007b927009eb1c __pthread_kill_internal ./nptl/pthread_kill.c:78:10
#6 0x00007b927009eb1c pthread_kill ./nptl/pthread_kill.c:89:10
#7 0x00007b927004526e raise ./signal/../sysdeps/posix/raise.c:27:6
#8 0x00007b92700288ff abort ./stdlib/abort.c:81:7
#9 0x000061aae3860302 llvm::Regex::match(llvm::StringRef, llvm::SmallVectorImpl<llvm::StringRef>*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*) const (.cold) Regex.cpp:0:0
#10 0x000061aae51ec13e (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x1fdd13e)
#11 0x000061aae5241738 (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x2032738)
#12 0x000061aae3ac63ac llvm::EVT::getVectorNumElements() const (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x8b73ac)
#13 0x000061aae3b3e130 lowerVECTOR_SHUFFLE(llvm::SDValue, llvm::SelectionDAG&, llvm::RISCVSubtarget const&) RISCVISelLowering.cpp:0:0
#14 0x000061aae4edfda9 (anonymous namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDNode*) LegalizeDAG.cpp:0:0
#15 0x000061aae4ee2a80 llvm::SelectionDAG::Legalize() (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x1cd3a80)
#16 0x000061aae50177de llvm::SelectionDAGISel::CodeGenAndEmitDAG() (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x1e087de)
#17 0x000061aae501a849 llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x1e0b849)
#18 0x000061aae501bf5a llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x1e0cf5a)
#19 0x000061aae50068d7 llvm::SelectionDAGISelLegacy::runOnMachineFunction(llvm::MachineFunction&) (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x1df78d7)
#20 0x000061aae40bcfab llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (.part.0) MachineFunctionPass.cpp:0:0
#21 0x000061aae4729181 llvm::FPPassManager::runOnFunction(llvm::Function&) (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x151a181)
#22 0x000061aae47295d1 llvm::FPPassManager::runOnModule(llvm::Module&) (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x151a5d1)
#23 0x000061aae4729f64 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x151af64)
#24 0x000061aae394e942 compileModule(char**, llvm::LLVMContext&) llc.cpp:0:0
#25 0x000061aae3867827 main (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x658827)
#26 0x00007b927002a1ca __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#27 0x00007b927002a28b call_init ./csu/../csu/libc-start.c:128:20
#28 0x00007b927002a28b __libc_start_main ./csu/../csu/libc-start.c:347:5
#29 0x000061aae3943cc5 _start (/scratch/ewlu/daily-upstream-build/build-gcv/build-llvm-linux/bin/llc+0x734cc5)
Aborted (core dumped)
```
Godbolt: https://godbolt.org/z/1v7P6eddE
Found via fuzzer (C program before reduction)
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzMW1lz4yi7_jXkhopLAm2-yIU7ifvrqu5vupI5fZtCCNmcIKQAUhz_-lMssuUlvUw602dq2jy8wLs87NghWvOVZOwKpB9AenNBerNu1RV7Fv1F2VYvV38zbSjRDOAFiBYgi_z_QgwN5ApEC0PUihlYEUMEeWl7AwG-gQAhdtkAvGCXHcCLLHEfl3wHYlQAvIhRcSkx8rJ7K0Nor9Mo3gk26lNc0yFLLnv5KNtneSm47DeXK9n7NiBaVKzmkkGOEQRJ1BAuASo6oyBAaQTQHAKEIwjyDyBaMGnUiw8KatMqa-Y6zuAG8jgD-BZumWq55IYTwbdMAXQNrSrZC2ExEXwloTUM9-0L29yG82pz78nYPDlsnvyw-YoZJljDpLE5Lsu2l5WGsn-GABW8OPaSZwnMEoDm521apqK36C6iM7oBSmPXaaIllQvoDRbQfB5np0YASkvVkooSbWa6E8RwqZkyKXaWfSYY-zG1bsSgNB6NRmMc6PfFUSTFuY54NZD0DYGgk0A8LZQIcaQEJG4uz3TD5WxIXJTFUZVXubZmfrJuamMPziS_kVWcFb8wOvI3kJqckJq-jdRfoS8f6QsTN87eNnFxHh2ORvQ7tScZjs5oByjNHGV63de1YAOjplWnFKSnxJzpFoCv0aQZvt6tZhYkAN8erq7owEb2lvjOrUi_i7s0TbP365ksKdCr2g9J-o1bEPrOFvTWiPIkKt6PrwLj1-fJu_GF0c_xdXia-FdcS17Z8fM_tePH2Y93yq7lupWTtTw_WMsBSos_ttHH2Y83pRP_i5O9aP4OG3ycnVmJvxPHZIuPoz-1x8fZ_Nf5jKPjARHHbyN0_ivMzb-zu5-7cFj_fuPR9BcnXP5PCEYnBOM_N-WK-B9EgE_mXJy8x6TLf2XoFPF00qV_bNIVP753nTKanoyJ7G2ExsmvUIen1OU_czCN47P64-zt59E4Pz_hHe2KmXBXjxYgv_GvHQB_gMteUsNbCRfGKA3wAsrWslcS-ghlWyvGoGz1i6RQtr185rKCumO0F8SQUjD4zIVQzPRKwoY1rXoBqJCtZJ6ailFBTt4mftwXJyyFx5d473mvmeCWi4opWHHFqOED0yBaHJRMCQH5B8-n6wXfF455z53vBb-S-6Hlh4Mbw372-lXIlbkiJ3Tj32lA0JN74sG5iL0_R7rQzr0I7jqKGKN42RumwwMUvnFtAUL-oeuyZsT0immAEMA39hN9yJKSG4CuAfpAfEJ9Uvmk9knjE8UE2Xg4-GRLSNOOUCgdWm851WqENZOU8ZBrml4EODCM6gne7HCWVBNcT_CujohRUe4yGO1xllh86T6Y-9h0THG7VhBxqSu2MWekRvHVqbihRp1K9Vnp0D-aU3ubJ8rJeSk9K6aCn5c358X6FfGph1bO5WnwVi7a82J93qoWp2a3RJAzVrec1lx05-X6jJqhpBidErkdHleu9tp-6DXxCW17aZhi8tnnV8R0ocgMRAQ46L140AcFZmC0cpmG-J7SDa2YYKuAteIyVKhKYVTnMeuagJqu8UCOQMmGe6QNMYxJl9Gjfk1pvRpR58eS1rStu6Ye8UFUeuKEnjihR4t6TJ9azUO9A9PaKE6Nx4aGdEfDhATdZ8lGONgHpQOp2Ah6D0qigojLgfjqgyRd600MXdkENHTe3IYORPQBlXwHTEMk70KWieeAGjK2algTkOaN83HT8E7Tph3YLie0V6FryohmAQ90lA61VFTwblM_1TvRc0MofXp6GgVPNl-11UH-qQ3lvOaWJK4pUVUl3O61l9ei1-u91KwZqUoyweUE6z2mbvUcM62smnbYC-qGNbza7AUjLT5zXMiajnC1F9gdeZ8bKt87m8FOKEmstbbzvjzTtau5JTEqlPYwS0ZU-tm2JZQESUPirPTwOdTy4W59pNvS6ysfQ_ZxzG986ttQ34b6Sn4IbinzSe2Tpu0CGFMXxrbi0uuqvZK6rBsuPVyHZCcY666nYCzlNOwZW07Lttmhboe2AVHStGTEvB5RWCYtVH70bTmVfmJvuSXaozWXRhqxz3SkH-uvu6BjjPfRf8qQVCFlIfUhPnobjzokLFTTodhTZbQbZdshdM4QemeYcGbxc0MCXo_prjh05PC4Cukol3QEwfjwKHd1wsCxaGyvx3Rsp3ft9NguuD8E_wcRRyh00SDiDBe7DIqSYofTbIQY5dlOnkTzXUEaoxFmaYp38iKe24LxcHZ4mop3p6nfd_AdT27jd53-FHfdNg2xfb20Nowi9Pg7UYtRAgFaaqqIoWuAluzZLq3LinDxctl32ihGmsuy58Jpsunlig47bI-Z_ptNK7I9vBSCQsWqnrJqJgSIFp8_f_sCb-_u_rqzB_5PdpnnFdR8y6BiTz3TBrYSEqgpES5Wf52ZgWjx9fPt4v4W6r5suIEElv0KKta1ykDTwrUxnb1EALQEaLniZt2XM2qn3dL6FZLLTrX_y-yWteRa9_bUuoREVpBLKvqKQbNmkCqi13DHlLV9b2zfVH3Ted6iGXT_fVXtSpEGErXq7YnCXWPencQ4WL_rpeRyBTui7YDKdzeqr1bwhUiyYgqg3FLatFUvmK01UYVyGxx6Rd3dp_vry2_wZvHxEuDbm8VH-JUYw5SEn6Q2qve27plgDgVD9egEQPnum-zcX5JxBKNNFEVRFhPCUkTiLEfQ9Q9eALzQL9qDr4pL40j_2w1WVOwrKfL80HoeAXL3Jnf8tJe04h2oB-hDtEHRHGU5CpduN3cPApmzrKzPBXLXy3u-kkT8h8hKMLupFe_ua1FnZb33FR37mtcUHngFUBE49GI9o50d6ZH757XgoCUv5yiPoiTFKAphCF4CtNwU2UOWTH_aYAvoTLezzDnmmuzdSg4VzlkZU_jw0Jm1YqR6eORCPPCm8-8xxA2pGUBL2dmtbjmtNqMAL5IE4EWeBeXpzyi3h2FJxHfV5u6nHiMJ2Tm10zbf1VXMp7ryY0JRxqAiXDOnRLueAGg5c7kXXTF7rFp2rea2011NpxblAC_GwItDrago6hqS0q6STo-pfG85kfcqtmGG5vPpWMFFFuFoOkHv2IptPGz8yJ1MzHujuFzdMXuAmbS5b4gQ39wy_qnpBMDX55rgW4AWtqE2lS97eKCbTRz7TEk0pw_aVQf4mq6JOqhsBQ9GEW6XYF_sn3J2NYgQLSWmVZPyYHQOaSu1saN5Rls74-bQRXo0Dey8P1zBYkZjzN5zNsd1VcU4vGlZB45WniTOcfG-ywlGOS72DhwsJ5jQDBM66e7bb397sGLG9_p_--bWz-Jx9dvR_V5OF2WO7aVm9Bkf-FxiFuMIivaZqW-313__dfdw_5__WS4_3x6O55tvRPTsaDSP293N4mPYfibT49P99bf7vgy_AXNhukpz6Io-3TPx2VrlcnVmbCVTLxNW1RVxOwWRrXxp2l5DSRqmO7cjzk_9-cxW7ktSXzLm_uqOovpva2_ebtyPdW4WH8_4kx76wxApoteoODD5_ptcTCtMimjfw9nBtIjiPK_YK77aXvDS67ZiH5lcyOq24cb16Ls7zqIirybzOT9ynBTJ_IeOe-lCiA92XfwgWmovQJNe3h0Fp2PwfcMqi2S-D6s4CqusU_LDsFQv_5JfCF1zycYIDsI6KfsX4qJ1SvZxzQ_jirKiyr8Tl50R9OX_bXRVnRdVvosOHexuSVTSmpTwVQftNWMS2tmYToOZdUSZmftN6xl9p8sQOtjxkhzN4yKeOLX8atuNt51fdufduE1jsvuK04aBjsNIq58J44u7uB2OkyD6N0JIq0kI-DiEOksmIYjJYJ8E4099IaA_Fkjtf0vsAznYafE8YfMEQdo2HRdsR7g_ZC7CuXTv9efP375ct9K4r3yc60LQM-M2PTpL5wXKob0Pv2eoWVoUaDKjj24siMSUwIcHezN70IYo80CJEA_OLXtBoLo_vXOEC825RrO1vT3YuxcOFvNji6go3dfiD1xyc2zEQ6v50ml2VxL_A3s0Enl8p3EaD2I45_5ZzTixl6U0KJ4fDQNMaQq9yvfsoxwnlIYfFS_sPYxV1hxtFXNvTKwK_Xf4ivexrcpWGIAXx69dvmDWqhVAyy1Ay3jIv2asqm59y2XbywoOnMC6326ZstauYRcer0pWW8vuXcivjfOL6gpXczwnF-zKXjBwFuVxfLG-YlkW1ynFWZlgTBJcpyyhlNZJTlIczdMLfoUilEYxjlGcFjieJfO4RFUZpzhFJcYFSCLWEC5m7lvpVq0u3EvcVYxSHGUXgpRMaPcnHQhJ9gxdKUAIpDcX6sqxWvYrDZJIcG30Xo3hRri_BfHvViC9gf_wtfGiV-Lqnz8ohkiGK_R_AQAA__9VY5me">