@@ -0,0 +1,1543 @@
+public class Translator%0A%7B%0A  private final String ABC = %22?abcdefghijklmnopqrstuvwxyz,.%3C%3E%5B%5D%7B%7D'ABCDEFGHIJKLMNOPQRSTUVWXYZ:;()-+=/*%25!1234567890 %22;%0A%09%0A%09private String sort(String line)%0A%09%7B%0A%09%09char%5B%5D key = line.toCharArray();%0A%09%09String temp1 = %22%22;%0A%09%09String temp2 = %22%22;%0A%09%09%0A%09%09for (int i = 0; i %3C key.length; i++)%0A%09%09%7B%0A%09%09%09if (i %25 2 == 0)%0A%09%09%09%09temp2 += key%5Bi%5D;%0A%09%09%09else%0A%09%09%09%09temp1 += key%5Bi%5D;%0A%09%09%7D%0A%09%09%0A%09%09return temp1 + temp2;%0A%09%7D%0A%09%0A%09public int charToInt(char c)%0A%09%7B%0A%09%09for (int i = 0; i %3C ABC.length(); i++)%0A%09%09%7B%0A%09%09%09if (ABC.charAt(i) == c)%0A%09%09%09%09return i;%0A%09%09%7D%0A%09%09%0A%09%09return -1;%0A%09%7D%0A%09%0A%09public char intToChar(int a)%0A%09%7B%0A%09%09if (a %3E 0)%0A%09%09%09a = a %25 ABC.length();%0A%09%09else if (a %3C 0)%0A%09%09%09a = ABC.length() + a;%0A%09%09%0A%09%09return ABC.charAt(a);%0A%09%7D%0A%09%0A%09public char combine(char a, char b, char operator)%0A%09%7B%0A%09%09int char1 = charToInt(a);%0A%09%09int char2 = charToInt(b);%0A%09%09int result = 0;%0A%09%09%0A%09%09switch (operator)%0A%09%09%7B%0A%09%09%09case '+':%0A%09%09%09%09result = char1 + char2;%0A%09%09%09%09break;%0A%09%09%09case '-':%0A%09%09%09%09result = char1 - char2;%0A%09%09%09%09break;%0A%09%09%7D%0A%09%09%0A%09%09return intToChar(result);%0A%09%7D%0A%09%0A%09public String getInnerKey(String text, String key)%0A%09%7B%0A%09%09String innerKey = %22%22;%0A%09%09%0A%09%09int i = 0;%0A%09%09int j = 2;%0A%09%09%0A%09%09int sum = (int)(charToInt(key.charAt(i)) * Math.PI);%0A%09%09%0A%09%09while (innerKey.length() %3C text.length())%0A%09%09%7B%0A%09%09%09innerKey += intToChar(charToInt(key.charAt(i)) + sum + charToInt(key.charAt(i+1)) * (int)(j+Math.E+0.5));%0A%09%09%09%0A%09%09%09i++; j++; sum += charToInt(key.charAt(i)) + (int)(Math.PI * j);%0A%09%09%09%0A%09%09%09if (i == key.length()-1)%0A%09%09%09%09i = 0;%0A%09%09%7D%0A%09%09%0A%09%09for (int k = 0; k %3C 5; k ++)%0A%09%09%7B%0A%09%09%09innerKey = sort(innerKey);%0A%09%09%7D%0A%09%09%0A%09%09return innerKey;%0A%09%7D%0A%7D%0A

Create Translator.java