code: def run(self, ket: State = None) -> State:
          
          if ket is None:
              qubits = self.qubits
              ket = zero_state(qubits=qubits)
  
          for elem in self.elements:
              ket = elem.run(ket)
          return ket
docs: Apply the action of this circuit upon a state.
  
          If no initial state provided an initial zero state will be created.