@Override
    public void caseAAvalieComando(AAvalieComando node)
    {
        inAAvalieComando(node);
        if(node.getPontoVirgula() != null)
        {
            node.getPontoVirgula().apply(this);
        }
        if(node.getFimAvalie() != null)
        {
            node.getFimAvalie().apply(this);
        }
        {
            List<PCasoSenao> copy = new ArrayList<PCasoSenao>(node.getCasoSenao());
            Collections.reverse(copy);
            for(PCasoSenao e : copy)
            {
                e.apply(this);
            }
        }
        {
            List<PCasoSeq> copy = new ArrayList<PCasoSeq>(node.getCasoSeq());
            Collections.reverse(copy);
            for(PCasoSeq e : copy)
            {
                e.apply(this);
            }
        }
        if(node.getFechaParentese() != null)
        {
            node.getFechaParentese().apply(this);
        }
        if(node.getExp() != null)
        {
            node.getExp().apply(this);
        }
        if(node.getAbreParentese() != null)
        {
            node.getAbreParentese().apply(this);
        }
        if(node.getAvalie() != null)
        {
            node.getAvalie().apply(this);
        }
        outAAvalieComando(node);
    }