Part 2 of metomi/rose#86.