@SuppressWarnings("unchecked")
    public void saveTabData(ArrayList<Section> list) {
        for (Section s : list) {
            for (Object o : s.getQuestions()) {
                if (o != null) {
                    for (Object tab : (ArrayList<Object>) o) {
                        if (tab != null) {
                            if (tab instanceof TabularData) {
                                TabularData d = (TabularData) tab;
                                if (d != null) {
                                    if (tabManager.find(d.getFormId(),
                                            d.getSectionId(), d.getRowId(),
                                            d.getColId(), d.getType()) != null) {
                                        tabManager.merge(d);
                                    } else {
                                        tabManager.persist(d);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }