this is so big I refuse to post anything for a few hours...but dammit its hard!