lots of work done. should have committed a long time ago, smdh.