start to implement custom controller