superfunctions