First attempt with multi classes