implemented zoom