pull out checkin class to a separate file