Added intermediate cacheing