add controller with semi-functional index