Trying to implement check-state keeping system