Breaks on 3.8, rolling back to avoid breakage while fixing. This reverts commit 9dee7c4449.
9dee7c4449