code: def _ops_bool_to_prog(ops_bool: Tuple[bool], qubits: List[int]) -> Program:
      
      assert len(ops_bool) == len(qubits), "Mismatch of qubits and operations"
      prog = Program()
      for i, op_bool in enumerate(ops_bool):
          if op_bool == 0:
              continue
          elif op_bool == 1:
              prog += Program(X(qubits[i]))
          else:
              raise ValueError("ops_bool should only consist of 0s and/or 1s")
      return prog
docs: :param ops_bool: tuple of booleans specifying the operation to be carried out on `qubits`
      :param qubits: list specifying the qubits to be carried operations on
      :return: Program with the operations specified in `ops_bool` on the qubits specified in
          `qubits`