move distribution specific functions into the distribution