more hacks, I'll clean this up someday with params . . . someday