add more operations