updated html abstraction