def quantum_entanglement(qubits: int = 2) -> qiskit.result.counts.Counts:
    classical_bits = qubits

    # Using Aer's simulator
    simulator = qiskit.Aer.get_backend("aer_simulator")

    # Creating a Quantum Circuit acting on the q register
    circuit = qiskit.QuantumCircuit(qubits, classical_bits)

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

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

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

    # 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
    job = qiskit.execute(circuit, simulator, shots=1000)

    return job.result().get_counts(circuit)