added zoom and pan