Spaws class instead of function (flexibility FTW!)