Q-Rious Transmissions
Superdense coding quantum communication protocol
Description
Alice is stuck in the bygone era of classical computing, while Bob is using quantum. She wants to show Bob a cool picture so she decides to give quantum a chance. Bob and Alice share a quantum state. Alice can't figure out how to send qubits, so she shares details of each operation instead. The initial state is 1/sqrt(2)*(|00> + |11>)
author: boron
Solution
Superdense coding is a quantum communication protocol based on the sender and receiver pre-sharing a pair of maximally entangled qubits.
Applying a quantum gate to a qubit is essentially performing matrix multiplication. This article does a great job at explaining it.
The following script applies each quantum gate to the entangled state, and decodes the classical 2-bit messages. Each gate in the message would thus translate to 2 bits.
import numpy
from PIL import Image
message = "ZX I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I I I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I I I I X Z I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I I I I I ZX I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I I I I I I I I ZX I I X Z I I ZX I I X Z I I I I I I I I I ZX I I I I I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I X Z I I I I I X Z I I ZX I I X Z I I I I I X Z I I I I I I I I I I I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I ZX I I X Z I I ZX I I X Z I I I I I X Z I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I ZX I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I ZX I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I I I I I I I ZX I I I I I I I I I I I I I I I I I I I I I I I X Z I I ZX I I I I I I ZX I I I I I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I ZX I I X Z I I ZX I I I I I I I I I X Z I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I"
messageDigest = message.split(" ")
X = numpy.array([[0, 1], [1, 0]])
I = numpy.array([[1, 0], [0, 1]])
Z = numpy.array([[1, 0], [0, -1]])
ZX = numpy.dot(Z, X)
H = numpy.array([[1, 1], [1, -1]])
CNOT = numpy.array([
[1, 0, 0, 0],
[0, 1, 0, 0],
[0, 0, 0, 1],
[0, 0, 1, 0]
])
XI = numpy.kron(X, I)
II = numpy.kron(I, I)
ZI = numpy.kron(Z, I)
ZXI = numpy.kron(ZX, I)
HI = numpy.kron(H, I)
init1 = numpy.array([1, 0, 0, 0])
init2 = numpy.array([0, 0, 0, 1])
initial = (1 / 2 ** (1 / 2) * (init1 + init2))
freq = {
"00": 0,
"01": 0,
"10": 0,
"11": 0
}
from itertools import permutations
possible_decodes = ['00', '01', '10', '11']
perms = permutations(possible_decodes)
digest = ""
for m in messageDigest[:]:
if m == "I":
init1 = numpy.transpose(numpy.dot(init1,II))
init2 = numpy.transpose(numpy.dot(init2,II))
elif m == "X":
init1 = numpy.transpose(numpy.dot(init1,XI))
init2 = numpy.transpose(numpy.dot(init2,XI))
elif m == "Z":
init1 = numpy.transpose(numpy.dot(init1,ZI))
init2 = numpy.transpose(numpy.dot(init2,ZI))
elif m == "ZX":
init1 = numpy.transpose(numpy.dot(init1,ZXI))
init2 = numpy.transpose(numpy.dot(init2,ZXI))
else:
print("Unknown Op: {0}".format(m))
dig1 = numpy.transpose(numpy.dot(init1, CNOT))
dig2 = numpy.transpose(numpy.dot(init2, CNOT))
dig1 = numpy.transpose(numpy.dot(dig1, HI))
dig2 = numpy.transpose(numpy.dot(dig2, HI))
dig = dig1 + dig2
if dig[0] != 0:
digest += "00"
freq['00'] += 1
elif dig[1] != 0:
digest += "01"
freq['01'] += 1
elif dig[2] != 0:
digest += "10"
freq['10'] += 1
elif dig[3] != 0:
digest += "11"
freq['11'] += 1
print(digest)
It turns out that this was a QR code! The 40,000 bits can be arranged into a 200 x 200 square matrix. Each bit represents either a white or black pixel.
Since white pixels have the RGB value of 255 and black pixels have the RGB value of 0, we multiply the array by 255 to obtain an image.
arr = numpy.array(list(digest)).reshape((200, 200)).astype('uint8') * 255
print(arr)
im = Image.fromarray(arr)
im.show()
im.save("q-rious.png")
We get a QR code, which we can decode to reveal the flag!
Last updated