lots of crappy code