implemented produceDrawing