Strange behavior with level checking