private void initialize()
		{
			TreeParent root = null;
			if (data == null)
			{
				root = new TreeParent("No results", 0);
			}
			else
			{
				root = new TreeParent("Results", 0);

				HashMap<Integer, TreeParent> hashMap = new HashMap<>();
				for (Tuple tuple : data)
				{
					if (tuple.count >= 2)
					{
						TreeParent node;
						int data = tuple.attrList.size();
						if (!hashMap.containsKey(data))
						{
							node = new TreeParent(data+" items", data);
							hashMap.put(data, node);
						}
						else
							node = hashMap.get(data);
						
						TreeParent resultNode = new TreeParent(tuple.count+" times", tuple.count);
						TreeParent attrsNode = new TreeParent("Attributes (XML)", 1);
						TreeParent filesNode = new TreeParent("Files", 0);
						for (XmlAttr attr : tuple.attrList)
						{
							TreeObject attrNode = new TreeObject(attr.key+"=\""+attr.value+"\"", 0, NodeType.ATTRIBUTE);
							attrsNode.addChild(attrNode);
						}
						for (String file : tuple.files)
						{
							TreeObject fileNode = new TreeObject(file, 0, NodeType.FILE);
							filesNode.addChild(fileNode);
						}
						resultNode.addChild(filesNode);
						resultNode.addChild(attrsNode);
						node.addChild(resultNode);
					}
				}
				for (Map.Entry<Integer, TreeParent> entry : hashMap.entrySet())
					root.addChild(entry.getValue());
			}
			invisibleRoot = new TreeParent("", 0);
			invisibleRoot.addChild(root);
		}