final updates needs more testing