Added Rendering abstraction