Recovering Examples Tanner Code Constructions

I've been trying to understand how the construction of Tanner codes works. The only example that I've found is in Tanner's original paper. However, I can't recover the claimed code parameters, and I don't know if I'm misunderstanding the construction or just can't find an appropriate numbering of the vertices. Can someone fill in the blanks?

What I think I'm doing with the Tanner code construction, as applied to the example:

• We start with a complete graph on 8 vertices. I write down the incidence matrix, which is an $$8\times 28$$ matrix such that each column has weight 2 and each row has weight 7. (A row is associated with a vertex of the graph, telling us which edges attach to it.) $$\left( \begin{array}{cccccccccccccccccccccccccccc} 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 1 & 1 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 & 1 & 0 & 0 & 1 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 1 \\ \end{array} \right)$$
• For each 1 in the incidence matrix, I pick a value 1 to 7 such that no number is repeated in each row. (There are many valid assignments, which can yield different code parameters.) For example: $$\left( \begin{array}{cccccccccccccccccccccccccccc} 7 & 6 & 5 & 3 & 2 & 1 & 4 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 0 & 0 & 0 & 0 & 0 & 0 & 7 & 6 & 5 & 3 & 2 & 4 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 2 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 7 & 6 & 5 & 3 & 4 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 3 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 7 & 6 & 5 & 4 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 5 & 0 & 0 & 0 & 0 & 0 & 3 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 7 & 6 & 4 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 6 & 0 & 0 & 0 & 0 & 0 & 5 & 0 & 0 & 0 & 0 & 3 & 0 & 0 & 0 & 2 & 0 & 0 & 1 & 0 & 0 & 7 & 4 & 0 \\ 0 & 0 & 0 & 0 & 0 & 7 & 0 & 0 & 0 & 0 & 0 & 6 & 0 & 0 & 0 & 0 & 5 & 0 & 0 & 0 & 3 & 0 & 0 & 2 & 0 & 1 & 0 & 4 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 4 & 0 & 0 & 0 & 3 & 0 & 0 & 6 & 0 & 5 & 7 \\ \end{array} \right)$$
• I replace each number with the corresponding column of the Hamming code's parity check matrix. $$\left( \begin{array}{ccccccc} 1 & 0 & 1 & 0 & 1 & 0 & 1 \\ 0 & 1 & 1 & 0 & 1 & 1 & 0 \\ 0 & 0 & 0 & 1 & 1 & 1 & 1 \\ \end{array} \right)$$
• The resulting matrix is a $$24\times 28$$ binary matrix constituting the parity check matrix of my new code. In the above case, the first column becomes $$\left(\begin{array}{c}1 \\ 0 \\ 1 \\ 1 \\ 0 \\ 0 \\ \vdots \end{array}\right)$$ followed by 18 0s (the whole thing is rather large!)

The example constructed in this way gives me a $$[28,5]$$ code, where Tanner's paper claims a $$[28,9]$$ code. Have I misunderstood something, or have I simply not found the appropriate assignment of numbers in my second step?