import qiskit





def    __lowercase     (						lowerCamelCase					:     int = 2	):
 UpperCamelCase_					:						Optional[int] =					qubits

 # Using Aer's simulator
 UpperCamelCase_					:						str =					qiskit.Aer.get_backend('aer_simulator'	)

 # Creating a Quantum Circuit acting on the q register
 UpperCamelCase_					:						Tuple =					qiskit.QuantumCircuit(lowerCamelCase  ,  lowerCamelCase	)

 # Adding a H gate on qubit 0 (now q0 in superposition)
 circuit.h(0	)

 for i in range(1  ,  lowerCamelCase	):
  # Adding CX (CNOT) gate
  circuit.cx(i - 1  ,  lowerCamelCase	)

 # Mapping the quantum measurement to the classical bits
 circuit.measure(list(range(lowerCamelCase	)	)  ,  list(range(lowerCamelCase	)	)	)

 # Now measuring any one qubit would affect other qubits to collapse
 # their super position and have same state as the measured one.

 # Executing the circuit on the simulator
 UpperCamelCase_					:						Union[str, Any] =					qiskit.execute(lowerCamelCase  ,  lowerCamelCase  ,  shots=1000	)

 return job.result().get_counts(lowerCamelCase	)


if __name__ == "__main__":
   print(F"""Total count for various states are: {quantum_entanglement(3)}""")




from maths.prime_check import is_prime





def    __lowercase     (						lowerCamelCase					:     int	):
 if not isinstance(lowerCamelCase  ,  lowerCamelCase	):
  UpperCamelCase_					:						List[str] =					F"Input value of [number={number}] must be an integer"
  raise TypeError(lowerCamelCase	)
 if is_prime(lowerCamelCase	) and is_prime(number + 2	):
  return number + 2
 else:
  return -1


if __name__ == "__main__":
   import doctest

   doctest.testmod()



