hmm. might just have to do this by hand.
update this file with better ideas. i should reorganize
remove useless comments