start/end to prevent hook conflict. @growdev