CLAw for OEUO update:
So the script executed 2912 rules in 113 milliseconds. That means each rule takes 38.8 microseconds. Going back to the CLAw, @9-15 milliseconds/rule, that means this script is 250-390 times faster. This would take the old CLAw 26.2-43.7 seconds instead of 113 milliseconds.
No way around the slowness of FINDITEM, so evaluation of 113 items takes around 6 seconds, with only 113 milliseconds used for analysis. Not too shabby.