  [0.00]{} ![(a) Fault-tolerant Steane error correction circuit for distance-three CSS codes. Each line represents an encoded qubit. The circuit uses only two encoded ${|\overline{0}\rangle}$ and ${|\overline{+}\rangle}$ ancilla states (encoded in the same error correcting code which protects the data) to ensure that faults in the preparation circuits of the ancilla's don't spread to the data block. (b) Fault-tolerant Steane error correction circuit which can be used for any distance-three CSS stabilizer code encoding the data. There are a total of eight encoded ancilla qubits instead of four. The dark bold lines represent resting qubits. Note that the circuit in \[fig:SteaneCSSforNonPerfect\] could in some cases be used for higher distance CSS codes with appropriately chosen circuits for ${|\overline{0}\rangle}$ and ${|\overline{+}\rangle}$ ancilla states (see [@PR00]).[]{data-label="fig:SteaneECcircuitsAll"}](SteaneECcircuitforPerfect