change the calculator algorithm~~