private static void handleAssembly() {
		String keys = AssemblyFrame.getInstance().textAreaKeys.getText();
		if (keys.split("\n").length<2) {
			JOptionPane.showMessageDialog(SharingFrame.getInstance(), "Liste cles/valeurs incorrect!","Erreur!",JOptionPane.ERROR_MESSAGE);
			return;
		}

		BigInteger primeNumber = null;
		try {
			primeNumber = new BigInteger(AssemblyFrame.getInstance().tfPrimeNumber.getText());
		} catch(Exception e) {
			JOptionPane.showMessageDialog(AssemblyFrame.getInstance(), "Nombre premier incorrect!","Erreur!",JOptionPane.ERROR_MESSAGE);
			return;
		}

		Map<Integer, BigInteger> mapKV = new HashMap<Integer, BigInteger>();
		for(String s : keys.split("\n")) {
			Pattern p = Pattern.compile("\\d+");
			Matcher m = p.matcher(s);
			boolean swtch = false;
			Integer key=null;
			while (m.find()) {
				if (!swtch) key = new Integer(Integer.parseInt(m.group()));
				else mapKV.put(key, new BigInteger(m.group()));
				swtch=!swtch;
			}
		}



		String message = Assembly.assembler(mapKV,primeNumber);
		AssemblyFrame.getInstance().textAreaMessage.setText(message);
	}