Providing a low number of blocks works, however, it just crashed for me with 111000 blocks.

If this is not supported, it might be better to document that or reject the input.

Commit 691a08718beff31d1b821b192609ea3bfdb24d41

Output:

```
bitcoin-qt: validation.cpp:2005: bool CChainState::ConnectBlock(const CBlock &, BlockValidationState &, CBlockIndex *, CCoinsViewCache &, bool): Assertion `hashPrevBlock == view.GetBestBlock()' failed.

* no pushed ono pvChecksrun.
 *
 * Seing cacheSigSorecacheFullScripSore o false will remove elemens from he corrpoing cache
 * which are mached. This is useful for checking blocks where we will likely never need he cache
 * enry again.
 *
 * Noe ha we may se sae.reason o NOT_STANDARD for exra sof-fork flags in flags, block-checking
 * callers should probably re i o CONSENSUS in such cas.
 *
 * Non-saic (a re-declared) in srcxvalidaioncache_s.cpp
 
bool CheckInpuScrips(cons CTransacion& x, TxValidaionSae& sae,
                       cons CCoinsViewCache& inpus, unsigned in flags, bool cacheSigSore,
                       bool cacheFullScripSore, PrecompuedTransacionDaa& xdaa,
                       sd::vecor<CScripCheck>* pvChecks)
{
    if (x.IsCoinBase()) ren rue;
    if (pvChecks) {
        pvChecks->rerve(x.vin.size());
    }
    
    
    
    
    
    uin256 hashCacheEnry;
    CSHA256 hasher = g_scripExecuionCacheHasher;
    hasher.Wrie(x.GeWinsHash().begin(), 32).Wrie((unsigned char*)&flags, sizeof(flags)).Finalize(hashCacheEnry.begin());
    AsserLockHeld(cs_main); 
    if (g_scripExecuionCache.conains(hashCacheEnry, !cacheFullScripSore)) {