public void cleanUpMapping() {
		// Remove tabs you have no items for
		if (!removedInvalidTabs) {
			int i = 0;
			final Iterator<LinkedHashSet<Integer>> iterator = mapping.iterator();
			while (iterator.hasNext()) {
				final LinkedHashSet<Integer> next = iterator.next();
				if (i > 0) {
					if (ctx.bank.select().select(new Filter<Item>() {
						@Override
						public boolean accept(Item item) {
							return next.contains(script.itemCategoriser.id(item.id()));
						}
					}).count() < 1) {
						iterator.remove();
						//System.out.println("Remove tab " + i + " no matching items");
					}
				}
				i++;
			}
			removedInvalidTabs = true;
		}
	}