public static void main(final String[] args) throws IOException {
		int n = args.length - 1;
		for (int i = 0; i < n - 1; ++i) {
			MAPPING.load(new FileInputStream(args[i]));
		}
		final Set unused = new HashSet(MAPPING.keySet());

		File f = new File(args[n - 1]);
		File d = new File(args[n]);

		optimize(f, d, new SimpleRemapper(MAPPING) {
			public String map(String key) {
				String s = super.map(key);
				if (s != null) {
					unused.remove(key);
				}
				return s;
			}
		});

		Iterator i = unused.iterator();
		while (i.hasNext()) {
			String s = (String) i.next();
			if (!s.endsWith("/remove")) {
				System.out.println("INFO: unused mapping " + s);
			}
		}
	}