  Fault-tolerant quantum error correction is a necessity for any quantum
architecture destined to tackle interesting, large-scale problems. Its
theoretical formalism has been well founded for nearly two decades. However, we
still do not have an appropriate compiler to produce a fault-tolerant, error
corrected description from a higher level quantum circuit for state of the art
hardware models. There are many technical hurdles, including dynamic circuit
constructions that occur when constructing fault-tolerant circuits with
commonly used error correcting codes. We introduce a package that converts high
level quantum circuits consisting of commonly used gates into a form employing
all decompositions and ancillary protocols needed for fault-tolerant error
correction. We call this form the (I)initialisation, (C)NOT, (M)measurement
form (ICM) and consists of an initialisation layer of qubits into one of four
distinct states, a massive, deterministic array of CNOT operations and a series
of time ordered $X$- or $Z$-basis measurements. The form allows a more flexbile
approach towards circuit optimisation. At the same time, the package outputs a
standard circuit or a canonical geometric description which is a necessity for
operating current state-of-the-art hardware architectures using topological
quantum codes.
