correct checks and asserts