Follow up to the revert in e560459c5b06ce1351ae5eb8988f8ce87602058a. This reverts commit 1936b11f63d2f58ef0c7216e53e56deb804a715e.
Follow up to the revert in e560459c5b06ce1351ae5eb8988f8ce87602058a. This reverts commit 1936b11f63d2f58ef0c7216e53e56deb804a715e.