first try to implemented class