added modular hooks