added hook support