hooks for CNF