unstable. playing with view tracking/caching