<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJztWktz2zgS_jXOhUUVwYdIHXxQbDnRxklclnemdi4sEAQlTvhakJTl_Pr9GqDeTsaJM1t7WJctiw2w8aHfDTKp06fL31eysvo2r5ZW2Rdd3hTSyquVVHnHKyEv3CuLW92qr75YeWstZSUV72RqJU_W7e1vH62utnj6Z992mCTxh0lNnVedVCNrXg1E3E2M6CLrK9HldWUJXhR0NxGV5MV-BCxKnkrgabuO58Xowrm-cKbv60e5looYPe5Bp1w95lUjWmv6dk5jGpXgVVV3VpuXTZFnT3oRUYPndtWSf8E-ARr8sbzoVZuv5bCS-XygvSjZQiotRGL2JpWqFdbPxYoWsRIC36g67QWEAvA7IWocwNtiS63Vdlx1hDdTdWnGmGNduJH-OrFaKcuWgD3W6gugKmDqiieLV6k1sLfkpgERy_C2lWVSPF24k3PEO04aWqGVNYg544LUxLtBdSqXembTtytIpEp5VyusqZZ9KSvsGvsBcPHFesy7lREApAxhtJ3k2G6GWzu9LbAvSUhKLnMMqhYgId8LN2yttK4k2cu0IbmIglfLI9jvpZKkdG4t6zSpi84qchiMN7VWXde0-HLh3uB3GB3Vaomrr_hLkvWHdxP2dXXGjitptpwXUnMwE4K3GRQOwHYUTRLfHYmmGXWb7iK4hi5OlsOe-2Qk6hIXRbHe_rOhjz-hCFwa7u5NxNxxFHpEeZ69O_kWgHb1y9b3z9cfuB8sn_RL7Z-2ktpm7cFHcpmOEvGrsESMtPPXS-2AHRmC8dayyWG9FBDqvoOd7bU4doZfc-n6xqgu3Lf4tVlg2fC2pewszpVYjX2bk-XZJlQwZtltlxZ5cuFd41OY2zQRlOGSZjUy5VWXC8v-7Fo2_tVw2JuubPZyHj1Dgs4te20ZcP9M-qrrDb5tNLBYMHJGjm1Wch2Xfl3GfJ85IHjCcSZjzlI_GNvsIpzB7-nfwcTAiUaeEw1er_dK7vL8drexQZHLlgiCBc1t6jbfmKE53BlhUabXuaIh7KVvFSkwr8yMfFnVity8gitvyMGrzkpzilEUMC5c9-ge92Y0wkdeiaJPkUJuBqHi25rR5B9l-hecKI7mFdmikG27M6ojFqTvwWZZsMM52A2pV0DjiIgUorgqd1LM61Zry7J_76tUZlhFZpCcd_0wvX83e4g_L2KM6bwA4uEckFPkBikoBtt18qew85bbfcuX8uCWl8zRjiPyzt4mSTuVwK6Mf9iyxBButmy7pJi_gcsVtdCjrWWnYJlgL5mSYCoKyZXN285OZFYraSeI8BJ5ZjdPSwnGSq6qNFlwldprXvTSrniJrGGXHBInn9cE68j4y_3qtjY4qyEvwoddIIUXFuRdZgr32UOtgC3CCjDKM8vOssYWddUppCsM0AazqrZVDeFSbCs5khFJAuadwtUTHeKvwTTjBawKgoQ518LuK74GLpqAMYoowJQAaPdk_7vnJhTZeWonmP3F7p4aaYuVFF_IKu1snbfb2XmF3cnWXuVpKiuECjDCZrDJAmJR24Bji6a3jN3wcEfMJO96RDbY7Triz5GxYdjcOnpurJIkgHO6UE8NcvczI19F-Tz563PkdsXd5-ictDyQeZIfFFok5qJ-tFe8yOxdsWCjfoDZ4XYyuZJsiBwKDG2YT2EMMN9A4NqoYYD2I1eVFnUqkSuWUtldTwQKzEWaUBQltcES4Q32QUaASZLJmNBrYdW27pWQRLa-6fHmevD4GzZ49bOpQNtkBd3m7RPiUnnAlFS-j0jfnfqC9Z_lJDf0RZxz3E2lfLTPTmeJKzsIKSUXqtYkiPg7MsyMVoococRiE-KKsEAxtdMB2SK-2k_IAGRF1bRGioC3daAWzmfsh0KNKQTtZVEn2FQKHtA46ggbuDZYxM6WVS_sISkCij9yR7SK2GzAWchmCF_Z0UWJ6KY9Vfs6bmNjbSUF0Kc5R1JpIRXMXGvc-VfEs7pujghtgR1fx_G7q6v4_fS3WXz9-_T-xo2vbubxdPGRmH4j29sba2slzyV-k3hMttcp5TjlWwlvUY73DSimBzBk5AyOvsEaypZNNI6RgBpEmLzqNzbk9AMpc6GtBl9u80RxhS7h5oZiLXUW7Y9l3-9yuHC9rUGCNqKU76L7oBrEtDuthTZS7su2g_neFc33Zt-b_02nOxv-IUc7vfuIPKt0VzOgKiCWoVPJOEoka0jH06ENRL8z5E6ikRmYXquRCom1NM2l7jgl-VU1VLMVOh1NbfMOXS5XX3Dbttk1y93dzqYLSKdPyB25Bd-lPrNWHfH_4do8b9teF-e6n9xqQZfZiqP3o11QutXtfqMbWqqkAMsEVn0KUOnGsxa5bilVj95QoF7aSmihG8W0h0tsNeiMLP1zp-ol7GffWJK4_vdKdgOaDaBho7LOyEYbrlrUQWibpTEPKnvMZHeYfEVnC8PhCAUzPegNg_d9pdNcA_Fh7fBme9BxR4SPvEJ2gyWG-vgArX5BDhU-G17ccJC2_w3e06kWn0U1verNMgtZSP1tWGN30EKr-E78x8OqYuP4E7vyeJrO7j6IrzRyolV9BoBOzGqfSrThlqkDUXnLqqWQ_1T31oqvpaVtz0xCrNVegjFl3U0f3lvwmlaasyJZrXNVV2QQFtVQaOgoJsaLf318-_l2_sfsPqZbQNY-RYUifcl117gPKoO7DzFzHzD1ADGEdY3aeoR2IYr_-OQTPA-ZlQV3iH-d3uAD2f7s_tMiZkzxxxgpBIVLOcthVs7GY7RigG9hNslkEAYsQ4OLNvm1EEKob0FJs3gP9yqQK2ZrvaSUJ0v6mYAb_oIlgysU2VXffB4WnpV6wSw526PnJT-5oOaYTryM82Ou4zAl2iu5-sk5V_9nsR4KJ7wzcc-foT6ZEQ-sQZ54rArhjsPdasdhTM_zmRc67ivxsMjE-1hnnlgnnNn9B5ho8ICQKGcGHXNPjHMcCR78rHEaEXN34o7PuBLtFVxd7glBR2QHbEPPHRPtpyX1wYjKN0cgt_WjpJKGMf3tCin2oSavdmI2pqvthHmV1TMjvsn4xERlJifJz5roTnmTXcy9nr572-dFKhXzC1p_Xq3rL9QNmXhziv0c6B0pnTlveZuLt1RnD9DHzjHyjCWZ4_wtyI8FSngiugAkOcNFuLj-jc4GZknyDbCTSXYC1hkL0P4GsBNq2zuCd4CU0qFBEjgnYpMyc7O_RWyBRmJQMHaQkQ2S8AyIO0leDWR8CGSOiy3lQCXa7nKqbmNUoIpO_edEcw0tlVSIMrdCURPXpvGan-3hNnH033o2fGWz2Wwxju-HwORPTjSOlDKZ_PLtuY6hTLU5DjtsB9VvK63BY8IwOsWEYB79DZhQHX-uPnKxQqTegdD-HpxSNbRIhKfI3FCEr7bKk8Wo4GSeBneE6lRQbnqMhqcikelr0Xg3dwRgKHhfgMM7jRoR0lDy6qhxgoMZZenCW6MYD98NBu8EAhUgr0hZGsK4kEsunlCC7nHMy6YgkZxDmHjjUzGkQfDibKwrFJueRBGKwMAINJWFM_SXb00P-1k_ZTFWGl7vT1Jm1ZLqDRPGJu8lR2hb6Ab5s4kNw5BPTdA7WR1TPZPfjonsFotvSUYkk0VHGe9eZrO7T4vZTgKax4Bwamxj0TGnr_J_9zJuOopcMwCmsr15VIhn8VC8Y5o_HKwgpBWyk_PFh3g2mHgUHFeRIsFP-uIq8lyohm0ivFAcl2QicwKivV5d0R11otPFg1aSv5AlR8o15VXgHy2apH4mff9X2Ig36NVIn3mzjRR9JwdlmH4lOdsy4_JXbJn5N-gRu53yw2H1Yd3xcdhMI576wYvD5vfWHV_po1Kq11r9JsTpxk31doxuGzLGJ6gcnyW_wl_dYMCwB7ceHrSQ18TnqA0id3Jc5aYTNyTaN5oYWjESgsX0kMe4ZzRVij_BO-d3HwTyvBvfrYfKbrdZ9D2uGH-_M2IBe62Pucx308A93pAf-UR7XVh2nSs6DruX-pnD0xWpdtNNqEnnmSyedDByt8cnsYI0btaof4yQ0_S8LXVfnDSf1foHo_ZxqnIAYs7VFYOC6U2NnR-cqucTVBOZ0MoLfXUQWekHdtKFcSw2G8aYm1DNRBGTug2BkMnEiqu4Uzzv2rmYLTg-cNO2qHPOxB75L65ZX7JHdrV_RMH8vbnTpnX2cOJwd3m38GLjcpl3AswXLHhxmv5hYGwA9o86abeo8P0W5TMCgykzgkWJzuM3faBOyX2-6PyG52qe3x1vY2tAET_bg5e-uBX9TtgYtjC-NjuJjoII30YzdMnsmPST-2D8JCr740BG3zwycSMKM8a1I3YQTZwsennQpF2PdyEizdJjS_W9NCLaj7KLY7qK9fOJeIczTE-ZT5ww_U441fcPiXq3QUf6FBePbto-W9idkNMLYzrD0BsxJObtcwb9SpZ-kKZfbAv122R9K-mpaVfTa2BWvssOu3ci_v8-yn_hfZTTF5T055v0EmbiTfgb3nerWl0WslnlRd23dbOSb3pVXP78c53Ad9zgzeoymWSZnzp-FvjRhHlZkEBFQRqloeuk3J-8KXgii_YSBgi0lXy0NAtCHly_eT2C_HKwCo9Fvu-6o0hwx0vDKHJkyNNAXsDqS3qnk_jQm3xvIAhimfTLFoN0ANHuB9Ee0QsdUgMGwi7vCnk5v5qZV0DN4-xBZ_Y6V13Pi-Ft1Tqjpwo5T3Oxf-KhneboldE3egeXGv5_AEP-xOI>54025</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            ICE when compiling non-virtual thunk of variadic function with darwinpcs ABI
        </td>
    </tr>

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

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

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

