Improve efficiency of validation and correction algorithms

Remove redundant use of OCC, and store values in lists or create objects:

Edited by Anna Hochberger