The first two rules operate differently from the others, in that they do not operate on a per-object basis, rather they operate on an entire pseudo-flattened layer. As such, they can be computationally and memory intensive. These ``global'' tests are performed before the others.