added a zooming function