controller update