added cache, fixed html