add cache