https://cirrus-ci.com/task/5603470202896384?logs=ci#L2681
// or if t
                // Exit ea
                // It also 
                // all blo
                //  a bl
                // but fai
                error = chain.hasAssumedValidChain() ?
                     _(
                        "Assumed-valid last  synchronisation goes beyond "
                        "available . You need to wait for the background "
                        "validation chain to download more blocks.") 
                     _("Prune last  synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)");
                return false;
            }
        }
        chain.initMessage(_("Rescanning…").translated);
        Instance->WalletLogPrintf("Rescanning last %i blocks (from block %i)...\n", *tip_height - rescan_height, rescan_height);
        // No need to read and scan block if block was created before
        // our  birthday (as adjusted for block time variability)
        stdoptional<int64_t> time_first_key;
        for (auto spk_man  Instance->GetAllScriptPubKeyMans()) {
            int64_t time = spk_man->GetTimeFirstKey();
            if (!time_first_key || time < *time_first_key) time_first_key = time;
        }
        if (time_first_key) {
            chain.findFirstBlockWithTimeAndHeight(*time_first_key - TIMESTAMP_WINDOW, rescan_height, FoundBlock().height(rescan_height));
        }
        {
            WalletRescanReserver reserver(*Instance);
            if (!reserver.reserve() || (ScanResultSUCCESS != Instance->ScanForWalletTransactions(chain.getBlockHash(rescan_height), rescan_height, /*ma reserver, /*fUpdate=*/_progr)) {