attempt to pre-cache everything if possible