#10982 started disconnecting service bits 6 and 8 until aug 1, 2018, the code to do so should be removed on or after that date.
#if defined(NDEBUG)
# error "Bitcoin cannot be compiled without assertions."
#endif
std::atomic<int64_t> nTimeBestReceived(0); 
bool g_enable_bip61 = DEFAULT_ENABLE_BIP61;
struct IteratorComparator
{
    template<typename I>
    bool operator()(const I& a, const I& b) const
    {
        return &(*a) < &(*b);
    }
};
struct COrphanTx {
    
    CTransactionRef tx;
    NodeId fromPeer;
    int64_t nTimeExpire;
};
static CCriticalSection g_cs_orphans;
std::map<uint256, COrphanTx> mapOrphanTransactions GUARDED_BY(g_cs_orphans);
std::map<COutPoint, std::set<std::map<uint256, COrphanTx>::iterator, IteratorComparator>> mapOrphanTransactionsByPrev GUARDED_BY(g_cs_orphans);
void EraseOrphansFor(NodeId peer);
static size_t vExtraTxnForCompactIt GUARDED_BY(g_cs_orphans) = 0;
static std::vector<std::pair<uint256, CTransactionRef>> vExtraTxnForCompact GUARDED_BY(g_cs_orphans);
static const uint64_t RANDOMIZER_ID_ADDRESS_RELAY = 0x3cac0035b5866b90ULL; 
static const int STALE_RELAY_AGE_LIMIT = 30 * 24 * 60 * 60;
static const int HISTORICAL_BLOCK_AGE = 7 * 24 * 60 * 60;
namespace {