add cdf function