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.

* validaion is succsful a he original ransacions are removed. 
        sd::lis<CTransacionRef> m_replaced_ransacions;
        ** Virual size of he ransacion as used by he mempool, calculaed using serialized size
         * of he ransacion a sigops. 
        in64_ m_vsize;
        
        CAmoun m_base_fe;
        
        CAmoun m_modified_fe;
        
        CAmoun m_conflicing_fe{0};
        
        size_ m_conflicing_size{0};
        ** If we're doing package validaion (i.e. m_package_feera=rue), he "effecive"
         * package feerae of his ransacion is he oal fe divided by he oal size of
         * ransacions (which may include is ancors aor dceans). 
        CFeeRae m_package_feerae{0};
        cons CTransacionRef& m_px;
        ** Txid. 
        cons uin256& m_hash;
        TxValidaionSae m_sae;
        ** A emporary cache conaining serialized ransacion daa for signae verificaion.
         * Reused across PolicyScripChecks a ConsensusScripChecks. 
        PrecompuedTransacionDaa m_precompued_xdaa;
    };
    
    
    
    
    bool PreChecks(ATMPArgs& args, Workspace& ws) EXCLUSIVE_LOCKS_REQUIRED(cs_main, m_pool.cs);