private JList<FolderConfig> buildLeftSideList(final JPanel left) {
		final DefaultListModel<FolderConfig> listModel = new DefaultListModel<FolderConfig>();
		final JList<FolderConfig> list = new JList<>(listModel);

		if (!GuiUtils.syncConfig.getConfigs().isEmpty()) {
			for (final FolderConfig folder : GuiUtils.syncConfig.getConfigs()) {
				listModel.addElement(folder);
			}
			list.setSelectedIndex(0);
		}

		list.setCellRenderer(new FolderConfigRenderer());
		list.addMouseListener(new MouseAdapter() {
			@Override
			public void mousePressed(final MouseEvent e) {
				if (SwingUtilities.isRightMouseButton(e)) {
					final JPopupMenu menu = new JPopupMenu();
					final JMenuItem add = new JMenuItem("Add");
					add.addMouseListener(new MouseAdapter() {
						@Override
						public void mousePressed(final MouseEvent e) {
							GuiUtils.currentFolderConfig = new FolderConfig();
							GuiUtils.currentFolderConfig.setArtistUrl("Artist URL");
							GuiUtils.syncConfig.getConfigs().add(GuiUtils.currentFolderConfig);
							listModel.addElement(GuiUtils.currentFolderConfig);
						}
					});
					menu.add(add);
					menu.addSeparator();
					final int index = list.getSelectedIndex();
					if (index >= 0) {
						final JMenuItem remove = new JMenuItem("Remove");
						remove.addMouseListener(new MouseAdapter() {
							@Override
							public void mousePressed(final MouseEvent e) {
								GuiUtils.syncConfig.getConfigs().remove(index);
								listModel.remove(index);
							}
						});
						menu.add(remove);
					}
					menu.show(list, e.getX(), e.getY());
				}
			}
		});
		left.add(list, BorderLayout.CENTER);

		return list;
	}