add cache to problem14