defects. These goals make our scheme simple, intuitive to a
developer, practical rather than theoretical and comprehensive,
amenable to automatic identification of errors with static analysis
tools, as well as adaptable with respect to changes in trends that