additional data cache level, refactoring