Updated Diagram to include CachedData. Will need to rework this in code.