add "submit" hooks