<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/111238>111238</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang static analyzer] Potential Blocking in Defect Reporting
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
tianxinghe
</td>
</tr>
</table>
<pre>
commit https://github.com/llvm/llvm-project/commit/3e4788377bb29ed389b46521fcba0d06aa985bcf (HEAD -> main, origin/main, origin/HEAD)
Author: Giulio Eulisse [10544+ktf@users.noreply.github.com](mailto:10544+ktf@users.noreply.github.com)
Date: Thu Sep 5 10:16:51 2024 +0200
clang --analyze --analyzer-no-default-checks -Xanalyzer -analyzer-checker=core.NullDereference -Xanalyzer -analyzer-config -Xanalyzer -mode=deep -Xanalyzer -analyzer-output=text
The test case is:
/* Provide Declarations */
#include <stdint.h>
#include <stdio.h>
#ifndef __cplusplus
typedef unsigned char bool;
#endif
#ifndef _MSC_VER
#define __forceinline __attribute__((always_inline)) inline
#endif
#if defined(__GNUC__)
#define __ATTRIBUTELIST__(x) __attribute__(x)
#else
#define __ATTRIBUTELIST__(x)
#endif
#ifdef _MSC_VER /* Can only support "linkonce" vars with GCC */
#define __attribute__(X)
#endif
/* External Global Variable Declarations */
/* Function Declarations */
void init(uint32_t, uint8_t**) __ATTRIBUTELIST__((noinline, nothrow));
uint8_t* malloc(uint64_t) __ATTRIBUTELIST__((nothrow));
uint64_t atol(uint8_t*) __ATTRIBUTELIST__((nothrow, pure));
void free(uint8_t*) __ATTRIBUTELIST__((nothrow));
int main(int, char **) __ATTRIBUTELIST__((noinline, nothrow));
uint8_t* func2(uint8_t**, uint64_t**, uint64_t*, uint64_t**, uint64_t, uint8_t);
/* Global Variable Definitions and Initialization */
uint32_t num_args = 3;
uint64_t* args;
/* Function Bodies */
void init(uint32_t _1, uint8_t** argv) {
args = (uint64_t*) malloc(num_args * sizeof(uint64_t));
for (int i = 1; i <= 3; ++i) {
args[i - 1] = atol(argv[i]);
}
}
int main(int argc, char ** argv) {
uint32_t _35 = (uint32_t)argc;
uint8_t** _36 = (uint8_t**)argv;
uint64_t* _37;
uint64_t* llvm_cbe_inptr;
uint64_t llvm_cbe_input0;
uint64_t* llvm_cbe_inptr22;
uint64_t* llvm_cbe_inptr23;
uint64_t* llvm_cbe_a; /* Address-exposed local */
uint64_t* llvm_cbe_a39; /* Address-exposed local */
bool* llvm_cbe_a61; /* Address-exposed local */
uint64_t llvm_cbe_a72; /* Address-exposed local */
uint8_t llvm_cbe_a83; /* Address-exposed local */
uint8_t llvm_cbe_a89; /* Address-exposed local */
uint64_t llvm_cbe_a90; /* Address-exposed local */
uint8_t* llvm_cbe_a92; /* Address-exposed local */
uint64_t* llvm_cbe_a112; /* Address-exposed local */
uint64_t llvm_cbe_ld;
bool llvm_cbe_cmp;
uint64_t* llvm_cbe_gep;
uint8_t llvm_cbe_ld123;
uint8_t* llvm_cbe_gep124;
uint8_t llvm_cbe_ld125;
uint8_t llvm_cbe_bop126;
uint8_t* _39;
uint8_t llvm_cbe_a138; /* Address-exposed local */
uint64_t llvm_cbe_ld139;
uint8_t llvm_cbe_ld140;
uint64_t _42;
uint64_t llvm_cbe_bop141;
uint64_t llvm_cbe_a903; /* Address-exposed local */
uint64_t* llvm_cbe_ld875;
uint64_t* llvm_cbe_gep876;
uint64_t llvm_cbe_ld877;
bool llvm_cbe_cmp878;
uint64_t* llvm_cbe_gep820;
uint8_t* llvm_cbe_gep827;
uint8_t* _58;
uint64_t* llvm_cbe_gep403;
uint64_t llvm_cbe_bop560;
bool llvm_cbe_cmp586;
bool llvm_cbe_a948; /* Address-exposed local */
bool* llvm_cbe_ld953;
uint64_t llvm_cbe_a954; /* Address-exposed local */
uint8_t* llvm_cbe_c960;
uint64_t* llvm_cbe_gep770;
uint64_t llvm_cbe_a885; /* Address-exposed local */
uint64_t llvm_cbe_gep771;
uint64_t llvm_cbe_gep772;
init(_35, _36);
_37 = args;
llvm_cbe_inptr = (&(*_37));
llvm_cbe_input0 = *llvm_cbe_inptr;
llvm_cbe_a112 = (&llvm_cbe_a90);
llvm_cbe_a83 = 37;
llvm_cbe_bop126 = (156u - 174u);
llvm_cbe_a72 = INT64_C(2291238112);
llvm_cbe_a92 = (&llvm_cbe_a138);
llvm_cbe_ld139 = *llvm_cbe_inptr;
llvm_cbe_ld140 = llvm_cbe_a83;
_42 = ((int64_t)(int8_t)llvm_cbe_ld140);
llvm_cbe_bop141 = (llvm_cbe_ld139 * _42);
llvm_cbe_a112 = ((uint64_t*)/*NULL*/0);
goto llvm_cbe_block18;
llvm_cbe_block:
goto llvm_cbe_exit;
llvm_cbe_block13:
llvm_cbe_a39 = (&llvm_cbe_a903);
llvm_cbe_a138 = 153u;
*llvm_cbe_a39 = 171952983;
llvm_cbe_gep771 = llvm_cbe_bop141;
func2((&llvm_cbe_a92), (&llvm_cbe_a39), (&llvm_cbe_gep771), (&llvm_cbe_a112), llvm_cbe_ld139, llvm_cbe_bop126);
goto llvm_cbe_block;
llvm_cbe_block15:
llvm_cbe_a90 = 984789025;
llvm_cbe_ld875 = llvm_cbe_a;
*llvm_cbe_ld875 = 2298943274;
llvm_cbe_cmp878 = ((int64_t)llvm_cbe_input0) >= ((int64_t)UINT64_C(2606378767));
if (llvm_cbe_cmp878) {
goto llvm_cbe_block21;
} else {
goto llvm_cbe_block13;
}
llvm_cbe_block16:
llvm_cbe_a = (&llvm_cbe_a72);
goto llvm_cbe_block15;
llvm_cbe_block17:
goto llvm_cbe_block16;
llvm_cbe_block18:
llvm_cbe_gep772 = 1320690439;
goto llvm_cbe_block446;
llvm_cbe_block422:
llvm_cbe_bop560 = (llvm_cbe_ld139 - 913404626);
llvm_cbe_cmp586 = 913404626 == llvm_cbe_bop560;
if (llvm_cbe_cmp586) {
goto llvm_cbe_block17;
} else {
goto llvm_cbe_block20;
}
llvm_cbe_exit:
llvm_cbe_a39 = (&llvm_cbe_a954);
return 0;
llvm_cbe_block20:
goto llvm_cbe_block720;
llvm_cbe_block603:
goto llvm_cbe_block16;
llvm_cbe_block21:
llvm_cbe_a112 = (&llvm_cbe_a885);
goto llvm_cbe_block13;
llvm_cbe_block446:
llvm_cbe_a90 = INT64_C(3336398127);
goto llvm_cbe_block422;
llvm_cbe_block720:
llvm_cbe_a112 = &llvm_cbe_gep772;
goto llvm_cbe_block603;
}
uint8_t* func2(uint8_t** _258, uint64_t** _259, uint64_t* _260, uint64_t** _261, uint64_t _262, uint8_t _263) {
uint64_t* llvm_cbe_a31; /* Address-exposed local */
uint8_t llvm_cbe_a34; /* Address-exposed local */
uint64_t llvm_cbe_a42; /* Address-exposed local */
uint64_t llvm_cbe_a49; /* Address-exposed local */
uint64_t llvm_cbe_a56; /* Address-exposed local */
uint8_t llvm_cbe_a69; /* Address-exposed local */
uint64_t llvm_cbe_a77; /* Address-exposed local */
uint8_t llvm_cbe_a83; /* Address-exposed local */
uint64_t llvm_cbe_a91; /* Address-exposed local */
uint8_t llvm_cbe_a97; /* Address-exposed local */
uint64_t llvm_cbe_a105; /* Address-exposed local */
uint8_t* llvm_cbe_a121; /* Address-exposed local */
uint8_t llvm_cbe_a125; /* Address-exposed local */
uint64_t llvm_cbe_a126; /* Address-exposed local */
uint64_t* llvm_cbe_ld;
uint8_t _264;
uint64_t llvm_cbe_ld134;
uint64_t _265;
uint64_t llvm_cbe_bop136;
uint64_t llvm_cbe_bop137;
uint8_t llvm_cbe_ld139;
uint64_t _266;
bool llvm_cbe_cmp;
uint64_t llvm_cbe_ld142;
uint64_t llvm_cbe_ld144;
uint64_t _267;
bool llvm_cbe_cmp145;
uint64_t* llvm_cbe_ld411;
uint64_t** llvm_cbe_gep412;
uint64_t* llvm_cbe_ld413;
uint64_t llvm_cbe_ld414;
uint8_t _271;
bool llvm_cbe_cmp387;
uint64_t llvm_cbe_ld351;
uint64_t llvm_cbe_bop352;
uint64_t* llvm_cbe_ld353;
uint64_t llvm_cbe_ld354;
uint64_t llvm_cbe_ld362;
uint64_t* llvm_cbe_ld312;
uint8_t llvm_cbe_ld316;
uint64_t* _279;
uint64_t _280;
uint64_t* llvm_cbe_ld293;
uint64_t llvm_cbe_ld294;
uint8_t llvm_cbe_ld300;
bool llvm_cbe_cmp306;
uint8_t _286;
uint8_t llvm_cbe_bop247;
uint64_t llvm_cbe_bop261;
uint8_t llvm_cbe_ld262;
uint64_t _287;
uint64_t llvm_cbe_bop263;
uint8_t llvm_cbe_ld264;
uint64_t _288;
bool llvm_cbe_cmp265;
uint64_t* llvm_cbe_ld436;
uint64_t llvm_cbe_ld437;
uint64_t** llvm_cbe_gep170;
uint8_t* llvm_cbe_ld176;
uint8_t llvm_cbe_ld177;
uint64_t llvm_cbe_bop193;
uint64_t _294;
bool llvm_cbe_cmp202;
uint8_t* _296;
uint8_t llvm_cbe_ld342;
uint64_t* llvm_cbe_ld345;
uint64_t** llvm_cbe_gep346;
uint64_t* llvm_cbe_ld347;
uint64_t _278;
uint64_t* llvm_cbe_gep347;
llvm_cbe_a34 = _263;
_264 = ((uint8_t)_262);
llvm_cbe_ld134 = *_260;
_265 = ((int64_t)(int8_t)_264);
llvm_cbe_bop136 = (llvm_cbe_ld134 + _265);
llvm_cbe_bop137 = (llvm_cbe_ld134 % INT64_C(3895987946));
llvm_cbe_a49 = llvm_cbe_ld134;
llvm_cbe_ld139 = llvm_cbe_a34;
_266 = ((int64_t)(int8_t)llvm_cbe_ld139);
llvm_cbe_ld142 = llvm_cbe_a49;
llvm_cbe_a42 = llvm_cbe_ld134;
llvm_cbe_a121 = (&llvm_cbe_a34);
*_259 = (&llvm_cbe_a56);
llvm_cbe_ld144 = llvm_cbe_a49;
_267 = ((int64_t)(int8_t)_264);
llvm_cbe_cmp145 = ((int64_t)_267) >= ((int64_t)llvm_cbe_ld144);
if (llvm_cbe_cmp145) {
goto llvm_cbe_block18;
} else {
goto llvm_cbe_block;
}
llvm_cbe_block2:
llvm_cbe_ld411 = llvm_cbe_a31;
llvm_cbe_gep412 = (&llvm_cbe_gep347);
llvm_cbe_ld413 = *llvm_cbe_gep412;
llvm_cbe_ld414 = *llvm_cbe_ld413;
*llvm_cbe_ld411 = llvm_cbe_ld414;
*_261 = (&llvm_cbe_a91);
goto llvm_cbe_exit;
llvm_cbe_block4:
_271 = ((uint8_t)llvm_cbe_ld362);
llvm_cbe_a69 = _271;
llvm_cbe_a31 = (&llvm_cbe_a126);
*_258 = (&llvm_cbe_a97);
llvm_cbe_cmp387 = ((int64_t)llvm_cbe_ld134) >= ((int64_t)llvm_cbe_bop352);
if (llvm_cbe_cmp387) {
goto llvm_cbe_block17;
} else {
goto llvm_cbe_block2;
}
llvm_cbe_block10:
llvm_cbe_ld351 = *_260;
llvm_cbe_bop352 = (llvm_cbe_bop137 * llvm_cbe_ld351);
llvm_cbe_ld353 = *llvm_cbe_gep170;
llvm_cbe_ld354 = llvm_cbe_a105;
*llvm_cbe_ld353 = llvm_cbe_ld354;
llvm_cbe_ld362 = llvm_cbe_a49;
llvm_cbe_a105 = llvm_cbe_ld134;
goto llvm_cbe_block4;
llvm_cbe_block11:
llvm_cbe_ld312 = *llvm_cbe_gep170;
*llvm_cbe_ld312 = llvm_cbe_ld142;
llvm_cbe_ld316 = llvm_cbe_a125;
llvm_cbe_a34 = llvm_cbe_ld316;
goto llvm_cbe_block10;
llvm_cbe_block12:
*_258 = (&llvm_cbe_a69);
*_261 = (&llvm_cbe_a77);
goto llvm_cbe_exit;
llvm_cbe_block13:
printf("%d\n", 301);
_279 = *_261;
_280 = *_279;
printf("%d\n", 302);
_278 = _280;
goto llvm_cbe_exit;
llvm_cbe_block14:
llvm_cbe_ld293 = *_259;
llvm_cbe_ld294 = *_260;
*llvm_cbe_ld293 = llvm_cbe_ld294;
llvm_cbe_ld300 = llvm_cbe_a125;
llvm_cbe_a83 = llvm_cbe_ld300;
llvm_cbe_cmp306 = ((int64_t)llvm_cbe_ld134) < ((int64_t)llvm_cbe_ld142);
if (llvm_cbe_cmp306) {
goto llvm_cbe_block22;
} else {
goto llvm_cbe_block11;
}
llvm_cbe_block16:
*llvm_cbe_gep170 = (&llvm_cbe_a105);
_286 = ((uint8_t)llvm_cbe_bop193);
llvm_cbe_bop247 = (_264 * _286);
llvm_cbe_a125 = llvm_cbe_bop247;
llvm_cbe_bop261 = (_266 / 726294153);
llvm_cbe_ld262 = llvm_cbe_a125;
_287 = ((int64_t)(int8_t)llvm_cbe_ld262);
llvm_cbe_bop263 = (_287 * _294);
llvm_cbe_ld264 = llvm_cbe_a125;
_288 = ((int64_t)(int8_t)llvm_cbe_ld264);
llvm_cbe_cmp265 = ((int64_t)_288) <= ((int64_t)llvm_cbe_bop261);
if (llvm_cbe_cmp265) {
goto llvm_cbe_block14;
} else {
goto llvm_cbe_block12;
}
llvm_cbe_block17:
llvm_cbe_a105 = llvm_cbe_ld134;
llvm_cbe_ld436 = *_259;
llvm_cbe_ld437 = llvm_cbe_a42;
*llvm_cbe_ld436 = llvm_cbe_ld437;
goto llvm_cbe_block13;
llvm_cbe_block18:
llvm_cbe_gep170 = (&llvm_cbe_gep347);
llvm_cbe_ld176 = llvm_cbe_a121;
llvm_cbe_ld177 = *llvm_cbe_ld176;
llvm_cbe_bop193 = (llvm_cbe_ld144 * llvm_cbe_bop136);
_294 = ((int64_t)(int8_t)llvm_cbe_ld177);
llvm_cbe_cmp202 = ((int64_t)llvm_cbe_ld134) <= ((int64_t)_265);
if (llvm_cbe_cmp202) {
goto llvm_cbe_block16;
} else {
goto llvm_cbe_block21;
}
llvm_cbe_block:
goto llvm_cbe_block17;
llvm_cbe_block21:
goto llvm_cbe_block11;
llvm_cbe_exit:
return _296;
llvm_cbe_block22:
llvm_cbe_ld342 = llvm_cbe_a83;
*llvm_cbe_ld176 = llvm_cbe_ld342;
llvm_cbe_ld345 = *llvm_cbe_gep170;
*llvm_cbe_ld345 = llvm_cbe_ld134;
llvm_cbe_gep346 = (&llvm_cbe_gep347);
llvm_cbe_ld347 = *llvm_cbe_gep346;
*llvm_cbe_ld347 = llvm_cbe_bop263;
*_261 = llvm_cbe_ld345;
goto llvm_cbe_block10;
}
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzEXFtv2zgW_jXKC5FAvEgiH_Lg2Em3wGwxmEkH8ybIEuVoq0iGLp20v35ByrLFmySnWexgt3Us8vCQ_M7hdz4qTdq2OFSc33vBgxfsbpK-e6mb-65IqreiOrzwm32d_bhP69fXogMvXXdsPbzx0JOHng5F99Lv79L61UNPZfl9_Ov22NT_4Wnnoaehn4eeMCcRpTiK9nvEeIYp25MwQDBP94mf-WGSMBrs0xx4iP7rcbMDtx5-BK9JUXloC-qmOIhPT8YXoq2HmOfvPH-zkc57eAM-FX1Z1OCxL4u25cALHqAfEOKhh29d7hG_b3nT3lV1w4_lj7vJRIKdh-hrUpRd7eHNyk7j-Luk42L055ce_MmPIADQF1ZCD28CCJCPCPDQg498f-gw_JmWSXUAt7dJlZQ_fvLLp-a2qm8znid92d2mLzz91oLbv8eH4NJMPuONh3dp3fC7L31Z7njDc97wKuWOPnWVFwfl2WudcQ_vMs6P9j513x37zsO7jr910yk8v3DQ8bYDadJyUEiMyAdAQmUDfm_q70XGwY6nZdIkXVFXLfCQRNLQEHgIF1Va9hkHHt62XVZU3d2Lhx_dDWrjeV5lPAdxnB7LvhX_Hx92P45cPOorCfgMpC9JA_Z1XXr44ewr5lVW5GeDpuF__7mN_3r8Y_Ik43lRcRDHed2kvKjK4aek65pi33c8jj1EPUST8p_kRxsPDQRkEAOnHy7G3MODYZzMQzSOP335uhV2mekHiOPN8_Mfnx--Pj_-9vnPZzn8mxhM9-nt0l-MXLb8GmtgldfTNQMjFrZJBeqq_AHa_nismw54CJVF9a2uUu4hBL4nTQv-KboX8Gm7NUFyXnB1On-ry-HwSTrw-NbxpkpK8Kms90kJ_kqaItmX8-hUTTz1VSqazXX5XhcZKCqR_2hfVB1GcSeSl_hMxceN_B-zLrKHaFWPYNmCqu5emvqfATcXxF5MgdekLOv0NFRIxJczlq3WwNgVJF1dnkyNni4b24Jj33DDqFyGvOH8aoOaoaLqTicCLSq5kjKGP2IdpwuZ91WKNF83474NC2v9Zr7BZNun42qwMgGZCwBJcCVVBj6LH5Ky-CkBp-FtxBio-tc4aQ4t8PAOYBUtJ_-AeO724wzvhzoruCsWbAAHMTQwLgb7LjbIi84Dyv_OTiqwlXt5hvNlMmgD2uInr3MV5OqCyv_yWsBCoAQU0j708IP8uB2XRBzEHnoobG6NrnnBQwFuAfSCnbRyigo5m-ChkGTBGNuLdud1mnwc_lYhLAZJNRzb1-qyujiYLtiQUpi0Y0kKwl6Mw2mPaeKRQ2FtmBEgMY6czwTLi9M9j4vq2DXWZkqbvvNX2kJobUO83DAR-wzOoN5kWcPb9pa_HeuWZ6Cs06TUoO2yhNmAmSsMSW6hGAnhrzg0MRShqw2d9n5ihOL3eqPZYR80K-ZfvcaTtD2xc_3qOPcdwl8ydrFUZgpeBTguD9PX4zKaD9xsRNUhoCUq9OU58CNEZNlSMN9kXx8hCl2jxdgkKdNVxfSjVhVitjgXYs8-ICbIPBzVKRK4kN0S5r87jowtLjMametuQwKNzLXXl4ZG0TzmaETXDYbMBbTAiiLzxBjxEKwbifgWuqLsSBD685MKaDjTIGHkXdAzknmZscB-BE0HC8gv5FhlvJSFK87QAz9GkT-3hAmlwcfEnhxrKTxkI2QhmmAkjjEOBAWKcaiTqRhHA-1SqSrQmMDIbjwUyj83grlotFAjI6cumxkeoxwBkyGU40pzeHq2Dtw7sj8fkudoFQZhL2hmRHq3xWhw4vOX55DEWw9RhBhEmIoDytmJ2T0X6dfVR2bUpfVRk6tsrfGKyS6SiRN0StvpuSDSkrXLtyEhj9Z0l0WaITOLoeyjVm4MofDl62-_Dbg3fDjUXT1xpKzTb5BaYK02uchghgn-VnQT5cnaHWLFwJSNOhCJ7agXOz7UQQHulXlNN3k0CyPIAsSm-6gFvbrjlnNyrKEND-X-oK3hOmb2B6ckY-90wj7a6oRg-s2JqCzvp7mb2m4Ejt1gQwQwSiLKfI04qWe7FirOrbg0RohRRjCKiN3scIxbI0yvwERRiR9tLb9O0krohziiUWjkUJGycyXwThTCrKAtq4tUgHjRDvCy5ZOethDDeqf5eJNKuwF-a6xERqawjR8sgiKaifGzTws2qB1Yw9k5hCRGfsh8ghddJsQynt5GVNm2EQd-5Uiwt4BBTHwSmtGk8a8hHMbG4ic9X-gszgSWoHGrgAWjJWA5ITnxYQ5aQ6q-KhEHRFmihnd9UwF_cWeES_NwihSvrUZCH_86KEW8WqfsokOCV66IKLyMThLOJ9pLssIYh5hRiKIVQxNk4aGWxV2YdejmttZhQ982ZQveliRoEKOAmjKz-JppX4MYhb61aQinX4sv0ESuFT9jq_hoUcSuF7NMIQC_uz7SqhryQTJNQq4X-ixWgvBjtLXwo7Q1KQX8_xRDvS5-txCqOsSij9gs6L-7Ija0R4g-aGqDAHf9julzQ-9GokWdsiptMQpNOdGU6YhFlYhRaJe7VPqOl7Qu2cgqPi1JhaMbkxHWSbNqDTxkn6VWjmWKUbgg1EES2G_xJuYJtGsxp9SvqGxwxS2LsLgkcIk2MoPbUDHVhowZYWq_XZraxsGSurSvjzhYNRe8KNaJNmTFNuJw3YCWNdbwiGHoGG84qyNmDRm6QgcsM8SWJ4zY4j0A9hfkVuxbLwGEn_YH081DJFqQe1FoYkBzETk2RLiwBDI5gvXORB3BnrwonV8bV3bT42wxv4k2zttY43YnWlbrywxaLhD0fBmtWD7owlmsoMtcG98aHwPy2aJvmKyLQuLcAX3ZMLHvgmHRsSgxmt6muNR5vbu1qCSy1Ih1ZIqDVlMwB_l0YPEzgu7YbSPrAs1msCjPyhN-TpS9vGKgD4sehkN-tnfk7B1Miz3KAkYjRkKnup8QpipsGvGwC91aOXJqK0jBVcI1NuQylSJoYxGXTq23nJmDoJvWYhwb-yU3P7DLFYFb0JG0Zd5zQV9-DUIDw7HakNzILVxq9GpRrhREap2qRN-rKl2nWDqEOEnndHBC--oNhM62sad8Yw0VSe-Mex4LOVTJntHDpIn6U6jDeeCMGjRDO5AZnFd21GsUl6J0WWRBS605VGN4zlukkJ2S85TeTjfJfuNmaqZDQFL7rB2bNhDnebF_SBcrQuZEnhdjRlD1_7US6wga-3ZCh0gnKwb7SadN2jhvxmNILxoM9KklhS1-dPqlFhhaTA_SwzhbJXBG80aBYjcdzp0vyoBLp4tNOl28wnCoxbIOWlwlbeLQPACJMydhGOprOr2BM1iVUX_NThxaJHuthZrB56I6NAjCXOaLFjTtVZlveoN8bIqqy-UwyENB5gXbSn7cAuwbQBfl5ySWoPaQ-peH0zp1dhAj2QjOfEqnWlX7jsty4oIgYvjibOCMZ8TcNFlF6GhwppRWS-g5hNreG5kpwLXae_VZsJ3nTmvOAX_ljRwy0vmaq17jfngB2eH0d4z03GI_hH2jDokRDefpwKnEnalfEDmfyEOFJktYGrpexUCB8foEIu4XhSb5YShJ0BOIUIgYgYHbLymLLMAuRg4u4ahw5qrMQUi5OEqj0zowN-2Xwsqyj_aXG5w-zpYZrmpXajlDnCxxJnmFthQrQ8m7hjOR93KmKU1fjpbIda-5wAemtP1c5c-mUXIq56cFreuoH02q3RcPZcuFqlm9Od6ocCSH-VIJRibJcFRjUjazVEmK3qZlF5v8QYjKRk_3IEb-YuQqkcJkFQpsffu7etYDxVGuGznWEh2SCazBePjuiuLK42TxhYlokWtpb0wsnXGGEeM1k9NbI5ocagW864UeKZTOvJ9pYNSgHzPM-yzZzNY_GrknK_PNoMiuDFXdMTMALQKv7lhkHsuhoWyc6bo6p_fUERdQDn_eZPc4Y5glN_weRohCCGnEbl7uEQ5YmnBGA8RJwMk-55CnPEI5pFnA8pviHvmIQN8P_MgnmN3RFPp5hHIW4Sjfp8QjPn9NivJOeHVXN4ebom17fg8hRJjelMmel638JwAQkr-NLih7sLtp7kWH231_aD3il0XbtRcTXdGV8t8NGH5_ve2SrkjB-LviXrADv9cdr7oiKcGDWISiOoCiAjue87QDf_Bj3XRFdbjpm_L-6n9ZQE6g9dDTaQ7f79F_AwAA__-FcmtQ">