similarly, above is poorly tested.  must automate or test by hand.