(1) add controller support