updates with a bit more finess