generate tinh controller