class PRED_$dcg_expansion_2_3 extends PRED_$dcg_expansion_2 {
public Predicate exec(Prolog engine) {
// '$dcg_expansion'((A-->B),(C:-D,E)):-nonvar(A),A=(F,G),!,'$dcg_translate_dcg_atom'(F,C,H,I),'$dcg_translate_dcg'(B,D,H,J),'$dcg_translate_dcg'(G,E,I,J)
Term a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15;
Predicate p1, p2;
Predicate cont;
a1 = engine.aregs[1];
a2 = engine.aregs[2];
cont = engine.cont;
// '$dcg_expansion'((A-->B),(C:-D,E)):-['$get_level'(F),nonvar(A),'$unify'(A,(G,H)),'$cut'(F),'$dcg_translate_dcg_atom'(G,C,I,J),'$dcg_translate_dcg'(B,D,I,K),'$dcg_translate_dcg'(H,E,J,K)]
a1 = a1.dereference();