Complete change; now using reactive style.