improve cache impl