private void traversalChilds(STRUCT parent, StringBuilder body) {

		String name = parent.__NAME__();
		char first = name.charAt(0);
		String classname = Character.toUpperCase(first) + name.substring(1);
		body.append("public ");
		if(!(parent instanceof MESSAGE)){
			body.append("static ");
		}
		body.append("class " + classname + " extends STRUCT {\n");
		List<DataType> list = parent.__CHILDS__();
		List<String> members = new ArrayList<String>();
		List<String> member_types = new ArrayList<String>();
		
		for (DataType d : list) {
			if (d instanceof STRUCT) {
				traversalChilds((STRUCT) d, body);
			}
			
			String simpleName = d.__NAME__();
			char first_c = simpleName.charAt(0);
			String methodname = Character.toUpperCase(first_c) + simpleName.substring(1);
			members.add(methodname);
			member_types.add(d.getClass().getSimpleName());
			genrateSetterGetter(body,d);
		}
		body.append("private static List<String> __MEMBERS__= null;\n");
		body.append("private static List<String> __MEMBER_TYPES__= null;\n");
		body.append("protected List<String> __MEMBERS__(){\n");
		body.append("if(__MEMBERS__==null){\n__MEMBERS__= new ArrayList<String>();\n");
		body.append("__MEMBER_TYPES__= new ArrayList<String>();\n");
		int length = members.size();
		for(int i=0;i<length;i++){			
			body.append("__MEMBERS__.add(\""+members.get(i)+"\");\n");
			body.append("__MEMBER_TYPES__.add(\""+member_types.get(i)+"\");\n");
		}
		body.append("}\nreturn __MEMBERS__;");
		body.append("}\n");
		body.append("protected List<String> __MEMBER_TYPES__(){\n");
		body.append("__MEMBERS__();\nreturn __MEMBER_TYPES__;\n");
		body.append("}\n");
		body.append("}\n");
	}