tests updated, all passing