added a ton of crap, but still more to go...