Stable version
-generate all predicate scope as seperate files
-intersection and find precedence