Although the empty word $\epsilon$ is allowed in context-free grammars, it is always possible to describe any context-free language using a grammar in which the only nullable symbol is the start symbol. Transform the following grammar so that $\epsilon$ is derived only directly from the start symbol $S$ and no other symbols are nullable:
\begin{array}{} S \rightarrow AB \mid cC \\ A \rightarrow Aa \mid \epsilon \\ B \rightarrow bAb \mid b \\ C \rightarrow AAC \mid A\end{array}
I am stuck at the (C) part. This is what I have so far:
\begin{array}{} S \rightarrow ASB \mid cC \mid c \mid SB \mid AS \\ A \rightarrow Aa \mid a \\ B \rightarrow bAb \mid b \\ C \rightarrow CC \mid A\end{array}
Please correct me if I am wrong. Thanks