Simplification. Just one implementation, still abstracting over DOM tree.