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

    <tr>
        <th>Summary</th>
        <td>
            Clang crashes without a large enough `ferror-limit` argument
        </td>
    </tr>

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

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

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

<pre>
    Clang's test `clang/test/FixIt/fixit.cpp` is a reproducer.

```
$ clang++ clang/test/FixIt/fixit.cpp
clang/test/FixIt/fixit.cpp:20:28: error: duplicate 'virtual' in base specifier
struct C2 : virtual public virtual C1 { }; // expected-error{{duplicate}}
 ^~~~~~~~
clang/test/FixIt/fixit.cpp:22:1: error: 'virtual' can only be specified inside the class definition
virtual void C1::f() { } // expected-error{{'virtual' can only be specified inside the class definition}}
^~~~~~~~
clang/test/FixIt/fixit.cpp:24:1: error: 'static' can only be specified inside the class definition
static void C1::g() { } // expected-error{{'static' can only be specified inside the class definition}}
^~~~~~~
clang/test/FixIt/fixit.cpp:36:8: error: copy constructor must pass its first argument by reference
  C3(C3, int i = 0); // expected-error{{copy constructor must pass its first argument by reference}}
       ^
        const &
clang/test/FixIt/fixit.cpp:39:8: error: template specialization requires 'template<>'
struct CT<0> { }; // expected-error{{'template<>'}}
 ^ ~~~
template<> 
clang/test/FixIt/fixit.cpp:41:12: error: use of 'CT' with tag type that does not match previous declaration
template<> union CT<1> { }; // expected-error{{tag type}}
           ^~~~~
 struct
clang/test/FixIt/fixit.cpp:26:28: note: previous use is here
template<int Value> struct CT { template<typename> struct Inner; }; // expected-note{{previous use is here}}
 ^
clang/test/FixIt/fixit.cpp:43:15: error: template specialization requires 'template<>'
struct CT<2>::Inner<int> { }; // expected-error 2{{'template<>'}}
       ~~~~~  ^
template<> 
clang/test/FixIt/fixit.cpp:43:15: error: template specialization requires 'template<>'
struct CT<2>::Inner<int> { }; // expected-error 2{{'template<>'}}
              ^    ~~~~~
template<> 
clang/test/FixIt/fixit.cpp:53:6: error: ISO C++11 does not allow access declarations; use using declarations instead
  A::foo; // expected-error{{ISO C++11 does not allow access declarations}}
     ^
 using 
clang/test/FixIt/fixit.cpp:60:6: error: 'f' is missing exception specification 'throw()'
void f(); // expected-error{{missing exception specification}}
     ^
 throw()
clang/test/FixIt/fixit.cpp:59:6: note: previous declaration is here
void f() throw(); // expected-note{{previous}}
 ^
clang/test/FixIt/fixit.cpp:66:7: error: use of undeclared identifier 'getNumComponenets'; did you mean 'getNumComponents'?
 getNumComponenets(); // expected-error{{use of undeclared identifier 'getNumComponenets'; did you mean 'getNumComponents'?}}
 ^~~~~~~~~~~~~~~~~
 getNumComponents
clang/test/FixIt/fixit.cpp:64:10: note: 'getNumComponents' declared here
    bool getNumComponents() const; // expected-note{{declared here}}
 ^
clang/test/FixIt/fixit.cpp:75:11: error: missing ',' between base or member initializers
    : x(1) y(2) { // expected-error{{missing ',' between base or member initializers}}
          ^
          , 
clang/test/FixIt/fixit.cpp:82:10: error: extra qualification on member 'foo'
  int C::foo(); // expected-error {{extra qualification}}
 ~~~^
clang/test/FixIt/fixit.cpp:87:8: error: invalid '&=' at end of declaration; did you mean '='?
int x1 &= 0; // expected-error {{invalid '&=' at end of declaration; did you mean '='?}}
       ^~
 =
clang/test/FixIt/fixit.cpp:88:8: error: invalid '*=' at end of declaration; did you mean '='?
int x2 *= 0; // expected-error {{invalid '*=' at end of declaration; did you mean '='?}}
       ^~
 =
clang/test/FixIt/fixit.cpp:89:8: error: invalid '+=' at end of declaration; did you mean '='?
int x3 += 0; // expected-error {{invalid '+=' at end of declaration; did you mean '='?}}
       ^~
 =
clang/test/FixIt/fixit.cpp:90:8: error: invalid '-=' at end of declaration; did you mean '='?
int x4 -= 0; // expected-error {{invalid '-=' at end of declaration; did you mean '='?}}
       ^~
 =
clang/test/FixIt/fixit.cpp:91:8: error: invalid '!=' at end of declaration; did you mean '='?
int x5 != 0; // expected-error {{invalid '!=' at end of declaration; did you mean '='?}}
       ^~
 =
clang/test/FixIt/fixit.cpp:92:8: error: invalid '/=' at end of declaration; did you mean '='?
int x6 /= 0; // expected-error {{invalid '/=' at end of declaration; did you mean '='?}}
       ^~
 =
fatal error: too many errors emitted, stopping now [-ferror-limit=]
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: /home/vinh/github/llvm-project/build/bin/clang-16 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all --mrelax-relocations -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name fixit.cpp -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -mllvm -treat-scalable-fixed-error-as-warning -debugger-tuning=gdb -fcoverage-compilation-dir=/home/vinh/github/llvm-project -resource-dir /home/vinh/github/llvm-project/build/lib/clang/16 -internal-isystem /usr/lib64/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../include/c++/12.2.0 -internal-isystem /usr/lib64/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../include/c++/12.2.0/x86_64-pc-linux-gnu -internal-isystem /usr/lib64/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../include/c++/12.2.0/backward -internal-isystem /home/vinh/github/llvm-project/build/lib/clang/16/include -internal-isystem /usr/local/include -internal-isystem /usr/lib64/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../x86_64-pc-linux-gnu/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdeprecated-macro -fdebug-compilation-dir=/home/vinh/github/llvm-project -ferror-limit 19 -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/fixit-3659b7.o -x c++ clang/test/FixIt/fixit.cpp
1.      clang/test/FixIt/fixit.cpp:355:21: current parser token '('
2.      clang/test/FixIt/fixit.cpp:320:1: parsing namespace 'dtor_fixit'
3.      clang/test/FixIt/fixit.cpp:337:32: parsing function body 'dtor_fixit::f'
4.      clang/test/FixIt/fixit.cpp:337:32: in compound statement ('{}')
 #0 0x00007fc7a5522031 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/vinh/github/llvm-project/build/bin/../lib/libLLVMSupport.so.16git+0x221031)
 #1 0x00007fc7a551fe1e llvm::sys::RunSignalHandlers() (/home/vinh/github/llvm-project/build/bin/../lib/libLLVMSupport.so.16git+0x21ee1e)
 #2 0x00007fc7a5522566 SignalHandler(int) Signals.cpp:0:0
 #3 0x00007fc7a4e04a00 (/usr/lib/libc.so.6+0x38a00)
 #4 0x00007fc7a2d095ce clang::Sema::getDestructorName(clang::SourceLocation, clang::IdentifierInfo&, clang::SourceLocation, clang::Scope*, clang::CXXScopeSpec&, clang::OpaquePtr<clang::QualType>, bool) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangSema.so.16git+0x70e5ce)
 #5 0x00007fc7a320eb43 clang::Parser::ParseUnqualifiedId(clang::CXXScopeSpec&, clang::OpaquePtr<clang::QualType>, bool, bool, bool, bool, bool, clang::SourceLocation*, clang::UnqualifiedId&) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0xaab43)
 #6 0x00007fc7a31fde42 clang::Parser::ParsePostfixExpressionSuffix(clang::ActionResult<clang::Expr*, true>) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x99e42)
 #7 0x00007fc7a31ff2cc clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, bool&, clang::Parser::TypeCastState, bool, bool*) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x9b2cc)
 #8 0x00007fc7a31fb336 clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x97336)
 #9 0x00007fc7a31fb239 clang::Parser::ParseExpression(clang::Parser::TypeCastState) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x97239)
#10 0x00007fc7a325eb16 clang::Parser::ParseExprStatement(clang::Parser::ParsedStmtContext) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0xfab16)
#11 0x00007fc7a325cfed clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*, clang::ParsedAttributes&, clang::ParsedAttributes&) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0xf8fed)
#12 0x00007fc7a325c9a7 clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0xf89a7)
#13 0x00007fc7a3265280 clang::Parser::ParseCompoundStatementBody(bool) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x101280)
#14 0x00007fc7a32662e5 clang::Parser::ParseFunctionStatementBody(clang::Decl*, clang::Parser::ParseScope&) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x1022e5)
#15 0x00007fc7a328026c clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x11c26c)
#16 0x00007fc7a31ca106 clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::ParsedAttributes&, clang::SourceLocation*, clang::Parser::ForRangeInit*) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x66106)
#17 0x00007fc7a327f29b clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec&, clang::AccessSpecifier) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x11b29b)
#18 0x00007fc7a327ec9c clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*, clang::AccessSpecifier) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x11ac9c)
#19 0x00007fc7a327df16 clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x119f16)
#20 0x00007fc7a31e4e99 clang::Parser::ParseInnerNamespace(llvm::SmallVector<clang::Parser::InnerNamespaceInfo, 4u> const&, unsigned int, clang::SourceLocation&, clang::ParsedAttributes&, clang::BalancedDelimiterTracker&) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x80e99)
#21 0x00007fc7a31e479a clang::Parser::ParseNamespace(clang::DeclaratorContext, clang::SourceLocation&, clang::SourceLocation) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x8079a)
#22 0x00007fc7a31c82aa clang::Parser::ParseDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, clang::SourceLocation*) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x642aa)
#23 0x00007fc7a327d6b4 clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x1196b4)
#24 0x00007fc7a327c03f clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x11803f)
#25 0x00007fc7a31b4c6e clang::ParseAST(clang::Sema&, bool, bool) (/home/vinh/github/llvm-project/build/bin/../lib/../lib/libclangParse.so.16git+0x50c6e)
#26 0x00007fc7a865fa15 clang::CodeGenAction::ExecuteAction() (/home/vinh/github/llvm-project/build/bin/../lib/libclangCodeGen.so.16git+0x535a15)
#27 0x00007fc7a74c0b27 clang::FrontendAction::Execute() (/home/vinh/github/llvm-project/build/bin/../lib/libclangFrontend.so.16git+0x187b27)
#28 0x00007fc7a7423316 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/vinh/github/llvm-project/build/bin/../lib/libclangFrontend.so.16git+0xea316)
#29 0x00007fc7a87d93cb clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/vinh/github/llvm-project/build/bin/../lib/libclangFrontendTool.so.16git+0x53cb)
#30 0x00005570b6fb55e8 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/vinh/github/llvm-project/build/bin/clang-16+0x155e8)
#31 0x00005570b6fb2c0a ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&) driver.cpp:0:0
#32 0x00005570b6fb28d1 clang_main(int, char**) (/home/vinh/github/llvm-project/build/bin/clang-16+0x128d1)
#33 0x00007fc7a4def290 (/usr/lib/libc.so.6+0x23290)
#34 0x00007fc7a4def34a __libc_start_main (/usr/lib/libc.so.6+0x2334a)
#35 0x00005570b6faefa5 _start /build/glibc/src/glibc/csu/../sysdeps/x86_64/start.S:117:0
clang-16: error: unable to execute command: Segmentation fault (core dumped)
clang-16: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 16.0.0
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/vinh/github/llvm-project/build/bin
```

