added a little complexity to the render