perform function fix