update with last imrovments