<pre>
    When using multiple inheritance, a thunk is generated by LLVM to adjust the this pointer. In the thunk, the function call to the real function is made musttail.
However, when using darwinpcs ABI, LLVM cannot simplify the code call to make it tail recursive.

This results in this error which can be reproduced on multiple LLVM versions starting from LLVM 10 (LLVM 9 seems to work correctly and produce expected assembly).

This seems to be related to the fact that LLVM tries to push mandatory arguments on stack with this ABI instead of putting them in registers as it's done by Apple clang.

Here is a godbolt link: https://godbolt.org/z/bbvKG91zh

Here are the files:
[failing-889b42.cpp.txt](https://github.com/llvm/llvm-project/files/8126873/failing-889b42.cpp.txt)
[failing-889b42.sh.txt](https://github.com/llvm/llvm-project/files/8126874/failing-889b42.sh.txt)
[bugpoint-reduced-simplified.bc.txt](https://github.com/llvm/llvm-project/files/8126881/bugpoint-reduced-simplified.bc.txt)

Here is the compilation output:
```
$ clang++-15 -target aarch64-apple-darwin11 -stdlib=libc++ -std=c++11 -pedantic -O2 -c -o /tmp/failing.o /tmp/failing.cpp -v 
Ubuntu clang version 15.0.0-++20220222114410+3c0096a1d456-1~exp1~20220222114508.308
Target: aarch64-apple-darwin11
Thread model: posix
InstalledDir: /usr/bin
ignoring nonexistent directory "/usr/bin/../include/c++/v1"
ignoring nonexistent directory "/usr/include/c++/v1"
 (in-process)
 "/usr/lib/llvm-15/bin/clang" -cc1 -triple arm64-apple-ios5.0.0 -Wundef-prefix=TARGET_OS_ -Werror=undef-prefix -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj --mrelax-relocations -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name failing.cpp -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -ffp-contract=on -fno-rounding-math -funwind-tables=2 -faligned-alloc-unavailable -fcompatibility-qualified-id-block-type-checking -fvisibility-inlines-hidden-static-local-var -target-cpu apple-a7 -target-feature +v8a -target-feature +fp-armv8 -target-feature +neon -target-feature +crypto -target-feature +zcm -target-feature +zcz -target-feature +sha2 -target-feature +aes -target-abi darwinpcs -fallow-half-arguments-and-returns -mllvm -treat-scalable-fixed-error-as-warning -debugger-tuning=lldb -v -fcoverage-compilation-dir=/tmp -resource-dir /usr/lib/llvm-15/lib/clang/15.0.0 -stdlib=libc++ -internal-isystem /usr/local/include -internal-isystem /usr/lib/llvm-15/lib/clang/15.0.0/include -internal-externc-isystem /usr/include -O2 -pedantic -std=c++11 -fdeprecated-macro -fdebug-compilation-dir=/tmp -ferror-limit 19 -stack-protector 1 -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -fmax-type-align=16 -fcolor-diagnostics -vectorize-loops -vectorize-slp -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/failing.o -x c++ /tmp/failing.cpp
clang -cc1 version 15.0.0 based upon LLVM 15.0.0 default target x86_64-pc-linux-gnu
ignoring nonexistent directory "/System/Library/Frameworks"
ignoring nonexistent directory "/Library/Frameworks"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/lib/llvm-15/lib/clang/15.0.0/include
 /usr/include
End of search list.
fatal error: error in backend: failed to perform tail call elimination on a call site marked musttail
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: clang++-15 -target aarch64-apple-darwin11 -stdlib=libc++ -std=c++11 -pedantic -O2 -c -o /tmp/failing.o /tmp/failing.cpp -v
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module '/tmp/failing.cpp'.
4.      Running pass 'AArch64 Instruction Selection' on function '@_ZThn16_N1C3addEPKcz'
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm3sys15PrintStackTraceERNS_11raw_ostreamEi+0x31)[0x7f9fe5751f81]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm3sys17RunSignalHandlersEv+0xee)[0x7f9fe574fcce]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm3sys15CleanupOnSignalEm+0xfb)[0x7f9fe575133b]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(+0xd93faa)[0x7f9fe567dfaa]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(+0xd93f4b)[0x7f9fe567df4b]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm3sys7Process4ExitEib+0x27)[0x7f9fe574c267]
clang++-15[0x413702]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm18report_fatal_errorERKNS_5TwineEb+0x121)[0x7f9fe568ca51]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(+0xda2926)[0x7f9fe568c926]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(+0x2a3cc73)[0x7f9fe7326c73]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZNK4llvm14TargetLowering11LowerCallToERNS0_16CallLoweringInfoE+0x196a)[0x7f9fe5efe9ba]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm19SelectionDAGBuilder14lowerInvokableERNS_14TargetLowering16CallLoweringInfoEPKNS_10BasicBlockE+0x160)[0x7f9fe5f1bf00]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm19SelectionDAGBuilder11LowerCallToERKNS_8CallBaseENS_7SDValueEbbPKNS_10BasicBlockE+0x99f)[0x7f9fe5f06c9f]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm19SelectionDAGBuilder9visitCallERKNS_8CallInstE+0x500)[0x7f9fe5eef2f0]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm19SelectionDAGBuilder5visitERKNS_11InstructionE+0x70)[0x7f9fe5ee29b0]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm16SelectionDAGISel16SelectBasicBlockENS_14ilist_iteratorINS_12ilist_detail12node_optionsINS_11InstructionELb0ELb0EvEELb0ELb1EEES6_Rb+0x149)[0x7f9fe5f75199]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm16SelectionDAGISel20SelectAllBasicBlocksERKNS_8FunctionE+0x1778)[0x7f9fe5f74c28]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm16SelectionDAGISel20runOnMachineFunctionERNS_15MachineFunctionE+0x8c7)[0x7f9fe5f727c7]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE+0x12d)[0x7f9fe5adcbed]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE+0x39f)[0x7f9fe588c9bf]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE+0x33)[0x7f9fe5893f43]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE+0x936)[0x7f9fe588d556]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZN5clang17EmitBackendOutputERNS_17DiagnosticsEngineERKNS_19HeaderSearchOptionsERKNS_14CodeGenOptionsERKNS_13TargetOptionsERKNS_11LangOptionsEN4llvm9StringRefEPNSE_6ModuleENS_13BackendActionESt10unique_ptrINSE_17raw_pwrite_streamESt14default_deleteISK_EE+0x185b)[0x7f9fecbbbbdb]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(+0x1bc37c1)[0x7f9fecf057c1]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZN5clang8ParseASTERNS_4SemaEbb+0x254)[0x7f9febd4fe44]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZN5clang13CodeGenAction13ExecuteActionEv+0xb1)[0x7f9fecf01ae1]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZN5clang14FrontendAction7ExecuteEv+0x67)[0x7f9fed8ad457]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZN5clang16CompilerInstance13ExecuteActionERNS_14FrontendActionE+0x336)[0x7f9fed8041b6]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZN5clang25ExecuteCompilerInvocationEPNS_16CompilerInstanceE+0x29a)[0x7f9fed92729a]
clang++-15(_Z8cc1_mainN4llvm8ArrayRefIPKcEES2_Pv+0x996)[0x4132c6]
clang++-15[0x41151b]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(+0x2142d52)[0x7f9fed484d52]
/lib/x86_64-linux-gnu/libLLVM-15.so.1(_ZN4llvm20CrashRecoveryContext9RunSafelyENS_12function_refIFvvEEE+0xdd)[0x7f9fe567df2d]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZNK5clang6driver10CC1Command7ExecuteEN4llvm8ArrayRefINS2_8OptionalINS2_9StringRefEEEEEPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPb+0x140)[0x7f9fed484840]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZNK5clang6driver11Compilation14ExecuteCommandERKNS0_7CommandERPS3_+0x3f3)[0x7f9fed44c153]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZNK5clang6driver11Compilation11ExecuteJobsERKNS0_7JobListERN4llvm15SmallVectorImplISt4pairIiPKNS0_7CommandEEEE+0x8a)[0x7f9fed44c3da]
/lib/x86_64-linux-gnu/libclang-cpp.so.15(_ZN5clang6driver6Driver18ExecuteCompilationERNS0_11CompilationERN4llvm15SmallVectorImplISt4pairIiPKNS0_7CommandEEEE+0x1a7)[0x7f9fed465e87]
clang++-15(main+0x2816)[0x410f86]
/lib/x86_64-linux-gnu/libc.so.6(+0x2dfd0)[0x7f9fe43d8fd0]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x7d)[0x7f9fe43d907d]
clang++-15(_start+0x25)[0x40e415]
clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
Ubuntu clang version 15.0.0-++20220222114410+3c0096a1d456-1~exp1~20220222114508.308
Target: aarch64-apple-darwin11
Thread model: posix
InstalledDir: /usr/bin
ignoring nonexistent directory "/usr/bin/../include/c++/v1"
ignoring nonexistent directory "/usr/include/c++/v1"
```


</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztWktz2zgS_jXOhUUVwYdIHXxQbDnRxklclnemdi4sEAQlTvhakJTl_Pr9GqDeTsaJM1t7WJctiw2w8aHfDTKp06fL31eysvo2r5ZW2Rdd3hTSyquVVHnHKyEv3CuLW92qr75YeWstZSUV72RqJU_W7e1vH62utnj6Z992mCTxh0lNnVedVCNrXg1E3E2M6CLrK9HldWUJXhR0NxGV5MV-BCxKnkrgabuO58Xowrm-cKbv60e5looYPe5Bp1w95lUjWmv6dk5jGpXgVVV3VpuXTZFnT3oRUYPndtWSf8E-ARr8sbzoVZuv5bCS-XygvSjZQiotRGL2JpWqFdbPxYoWsRIC36g67QWEAvA7IWocwNtiS63Vdlx1hDdTdWnGmGNduJH-OrFaKcuWgD3W6gugKmDqiieLV6k1sLfkpgERy_C2lWVSPF24k3PEO04aWqGVNYg544LUxLtBdSqXembTtytIpEp5VyusqZZ9KSvsGvsBcPHFesy7lREApAxhtJ3k2G6GWzu9LbAvSUhKLnMMqhYgId8LN2yttK4k2cu0IbmIglfLI9jvpZKkdG4t6zSpi84qchiMN7VWXde0-HLh3uB3GB3Vaomrr_hLkvWHdxP2dXXGjitptpwXUnMwE4K3GRQOwHYUTRLfHYmmGXWb7iK4hi5OlsOe-2Qk6hIXRbHe_rOhjz-hCFwa7u5NxNxxFHpEeZ69O_kWgHb1y9b3z9cfuB8sn_RL7Z-2ktpm7cFHcpmOEvGrsESMtPPXS-2AHRmC8dayyWG9FBDqvoOd7bU4doZfc-n6xqgu3Lf4tVlg2fC2pewszpVYjX2bk-XZJlQwZtltlxZ5cuFd41OY2zQRlOGSZjUy5VWXC8v-7Fo2_tVw2JuubPZyHj1Dgs4te20ZcP9M-qrrDb5tNLBYMHJGjm1Wch2Xfl3GfJ85IHjCcSZjzlI_GNvsIpzB7-nfwcTAiUaeEw1er_dK7vL8drexQZHLlgiCBc1t6jbfmKE53BlhUabXuaIh7KVvFSkwr8yMfFnVity8gitvyMGrzkpzilEUMC5c9-ge92Y0wkdeiaJPkUJuBqHi25rR5B9l-hecKI7mFdmikG27M6ojFqTvwWZZsMM52A2pV0DjiIgUorgqd1LM61Zry7J_76tUZlhFZpCcd_0wvX83e4g_L2KM6bwA4uEckFPkBikoBtt18qew85bbfcuX8uCWl8zRjiPyzt4mSTuVwK6Mf9iyxBButmy7pJi_gcsVtdCjrWWnYJlgL5mSYCoKyZXN285OZFYraSeI8BJ5ZjdPSwnGSq6qNFlwldprXvTSrniJrGGXHBInn9cE68j4y_3qtjY4qyEvwoddIIUXFuRdZgr32UOtgC3CCjDKM8vOssYWddUppCsM0AazqrZVDeFSbCs5khFJAuadwtUTHeKvwTTjBawKgoQ518LuK74GLpqAMYoowJQAaPdk_7vnJhTZeWonmP3F7p4aaYuVFF_IKu1snbfb2XmF3cnWXuVpKiuECjDCZrDJAmJR24Bji6a3jN3wcEfMJO96RDbY7Triz5GxYdjcOnpurJIkgHO6UE8NcvczI19F-Tz563PkdsXd5-ictDyQeZIfFFok5qJ-tFe8yOxdsWCjfoDZ4XYyuZJsiBwKDG2YT2EMMN9A4NqoYYD2I1eVFnUqkSuWUtldTwQKzEWaUBQltcES4Q32QUaASZLJmNBrYdW27pWQRLa-6fHmevD4GzZ49bOpQNtkBd3m7RPiUnnAlFS-j0jfnfqC9Z_lJDf0RZxz3E2lfLTPTmeJKzsIKSUXqtYkiPg7MsyMVoococRiE-KKsEAxtdMB2SK-2k_IAGRF1bRGioC3daAWzmfsh0KNKQTtZVEn2FQKHtA46ggbuDZYxM6WVS_sISkCij9yR7SK2GzAWchmCF_Z0UWJ6KY9Vfs6bmNjbSUF0Kc5R1JpIRXMXGvc-VfEs7pujghtgR1fx_G7q6v4_fS3WXz9-_T-xo2vbubxdPGRmH4j29sba2slzyV-k3hMttcp5TjlWwlvUY73DSimBzBk5AyOvsEaypZNNI6RgBpEmLzqNzbk9AMpc6GtBl9u80RxhS7h5oZiLXUW7Y9l3-9yuHC9rUGCNqKU76L7oBrEtDuthTZS7su2g_neFc33Zt-b_02nOxv-IUc7vfuIPKt0VzOgKiCWoVPJOEoka0jH06ENRL8z5E6ikRmYXquRCom1NM2l7jgl-VU1VLMVOh1NbfMOXS5XX3Dbttk1y93dzqYLSKdPyB25Bd-lPrNWHfH_4do8b9teF-e6n9xqQZfZiqP3o11QutXtfqMbWqqkAMsEVn0KUOnGsxa5bilVj95QoF7aSmihG8W0h0tsNeiMLP1zp-ol7GffWJK4_vdKdgOaDaBho7LOyEYbrlrUQWibpTEPKnvMZHeYfEVnC8PhCAUzPegNg_d9pdNcA_Fh7fBme9BxR4SPvEJ2gyWG-vgArX5BDhU-G17ccJC2_w3e06kWn0U1verNMgtZSP1tWGN30EKr-E78x8OqYuP4E7vyeJrO7j6IrzRyolV9BoBOzGqfSrThlqkDUXnLqqWQ_1T31oqvpaVtz0xCrNVegjFl3U0f3lvwmlaasyJZrXNVV2QQFtVQaOgoJsaLf318-_l2_sfsPqZbQNY-RYUifcl117gPKoO7DzFzHzD1ADGEdY3aeoR2IYr_-OQTPA-ZlQV3iH-d3uAD2f7s_tMiZkzxxxgpBIVLOcthVs7GY7RigG9hNslkEAYsQ4OLNvm1EEKob0FJs3gP9yqQK2ZrvaSUJ0v6mYAb_oIlgysU2VXffB4WnpV6wSw526PnJT-5oOaYTryM82Ou4zAl2iu5-sk5V_9nsR4KJ7wzcc-foT6ZEQ-sQZ54rArhjsPdasdhTM_zmRc67ivxsMjE-1hnnlgnnNn9B5ho8ICQKGcGHXNPjHMcCR78rHEaEXN34o7PuBLtFVxd7glBR2QHbEPPHRPtpyX1wYjKN0cgt_WjpJKGMf3tCin2oSavdmI2pqvthHmV1TMjvsn4xERlJifJz5roTnmTXcy9nr572-dFKhXzC1p_Xq3rL9QNmXhziv0c6B0pnTlveZuLt1RnD9DHzjHyjCWZ4_wtyI8FSngiugAkOcNFuLj-jc4GZknyDbCTSXYC1hkL0P4GsBNq2zuCd4CU0qFBEjgnYpMyc7O_RWyBRmJQMHaQkQ2S8AyIO0leDWR8CGSOiy3lQCXa7nKqbmNUoIpO_edEcw0tlVSIMrdCURPXpvGan-3hNnH033o2fGWz2Wwxju-HwORPTjSOlDKZ_PLtuY6hTLU5DjtsB9VvK63BY8IwOsWEYB79DZhQHX-uPnKxQqTegdD-HpxSNbRIhKfI3FCEr7bKk8Wo4GSeBneE6lRQbnqMhqcikelr0Xg3dwRgKHhfgMM7jRoR0lDy6qhxgoMZZenCW6MYD98NBu8EAhUgr0hZGsK4kEsunlCC7nHMy6YgkZxDmHjjUzGkQfDibKwrFJueRBGKwMAINJWFM_SXb00P-1k_ZTFWGl7vT1Jm1ZLqDRPGJu8lR2hb6Ab5s4kNw5BPTdA7WR1TPZPfjonsFotvSUYkk0VHGe9eZrO7T4vZTgKax4Bwamxj0TGnr_J_9zJuOopcMwCmsr15VIhn8VC8Y5o_HKwgpBWyk_PFh3g2mHgUHFeRIsFP-uIq8lyohm0ivFAcl2QicwKivV5d0R11otPFg1aSv5AlR8o15VXgHy2apH4mff9X2Ig36NVIn3mzjRR9JwdlmH4lOdsy4_JXbJn5N-gRu53yw2H1Yd3xcdhMI576wYvD5vfWHV_po1Kq11r9JsTpxk31doxuGzLGJ6gcnyW_wl_dYMCwB7ceHrSQ18TnqA0id3Jc5aYTNyTaN5oYWjESgsX0kMe4ZzRVij_BO-d3HwTyvBvfrYfKbrdZ9D2uGH-_M2IBe62Pucx308A93pAf-UR7XVh2nSs6DruX-pnD0xWpdtNNqEnnmSyedDByt8cnsYI0btaof4yQ0_S8LXVfnDSf1foHo_ZxqnIAYs7VFYOC6U2NnR-cqucTVBOZ0MoLfXUQWekHdtKFcSw2G8aYm1DNRBGTug2BkMnEiqu4Uzzv2rmYLTg-cNO2qHPOxB75L65ZX7JHdrV_RMH8vbnTpnX2cOJwd3m38GLjcpl3AswXLHhxmv5hYGwA9o86abeo8P0W5TMCgykzgkWJzuM3faBOyX2-6PyG52qe3x1vY2tAET_bg5e-uBX9TtgYtjC-NjuJjoII30YzdMnsmPST-2D8JCr740BG3zwycSMKM8a1I3YQTZwsennQpF2PdyEizdJjS_W9NCLaj7KLY7qK9fOJeIczTE-ZT5ww_U441fcPiXq3QUf6FBePbto-W9idkNMLYzrD0BsxJObtcwb9SpZ-kKZfbAv122R9K-mpaVfTa2BWvssOu3ci_v8-yn_hfZTTF5T055v0EmbiTfibLu8KeTm_mpn3GM0z2WFhe52rrufF8MplndHReM7TXOyP7bXmj957fNOr4vLnnwoFvuMGb1aX7jhyvHDiuL5IUz_xJyz10jRjicvDsTf23hQ8kUV7CfPFXiv5aGkWtO_g-k1-OViExyLfd91RJLjjpWEUOTLkaSAvYPElvc9JOOgtvjfqUkNK-mWLQTp8aPeDaI3oZQ6plwN_3nerGnfIZpUXdd_WzUq-0QAu9Qb-A2LLrzc">