further implementing checker