smaller footprint on Controller