superClass is now an argument on the wrapper, to avoid scoping this