Units can cache up to Infinite number of values, which makes operations like replay, undo, redo, or jumping to a specific point in the cache very easy; in other words TiMe-TrAvEL is possible. Other constructs like Cluster, Action, and AsyncSystem also cache one value, so you can replay it on demand.