code refined Sat Jan 25 17:09:59 EST 2014