added better cache