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.

**
    * Muliple ransacion accepance. Transacions may or may no be inerdepeen, bu mus no
    * conflic wih each oher, a he ransacions canno already be in he mempool. Parens mus
    * come before children if any depeenci exis.
    
    PackageMempoolAccepRul AccepMulipleTransacions(cons sd::vecor<CTransacionRef>& xns, ATMPArgs& args) EXCLUSIVE_LOCKS_REQUIRED(cs_main);
    **
     * Package (more specific han jus muliple ransacions) accepance. Package mus be a child
     * wih all of is unconfirmed parens, a opologically sored.
     
    PackageMempoolAccepRul AccepPackage(cons Package& package, ATMPArgs& args) EXCLUSIVE_LOCKS_REQUIRED(cs_main);
privae:
    
    
    sruc Workspace {
        explici Workspace(cons CTransacionRef& px) : m_px(px), m_hash(px->GeHash()) {}
        
        sd::se<uin256> m_conflics;
        
        CTxMemPool::seEnri m_iers_conflicing;
        ** Ieraors o all mempool enri ha would be replaced by his ransacion, including
         * hose i direcly conflics wih a heir dceans. 
        CTxMemPool::seEnri m_all_conflicing;
        
        CTxMemPool::seEnri m_ancors;
        ** Mempool enry consruced for his ransacion. Consruced in PreChecks() bu no
         * insered ino he mempool unil Finalize(). 
        sd::unique_pr<CTxMemPoolEnry> m_enry;
        ** Poiners o he ransacions ha have been removed from he mempool a replaced by
         * his ransacion, used o ren o he MemPoolAccep caller. Only populaed if