updated operation