hmm. fixed up a bit