Trying to reorder for better exposition.