alot of changes in this one.

completed update #1