rearranging  extends this will become a core helpers file once i have finished