public static void multiplicatoria(TreeMap<Integer, Integer> raiz) {
		TreeMap<Integer, Integer> casa = (TreeMap<Integer, Integer>) raiz
				.clone();
		for (Entry<Integer, Integer> entry : casa.entrySet()) {
			if (entry.getKey() < 500 && !arr[entry.getKey()])
				continue;
			int i = 0;
			for (i = 0; i < primos.length; i++) {
				if (entry.getKey() % primos[i] == 0) {
					if (entry.getValue() == 1)
						raiz.remove(entry.getKey());
					else
						raiz.put(entry.getKey(), entry.getValue() - 1);
					int val = 0;
					if (raiz.containsKey(entry.getKey() / primos[i]))
						val = raiz.get(entry.getKey() / primos[i]);
					raiz.put(entry.getKey() / primos[i], val + 1);
					val = 0;
					if (raiz.containsKey(primos[i]))
						val = raiz.get(primos[i]);
					raiz.put(primos[i], val + 1);
					multiplicatoria(raiz);
					break;
				}
			}
			if (i < primos.length)
				break;
		}
	}