rewrite to wilsons v1 convention, add early hide events