a little more maintentance. better commenting.