intersection, material, and primitive classes, untested