Zooming proof of concept, needs refactoring