A second question on "Show a TM-recognizable language of TMs can be expressed by TM-description language of equivalent TMs" Let B={M1,M2,...} be a Turing-recognizable language consisting of TM descriptions. Show that there is a decidable language C consisting of TM descriptions s.t. every machine in B has an equivalent machine in C and vice versa.

I saw a hint on solving this question which is given in the following picture:


But I have a difficulty in constructing such enumerator $E_{0}$, Also how will I show that every machine described in $B$ has an equivalent machine in $C$ and vice versa, could anyone help me in doing so?

Also it is worth to say that the solution of this problem is found here:   

Show a TM-recognizable language of TMs can be expressed by TM-description language of equivalent TMs

But I could not understand it. could anyone explain the solution for me in a simple way ? and in a way depending on the above hints?
Recall the padding lemma: given $\langle M \rangle$ we can compute $\langle N \rangle$ where $N$ is equivalent to $M$, but has a longer representation. (Essentially, we can always add more irrelevant states to a TM, effectively.)

Then, define $E_0$ to do the following:


Run $E$ until $M_1$ is produced.
Let $N_1 = M_1$
Output $N_1$
Continue running $E$ until $M_2$ is produced.
Let $N_2$ be $M_2$, after as many paddings as needed to make its representation larger than $N_1$.
Output $N_2$
Continue running $E$ until $M_3$ is produced.
Let $N_3$ be $M_3$, after as many paddings as needed to make its representation larger than $N_2$.
Output $N_3$
And so on.


By construction, $E_0$ prints larger and larger strings, hence its enumerated language is decidable: this is the wanted language C.

We now need to check the quivalence. For any $N_i$ in the language enumerated by $E_0$, we find an equivalent $M_i$ enumerated by $E$. Vice versa, for any $M_i$ in the language enumerated by $E$, we find an equivalent $N_i$ enumerated by $E_0$.