optimize & upd