Zooming, and panning implemented, needs refining