With a large enough `ferror-limit` argument, clang prints the diagnostics and exits normally.

godbolt link here: https://godbolt.org/z/aPrEhsz7x
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsXF9z4riy_zTOi8qULYMxD3kgMOxJ3dnduZPcPectJctt0Blb8kpyQvbhfvZbko2xDENIwmT2Vp3UDAEjd_fv161W649DlGJrDnDtTW68yfKK1Hoj5PVjyDeh2tR8LZ-vUpE9Xy8KwtceniqkQWnkxQFtrqzMZw-vVmx7a37nbMv0iFaVFweIKUSQhEqKrKYgR16w9IJ5-xoH7b_mIx6jVuSNh2_Qi-LtXS-2iuY4MC-JF80RSCmkeZPVVcEo0YA8PH1kUtek8PAUMY5SogCpCijLGchGi9KyphotMDI3t-1RVacFo93HRYi86Q3ypksvukEeXnl4hWBbAdWQ-Y3q6Y03vemUm6bTZaMCeZNP_9v8nI8Me9E8dIC5cCjhSPDiGaV7SBliXLEMkN6AIVkplEHOONNM8Eb1DtGjYBlaGAVeNM89nHh4tsN4CuB7jejR8hZWxsdYUZpoRt9BSiPA5WT9Kk7eY8IxSs5mJIq9aO52ACqqZ0QFbyJbSFTWSqPKaGVaoZxJpRGR67oErlH6jCTkIIFTaMMVLSIPJ-ZlgRjXiCEvWqLAw7MXov8dmvvdpfnxJp-cz41g5OH4fHJmB-RoKKvCJAfrG1Kwv4hxApLwZ80kKBNPuzZetPCiTx6eupni3osWgRd9OjMlHBU4yA6oc7nbFJ0NdWzCNsQO1loBErlBtLg3ofnE9AZpskb6uTKxSDTKBCjEhUYl0XSDKgmPTNQmPGlBJNl3kYFdNTekWSrC86nY6T7i7dbj-9hHDd3np4a4Gwq4MHbO92gMEUyhDUg4QGMC_A9S1GBgdC62gHqtjNWclP1Gt5yDtICP47ZWWNhH7RhEwPmOjoyjJz8iqLH5wia_Fpsh5xzvInxmqDc_NsP1OvibY_7_PxX7yO-IeR8nE8NJ7FBye_c7WjSVVxjuezwpCvGECKWgnP6uDDYTqbVifO18Y4YxDSTbQZi35YMQL3T8V5swZGo_GDRWnc1HHBzw4eFpbgtChUqmrDjYUqhsnLRDNm2ixnhxI8VTUwt0kWILhbZoegH5CxpOAO0rPtv7sx3agxzYo9fNhX0wjtKzctqb81hszJweG69q3thqyqYMuLbFunHFGvRvdbkQZSU4cNDKOCS6QRnL0LOoUQmEH7Zrm61aG48IOcONP9i045OF7ueo6Vqdz7Utm4N-XBy3BXXw9vFhojIVojhU34SMLctOB4sr9a0RMzWZPnSr_133MjzihUGQgn4CaOd6pgSFMgWJbLFthgOQao_LiNh6OAkNkGcPJ7gr-V_u0q_TeTT3H9S4CJmi-2xKEtw5tqMEtloS9GdNin0eE3xnk0l-QnSZDNkCf7HP46c7A2oYOKLCwWdC9hWOTaYHZTrjj6RgWcNx7EVLQzPRCHhm-mG_PD3Sy5r2XZ83ELchagSh4CV0l9J9dEqz68um2dn8JKf5mV-CH4waQa_k5x26L8fP4TTPsfHmEvxEqBH0Sn7eofti_MyCU_z4l2BnjPzXcvMOvZdjJjwdOeEluJmgRtArI-cdui_HDz7Nz-oS_MSoEfRKft6h-zx-cqJJ0ZtZCoFKwp-bKwpBybSGzIzXSouqMiUBF0_Im9z4uW3jF6xk2sibtCK_fP40v_uEVJ2WTCOC0nqNJFRCaqQF2mhdKTMUWwrWTG_qdERF6eFVUTzufvmVFP8GalzFlKpBGboIzxDjtKh3i4ySqA1KCf2mJaFgjKzsWr2ZakGGlKhlc9ncSZQSlBENGZI1R4pKVul2Qf9OE_oNZXVp4qG5FIy8YPZFirUkZbecp5qqcrURJXh49cj4pgNxaHlasyIzvxn38MpGoh_GyKc0RL6WrCoAbZP4IR77Nf_GxRP3C8brrb_mNfIN9b5I_438UkJBtj4pCuTvPkgoBG0nrH7GFEkL8HMJgHxaAJE-UdpPIRcSfMOQiZ6unbXzEWRT2ZvLlMjMfyRFDT4nJSjkl4RxP2dFcwF1HaYxp9XtlyKDAlWMIr9i1C_gEQqEmw9M-RUD5Je5JCX4lWBcg_SipQWSl0RvTOBzgfw8r3wquHGjCSXBkZ9z4UtR84zxtW_aIr_srbr6pGBEGUPzmj8xnvnaQFNetMTI10SuQfu0qg3BfjxGvq452Atr4CCNwaWhwTgCiPYVJUXDIdvuOqRPlP9EJDdB72eQ1us1SCOI8bUXLddZivycikeQZA0-FWXFioaWjEnbEc8JFORLaCLV3Pb66CpYuosuD69MfFmeOSl8pp6VhtLIrJVs2sZjI5NSD6_a2KvoPuyMBDzCo8DDq9Ho8KXtfkZhs9LR3fCT1B6X9_OMMX3ticjsuAXv8-xe90l8gpLizKbvpeL4LYeaYWve0L4FZzVqzOya5hlUEqjJ4X5JqBT2Ulqv39H5-qMYCmfIz9e8piY7KjvELscjPApNR99u_W6By-Qd5wPJMqnYGvnLh4dfFouHf8z_-PSw_Of86wo_LFa3D_O7X71oGSJfGFy6rHZFiB_Fk1k6HQnkbxF91d5xaIaoc3aIJhMvmmO7qEBrKYFrVBGpQCItvkFTN5g5cTtfxufKtTvTVqwRZ2sDM3hUhNp96UwL-WBv6ERH54qOplZBX3Zec2on-qnIngfydzu8rZrxG9QwjkwUmSEHKU002P27lhdTmdnCardOiTwcBSjYBkEQTHM6JZMJxkEUIlvEWHPUs2refJGMa1ti3Dd1SrJvJMnTg1BmDCrNPLzZjLTrM0bxmwoN2zOb3FGw9PPnP369qytTfo2UGIXx2rjjJthiHAZR6AAKXUBhDiEcA_S15ndszUnxD8KzAuRulezH2xwChODYjIdOmMQxcqzzcNJy2lxWrfMD-78TFPUFjSEYkyBoEXXZsnmlxqjYGhQlJAgce8Z9MTgLZhMKbX-23N1BSdrNd9BL2NUzvxFDWtJvaGuCz22lZSKj9-VttzB7y3PRRs65N99RUYGH54PLi3_9y35zVwE9lPh7Rf6s4YuWXrToXf7vmhT3zxXYzZ-FXUO9WCS4QWGVGvbckJgGMKFuSEz6LohwAOk46kP5YnNf7_3_8HaZD7LbzPXC5Uh5-fcJ_w19NbA4_pGcW4pc0glJx5HDeexwHuYZjPFJzr8IpXO2_bStJCgz1N7Vec62Lvtzm_C_gqoL7VJs7mtp0bJumP5QCmYzGGOHgumAghxTepKCBVF6j99F3m9s2tnP_8V4dhg4w6Ds32qi0Nx-Zwa0w1vnH01aik2p2SMtGZCWRlF8krS5PfBnxuZzqBvg_1iw0yiKHbCzIVhz6RTYvz9EHM06iKaCCNzcO4E0PO1PA_FuV259H6V9n93pUi8E17C9XI10HtKcpGHsIA0HSGkO2UmkHcrf5XK_iDfPNci51pKltQblFId3JSmKP8DUB272Mzy02S_CtU1-p7LAEfJeNdo09_eNPKpt2OJjHZTkkDkOwkMHzcj0DQ76u3jkg9mckanDZuSyGU9wEpwe3drJVMfqjciePZz86BLxCJowCHESOHDGAzgxhslJOKt29jmE07vHBM13Oo8TZk35_dEdJAwwholDwqBQTgIcn65YdiQs9wd7DzI24-td7xHynF5w354CMzOZ9qDFybs-Ew37fPOZKf3x_SMMKY6pQ-agAqYkDE6PfIalX6Soq-9yeHzSsWf3eO54OVufle9bU1dCfiV8Dbec_QSe4zgM3GHXrbLxNMez9EWaf5e9yL1tFxyPFBuvH-MOWpx03dyeArzrHs746KBN8Sx12EwGbAKdnc4AvYHRIfW76eDinA6D9WdzSujMTQSzAadZ_mIJ3ASkW3R8AI8fzNQsd0to7E4WQhjD7PR8yJ5T_m23xnxeZdYX4t7fLJ0t0NjUa87IU3P7VFnWLMaezJ2v98QNKQinkC3BbjqAvJeEfgP58SVBEsDMmb7hcOiR6Yyc9EjfGa8Yo15icfj9B9MynRGHFjwY2xNMTtPy3a78XmIukQp-9uQiHmPi8hsNU2acjv-TMk3KjNOxw9Rg3jKlQZSfZOpeVJ_hEYpmcpK8vHjdlaVfIT86j93vYPwqsrqA27IScrf89OGzmjAJotyhyJ3VhOmYxnBA0fzufrDdYlA1WN010g-FMwloDA4aZ1qRxJOchM5EdSEy-AV4s1K-WxsHWmtoL112a85qbnUOTI8mJHTml9ip1adjGqTYWYFZSZMDeXbE-B9h9k7dIIKSaYqdtQ6cuHbjKHIruIU9bQDylitthvLjtH8f6AV7yWlsQKJByeUUp8k0m0XUmT61IPYIH7thIjnFwAVz4xDSvRDFMNSoM43pduInk2mQxnk6mUCCKA0fSsLcBby5lOTZZrYF3RC5q_rm7Vadew0v7OPS7wZn4fhhs2UcGuMc68OB9ZgGBO0csQjvbRo6XurellVxFIqNsEyyR5CH291GKR4qTbKwCYQdabvad0OanbaLkmDUOSS42-8Z5Hj28va7CWhnXc_dfjdiojFBDw_mtgelidQW3RmCo7FTonSbyi1fBHIyQY1I1MO6NnI8vFKS9j5RVe9iXD2rDCrVHZ4yl4yQ0Z198Ge691JHmPP4GCdpAUgLBE2AICrKkvDMfHkH6xK4bh6HyUld2PMrVEiwZ1t76-NHZduLKG-73U4wygkrIENZbdUqe4bCyK0VIP_RXgNArJcp-kpQe5IKhfEoGLXQ7u35TPtg0nfOv7btNhJIhuwpU3sUSCi2bb6ymacoIFsy-eZTuY13B3_Hw77-k-kNIqgwhiLgol5vkBcHzpnnOOgOBnclEqok41rZ88kZI2sulGZU2RPIsGVaIS6k6b_Pzt8SWYssFYVGBePfmgfIovnwqHTTZCTk2sOrvzy8Il_kp436a7q9yq6jbBbNyBVch_E0mCZhgGdXm-s4yfIkT6MgnoVZMs3ieIpnCQlgQinOcrhi1zjAOMRhGE4nAY5HlEbjOIFwks0gH6cTbxxASVgxMiwa3Vf2PPb1ZDYex1cFSaFQ9m-vYMzhCdkvPYy9yfJKXlvm03qtvHFQMKXVXopmuoDmj7I057hB2Uf3Ra1fQftVLYvrt58otyD-LwAA___t76QM">