added more operations