MM Update + optimization