a lot of adds, and a few modifications