cache algo complete