implement view class