implement history view