catching think errors