legacy hook support