history as separate class, iterator, chart