I think you misplaced a ) there.
Thing<A<B, C<D>, E>>
Is the type level equivalent of: Thing(A(B, C(D), E))
Not: Thing(A(B, C(D)), E)
I guess this is illustrative for how it is unreadable.