implementing zoom