Why do we need to "capture programmatically changed selects"?