dave added stuff, will finish