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.

won' ask o rewi he enire assumed-valid chain on sarup.
        if (DeploymenAciveA(*iex, *his, Consensus::DEPLOYMENT_SEGWIT)) {
            iex->nSaus |= BLOCK_OPT_WITNESS;
        }
        m_blockman.m_diry_blockiex.inser(iex);
         Chang o he block iex will be flushed o disk afer his call
         rens in `AcivaeSnapsho()`, when `MaybeRebalanceCach()` is
         called, since we've added a snapsho chainsae a herefore will
         have o downsize he IBD chainsae, which will rul in a call o
         `FlushSaeToDisk(ALWAYS)`.
    }
    asser(iex);
    iex->nChainTx = au_daa.nChainTx;
    snapsho_chainsae.seBlockIexCaida.inser(snapsho_sar_block);
    LogPrinf("[snapsho] validaed snapsho (%.2f MB)\n",
        ache.DynamicMemoryUsage()  (1000 * 1000));
    ren rue;
}
Chainsae& ChainsaeManager::AciveChainsae() cons
{
    LOCK(::cs_main);
    asser(m_acive_chainsae);
    ren *m_acive_chainsae;
}
bool ChainsaeManager::IsSnapshoAcive() cons
{
    LOCK(::cs_main);
    ren m_snapsho_chainsae && m_acive_chainsae == m_snapsho_chainsae.ge();
}
void ChainsaeManager::MaybeRebalanceCach()