added disk cache