anchor.diff:      List tempKey = null;
       try {
         if (key == null) throw new Exception("Key $keyNumber is empty!");
  -      if (keyEncode[0] == ENCODING_HEX) tempKey = hexStringToBytes(key);
  -      else if (keyEncode[0] == ENCODING_LATIN1) tempKey = stringToBytes(key);
  -      else if (keyEncode[0] == ENCODING_BASE64) tempKey =
  -          base64StringToBytes(key);
  +      tempKey = getBytesFromString(key, keyEncode);
         if (tempKey == null || tempKey.length != 1) throw new Exception(
             "Incorrect encoding key $keyNumber!");
         if (keyNumber == 1) cipher.key_A = tempKey[0];
         else if (keyNumber == 2) cipher.key_B = tempKey[0];
  -    } catch (e) {
  -      toast(e.toString().replaceAll(new RegExp('Exception: '), ''));
  -      throw new Exception(e);
  +    } catch (exception, stackTrace) {
  +      toast(exception.toString().replaceAll(new RegExp('Exception: '), ''));
  +      print(exception);
  +      throw new Exception(stackTrace);
       }
     }
   
  
positive.code:     try {
        checkKey(keyTextAreaA.value, keyNumber: 1);
        checkKey(keyTextAreaB.value, keyNumber: 2);
        List list = null;
        if (outputEncode[0] == ENCODING_HEX) list =
            cipher.decrypt(hexStringToBytes(outputTextArea.value));
        else if (outputEncode[0] == ENCODING_LATIN1) list =
            cipher.decrypt(stringToBytes(outputTextArea.value));
        else if (outputEncode[0] == ENCODING_BASE64) list =
            cipher.decrypt(base64StringToBytes(outputTextArea.value));
        if (list == null) throw new Exception('Incorrect message encoding!');
        if (inputEncode[0] == ENCODING_HEX) inputTextArea.value =
            bytesToHexString(list);
        else if (inputEncode[0] == ENCODING_LATIN1) inputTextArea.value =
            bytesToString(list);
        else if (inputEncode[0] == ENCODING_BASE64) inputTextArea.value =
            bytesToBase64String(list);
      } catch (e) {
        toast(e.toString().replaceAll(new RegExp('Exception: '), ''));
        throw new Exception(e);
      }
    });
  
  
negative.code:     outputTextArea.value = '';
      try {
        checkKey(keyTextArea.value, initVectorTextArea.value);
        List list = cipher.decrypt(
            getBytesFromString(inputTextArea.value, inputEncode),
            mode: mode);
        if (list == null) throw new Exception('Incorrect Initial Vector!');
        outputTextArea.value = getStringFromBytes(list, outputEncode);
      } catch (exception, stackTrace) {
        toast(exception.toString().replaceAll(new RegExp('Exception: '), ''));
        print(exception);
  