private void daneGenPrivA() {
		int m;
		int k;
		BigInteger gx = BigInteger.ZERO;
		BigInteger gy = BigInteger.ZERO;
		BigInteger a2 = BigInteger.ZERO;
		BigInteger a6 = BigInteger.ZERO;
		ECPunkt punktG = null;
		try {
			m = new Integer(textField_14.getText());
			k = new Integer(textField.getText());
			try
			{
				if (k>=m)
					throw new IllegalArgumentException("Wykadnik k nie moe by wikszy ni m");
				if (m<=1)
					throw new IllegalArgumentException("Wykadnik k nie moe by wikszy ni m");
				gx = new BigInteger(textField_1.getText(), 16);
				gy = new BigInteger(textField_2.getText(), 16);
				a2 = new BigInteger(textField_13.getText(), 16);
				a6 = new BigInteger(textField_15.getText(), 16);
				if (gx.toString(2).length() > m || gy.toString(2).length() > m || 
					a2.toString(2).length() > m || a6.toString(2).length() > m)
					throw new IllegalArgumentException("Wartoci parametrw wykraczaj poza zakres");
				punktG = new ECPunkt(m,k,a2,a6,gx,gy);
				if (!punktG.naEC())
					throw new IllegalArgumentException("Generator nie naley do zbioru punktw krzywej eliptycznej");
				//////////////////////////////Sprawdzenie nieprzywiedlnoci wielomianu modulo
				if (chckbxNewCheckBox.isSelected() && !juzSprawdzony) {
					juzSprawdzony = true;
					Polynomial p = new Polynomial();
					p = p.setDegree(new BigInteger(Integer.toString(m)));
					p = p.setDegree(new BigInteger(Integer.toString(k)));
					p = p.setDegree(BigInteger.ZERO);
					if (p.isReducible())
						throw new IllegalArgumentException(
								"Wielomian modulo ciaa nie jest nieprzywiedlny");
					listModel.addElement("Wielomian modulo jest nieprzywiedlny.");
				}
				/////////////////////////////////////////////////////////////////////////////
				klientA = new Klient(punktG);
				klientA.genKluczaPrywatnego(m);
				textField_3.setText(klientA.kluczPrywatny.toString());
				
				listModel.addElement("Wygenerowano klucz prywatny uytkownika A.");
			}
			catch (NumberFormatException e)
			{
				JOptionPane.showMessageDialog(null, "Wprowadzone parametry nie s w kodzie HEX", "Bd", JOptionPane.ERROR_MESSAGE);
			}
			catch (IllegalArgumentException e)
			{
				JOptionPane.showMessageDialog(null, e.getMessage(), "Bd", JOptionPane.ERROR_MESSAGE);
			}	
		} catch (Exception e) {
			JOptionPane.showMessageDialog(null, "Naley poda parametry: m, k, Gx, Gy, a2 i a6.", "Bd", JOptionPane.ERROR_MESSAGE);
			e.printStackTrace();
		}
	}