update cf_cdf for greater flexibility