Revert and improve
Better support