introduced Op typedef