private final void render(Graphics g)
							{
								if (!daughterNodes.isEmpty())
									for (Node n : daughterNodes)
										n.render(g);
									{
										int x = (int) this.x - (leafSize / 2);
										int y = getY() - (leafSize / 2);

										if (isLeaf)
											{
												g.setColor(leafColour);
												g.fillOval(x, y, leafSize, leafSize);
												g.setColor(Color.BLACK);
												g.drawOval(x, y, leafSize, leafSize);
												if (canSeed)
													{
														g.setColor(oppositeColour);
														g.fillOval(x + leafSize / 4, y + leafSize / 4, leafSize / 2, leafSize / 2);
													}
											}
										if (this == lastSelectedNode)
											{
												g.setColor(Color.BLACK);
												g.drawOval(x - 3, y - 3, leafSize + 6, leafSize + 6);
											}
									}

								g.setColor(Color.BLACK);
								g.drawLine((int) x, getY(), (int) (parentNode.getX()), parentNode.getY());
							}