Implement interface