rewrote setup to suck less