changed optimization