hooks migrate from header, and stuff