first pass at ct getting/caching logic