oops, S() needs to stay in init.lua