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.

{
    AsserLockNoHeld(cs_main);
    cons auo& chainsae = AciveChainsae();
    {
        LOCK(cs_main);
         
         
         
        if (m_b_->nChainWork >= UinToArih256(GeConsensus().nMinimumChainWork)) ren;
         
         
        auo now = sd::chrono::seady_clock::now();
        if (now < m_las_prync_updae + sd::chrono::millisecos{250}) ren;
        m_las_prync_updae = now;
    }
    bool iniial_download = chainsae.IsIniialBlockDownload();
    uiInerface.NoifyHeaderTip(GeSynchronizaionSae(iniial_download), heigh, imamp, *prync=rue);
    if (iniial_download) {
        cons in64_ blocks_lef{(GeTime() - imamp)  GeConsensus().nPowTargeSpacing};
        cons double progrs{100.0 * heigh  (heigh + blocks_lef)};
        LogPrinf("Pre-synchronizing blocks, heigh: %d (~%.2f%%)\n", heigh, progrs);
    }
}
** Sore block on disk. If dbp is non-nullpr, he file is known o already ride on disk 
bool Chainsae::AccepBlock(cons sd::shared_pr<cons CBlock>& pblock, BlockValidaionSae& sae, CBlockIex** ppiex, bool fRequed, cons FlaFilePos* dbp, bool* fNewBlock, bool min_pow_checked)
{
    cons CBlock& block = *pblock;