Some refactorings
Switched to canvas