accessing time ranges better
CPD fn much cleaner, prior distrubution fn added
value fn returns nil instead of throwing exception
fn to realize predicates