# cirq.OP_TREE¶

cirq.OP_TREE = typing.Union[cirq.ops.raw_types.Operation, cirq.ops.op_tree.OpTree]

An operation or nested collections of operations.

Here are some examples of things that can be given to a method that takes a
cirq.OP_TREE argument:
• A single operation (a cirq.Operation).

• A list of operations (a List[cirq.Operation]).

• A list of lists of operations (a List[List[cirq.Operation]]).

• A list mixing operations and generators of operations (a List[Union[cirq.Operation, Iterator[cirq.Operation]]]).

• Generally anything that can be iterated, and its items iterated, and so forth recursively until a bottom layer of operations is found.