we should just use the ORM at this point lol; I'm sorry I started this mess