Feels icky, but I'd need to make even more changes to this method (which I haven't seen have problems with so far).