This reverts commit b3cffde5559c4fa97625512d7ec41a674be26076 due to a regression and performance concerns.