cache "last modified" decorator