cache on a per user basis, some output update and other