types operations