Massive change in approach.  It must be right because I deleted a lot more than I added.