add interface for user defined class