updated for dense