public void Despawn(Shopper s, bool removeShopper = true)
    {
        if (s.IsInfectious())
        {
            m_NumInfectious--;
        }

        // Update running totals of healthy and exposed.
        if (s.IsHealthy())
        {
            m_FinalHealthy++;
            NumHealthyChanged?.Invoke(m_FinalHealthy);
        }

        if (s.IsExposed())
        {
            m_FinalExposed++;
            NumContagiousChanged?.Invoke(m_FinalExposed);
        }

        if (removeShopper)
        {
            m_AllShoppers.Remove(s);
        }
        Destroy(s.gameObject);
    }