added variable zooming