introspection rules