@Override
    public SymbolInfo Execute(RuntimeContext cont) throws Exception {

        while (true) {
            SymbolInfo m_cond = cond.Evaluate(cont);

            if (m_cond == null || m_cond.Type != TypeInfo.TYPE_BOOL) {
                return null;
            }

            if (m_cond.BoolValue != true) {
                return null;
            }

            SymbolInfo tsp = null;
            for (Object o : _statementsList) {
                Statement rst = (Statement) o;
                tsp = rst.Execute(cont);
                if (tsp != null) {
                    return tsp;
                }
            }
        }

    }