diff --git a/README.html b/README.html
index 38861e74b..5fa6156a9 100644
--- a/README.html
+++ b/README.html
@@ -14,8 +14,9 @@
 
 
Runtime Requirements 
 
-python2.5 or higher 
-pygtk2.22 or higher 
+python2.7 or higher 
+python-gi 
+gir1.2-gtk-3.0 
 python-nbxmpp 
  
 
@@ -28,7 +29,7 @@
 For zeroconf (bonjour), the "enable link-local messaging" checkbox, you need dbus-glib, python-avahi 
 dnsutils (or whatever package provides the nslookup binary) for SRV support 
 gtkspell and aspell-LANG where lang is your locale eg. en, fr etc 
-gnome-python-desktop (for GnomeKeyring support as password storage) 
+gir1.2-gnomekeyring-1.0 for GnomeKeyring support as password storage 
 kwalletcli (for support of KDE Wallet as password storage) 
 notification-daemon or notify-python (and D-Bus) to get cooler popups 
 D-Bus running to have gajim-remote working. Some distributions split dbus-x11, which is needed for dbus to work with Gajim. Version >= 0.80 is required. 
diff --git a/build.bat b/build.bat
index f3e8c7113..e427d8ab3 100644
--- a/build.bat
+++ b/build.bat
@@ -22,6 +22,9 @@ rename exe.win32-2.7 bin
 copy ..\LIBEAY32.dll bin
 copy ..\SSLEAY32.dll bin
 
+REM for snarl plugin
+xcopy ..\win32com bin\win32com /e /i
+
 mkdir bin\gtk
 cd ../src/gtk
 hg archive ..\..\gajim_built\bin\gtk
diff --git a/data/Makefile.am b/data/Makefile.am
index 827882796..81c1c2967 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -12,7 +12,9 @@ soundsdir = $(pkgdatadir)/data/sounds
 sounds_DATA = $(srcdir)/sounds/*.wav
 
 otherdir = $(pkgdatadir)/data/other
-other_DATA = other/servers.xml other/cacerts.pem
+other_DATA = other/servers.xml other/dh4096.pem
+# other/cacert.pem is used only on Windows. On Unix platforms
+# use CA certificates installed in /etc/ssl/certs
 
 man_MANS = gajim.1 gajim-remote.1 gajim-history-manager.1
 
diff --git a/data/gui/account_context_menu.ui b/data/gui/account_context_menu.ui
index a2840e785..0924fb7de 100644
--- a/data/gui/account_context_menu.ui
+++ b/data/gui/account_context_menu.ui
@@ -40,7 +40,7 @@
     
     
        
     
        
             
               
+                _Advanced 
                 True 
                 True 
                 False 
                 True 
-                
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-preferences 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Advanced 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
+                image2 
+                True 
+                 
               
                 False 
@@ -829,47 +865,14 @@ Please wait...
               
             
               
+                _Finish 
                 True 
                 True 
                 False 
                 True 
-                
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-apply 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Finish 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
+                image3 
+                True 
+                 
               
                 False 
@@ -880,21 +883,25 @@ Please wait...
           
           
             False 
+            True 
             1 
            
           
       
     
   
-  
+  
     
-      
+      
        
-    
-      
-        
-     
+   
+  
+    server_liststore 
+    0 
+   
+  
+    server_liststore 
+    0 
    
 
diff --git a/data/gui/accounts_window.ui b/data/gui/accounts_window.ui
index 1d37004b2..ff23dadd5 100644
--- a/data/gui/accounts_window.ui
+++ b/data/gui/accounts_window.ui
@@ -63,42 +63,14 @@
                 
                 
                   
+                    Add 
                     True 
                     True 
                     True 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    image1 
+                    True 
                     
-                      
-                        True 
-                        0 
-                        0 
-                        
-                          
-                            True 
-                            2 
-                            
-                              
-                                True 
-                                gtk-add 
-                               
-                              
-                                0 
-                               
-                             
-                            
-                              
-                                True 
-                                Add 
-                               
-                              
-                                1 
-                               
-                             
-                           
-                         
-                       
-                     
                    
                   
                     False 
@@ -107,42 +79,14 @@
                   
                 
                   
+                    Delete 
                     True 
                     True 
                     True 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    image2 
+                    True 
                     
-                      
-                        True 
-                        0 
-                        0 
-                        
-                          
-                            True 
-                            2 
-                            
-                              
-                                True 
-                                gtk-remove 
-                               
-                              
-                                0 
-                               
-                             
-                            
-                              
-                                True 
-                                Delete 
-                               
-                              
-                                1 
-                               
-                             
-                           
-                         
-                       
-                     
                    
                   
                     False 
@@ -151,46 +95,14 @@
                   
                 
                   
+                    Re_name 
                     True 
                     True 
                     True 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    rename_image 
+                    True 
                     
-                      
-                        True 
-                        0 
-                        0 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            2 
-                            
-                              
-                                True 
-                                GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                                gtk-missing-image 
-                               
-                              
-                                0 
-                               
-                             
-                            
-                              
-                                True 
-                                GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                                Re_name 
-                                True 
-                               
-                              
-                                1 
-                               
-                             
-                           
-                         
-                       
-                     
                    
                   
                     False 
@@ -225,7 +137,7 @@
                     vertical 
                     
                       
-                        _Enable 
+                        Active 
                         True 
                         True 
                         False 
@@ -520,6 +432,7 @@
                                             True 
                                             True 
                                             ● 
+                                             
                                           
                                             1 
@@ -531,6 +444,7 @@
                                             True 
                                             True 
                                             True 
+                                            True 
                                                  
                                           
@@ -1120,7 +1034,7 @@
                     vertical 
                     
                       
-                        _Enable 
+                        Active 
                         True 
                         True 
                         False 
@@ -1552,4 +1466,16 @@ You might consider to change possible firewall settings.
     1 
     5 
    
+  
+    True 
+    gtk-add 
+   
+  
+    True 
+    gtk-remove 
+   
+  
+    True 
+    gtk-missing-image 
+   
 
diff --git a/data/gui/add_new_contact_window.ui b/data/gui/add_new_contact_window.ui
index e9f713f1e..cee67a0bb 100644
--- a/data/gui/add_new_contact_window.ui
+++ b/data/gui/add_new_contact_window.ui
@@ -1,22 +1,23 @@
-
+
 
-  
+    False 
     6 
     Add New Contact 
     False 
     dialog 
-    
       
         True 
-        vertical 
+        False 
         6 
         
           
             True 
+            False 
            
           
             False 
@@ -27,10 +28,12 @@
         
           
             True 
+            False 
             6 
             
               
                 True 
+                False 
                 0 
                 A_ccount: 
                 True 
@@ -44,8 +47,9 @@
             
               
                 True 
+                False 
                 liststore3 
-                
                   
@@ -64,16 +68,20 @@
               
            
           
+            True 
+            True 
             1 
            
          
         
           
             True 
+            False 
             6 
             
               
                 True 
+                False 
                 0 
                 _Protocol: 
                 True 
@@ -88,7 +96,8 @@
             
               
                 True 
-                False 
+                 
               
                 False 
@@ -99,9 +108,10 @@
             
               
                 True 
+                False 
                 True 
                 liststore2 
-                
                   
@@ -110,17 +120,22 @@
                   
                
               
+                True 
+                True 
                 2 
                
              
              
           
+            True 
+            True 
             2 
            
          
         
           
             True 
+            False 
             True 
             6 
             3 
@@ -130,6 +145,7 @@
             
               
                 True 
+                False 
                 0 
                 _User ID: 
                 True 
@@ -137,7 +153,7 @@
                
               
                 GTK_FILL 
-                 
              
             
@@ -145,16 +161,18 @@
                 True 
                 True 
                 True 
+                Type User ID 
                 
               
                 1 
                 2 
-                 
              
             
               
                 True 
+                False 
                 0 
                 _Nickname: 
                 True 
@@ -164,7 +182,7 @@
                 1 
                 2 
                 GTK_FILL 
-                         
              
             
@@ -172,18 +190,20 @@
                 True 
                 True 
                 True 
+                Type Nickname 
                 
               
                 1 
                 2 
                 1 
                 2 
-                 
              
             
               
                 True 
+                False 
                 0 
                 _Group: 
                 True 
@@ -192,37 +212,48 @@
                 2 
                 3 
                 GTK_FILL 
-                      
             
             
-              
+              
                 True 
-                groups_liststore 
-                0 
+                False 
+                True 
+                0 
+                1 
+                
+                  
+                    True 
+                    Choose a group of type a new group 
+                   
+                 
                
               
                 1 
                 2 
                 2 
                 3 
-                GTK_FILL 
                
               
           
           
             False 
+            True 
             3 
            
         
         
           
             A_llow this contact to view my status 
+            False 
             True 
             True 
             False 
             True 
+            False 
             True 
+            0 
             True 
             True 
            
@@ -238,9 +269,8 @@
             True 
             True 
             6 
-            automatic 
-            automatic 
             etched-in 
+            5 
             
               
                 True 
@@ -251,30 +281,39 @@
               
           
           
+            True 
+            True 
             5 
            
          
         
           
             _Save subscription message 
+            False 
             True 
             True 
             False 
+            False 
             True 
+            0 
             True 
            
           
+            True 
+            True 
             6 
            
          
         
           
             True 
+            False 
             True 
             6 
             
               
                 True 
+                False 
                 0 
                 You have to register with this transport
 to be able to add a contact from this
@@ -283,18 +322,22 @@ proceed. 
                 True 
                
               
+                True 
+                True 
                 0 
                
              
             
               
                 _Register 
+                False 
                 True 
                 True 
                 True 
                 False 
+                False 
                 True 
-                 
               
                 False 
@@ -304,12 +347,15 @@ proceed.
               
            
           
+            True 
+            True 
             7 
            
          
         
           
             True 
+            False 
             True 
             You must be connected to the transport to be able
 to add a contact from this protocol. 
@@ -323,18 +369,21 @@ to add a contact from this protocol.
         
           
             True 
+            False 
             5 
             12 
             end 
             
               
                 gtk-cancel 
+                False 
                 True 
                 True 
                 True 
                 False 
+                False 
                 True 
-                 
               
                 False 
@@ -345,13 +394,15 @@ to add a contact from this protocol.
             
               
                 gtk-add 
+                False 
                 True 
                 True 
                 True 
                 True 
                 False 
+                False 
                 True 
-                 
               
                 False 
@@ -369,9 +420,6 @@ to add a contact from this protocol.
            
      
    
-  
-    I would like to add you to my contact list. 
-   
   
     
       
@@ -390,4 +438,7 @@ to add a contact from this protocol.
        
    
+  
+    I would like to add you to my contact list. 
+   
 
diff --git a/data/gui/advanced_configuration_window.ui b/data/gui/advanced_configuration_window.ui
index 52df66599..72c058b15 100644
--- a/data/gui/advanced_configuration_window.ui
+++ b/data/gui/advanced_configuration_window.ui
@@ -5,6 +5,7 @@
     False 
     6 
     Advanced Configuration Editor 
+    center-on-parent 
     ace 
     650 
     540 
diff --git a/data/gui/blocked_contacts_window.ui b/data/gui/blocked_contacts_window.ui
index 2f9f37127..5f84a9b7c 100644
--- a/data/gui/blocked_contacts_window.ui
+++ b/data/gui/blocked_contacts_window.ui
@@ -38,47 +38,14 @@
          
         
           
+            _Unblock 
             True 
             True 
             False 
             3 
+            image1 
+            True 
             
-              
-                True 
-                0 
-                0 
-                
-                  
-                    True 
-                    2 
-                    
-                      
-                        True 
-                        gtk-remove 
-                       
-                      
-                        False 
-                        False 
-                        0 
-                       
-                     
-                    
-                      
-                        True 
-                        _Unblock 
-                        True 
-                       
-                      
-                        False 
-                        False 
-                        1 
-                       
-                     
-                   
-                 
-               
-             
            
           
             False 
@@ -89,4 +56,8 @@
       
       
   
+  
+    True 
+    gtk-remove 
+   
 
diff --git a/data/gui/change_status_message_dialog.ui b/data/gui/change_status_message_dialog.ui
index c7c350cdf..e4aa96970 100644
--- a/data/gui/change_status_message_dialog.ui
+++ b/data/gui/change_status_message_dialog.ui
@@ -1,39 +1,88 @@
-
+
 
-  
+    False 
     6 
     270 
-    175 
+    330 
     dialog 
-    
-      
+      
         True 
+        False 
         vertical 
         6 
+        
+          
+            True 
+            False 
+            end 
+            
+              
+                gtk-cancel 
+                False 
+                True 
+                True 
+                True 
+                False 
+                False 
+                True 
+               
+              
+                False 
+                True 
+                0 
+               
+             
+            
+              
+                gtk-ok 
+                False 
+                True 
+                True 
+                True 
+                True 
+                False 
+                False 
+                True 
+               
+              
+                False 
+                True 
+                1 
+               
+             
+           
+          
+            False 
+            True 
+            end 
+            0 
+           
+         
         
           
             True 
+            False 
             0 
             none 
             
               
                 True 
+                False 
                 12 
                 
                   
                     True 
+                    False 
                     6 
-                    vertical 
                     6 
                     
                       
                         True 
                         True 
-                        automatic 
-                        automatic 
                         in 
                         
                           
@@ -45,33 +94,41 @@
                           
                        
                       
+                        True 
+                        True 
                         0 
                        
                      
                     
                       
                         True 
+                        False 
                         end 
                         
                           
+                            False 
                             True 
                             False 
                             True 
                             True 
                             False 
-                            False 
+                            
                               
                                 True 
+                                False 
                                 0 
                                 0 
                                 
                                   
                                     True 
+                                    False 
                                     2 
                                     
                                       
                                         True 
+                                        False 
                                         gtk-save-as 
                                        
                                       
@@ -83,6 +140,7 @@
                                     
                                       
                                         True 
+                                        False 
                                         Save as Preset... 
                                         True 
                                        
@@ -106,44 +164,53 @@
                           
                       
                         False 
-                        False 
+                        True 
                         1 
                        
                      
                     
                       
                         True 
+                        False 
                         3 
                         2 
                         6 
                         6 
                         
                           
+                            False 
                             True 
                             True 
                             True 
-                            False 
+                            
                               
                                 True 
+                                False 
                                 6 
                                 
                                   
                                     True 
+                                    False 
                                     gtk-missing-image 
                                    
                                   
                                     False 
+                                    True 
                                     0 
                                    
                                  
                                 
                                   
                                     True 
+                                    False 
                                     0 
                                     True 
                                    
                                   
+                                    True 
+                                    True 
                                     1 
                                    
                                  
@@ -155,35 +222,44 @@
                             2 
                             2 
                             3 
+                            GTK_FILL 
                           
                           
                         
                           
+                            False 
                             True 
                             True 
                             True 
-                            False 
+                            
                               
                                 True 
+                                False 
                                 6 
                                 
                                   
                                     True 
+                                    False 
                                     gtk-missing-image 
                                    
                                   
                                     False 
+                                    True 
                                     0 
                                    
                                  
                                 
                                   
                                     True 
+                                    False 
                                     0 
                                     True 
                                    
                                   
+                                    True 
+                                    True 
                                     1 
                                    
                                  
@@ -195,11 +271,13 @@
                             2 
                             1 
                             2 
+                            GTK_FILL 
                           
                           
                         
                           
                             True 
+                            False 
                             0 
                             Mood: 
                            
@@ -207,11 +285,13 @@
                             2 
                             3 
                             GTK_FILL 
+                            GTK_FILL 
                           
                          
                         
                           
                             True 
+                            False 
                             0 
                             Activity: 
                            
@@ -219,31 +299,37 @@
                             1 
                             2 
                             GTK_FILL 
+                            GTK_FILL 
                           
                          
                         
                           
                             True 
-                            False 
+                             
                           
                             1 
                             2 
+                            GTK_FILL 
                            
                          
                         
                           
                             True 
+                            False 
                             0 
                             Preset messages: 
                            
                           
                             GTK_FILL 
+                            GTK_FILL 
                            
                          
                        
                       
                         False 
+                        True 
                         2 
                        
                      
@@ -254,63 +340,19 @@
             
               
                 True 
+                False 
                 <b>Type your new status message</b> 
                 True 
                
              
            
           
+            True 
+            True 
             2 
            
          
-        
-          
-            True 
-            end 
-            
-              
-                gtk-cancel 
-                True 
-                True 
-                True 
-                False 
-                True 
-               
-              
-                False 
-                False 
-                0 
-               
-             
-            
-              
-                gtk-ok 
-                True 
-                True 
-                True 
-                True 
-                False 
-                True 
-               
-              
-                False 
-                False 
-                1 
-               
-             
-           
-          
-            False 
-            False 
-            end 
-            0 
-           
-         
        
      
-    
-      cancel_button 
-      ok_button 
-     
    
                 
diff --git a/data/gui/chat_control.ui b/data/gui/chat_control.ui
index d4ac94980..b9eae0f67 100644
--- a/data/gui/chat_control.ui
+++ b/data/gui/chat_control.ui
@@ -1,7 +1,18 @@
-
+
 
-  
+    110 
+    1 
+    10 
+    10 
+   
+  
+    110 
+    1 
+    10 
+    10 
+   
   
     True 
     1 
@@ -9,159 +20,119 @@
       
         True 
         3 
-        vertical 
         1 
         
-          
+          
             True 
-            True 
+            False 
             
-              
+              
                 True 
-                vertical 
+                False 
+                3 
+                3 
                 
-                  
+                  
                     True 
-                    3 
-                    3 
+                    False 
                     
-                      
+                      
                         True 
+                        False 
                         
-                          
+                          
                             True 
+                            False 
+                            5 
+                            gtk-missing-image 
+                           
+                          
+                            False 
+                            False 
+                            5 
+                            0 
+                           
+                          
+                        
+                          
+                            True 
+                            False 
+                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                            5 
                             
-                              
+                              
                                 True 
-                                5 
-                                gtk-missing-image 
+                                False 
+                                0 
+                                <span weight="heavy" size="large">Contact name</span> 
+                                True 
                                
                               
-                                False 
-                                False 
-                                5 
+                                True 
+                                True 
                                 0 
                                
                               
                             
-                              
+                              
                                 True 
-                                GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                                5 
-                                vertical 
-                                
-                                  
-                                    True 
-                                    0 
-                                    <span weight="heavy" size="large">Contact name</span> 
-                                    True 
-                                   
-                                  
-                                    0 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    0 
-                                    label 
-                                    True 
-                                    True 
-                                     
-                                  
-                                    1 
-                                   
-                                 
+                                False 
+                                0 
+                                label 
+                                True 
+                                True 
+                                 
                               
+                                True 
+                                True 
+                                1 
+                               
+                              
+                           
+                          
+                            True 
+                            True 
+                            1 
+                           
+                         
+                        
+                          
+                            True 
+                            False 
+                            4 
+                            
+                              
+                                False 
+                                True 
+                                gtk-missing-image 
+                                1 
+                               
+                              
+                                False 
+                                False 
+                                0 
+                               
+                             
+                            
+                              
+                                False 
+                                True 
+                                gtk-missing-image 
+                                1 
+                               
+                              
+                                False 
+                                False 
                                 1 
                                
                              
                             
-                              
-                                True 
-                                4 
-                                
-                                  
-                                    True 
-                                    None 
-                                    1 
-                                   
-                                  
-                                    0 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    None 
-                                    1 
-                                   
-                                  
-                                    1 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    None 
-                                    1 
-                                   
-                                  
-                                    2 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    False 
-                                    
-                                      
-                                        True 
-                                        None 
-                                        1 
-                                       
-                                     
-                                   
-                                  
-                                    False 
-                                    False 
-                                    3 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    None 
-                                    1 
-                                   
-                                  
-                                    4 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    None 
-                                    1 
-                                   
-                                  
-                                    5 
-                                   
-                                 
-                                
-                                  
-                                    11 
-                                    True 
-                                    
-                                       
-                                   
-                                  
-                                    6 
-                                   
-                                 
+                              
+                                False 
+                                True 
+                                gtk-missing-image 
+                                1 
                                
                               
                                 False 
@@ -170,13 +141,16 @@
                                
                               
                             
-                              
+                              
                                 True 
+                                False 
                                 False 
                                 
-                                  
-                                    True 
-                                    None 
+                                  
+                                    False 
+                                    True 
+                                    gtk-missing-image 
+                                    1 
                                    
                                   
                                
@@ -186,572 +160,581 @@
                                 3 
                               
                               
+                            
+                              
+                                False 
+                                True 
+                                gtk-missing-image 
+                                1 
+                               
+                              
+                                False 
+                                False 
+                                4 
+                               
+                             
+                            
+                              
+                                False 
+                                True 
+                                gtk-missing-image 
+                                1 
+                               
+                              
+                                False 
+                                False 
+                                5 
+                               
+                             
+                            
+                              
+                                11 
+                                True 
+                                False 
+                                
+                                   
+                               
+                              
+                                False 
+                                False 
+                                6 
+                               
+                             
                            
+                          
+                            False 
+                            False 
+                            2 
+                           
+                         
+                        
+                          
+                            True 
+                            False 
+                            False 
+                            
+                              
+                                True 
+                                False 
+                                gtk-missing-image 
+                               
+                             
+                           
+                          
+                            False 
+                            False 
+                            3 
+                           
                          
                        
                       
                    
+                  
+               
+              
+                False 
+                False 
+                0 
+               
+              
+            
+              
+                True 
+                False 
+                
+                  
+                    60 
+                    True 
+                    3 
+                    in 
+                    
+                       
+                   
                   
-                    False 
-                    False 
+                    True 
+                    True 
                     0 
                    
                  
                 
-                  
+                  
                     True 
-                    vertical 
+                    False 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     
-                      
-                        60 
+                      
+                        True 
+                        True 
+                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                        True 
+                        none 
+                        False 
+                        
+                          
+                            False 
+                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                            gtk-dialog-authentication 
+                            1 
+                           
+                         
+                       
+                      
+                        False 
+                        True 
+                        0 
+                       
+                      
+                    
+                      
+                        True 
                         True 
                         3 
-                        automatic 
-                        automatic 
+                        never 
+                        never 
                         in 
                         
                            
                        
                       
-                        0 
-                       
-                     
-                    
-                      
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        
-                          
-                            True 
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            True 
-                            none 
-                            False 
-                            
-                              
-                                GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                                gtk-dialog-authentication 
-                                1 
-                               
-                             
-                           
-                          
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            True 
-                            3 
-                            never 
-                            never 
-                            in 
-                            
-                               
-                           
-                          
-                            1 
-                           
-                         
-                       
-                      
-                        False 
+                        True 
+                        True 
                         1 
                        
                      
                    
-                  
-                    1 
-                   
-                  
-                
-                  
-                    True 
-                    
-                      
-                        True 
-                        True 
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        Show a list of emoticons (Alt+M) 
-                        none 
-                        False 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            gtk-missing-image 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        0 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        none 
-                        False 
-                        
-                          
-                            True 
-                            gtk-bold 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        1 
-                       
-                     
-                    
-                      
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        vertical 
-                       
-                      
-                        False 
-                        2 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        True 
-                        Add this contact to roster (Ctrl+D) 
-                        none 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            gtk-add 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        False 
-                        3 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        none 
-                        False 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        4 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        none 
-                        
-                          
-                            True 
-                            gtk-missing-image 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        5 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        none 
-                        
-                          
-                            True 
-                            gtk-missing-image 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        6 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        Invite contacts to the conversation (Ctrl+G) 
-                        none 
-                        False 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            gtk-missing-image 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        7 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        View contact information (Ctrl+I) 
-                        none 
-                        False 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            gtk-info 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        8 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        Browse the chat history (Ctrl+H) 
-                        none 
-                        False 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            gtk-justify-fill 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        9 
-                       
-                     
-                    
-                      
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        vertical 
-                       
-                      
-                        False 
-                        10 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        Show advanced functions (Alt+D) 
-                        none 
-                        False 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            gtk-execute 
-                            1 
-                           
-                         
-                       
-                      
-                        False 
-                        11 
-                       
-                     
-                    
-                      
-                        True 
-                        
-                          
-                            True 
-                            vertical 
-                           
-                          
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            True 
-                            True 
-                            True 
-                            none 
-                            False 
-                            vertical 
-                            menu 
-                            adjustment1 
-                            audio-volume-muted
-audio-volume-high
-audio-volume-low
-audio-volume-medium 
-                           
-                          
-                            False 
-                            1 
-                           
-                         
-                        
-                          
-                            True 
-                            True 
-                            True 
-                            True 
-                            none 
-                            False 
-                            0.4699999988079071 
-                            vertical 
-                            menu 
-                            adjustment2 
-                            audio-mic-volume-muted
-audio-mic-volume-high
-audio-mic-volume-medium
-audio-mic-volume-low 
-                           
-                          
-                            False 
-                            2 
-                           
-                         
-                        
-                          
-                            # 
-                            True 
-                            True 
-                            True 
-                            none 
-                           
-                          
-                            3 
-                           
-                         
-                       
-                      
-                        False 
-                        12 
-                       
-                     
-                    
-                      
-                        True 
-                       
-                      
-                        13 
-                       
-                     
-                    
-                      
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        
-                           
-                       
-                      
-                        14 
-                       
-                     
-                    
-                      
-                        True 
-                        True 
-                        True 
-                        Send message 
-                        
-                          
-                            True 
-                            0 
-                            0 
-                            
-                              
-                                True 
-                                2 
-                                
-                                  
-                                    True 
-                                    gtk-jump-to 
-                                   
-                                  
-                                    False 
-                                    False 
-                                    0 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    _Send 
-                                    True 
-                                   
-                                  
-                                    False 
-                                    False 
-                                    1 
-                                   
-                                 
-                               
-                             
-                           
-                         
-                       
-                      
-                        False 
-                        15 
-                       
-                     
-                   
                   
                     False 
-                    2 
+                    True 
+                    1 
                    
                  
                
               
-                False 
-                True 
+                True 
+                True 
+                1 
                
              
             
-              
-                True 
-                6 
+              
+                True 
+                False 
                 
-                  
-                    True 
+                  
+                    True 
+                    True 
+                    True 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    True 
+                    Show a list of emoticons (Alt+M) 
+                    none 
+                    False 
                     
-                      
-                        160 
-                        120 
+                      
                         True 
-                        queue 
-                        
-                          
-                            160 
-                            120 
-                            True 
-                            False 
-                           
-                         
+                        False 
+                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                        gtk-missing-image 
+                        1 
                        
                       
                    
                   
                     False 
+                    True 
                     0 
                    
                   
                 
-                  
+                  
                     True 
-                    vertical 
+                    True 
+                    True 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    True 
+                    none 
+                    False 
                     
-                      
+                      
                         True 
-                        queue 
-                        
-                          
-                            320 
-                            240 
-                            True 
-                            False 
-                           
-                         
+                        False 
+                        gtk-bold 
+                        1 
+                       
+                      
+                   
+                  
+                    False 
+                    True 
+                    1 
+                   
+                  
+                
+                  
+                    True 
+                    False 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                   
+                  
+                    False 
+                    True 
+                    2 
+                   
+                 
+                
+                  
+                    True 
+                    True 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    True 
+                    True 
+                    Add this contact to roster (Ctrl+D) 
+                    none 
+                    
+                      
+                        True 
+                        False 
+                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                        gtk-add 
+                        1 
+                       
+                     
+                   
+                  
+                    False 
+                    False 
+                    3 
+                   
+                 
+                
+                  
+                    True 
+                    True 
+                    True 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    none 
+                    False 
+                    
+                      
+                        True 
+                        False 
+                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                        1 
+                       
+                     
+                   
+                  
+                    False 
+                    True 
+                    4 
+                   
+                 
+                
+                  
+                    True 
+                    True 
+                    True 
+                    none 
+                    
+                      
+                        True 
+                        False 
+                        gtk-missing-image 
+                        1 
+                       
+                     
+                   
+                  
+                    False 
+                    True 
+                    5 
+                   
+                 
+                
+                  
+                    True 
+                    True 
+                    True 
+                    none 
+                    
+                      
+                        True 
+                        False 
+                        gtk-missing-image 
+                        1 
+                       
+                     
+                   
+                  
+                    False 
+                    True 
+                    6 
+                   
+                 
+                
+                  
+                    True 
+                    True 
+                    True 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    True 
+                    Invite contacts to the conversation (Ctrl+G) 
+                    none 
+                    False 
+                    
+                      
+                        True 
+                        False 
+                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                        gtk-missing-image 
+                        1 
+                       
+                     
+                   
+                  
+                    False 
+                    True 
+                    7 
+                   
+                 
+                
+                  
+                    True 
+                    True 
+                    True 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    True 
+                    Show the contact's profile (Ctrl+I) 
+                    none 
+                    False 
+                    
+                      
+                        True 
+                        False 
+                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                        gtk-info 
+                        1 
+                       
+                     
+                   
+                  
+                    False 
+                    True 
+                    8 
+                   
+                 
+                
+                  
+                    True 
+                    True 
+                    True 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    True 
+                    Browse the chat history (Ctrl+H) 
+                    none 
+                    False 
+                    
+                      
+                        True 
+                        False 
+                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                        gtk-justify-fill 
+                        1 
+                       
+                     
+                   
+                  
+                    False 
+                    True 
+                    9 
+                   
+                 
+                
+                  
+                    True 
+                    False 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                   
+                  
+                    False 
+                    True 
+                    10 
+                   
+                 
+                
+                  
+                    True 
+                    True 
+                    True 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                    True 
+                    Show advanced functions (Alt+D) 
+                    none 
+                    False 
+                    
+                      
+                        True 
+                        False 
+                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                        gtk-execute 
+                        1 
+                       
+                     
+                   
+                  
+                    False 
+                    True 
+                    11 
+                   
+                 
+                
+                  
+                    False 
+                    True 
+                    
+                      
+                        True 
+                        False 
                        
                       
+                        False 
+                        True 
                         0 
                        
                      
+                    
+                      
+                        True 
+                        True 
+                        True 
+                        none 
+                        False 
+                        vertical 
+                        menu 
+                        adjustment1 
+                        audio-volume-muted
+audio-volume-high
+audio-volume-low
+audio-volume-medium 
+                       
+                      
+                        False 
+                        True 
+                        1 
+                       
+                     
+                    
+                      
+                        True 
+                        True 
+                        True 
+                        none 
+                        False 
+                        0.4699999988079071 
+                        vertical 
+                        menu 
+                        adjustment2 
+                        audio-mic-volume-muted
+audio-mic-volume-high
+audio-mic-volume-medium
+audio-mic-volume-low 
+                       
+                      
+                        False 
+                        True 
+                        2 
+                       
+                     
+                    
+                      
+                        # 
+                        True 
+                        True 
+                        True 
+                        none 
+                       
+                      
+                        True 
+                        True 
+                        3 
+                       
+                     
+                   
+                  
+                    False 
+                    True 
+                    12 
+                   
+                 
+                
+                  
+                    True 
+                    False 
+                   
+                  
+                    True 
+                    True 
+                    13 
+                   
+                 
+                
+                  
+                    True 
+                    False 
+                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     
                        
                    
                   
-                    1 
+                    True 
+                    True 
+                    14 
+                   
+                 
+                
+                  
+                    _Send 
+                    True 
+                    True 
+                    True 
+                    Send message 
+                    image4 
+                    True 
+                   
+                  
+                    False 
+                    True 
+                    15 
                    
                  
                
               
-                True 
-                True 
+                False 
+                True 
+                2 
                
               
            
           
+            True 
+            True 
             0 
            
           
        
       
+        True 
+        True 
         0 
        
     
    
-  
-    110 
-    1 
-    10 
-    10 
-   
-  
-    110 
-    1 
-    10 
-    10 
-   
   
+    False 
     False 
     True 
     mouse 
@@ -763,200 +746,297 @@ audio-mic-volume-low
     
       
         True 
+        False 
         4 
         3 
-        True 
         
           
-            1 
             True 
             True 
             True 
             none 
+            
+              
+                True 
+                False 
+                0 
+                <b>1</b> 
+                True 
+               
+             
            
           
-            GTK_FILL 
              
          
         
           
-            2 
             True 
             True 
             True 
             none 
+            0 
+            
+              
+                True 
+                False 
+                <b>2</b> abc 
+                True 
+               
+             
            
           
             1 
             2 
-            GTK_FILL 
              
          
         
           
-            3 
             True 
             True 
             True 
             none 
+            0 
+            
+              
+                True 
+                False 
+                <b>3</b> def 
+                True 
+               
+             
            
           
             2 
             3 
-            GTK_FILL 
              
          
         
           
-            4 
             True 
             True 
             True 
             none 
+            0 
+            
+              
+                True 
+                False 
+                <b>4</b> def 
+                True 
+               
+             
            
           
             1 
             2 
-            GTK_FILL 
              
          
         
           
-            5 
             True 
             True 
             True 
             none 
+            0 
+            
+              
+                True 
+                False 
+                <b>5</b> jkl 
+                True 
+               
+             
            
           
             1 
             2 
             1 
             2 
-            GTK_FILL 
              
          
         
           
-            6 
             True 
             True 
             True 
             none 
+            0 
+            
+              
+                True 
+                False 
+                <b>6</b> mno 
+                True 
+               
+             
            
           
             2 
             3 
             1 
             2 
-            GTK_FILL 
              
          
         
           
-            7 
             True 
             True 
             True 
             none 
+            
+              
+                True 
+                False 
+                <b>7</b> pqrs 
+                True 
+               
+             
            
           
             2 
             3 
-            GTK_FILL 
              
          
         
           
-            8 
             True 
             True 
             True 
             none 
+            0 
+            
+              
+                True 
+                False 
+                <b>8</b> tuv 
+                True 
+               
+             
            
           
             1 
             2 
             2 
             3 
-            GTK_FILL 
              
          
         
           
-            9 
             True 
             True 
             True 
             none 
+            0 
+            
+              
+                True 
+                False 
+                <b>9</b> wxyz 
+                True 
+               
+             
            
           
             2 
             3 
             2 
             3 
-            GTK_FILL 
              
          
         
           
-            * 
             True 
             True 
             True 
             none 
+            
+              
+                True 
+                False 
+                <b>*</b> 
+                True 
+               
+             
            
           
             3 
             4 
-            GTK_FILL 
              
          
         
           
-            0 
             True 
             True 
             True 
             none 
+            
+              
+                True 
+                False 
+                <b>0</b> 
+                True 
+               
+             
            
           
             1 
             2 
             3 
             4 
-            GTK_FILL 
              
          
         
           
-            # 
             True 
             True 
             True 
             none 
+            
+              
+                True 
+                False 
+                <b>#</b> 
+                True 
+               
+             
            
           
             2 
             3 
             3 
             4 
-            GTK_FILL 
              
          
        
      
    
+  
+    True 
+    False 
+    gtk-jump-to 
+   
  
diff --git a/data/gui/chat_to_muc_window.ui b/data/gui/chat_to_muc_window.ui
index 0c0c36e7e..4a8f30d8a 100644
--- a/data/gui/chat_to_muc_window.ui
+++ b/data/gui/chat_to_muc_window.ui
@@ -75,7 +75,7 @@ Select the contacts you want to invite
                   
                 
                 
-                  
+                  
                     True 
                    
                   
@@ -122,46 +122,13 @@ Select the contacts you want to invite
                
             
               
+                In_vite 
                 True 
                 True 
                 False 
+                image1 
+                True 
                 
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-jump-to 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            In_vite 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -179,4 +146,8 @@ Select the contacts you want to invite
       
       
   
+  
+    True 
+    gtk-jump-to 
+   
 
diff --git a/data/gui/dubbleinput_dialog.ui b/data/gui/dubbleinput_dialog.ui
index 159939468..8770d27df 100644
--- a/data/gui/dubbleinput_dialog.ui
+++ b/data/gui/dubbleinput_dialog.ui
@@ -1,50 +1,105 @@
-
+
 
-  
+    False 
     6 
     dialog 
-    False 
-    
-      
+      
         True 
+        False 
         vertical 
         6 
+        
+          
+            True 
+            False 
+            end 
+            
+              
+                gtk-cancel 
+                False 
+                True 
+                True 
+                True 
+                False 
+                False 
+                True 
+               
+              
+                False 
+                False 
+                0 
+               
+             
+            
+              
+                gtk-ok 
+                False 
+                True 
+                True 
+                True 
+                True 
+                False 
+                False 
+                True 
+               
+              
+                False 
+                False 
+                1 
+               
+             
+           
+          
+            False 
+            True 
+            end 
+            0 
+           
+         
         
           
             True 
+            False 
             6 
-            vertical 
             6 
             
               
                 True 
+                False 
                 12 
                 
                   
                     True 
+                    False 
                     gtk-dialog-question 
                     6 
                    
                   
                     False 
+                    True 
                     0 
                    
                  
                 
                   
                     True 
+                    False 
                     True 
                    
                   
+                    True 
+                    True 
                     1 
                    
                  
                
               
                 False 
+                True 
                 0 
                
              
@@ -63,6 +118,7 @@
             
               
                 True 
+                False 
                
               
                 False 
@@ -82,50 +138,10 @@
                
              
            
-          
-            1 
-           
-         
-        
-          
-            True 
-            end 
-            
-              
-                gtk-cancel 
-                True 
-                True 
-                True 
-                False 
-                True 
-               
-              
-                False 
-                False 
-                0 
-               
-             
-            
-              
-                gtk-ok 
-                True 
-                True 
-                True 
-                True 
-                False 
-                True 
-               
-              
-                False 
-                False 
-                1 
-               
-             
-           
           
             False 
-            end 
-            0 
+            True 
+            1 
            
          
        
diff --git a/data/gui/edit_groups_dialog.ui b/data/gui/edit_groups_dialog.ui
index d53d5257b..fab50a505 100644
--- a/data/gui/edit_groups_dialog.ui
+++ b/data/gui/edit_groups_dialog.ui
@@ -1,41 +1,77 @@
-
+
 
-  
+    False 
     6 
     Edit Groups 
     True 
     290 
     dialog 
-    
-      
+      
         True 
+        False 
         vertical 
         6 
-        
-          
+        
+          
             True 
+            False 
+            end 
+            
+              
+                gtk-close 
+                False 
+                True 
+                True 
+                True 
+                False 
+                False 
+                True 
+               
+              
+                False 
+                False 
+                0 
+               
+             
            
           
             False 
+            True 
+            end 
+            0 
+           
+         
+        
+          
+            True 
+            False 
+           
+          
+            False 
+            True 
             2 
            
          
         
           
             True 
+            False 
             True 
            
           
             False 
+            True 
             3 
            
          
         
           
             True 
+            False 
             6 
             
               
@@ -44,19 +80,23 @@
                 True 
                
               
+                True 
+                True 
                 0 
                
              
             
               
                 gtk-add 
+                False 
                 True 
                 True 
                 True 
                 True 
                 False 
+                False 
                 True 
-                 
               
                 False 
@@ -75,47 +115,24 @@
           
             True 
             True 
-            automatic 
-            automatic 
             in 
             
               
                 True 
                 True 
                 False 
+                
+                   
                
              
            
           
+            True 
+            True 
             5 
            
           
-        
-          
-            True 
-            end 
-            
-              
-                gtk-close 
-                True 
-                True 
-                True 
-                False 
-                True 
-               
-              
-                False 
-                False 
-                0 
-               
-             
-           
-          
-            False 
-            end 
-            0 
-           
-         
        
      
     
diff --git a/data/gui/esession_info_window.ui b/data/gui/esession_info_window.ui
index 9e6dee5b2..bd6489024 100644
--- a/data/gui/esession_info_window.ui
+++ b/data/gui/esession_info_window.ui
@@ -1,93 +1,46 @@
-
+
 
-  
+    False 
     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
     5 
     center-on-parent 
     dialog 
-    False 
     
-      
+      
         True 
+        False 
         vertical 
         2 
-        
-          
-            True 
-            
-              
-                32 
-                32 
-                True 
-               
-              
-                False 
-                0 
-               
-             
-            
-              
-                True 
-                0 
-               
-              
-                1 
-               
-             
-           
-          
-            1 
-           
-         
-        
-          
-            True 
-            4 
-            
-              
-                True 
-                (<b>ESession</b> info) 
-                True 
-                True 
-               
-              
-                False 
-                False 
-                10 
-                0 
-               
-             
-           
-          
-            False 
-            False 
-            2 
-           
-         
         
-          
+          
             True 
+            False 
             end 
             
               
+                False 
                 True 
                 True 
                 False 
-                False 
+                
                   
                     True 
+                    False 
                     0 
                     0 
                     
                       
                         True 
+                        False 
                         2 
                         
                           
                             True 
+                            False 
                             gtk-apply 
                            
                           
@@ -99,6 +52,7 @@
                         
                           
                             True 
+                            False 
                             _Verify 
                             True 
                            
@@ -122,11 +76,13 @@
             
               
                 gtk-close 
+                False 
                 True 
                 True 
                 False 
+                False 
                 True 
-                 
               
                 False 
@@ -137,10 +93,74 @@
                 
           
             False 
+            True 
             end 
             0 
            
          
+        
+          
+            True 
+            False 
+            
+              
+                32 
+                32 
+                True 
+                False 
+               
+              
+                False 
+                True 
+                0 
+               
+             
+            
+              
+                True 
+                False 
+                0 
+               
+              
+                True 
+                True 
+                1 
+               
+             
+           
+          
+            False 
+            True 
+            1 
+           
+         
+        
+          
+            True 
+            False 
+            4 
+            
+              
+                True 
+                False 
+                (<b>ESession</b> info) 
+                True 
+                True 
+               
+              
+                False 
+                False 
+                10 
+                0 
+               
+             
+           
+          
+            False 
+            False 
+            2 
+           
+         
        
      
     
diff --git a/data/gui/filetransfers.ui b/data/gui/filetransfers.ui
index 8933b714d..201d8e7c3 100644
--- a/data/gui/filetransfers.ui
+++ b/data/gui/filetransfers.ui
@@ -41,11 +41,11 @@
                     
                  
                  
               
            
@@ -81,12 +81,15 @@
             end 
             
               
+                Clean _up 
                 True 
                 False 
                 True 
                 True 
                 False 
                 Removes completed, cancelled and failed file transfers from the list 
+                image1 
+                True 
                 
                   
                     Remove file transfer from the list. 
@@ -94,42 +97,6 @@
                    
                  
                 
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-clear 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            Clean _up 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -139,48 +106,15 @@
               
             
               
+                _Pause 
                 True 
                 False 
                 True 
                 True 
                 False 
+                image2 
+                True 
                 
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-media-pause 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Pause 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -252,7 +186,7 @@
       
     
        
     
        
     
        
    
   
+    True 
+    gtk-clear 
+   
+  
+    True 
+    gtk-media-pause 
+   
    
diff --git a/data/gui/gajim_themes_window.ui b/data/gui/gajim_themes_window.ui
index 9b45b421e..184bf4727 100644
--- a/data/gui/gajim_themes_window.ui
+++ b/data/gui/gajim_themes_window.ui
@@ -25,6 +25,7 @@
   
     12 
     Gajim Themes Customization 
+    center-on-parent 
     dialog 
     
       
@@ -64,6 +65,7 @@
                   
                     True 
                     6 
+                    center 
                     
                       
                         gtk-add 
@@ -148,7 +150,7 @@
                        
                       
                         GTK_FILL 
-                         
                      
                     
@@ -165,7 +167,7 @@
                         1 
                         2 
                         GTK_FILL 
-                         
                     
@@ -182,7 +184,7 @@
                         2 
                         3 
                         GTK_FILL 
-                         
                     
@@ -197,7 +199,7 @@
                         3 
                         4 
                         GTK_FILL 
-                         
                     
@@ -211,8 +213,8 @@
                       
                         2 
                         3 
-                         
                      
                     
@@ -228,8 +230,8 @@
                         3 
                         1 
                         2 
-                         
                     
@@ -247,7 +249,7 @@
                         3 
                         2 
                         3 
-                         
                     
@@ -269,8 +271,8 @@
                         2 
                         3 
                         4 
-                         
                     
@@ -292,8 +294,8 @@
                         3 
                         3 
                         4 
-                         
                     
@@ -348,7 +350,7 @@
                     4 
                     5 
                     GTK_FILL 
-                     
                 
@@ -364,7 +366,7 @@
                     4 
                     5 
                     GTK_FILL 
-                     
                 
@@ -380,7 +382,7 @@
                     3 
                     4 
                     GTK_FILL 
-                     
                 
@@ -393,7 +395,7 @@
                     3 
                     4 
                     GTK_FILL 
-                     
                 
@@ -406,7 +408,7 @@
                     2 
                     3 
                     GTK_FILL 
-                     
                 
@@ -422,7 +424,7 @@
                     2 
                     3 
                     GTK_FILL 
-                     
                 
@@ -435,7 +437,7 @@
                   
                     2 
                     GTK_FILL 
-                     
                  
                 
@@ -448,7 +450,7 @@
                     5 
                     6 
                     GTK_FILL 
-                     
                 
@@ -464,7 +466,7 @@
                     5 
                     6 
                     GTK_FILL 
-                     
                 
@@ -478,7 +480,7 @@ Messages
                     7 
                     8 
                     GTK_FILL 
-                     
                 
@@ -494,7 +496,7 @@ Messages
                     7 
                     8 
                     GTK_FILL 
-                     
                 
@@ -520,7 +522,7 @@ Messages
                     8 
                     9 
                     GTK_FILL 
-                     
                 
@@ -536,7 +538,7 @@ Messages
                     8 
                     9 
                     GTK_FILL 
-                     
                 
diff --git a/data/gui/groupchat_control.ui b/data/gui/groupchat_control.ui
index d32b6b023..e31626749 100644
--- a/data/gui/groupchat_control.ui
+++ b/data/gui/groupchat_control.ui
@@ -1,29 +1,31 @@
-
+
 
-  
     True 
     
       
         True 
         3 
-        vertical 
         
           
             True 
+            False 
             1 
             3 
             3 
             
               
                 True 
+                False 
                 
                   
                     True 
+                    False 
                     
                       
                         True 
+                        False 
                         gtk-missing-image 
                        
                       
@@ -36,34 +38,42 @@
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         5 
-                        vertical 
                         
                           
                             True 
+                            False 
                             0 
                             <span weight="heavy" size="large">room jid</span> 
                             True 
                            
                           
+                            True 
+                            True 
                             0 
                            
                          
                         
                           
                             True 
+                            False 
                             0 
                             label 
                             True 
                             True 
                            
                           
+                            True 
+                            True 
                             1 
                            
                          
                        
                       
+                        True 
+                        True 
                         1 
                        
                      
@@ -85,12 +95,12 @@
             3 
             495 
             True 
-            
               
                 0 
                 True 
-                vertical 
+                False 
                 6 
                 
                   
@@ -98,14 +108,14 @@
                     60 
                     True 
                     True 
-                    automatic 
-                    automatic 
                     in 
                     
                        
                    
                   
+                    True 
+                    True 
                     0 
                    
                  
@@ -122,6 +132,7 @@
                    
                   
                     False 
+                    True 
                     1 
                    
                  
@@ -137,7 +148,6 @@
                 True 
                 True 
                 never 
-                automatic 
                 in 
                 
                   
@@ -155,15 +165,19 @@
               
              
           
+            True 
+            True 
             1 
            
          
         
           
             True 
+            False 
             
               
                 True 
+                False 
                 
                   
                     True 
@@ -176,6 +190,7 @@
                     
                       
                         True 
+                        False 
                         gtk-missing-image 
                         1 
                        
@@ -190,6 +205,7 @@
                 
               
                 False 
+                True 
                 0 
                
              
@@ -206,6 +222,7 @@
                 
                   
                     True 
+                    False 
                     gtk-bold 
                     1 
                    
@@ -213,16 +230,19 @@
                 
               
                 False 
+                True 
                 1 
                
              
             
               
                 True 
+                False 
                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                
               
                 False 
+                True 
                 2 
                
              
@@ -238,6 +258,7 @@
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     gtk-edit 
                     1 
@@ -262,6 +283,7 @@
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     gtk-properties 
                     1 
@@ -287,6 +309,7 @@
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     gtk-add 
                     1 
@@ -309,8 +332,9 @@
                 Browse the chat history (Ctrl+H) 
                 none 
                 
-                  
+                  
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     gtk-justify-fill 
                     1 
@@ -326,10 +350,12 @@
             
               
                 True 
+                False 
                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                
               
                 False 
+                True 
                 7 
                
              
@@ -346,11 +372,13 @@
                 
                   
                     True 
+                    False 
                     0 
                     0 
                     
                       
                         True 
+                        False 
                         gtk-execute 
                         1 
                        
@@ -367,65 +395,38 @@
             
               
                 True 
+                False 
                
               
+                True 
+                True 
                 9 
                
              
             
               
                 True 
+                False 
                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                 
                    
                
               
+                True 
+                True 
                 10 
                
              
             
               
+                _Send 
                 True 
                 True 
                 True 
                 Send message 
-                
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-jump-to 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Send 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
+                image1 
+                True 
                
               
                 False 
@@ -436,13 +437,21 @@
               
           
             False 
+            True 
             2 
            
          
        
       
+        True 
+        True 
         0 
        
       
    
+  
+    True 
+    False 
+    gtk-jump-to 
+   
                
diff --git a/data/gui/history_manager.ui b/data/gui/history_manager.ui
index 1f206ecb4..27ad1d614 100644
--- a/data/gui/history_manager.ui
+++ b/data/gui/history_manager.ui
@@ -212,48 +212,16 @@ If you plan to do massive deletions, please make sure Gajim is not running. Gene
              
             
               
+                _Search Database 
                 True 
                 True 
                 True 
                 True 
                 False 
+                image1 
+                True 
+                bottom 
                 
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-find 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Search Database 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -345,4 +313,8 @@ If you plan to do massive deletions, please make sure Gajim is not running. Gene
       save_button 
            
    
+  
+    True 
+    gtk-find 
+   
       
diff --git a/data/gui/history_window.ui b/data/gui/history_window.ui
index 7000914ae..37994d07e 100644
--- a/data/gui/history_window.ui
+++ b/data/gui/history_window.ui
@@ -1,63 +1,49 @@
-
+
 
-  
-    
-      
-       
-    
-      
-        
-      
-        
-      
-        
-     
-   
+  
   
+    False 
     Conversation History 
     history 
     650 
     450 
-    
       
         True 
+        False 
         12 
-        vertical 
         6 
         
           
             True 
+            False 
             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-            vertical 
             6 
             
               
                 True 
+                False 
                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                 6 
                 
-                  
-                    True 
-                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                    liststore1 
-                    0 
-                    
+                    True 
+                    ● 
+                    True 
+                    Enter name / JID of contact or groupchat 
                    
                   
+                    True 
+                    True 
                     0 
                    
                   
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     Search: 
                    
@@ -68,26 +54,30 @@
                   
                  
                 
-                  
+                  
                     True 
                     False 
                     True 
                     True 
-                     
                   
                     False 
+                    True 
                     2 
                    
                   
                 
                   
                     _In date search 
+                    False 
                     True 
                     False 
                     False 
                     Searching only in the selected day  
+                    False 
                     True 
+                    0.5 
                     True 
                    
                   
@@ -99,6 +89,7 @@
                  
               
                 False 
+                True 
                 0 
                
              
@@ -114,17 +105,18 @@
                     
                       
                         True 
-                        vertical 
+                        False 
                         6 
                         
                           
                             True 
                             True 
-                             
                           
                             False 
+                            True 
                             0 
                            
                          
@@ -141,8 +133,6 @@
                       
                         True 
                         True 
-                        automatic 
-                        automatic 
                         etched-in 
                         
                           
                     True 
                     True 
-                    automatic 
-                    automatic 
                     in 
                     
                       
                         True 
                         True 
                         True 
-                        
+                           
                        
                      
                    
@@ -182,25 +173,33 @@
                  
                
               
+                True 
+                True 
                 1 
                
               
            
           
+            True 
+            True 
             0 
            
          
         
           
             True 
+            False 
             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
             
               
                 _Log conversation history 
+                False 
                 True 
                 True 
                 False 
+                False 
                 True 
+                0.5 
                 True 
                 True 
                
@@ -230,23 +229,27 @@
             
           
             False 
+            True 
             1 
            
          
         
           
             True 
+            False 
             6 
             end 
             
               
                 gtk-close 
+                False 
                 True 
                 True 
                 True 
                 False 
+                False 
                 True 
-                 
               
                 False 
diff --git a/data/gui/input_dialog.ui b/data/gui/input_dialog.ui
index 1e475eb2b..64c7269c1 100644
--- a/data/gui/input_dialog.ui
+++ b/data/gui/input_dialog.ui
@@ -1,51 +1,106 @@
-
+
 
-  
+    False 
     6 
     dialog 
-    False 
-    
-      
+      
         True 
+        False 
         vertical 
         6 
+        
+          
+            True 
+            False 
+            end 
+            
+              
+                gtk-cancel 
+                False 
+                True 
+                True 
+                True 
+                False 
+                False 
+                True 
+               
+              
+                False 
+                False 
+                0 
+               
+             
+            
+              
+                gtk-ok 
+                False 
+                True 
+                True 
+                True 
+                True 
+                False 
+                False 
+                True 
+               
+              
+                False 
+                False 
+                1 
+               
+             
+           
+          
+            False 
+            True 
+            end 
+            0 
+           
+         
         
           
             True 
+            False 
             6 
-            vertical 
             6 
             
               
                 True 
+                False 
                 12 
                 
                   
                     True 
+                    False 
                     gtk-dialog-question 
                     6 
                    
                   
                     False 
+                    True 
                     0 
                    
                  
                 
                   
                     True 
+                    False 
                     True 
                    
                   
+                    True 
+                    True 
                     1 
                    
                  
                
               
                 False 
+                True 
                 0 
                
              
@@ -62,50 +117,10 @@
                       
              
            
-          
-            1 
-           
-         
-        
-          
-            True 
-            end 
-            
-              
-                gtk-cancel 
-                True 
-                True 
-                True 
-                False 
-                True 
-               
-              
-                False 
-                False 
-                0 
-               
-             
-            
-              
-                gtk-ok 
-                True 
-                True 
-                True 
-                True 
-                False 
-                True 
-               
-              
-                False 
-                False 
-                1 
-               
-             
-           
           
             False 
-            end 
-            0 
+            True 
+            1 
            
          
        
diff --git a/data/gui/input_text_dialog.ui b/data/gui/input_text_dialog.ui
index 68fc57979..c8584f696 100644
--- a/data/gui/input_text_dialog.ui
+++ b/data/gui/input_text_dialog.ui
@@ -1,89 +1,32 @@
-
+
 
-  
+    False 
     6 
     400 
     dialog 
-    False 
-    
-      
+      
         True 
+        False 
         vertical 
         6 
-        
-          
-            True 
-            6 
-            vertical 
-            6 
-            
-              
-                True 
-                12 
-                
-                  
-                    True 
-                    gtk-dialog-question 
-                    6 
-                   
-                  
-                    False 
-                    0 
-                   
-                 
-                
-                  
-                    True 
-                    True 
-                   
-                  
-                    1 
-                   
-                 
-               
-              
-                False 
-                0 
-               
-             
-            
-              
-                True 
-                True 
-                automatic 
-                never 
-                in 
-                
-                  
-                    True 
-                    True 
-                    word 
-                   
-                 
-               
-              
-                1 
-               
-             
-           
-          
-            1 
-           
-         
         
-          
+          
             True 
+            False 
             end 
             
               
                 gtk-cancel 
+                False 
                 True 
                 True 
                 True 
                 False 
+                False 
                 True 
                
               
@@ -95,11 +38,13 @@
             
               
                 gtk-ok 
+                False 
                 True 
                 True 
                 True 
                 True 
                 False 
+                False 
                 True 
                
               
@@ -111,10 +56,81 @@
                
           
             False 
+            True 
             end 
             0 
            
           
+        
+          
+            True 
+            False 
+            6 
+            6 
+            
+              
+                True 
+                False 
+                12 
+                
+                  
+                    True 
+                    False 
+                    gtk-dialog-question 
+                    6 
+                   
+                  
+                    False 
+                    True 
+                    0 
+                   
+                 
+                
+                  
+                    True 
+                    False 
+                    True 
+                   
+                  
+                    True 
+                    True 
+                    1 
+                   
+                 
+               
+              
+                False 
+                True 
+                0 
+               
+             
+            
+              
+                True 
+                True 
+                never 
+                in 
+                
+                  
+                    True 
+                    True 
+                    word 
+                   
+                 
+               
+              
+                True 
+                True 
+                1 
+               
+             
+           
+          
+            False 
+            True 
+            1 
+           
+         
        
       
     
diff --git a/data/gui/join_groupchat_window.ui b/data/gui/join_groupchat_window.ui
index c2db0bc17..9e018f731 100644
--- a/data/gui/join_groupchat_window.ui
+++ b/data/gui/join_groupchat_window.ui
@@ -1,21 +1,32 @@
-
+
 
-  
+    True 
+    False 
+    gtk-find 
+   
+  
+    True 
+    False 
+    gtk-apply 
+   
   
+    False 
     6 
     Join Group Chat 
     dialog 
-    
       
         True 
-        vertical 
+        False 
         12 
         
           
             True 
+            False 
             8 
             2 
             12 
@@ -26,14 +37,14 @@
                 True 
                 True 
                 True 
-                 
               
                 1 
                 2 
                 3 
                 4 
-                 
              
             
@@ -41,19 +52,20 @@
                 True 
                 True 
                 True 
-                  
               
                 1 
                 2 
                 2 
                 3 
-                 
              
             
               
                 True 
+                False 
                 0 
                 Room: 
                
@@ -61,12 +73,13 @@
                 3 
                 4 
                 GTK_FILL 
-                 
             
               
                 True 
+                False 
                 0 
                 Nickname: 
                
@@ -74,12 +87,13 @@
                 2 
                 3 
                 GTK_FILL 
-                 
             
               
                 True 
+                False 
                 0 
                 Recently: 
                
@@ -87,13 +101,14 @@
                 1 
                 2 
                 GTK_FILL 
-                 
             
               
                 True 
-                False 
+                 
               
                 1 
@@ -107,6 +122,7 @@
             
               
                 True 
+                False 
                 0 
                 Password: 
                
@@ -114,7 +130,7 @@
                 5 
                 6 
                 GTK_FILL 
-                  
              
             
@@ -129,7 +145,7 @@
                 2 
                 5 
                 6 
-                 
             
@@ -140,6 +156,7 @@
                 True 
                 False 
                 True 
+                0 
                 True 
                 
               
@@ -147,24 +164,26 @@
                 7 
                 8 
                 GTK_FILL 
-                 
                  
             
               
+                False 
                 True 
                 0 
                 Account 
                
               
                 GTK_FILL 
-                 
              
             
               
+                False 
                 True 
-                 
               
                 1 
@@ -180,20 +199,22 @@
                 True 
                 False 
                 True 
+                0 
                 True 
-                   
               
                 2 
                 6 
                 7 
                 GTK_FILL 
-                 
                
             
               
                 True 
+                False 
                 0 
                 Server: 
                
@@ -205,16 +226,10 @@
             
               
                 True 
+                False 
                 6 
                 
-                  
-                    True 
-                    liststore1 
-                    0 
-                   
-                  
-                    0 
-                   
+                   
                 
                   
@@ -224,9 +239,12 @@
                     True 
                     image1 
                     True 
-                     
                   
+                    True 
+                    True 
+                    end 
                     1 
                    
                  
@@ -242,12 +260,14 @@
            
           
             False 
+            True 
             0 
            
          
         
           
             True 
+            False 
             12 
             end 
             
@@ -258,7 +278,7 @@
                 True 
                 False 
                 True 
-                  
               
                 False 
@@ -268,48 +288,15 @@
               
             
               
+                _Join 
                 True 
                 True 
                 True 
                 True 
                 False 
-                
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-apply 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Join 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
+                image2 
+                True 
+                 
               
                 False 
@@ -320,6 +307,7 @@
               
           
             False 
+            True 
             end 
             1 
            
@@ -327,14 +315,4 @@
       
     
   
-  
-    
-      
-       
-   
-  
-    True 
-    gtk-find 
-   
  
diff --git a/data/gui/manage_bookmarks_window.ui b/data/gui/manage_bookmarks_window.ui
index 752aeaa30..f61987d6c 100644
--- a/data/gui/manage_bookmarks_window.ui
+++ b/data/gui/manage_bookmarks_window.ui
@@ -51,7 +51,7 @@
                   
                     True 
                     6 
-                    end 
+                    center 
                     
                       
                         gtk-add 
@@ -113,7 +113,7 @@
                     4 
                     5 
                     GTK_FILL 
-                      
                 
@@ -128,7 +128,7 @@
                     2 
                     4 
                     5 
-                     
                 
@@ -142,7 +142,7 @@
                     2 
                     3 
                     4 
-                     
                 
@@ -156,7 +156,7 @@
                     3 
                     4 
                     GTK_FILL 
-                     
                 
@@ -170,7 +170,7 @@
                     2 
                     3 
                     GTK_FILL 
-                     
                 
@@ -184,7 +184,7 @@
                     2 
                     2 
                     3 
-                     
                 
@@ -198,7 +198,7 @@
                     2 
                     1 
                     2 
-                     
                 
@@ -212,7 +212,7 @@
                     1 
                     2 
                     GTK_FILL 
-                     
                 
@@ -224,7 +224,7 @@
                     
                   
                     GTK_FILL 
-                     
                 
                 
@@ -236,7 +236,7 @@
                   
                     1 
                     2 
-                     
                  
                 
@@ -250,7 +250,7 @@
                     6 
                     7 
                     GTK_FILL 
-                     
                 
diff --git a/data/gui/manage_pep_services_window.ui b/data/gui/manage_pep_services_window.ui
index e73aaea32..778a99775 100644
--- a/data/gui/manage_pep_services_window.ui
+++ b/data/gui/manage_pep_services_window.ui
@@ -55,38 +55,14 @@
              
             
               
+                _Configure 
                 True 
                 True 
                 True 
                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
+                image1 
+                True 
                 
-                  
-                    True 
-                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                    
-                      
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        gtk-preferences 
-                       
-                      
-                        0 
-                       
-                     
-                    
-                      
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        _Configure 
-                        True 
-                       
-                      
-                        1 
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -120,4 +96,8 @@
       
       
   
+  
+    True 
+    gtk-preferences 
+   
 
diff --git a/data/gui/manage_proxies_window.ui b/data/gui/manage_proxies_window.ui
index 0fe8109e5..ce1b419a2 100644
--- a/data/gui/manage_proxies_window.ui
+++ b/data/gui/manage_proxies_window.ui
@@ -22,6 +22,7 @@
   
     12 
     Manage Proxy Profiles 
+    center-on-parent 
     dialog 
     
@@ -63,7 +64,7 @@
                   
                     True 
                     6 
-                    end 
+                    center 
                     
                       
                         gtk-add 
@@ -137,7 +138,7 @@
                               
                                 1 
                                 2 
-                                 
                               
                             
@@ -172,7 +173,7 @@
                                 1 
                                 2 
                                 GTK_FILL 
-                                 
                             
@@ -185,7 +186,7 @@
                                 
                               
                                 GTK_FILL 
-                                 
                              
                            
@@ -237,7 +238,7 @@
                                 1 
                                 2 
                                 GTK_FILL 
-                                
@@ -249,7 +250,7 @@
                               
                                 1 
                                 2 
-                                 
                              
                             
@@ -262,7 +263,7 @@
                               
                               
                                 GTK_FILL 
-                                 
                              
                             
@@ -280,7 +281,7 @@
                                 4 
                                 5 
                                 GTK_FILL 
-                                 
                             
@@ -294,7 +295,7 @@
                                 2 
                                 5 
                                 6 
-                                 
                             
@@ -309,7 +310,7 @@
                                 2 
                                 6 
                                 7 
-                                 
                             
@@ -324,7 +325,7 @@
                                 5 
                                 6 
                                 GTK_FILL 
-                                 
                             
@@ -339,7 +340,7 @@
                                 6 
                                 7 
                                 GTK_FILL 
-                                 
                             
@@ -354,7 +355,7 @@
                                 2 
                                 3 
                                 GTK_FILL 
-                                 
                             
@@ -368,7 +369,7 @@
                                 2 
                                 3 
                                 4 
-                                 
                             
@@ -382,7 +383,7 @@
                                 2 
                                 2 
                                 3 
-                                 
                             
@@ -397,7 +398,7 @@
                                 3 
                                 4 
                                 GTK_FILL 
-                                 
                           
diff --git a/data/gui/manage_sounds_window.ui b/data/gui/manage_sounds_window.ui
index b1243a1eb..798413880 100644
--- a/data/gui/manage_sounds_window.ui
+++ b/data/gui/manage_sounds_window.ui
@@ -7,6 +7,7 @@
     350 
     6 
     Manage sounds 
+    center-on-parent 
     dialog 
     
diff --git a/data/gui/message_window.ui b/data/gui/message_window.ui
index b801f8290..da9982ba4 100644
--- a/data/gui/message_window.ui
+++ b/data/gui/message_window.ui
@@ -1,34 +1,19 @@
-
+
 
-  
-    480 
-    440 
-    
-      
-        True 
-        2 
-        
-          
-            True 
-            True 
-            0 
-           
-         
-       
-     
-   
+  
   
     True 
+    False 
     False 
     
       
         True 
+        False 
         4 
         
           
             True 
+            False 
             gtk-missing-image 
            
           
@@ -39,25 +24,32 @@
           
         
           
+            70 
             True 
+            False 
             0 
             True 
             end 
             9 
            
           
+            False 
+            False 
             1 
            
          
         
           
+            False 
             True 
             True 
             True 
+            False 
             none 
             
               
                 True 
+                False 
                 gtk-close 
                 1 
                
@@ -72,4 +64,23 @@
         
      
    
+  
+    False 
+    480 
+    440 
+    
+      
+        True 
+        False 
+        2 
+        
+          
+            True 
+            False 
+            True 
+           
+         
+       
+     
+   
    
diff --git a/data/gui/plugins_window.ui b/data/gui/plugins_window.ui
index 357815983..2ddcd5efa 100644
--- a/data/gui/plugins_window.ui
+++ b/data/gui/plugins_window.ui
@@ -1,39 +1,55 @@
-
+
 
-  
+    True 
+    False 
+    gtk-apply 
+   
+  
+    True 
+    False 
+    gtk-cancel 
+   
+  
+    True 
+    False 
+    gtk-preferences 
+   
   
     650 
     500 
+    False 
     6 
     Plugins 
     650 
     500 
     dialog 
-    
       
         True 
-        vertical 
+        False 
         6 
         
           
             True 
             True 
-            
               
                 True 
                 True 
-                250 
+                True 
                 
                   
                     True 
+                    False 
                     0 
                     
                       
                         True 
-                        vertical 
+                        False 
                         
                           
                             True 
@@ -48,50 +64,32 @@
                               
                            
                           
+                            True 
+                            True 
                             0 
                            
                          
                         
                           
                             True 
+                            False 
                             0 
                             none 
                             0 
                             
                               
+                                Install from zip 
                                 True 
                                 True 
                                 True 
-                                
-                                  
-                                    True 
-                                    
-                                      
-                                        True 
-                                        gtk-apply 
-                                       
-                                      
-                                        0 
-                                       
-                                     
-                                    
-                                      
-                                        True 
-                                        0 
-                                        Install from zip 
-                                       
-                                      
-                                        1 
-                                       
-                                     
-                                   
-                                 
+                                image1 
+                                 
                              
                            
                           
                             False 
+                            True 
                             5 
                             1 
                            
@@ -107,104 +105,125 @@
                 
                   
                     True 
+                    False 
                     6 
-                    vertical 
                     6 
                     
                       
                         True 
+                        False 
                         0 
                         <empty> 
-                        True 
                         True 
+                        
+                           
                        
                       
                         False 
+                        True 
                         0 
                        
                      
                     
                       
                         True 
+                        False 
                         6 
                         
                           
                             True 
+                            False 
                             Version: 
                            
                           
                             False 
+                            True 
                             0 
                            
                          
                         
                           
                             True 
+                            False 
                             0 
-                            <empty> 
+                            <empty> 
                             True 
                            
                           
+                            True 
+                            True 
                             1 
                            
                          
                        
                       
                         False 
+                        True 
                         1 
                        
                      
                     
                       
                         True 
+                        False 
                         6 
                         
                           
                             True 
+                            False 
                             0 
                             Authors: 
                            
                           
                             False 
+                            True 
                             0 
                            
                          
                         
                           
                             True 
+                            False 
                             0 
                             0 
-                            <empty> 
+                            <empty> 
                             word-char 
                             True 
                             end 
                            
                           
+                            True 
+                            True 
                             1 
                            
                          
                        
                       
                         False 
+                        True 
                         2 
                        
                      
                     
                       
                         True 
+                        False 
                         
                           
                             True 
+                            False 
                             Homepage: 
                            
                           
                             False 
+                            True 
                             0 
                            
                          
                         
                           
-                            homepage url 
+                            homepage url 
                             True 
                             True 
                             True 
@@ -213,28 +232,35 @@
                             0 
                            
                           
+                            True 
+                            True 
                             1 
                            
                          
                        
                       
                         False 
+                        True 
                         3 
                        
                      
                     
                       
                         True 
+                        False 
                         
                           
                             True 
+                            False 
                             
                               
                                 True 
+                                False 
                                 Description: 
                                
                               
                                 False 
+                                True 
                                 0 
                                
                              
@@ -244,6 +270,7 @@
                            
                           
                             False 
+                            True 
                             0 
                            
                          
@@ -251,56 +278,38 @@
                           
                             True 
                             True 
-                            automatic 
-                            automatic 
+                            in 
                             
                                
                            
                           
+                            True 
+                            True 
                             1 
                            
                           
                        
                       
+                        True 
+                        True 
                         4 
                        
                      
                     
                       
                         True 
+                        False 
                         5 
                         end 
                         
                           
+                            Uninstall 
                             True 
                             True 
                             True 
-                            
-                              
-                                True 
-                                
-                                  
-                                    True 
-                                    gtk-cancel 
-                                   
-                                  
-                                    0 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    0 
-                                    Uninstall 
-                                   
-                                  
-                                    1 
-                                   
-                                 
-                               
-                             
+                            image2 
+                             
                           
                             False 
@@ -310,34 +319,12 @@
                           
                         
                           
+                            Configure 
                             True 
                             True 
                             True 
-                            
-                              
-                                True 
-                                
-                                  
-                                    True 
-                                    gtk-preferences 
-                                   
-                                  
-                                    0 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    0 
-                                    Configure 
-                                   
-                                  
-                                    1 
-                                   
-                                 
-                               
-                             
+                            image3 
+                             
                           
                             False 
@@ -348,13 +335,14 @@
                          
                       
                         False 
+                        True 
                         5 
                        
                      
                     
                   
                     True 
-                    True 
+                    False 
                    
                  
                
@@ -362,6 +350,7 @@
             
               
                 True 
+                False 
                 Installed 
                
               
@@ -376,12 +365,15 @@
               
             
           
+            True 
+            True 
             0 
            
          
         
           
             True 
+            False 
             15 
             end 
             
@@ -391,7 +383,7 @@
                 True 
                 True 
                 True 
-                  
               
                 False 
@@ -402,6 +394,7 @@
              
           
             False 
+            True 
             1 
            
          
diff --git a/data/gui/preferences_window.ui b/data/gui/preferences_window.ui
index d9ea88655..43068b213 100644
--- a/data/gui/preferences_window.ui
+++ b/data/gui/preferences_window.ui
@@ -1,21 +1,30 @@
-
+
 
-  
-    20 
     1 
     1440 
+    20 
     1 
     10 
    
   
-    12 
     1 
     720 
+    12 
     1 
     10 
    
+  
+    True 
+    False 
+    gtk-revert-to-saved 
+   
+  
+    True 
+    False 
+    gtk-open 
+   
   
     
       
@@ -149,47 +158,68 @@
       
     
     
+  
+    
+      
+       
+   
   
+    False 
     6 
     Preferences 
     preferences 
     dialog 
-    
       
         True 
-        vertical 
+        False 
         6 
         
           
             True 
             True 
             False 
-            
               
                 True 
+                False 
                 12 
-                vertical 
                 12 
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            vertical 
                             6 
                             
                               
@@ -199,8 +229,9 @@
                                 False 
                                 If checked, Gajim will display avatars of contacts in roster window and in group chats 
                                 True 
+                                0 
                                 True 
-                                 
                               
                                 False 
@@ -216,8 +247,9 @@
                                 False 
                                 If checked, Gajim will display status messages of contacts under the contact name in roster window and in group chats 
                                 True 
+                                0 
                                 True 
-                                   
                               
                                 False 
@@ -227,14 +259,15 @@
                               
                             
                               
-                                Display e_xtra information of contacts in roster (mood, activity, ...) 
+                                Display e_xtra information of contacts in roster (mood, activity, ...)m_ood of contacts in roster 
                                 True 
                                 True 
                                 False 
                                 If checked, Gajim will display the mood of contacts in the roster window 
                                 True 
+                                0 
                                 True 
-                                 
                               
                                 False 
@@ -245,14 +278,17 @@
                             
                               
                                 True 
+                                False 
                                 6 
                                 
                                   
                                     True 
+                                    False 
                                     Sort contacts by status 
                                    
                                   
                                     False 
+                                    True 
                                     0 
                                    
                                  
@@ -263,11 +299,13 @@
                                     True 
                                     False 
                                     True 
+                                    0 
                                     True 
-                                     
                                   
                                     False 
+                                    True 
                                     1 
                                    
                                  
@@ -278,15 +316,20 @@
                                     True 
                                     False 
                                     True 
+                                    0 
                                     True 
-                                       
                                   
+                                    True 
+                                    True 
                                     2 
                                    
                                  
                                
                               
+                                True 
+                                True 
                                 3 
                                
                              
@@ -297,6 +340,7 @@
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         <b>Roster Appearance</b> 
                         True 
@@ -305,24 +349,28 @@
                    
                   
                     False 
+                    True 
                     0 
                    
                  
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                             7 
                             2 
@@ -331,6 +379,7 @@
                             
                               
                                 True 
+                                False 
                                 0 
                                 1 
                                 _Window behavior: 
@@ -346,7 +395,8 @@
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
@@ -356,10 +406,12 @@
                             
                               
                                 True 
+                                False 
                                 If not disabled, Gajim will replace ascii smilies like ':)' with equivalent animated or static graphical emoticons 
                                 
                                   
                                     True 
+                                    False 
                                     0 
                                     1 
                                     _Emoticons: 
@@ -378,8 +430,9 @@
                                 False 
                                 Hide all buttons in chat windows 
                                 True 
+                                0 
                                 True 
-                                 
                               
                                 2 
@@ -396,8 +449,9 @@
                                 False 
                                 Some messages may include rich content (formatting, colors etc). If checked, Gajim will just display the raw message text. 
                                 True 
+                                0 
                                 True 
-                                   
                               
                                 2 
@@ -413,8 +467,9 @@
                                 False 
                                 If checked, Gajim will highlight spelling errors in input fields of chat windows. If no language is explicitly set via right click on the input field, the default language will be used for this contact or group chat. 
                                 True 
+                                0 
                                 True 
-                                     
                               
                                 2 
@@ -427,8 +482,9 @@
                               
                                 50 
                                 True 
+                                False 
                                 liststore6 
-                                
                                   
@@ -446,6 +502,7 @@
                             
                               
                                 True 
+                                False 
                                 0 
                                 1 
                                 _Show roster on startup: 
@@ -462,8 +519,9 @@
                               
                                 50 
                                 True 
+                                False 
                                 liststore7 
-                                
                                   
@@ -484,8 +542,9 @@
                                 True 
                                 True 
                                 False 
+                                0 
                                 True 
-                                   
                               
                                 2 
@@ -500,6 +559,7 @@
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         <b>Chat Appearance</b> 
                         True 
@@ -508,6 +568,7 @@
                    
                   
                     False 
+                    True 
                     1 
                    
                  
@@ -516,6 +577,7 @@
             
               
                 True 
+                False 
                 General 
                
               
@@ -525,47 +587,53 @@
             
               
                 True 
+                False 
                 12 
-                vertical 
                 6 
                 
                   
                     True 
+                    False 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         12 
                         
                           
                             True 
-                            vertical 
+                            False 
                             6 
                             
                               
                                 True 
+                                False 
                                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                                 6 
                                 
                                   
                                     True 
+                                    False 
                                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                                     0 
                                     When new event is received: 
                                    
                                   
                                     False 
+                                    True 
                                     0 
                                    
                                  
                                 
                                   
                                     True 
+                                    False 
                                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                                     liststore5 
-                                    
                                       
@@ -574,11 +642,15 @@
                                       
                                    
                                   
+                                    True 
+                                    True 
                                     1 
                                    
                                  
                                
                               
+                                False 
+                                True 
                                 0 
                                
                              
@@ -590,10 +662,13 @@
                                 False 
                                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                                 True 
+                                0 
                                 True 
-                                 
                               
+                                False 
+                                False 
                                 1 
                                
                              
@@ -605,8 +680,9 @@
                                 False 
                                 Gajim will notify you via a popup window in the bottom right of the screen about contacts that just signed out 
                                 True 
+                                0 
                                 True 
-                                 
                               
                                 False 
@@ -621,8 +697,9 @@
                                 True 
                                 False 
                                 True 
+                                0 
                                 True 
-                                   
                               
                                 False 
@@ -634,17 +711,19 @@
                               
                                 True 
                                 False 
+                                False 
                                 True 
                                 0 
                                 none 
                                 
                                   
                                     True 
+                                    False 
                                     12 
                                     
                                       
                                         True 
-                                        vertical 
+                                        False 
                                         6 
                                         
                                           
@@ -654,8 +733,9 @@
                                             False 
                                             If checked, Gajim will show a notification when a new e-mail is received via GMail 
                                             True 
+                                            0 
                                             True 
-                                             
                                           
                                             False 
@@ -671,8 +751,9 @@
                                             False 
                                             If checked, Gajim will also include information about the sender of new emails 
                                             True 
+                                            0 
                                             True 
-                                               
                                           
                                             False 
@@ -687,6 +768,7 @@
                                 
                                   
                                     True 
+                                    False 
                                     <b>GMail Options</b> 
                                     True 
                                    
@@ -701,22 +783,26 @@
                             
                               
                                 True 
+                                False 
                                 6 
                                 
                                   
                                     True 
+                                    False 
                                     Show notification area icon: 
                                    
                                   
                                     False 
+                                    True 
                                     0 
                                    
                                  
                                 
                                   
                                     True 
+                                    False 
                                     liststore4 
-                                    
                                       
@@ -725,12 +811,15 @@
                                       
                                    
                                   
+                                    True 
+                                    True 
                                     1 
                                    
                                  
                                
                               
                                 False 
+                                True 
                                 5 
                                
                              
@@ -741,6 +830,7 @@
                     
                       
                         True 
+                        False 
                         <b>Visual Notifications</b> 
                         True 
                        
@@ -748,29 +838,33 @@
                        
                   
                     False 
+                    True 
                     0 
                    
                  
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         6 
                         12 
                         
                           
                             True 
-                            vertical 
+                            False 
                             6 
                             
                               
                                 True 
+                                False 
                                 6 
                                 
                                   
@@ -779,11 +873,13 @@
                                     True 
                                     False 
                                     True 
+                                    0 
                                     True 
-                                     
                                   
                                     False 
+                                    True 
                                     0 
                                    
                                  
@@ -794,15 +890,18 @@
                                     True 
                                     True 
                                     True 
-                                     
                                   
                                     False 
+                                    True 
                                     1 
                                    
                                  
                                
                               
+                                False 
+                                True 
                                 0 
                                
                              
@@ -813,10 +912,13 @@
                                 True 
                                 False 
                                 True 
+                                0 
                                 True 
-                                 
                               
+                                False 
+                                True 
                                 1 
                                
                              
@@ -827,6 +929,7 @@
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         <b>Sounds</b> 
                         True 
@@ -835,6 +938,7 @@
                    
                   
                     False 
+                    True 
                     1 
                    
                  
@@ -846,6 +950,7 @@
             
               
                 True 
+                False 
                 True 
                 Notifications 
                
@@ -857,24 +962,31 @@
             
               
                 True 
+                False 
                 12 
-                vertical 
                 12 
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     0 
+                    0 
                     none 
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         6 
+                        0 
+                        0 
+                        0 
                         12 
                         
                           
                             True 
+                            False 
                             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                             2 
                             2 
@@ -883,8 +995,9 @@
                             
                               
                                 True 
+                                False 
                                 liststore3 
-                                
                                   
@@ -897,15 +1010,18 @@
                                 2 
                                 1 
                                 2 
+                                                 
                              
                             
                               
                                 True 
+                                False 
                                 Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to display in chat windows. 
                                 
                                   
                                     True 
+                                    False 
                                     0 
                                     _Display chat state notifications: 
                                     True 
@@ -921,10 +1037,12 @@
                             
                               
                                 True 
+                                False 
                                 Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to send to the other party. 
                                 
                                   
                                     True 
+                                    False 
                                     0 
                                     _Send chat state notifications: 
                                     True 
@@ -938,8 +1056,9 @@
                             
                               
                                 True 
+                                False 
                                 liststore2 
-                                
                                   
@@ -950,6 +1069,7 @@
                               
                                 1 
                                 2 
+                                 
                               
                            
@@ -959,6 +1079,7 @@
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         <b>Chat state notifications</b> 
                         True 
@@ -967,17 +1088,23 @@
                    
                   
                     False 
+                    True 
                     0 
                    
                  
+                
+                   
                 
               
                 2 
+                False 
                
              
             
               
                 True 
+                False 
                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                 Personal Events 
                
@@ -989,23 +1116,26 @@
             
               
                 True 
+                False 
                 12 
-                vertical 
                 12 
                 
                   
                     True 
+                    False 
                     True 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             2 
                             4 
                             12 
@@ -1018,8 +1148,9 @@
                                 False 
                                 If checked, Gajim will change status to Away when the computer is unused. 
                                 True 
+                                0 
                                 True 
-                                 
                               
                                 GTK_FILL 
@@ -1034,8 +1165,9 @@
                                 False 
                                 If checked, Gajim will change status to Not Available when the computer has not been used even longer 
                                 True 
+                                0 
                                 True 
-                                   
                               
                                 1 
@@ -1047,6 +1179,7 @@
                             
                               
                                 True 
+                                False 
                                 0 
                                 minutes 
                                
@@ -1060,6 +1193,7 @@
                             
                               
                                 True 
+                                False 
                                 0 
                                 minutes 
                                
@@ -1075,6 +1209,7 @@
                             
                               
                                 True 
+                                False 
                                 1 
                                 0 
                                 
@@ -1084,7 +1219,7 @@
                                     True 
                                     adjustment2 
                                     1 
-                                      
                                  
                                    
@@ -1098,6 +1233,7 @@
                             
                               
                                 True 
+                                False 
                                 1 
                                 0 
                                 
@@ -1107,7 +1243,7 @@
                                     True 
                                     adjustment1 
                                     1 
-                                      
                                  
                                 
@@ -1127,7 +1263,7 @@
                                 The auto away status message. If empty, Gajim will not change the current status message
 $S will be replaced by previous status message
 $T will be replaced by auto-away timeout 
-                                   
                               
                                 3 
@@ -1142,7 +1278,7 @@ $T will be replaced by auto-away timeout
                                 The auto not available status message. If empty, Gajim will not change the current status message
 $S will be replaced by previous status message
 $T will be replaced by auto-not-available timeout 
-                                   
                               
                                 3 
@@ -1159,6 +1295,7 @@ $T will be replaced by auto-not-available timeout
                     
                       
                         True 
+                        False 
                         <b>Auto Status</b> 
                         True 
                        
@@ -1173,26 +1310,30 @@ $T will be replaced by auto-not-available timeout
                 
                   
                     True 
+                    False 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            vertical 
                             6 
                             
                               
                                 True 
+                                False 
                                 6 
                                 
                                   
                                     True 
+                                    False 
                                     Ask status message when I: 
                                    
                                   
@@ -1204,6 +1345,7 @@ $T will be replaced by auto-not-available timeout
                                 
                                   
                                     True 
+                                    False 
                                     14 
                                     
                                       
@@ -1212,8 +1354,9 @@ $T will be replaced by auto-not-available timeout
                                         True 
                                         False 
                                         True 
+                                        0 
                                         True 
-                                         
                                       
                                         False 
@@ -1228,8 +1371,9 @@ $T will be replaced by auto-not-available timeout
                                         True 
                                         False 
                                         True 
+                                        0 
                                         True 
-                                           
                                       
                                         False 
@@ -1256,8 +1400,6 @@ $T will be replaced by auto-not-available timeout
                                 True 
                                 True 
                                 If enabled, Gajim will not ask for a status message. The specified default message will be used instead. 
-                                automatic 
-                                automatic 
                                 in 
                                 
                                   
@@ -1267,6 +1409,8 @@ $T will be replaced by auto-not-available timeout
                                   
                                    
                               
+                                True 
+                                True 
                                 1 
                                
                              
@@ -1277,36 +1421,46 @@ $T will be replaced by auto-not-available timeout
                     
                       
                         True 
+                        False 
                         <b>Status Messages</b> 
                         True 
                        
                      
                    
                   
+                    True 
+                    True 
                     1 
                    
                  
                 
                   
                     True 
+                    False 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                             2 
                             2 
                             6 
                             6 
+                            
+                               
                             
                               
                                 True 
+                                False 
                                 5 
                                 start 
                                 
@@ -1317,7 +1471,7 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     False 
                                     True 
-                                      
                                   
                                     False 
@@ -1333,7 +1487,7 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     False 
                                     True 
-                                       
                                   
                                     False 
@@ -1353,16 +1507,16 @@ $T will be replaced by auto-not-available timeout
                               
                                 True 
                                 True 
-                                automatic 
-                                automatic 
                                 in 
                                 
                                   
                                     True 
                                     True 
+                                    status_message_liststore 
                                     False 
-                                    False 
+                                     
                                  
                                
@@ -1376,6 +1530,7 @@ $T will be replaced by auto-not-available timeout
                                 in 
                                 
                                   
+                                    21 
                                     True 
                                     True 
                                     3 
@@ -1389,9 +1544,6 @@ $T will be replaced by auto-not-available timeout
                                 GTK_FILL 
                                  
                              
-                            
-                               
                            
                          
                        
@@ -1399,12 +1551,15 @@ $T will be replaced by auto-not-available timeout
                     
                       
                         True 
+                        False 
                         <b>Preset Status Messages</b> 
                         True 
                        
                      
                     
                   
+                    True 
+                    True 
                     2 
                    
                  
@@ -1416,6 +1571,7 @@ $T will be replaced by auto-not-available timeout
             
               
                 True 
+                False 
                 Status 
                
               
@@ -1426,33 +1582,39 @@ $T will be replaced by auto-not-available timeout
             
               
                 True 
+                False 
                 12 
-                vertical 
                 12 
                 
                   
                     True 
+                    False 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                             2 
                             2 
                             6 
                             6 
+                            
+                               
                             
                               
                                 True 
                                 True 
                                 False 
-                                 
                               
                                 1 
@@ -1466,8 +1628,9 @@ $T will be replaced by auto-not-available timeout
                                 True 
                                 False 
                                 True 
+                                0 
                                 True 
-                                   
                               
                                 1 
@@ -1479,6 +1642,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                                 Chat message: 
                                
@@ -1487,9 +1651,6 @@ $T will be replaced by auto-not-available timeout
                                 GTK_FILL 
                                 
                              
-                            
-                               
                            
                          
                        
@@ -1497,6 +1658,7 @@ $T will be replaced by auto-not-available timeout
                     
                       
                         True 
+                        False 
                         <b>Font</b> 
                         True 
                        
@@ -1511,23 +1673,32 @@ $T will be replaced by auto-not-available timeout
                 
                   
                     True 
+                    False 
                     GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                             3 
                             3 
                             6 
                             6 
+                            
+                               
+                            
+                               
                             
                               
                                 Use _transports icons 
@@ -1536,20 +1707,23 @@ $T will be replaced by auto-not-available timeout
                                 False 
                                 If checked, Gajim will use protocol-specific status icons. (e.g. A contact from MSN will have the equivalent msn icon for status online, away, busy, etc...) 
                                 True 
+                                0 
                                 True 
-                                 
                               
                                 1 
                                 3 
                                 2 
                                 3 
+                                 
                              
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
@@ -1563,6 +1737,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 Status _iconset: 
                                 True 
@@ -1578,11 +1753,13 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
                                 2 
+                                 
                              
                             
@@ -1593,18 +1770,18 @@ $T will be replaced by auto-not-available timeout
                                 False 
                                 Configure color and font of the interface 
                                 True 
-                                  
                               
                                 2 
                                 3 
-                                GTK_FILL 
-                                GTK_FILL 
+                                 
                              
                             
                               
                                 True 
+                                False 
                                 0 
                                 T_heme: 
                                 True 
@@ -1615,12 +1792,6 @@ $T will be replaced by auto-not-available timeout
                                 GTK_FILL 
                                  
                              
-                            
-                               
-                            
-                               
                            
                          
                        
@@ -1628,6 +1799,7 @@ $T will be replaced by auto-not-available timeout
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         <b>Themes</b> 
                         True 
@@ -1636,29 +1808,40 @@ $T will be replaced by auto-not-available timeout
                    
                   
                     False 
+                    True 
                     1 
                    
                  
                 
                   
                     True 
+                    False 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             5 
                             4 
                             12 
                             6 
+                            
+                               
+                            
+                               
                             
                               
                                 True 
+                                False 
                                 0 
                                 Contact's nickname: 
                                 True 
@@ -1672,6 +1855,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 Your nickname: 
                                 True 
@@ -1687,6 +1871,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 _Status message: 
                                 True 
@@ -1702,6 +1887,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 _URL highlight: 
                                 True 
@@ -1718,58 +1904,28 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 
                                   
                                     True 
+                                    False 
                                    
                                   
+                                    True 
                                     False 
                                     0 
                                    
                                  
                                 
                                   
+                                    _Reset to Default Colors 
                                     True 
                                     True 
                                     False 
+                                    image1 
+                                    True 
                                     False 
-                                    
-                                      
-                                        True 
-                                        0 
-                                        0 
-                                        
-                                          
-                                            True 
-                                            2 
-                                            
-                                              
-                                                True 
-                                                gtk-revert-to-saved 
-                                               
-                                              
-                                                False 
-                                                False 
-                                                0 
-                                               
-                                             
-                                            
-                                              
-                                                True 
-                                                _Reset to Default Colors 
-                                                True 
-                                               
-                                              
-                                                False 
-                                                False 
-                                                1 
-                                               
-                                             
-                                           
-                                         
-                                       
-                                     
+                                     
                                   
                                     False 
@@ -1788,6 +1944,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 Contact's message: 
                                
@@ -1801,6 +1958,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 Your message: 
                                
@@ -1816,15 +1974,19 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 
                                   
                                     True 
                                     True 
                                     False 
+                                    0.5 
                                     True 
-                                     
                                   
+                                    False 
+                                    False 
                                     0 
                                    
                                  
@@ -1835,10 +1997,11 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     0 
                                     #000000000000 
-                                     
                                   
                                     False 
+                                    False 
                                     end 
                                     1 
                                    
@@ -1849,22 +2012,26 @@ $T will be replaced by auto-not-available timeout
                                 2 
                                 1 
                                 2 
-                                GTK_FILL 
                                     
                              
                             
                               
                                 True 
+                                False 
                                 
                                   
                                     True 
                                     True 
                                     False 
+                                    0.5 
                                     True 
-                                     
                                   
+                                    False 
+                                    False 
                                     0 
                                    
                                  
@@ -1875,10 +2042,11 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     0 
                                     #000000000000 
-                                     
                                   
                                     False 
+                                    False 
                                     end 
                                     1 
                                    
@@ -1889,13 +2057,14 @@ $T will be replaced by auto-not-available timeout
                                 4 
                                 1 
                                 2 
-                                GTK_FILL 
                                                          
                              
                             
                               
                                 True 
+                                False 
                                 
                                    
@@ -1906,10 +2075,11 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     0 
                                     #000000000000 
-                                     
                                   
                                     False 
+                                    True 
                                     end 
                                     1 
                                    
@@ -1925,9 +2095,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
-                                
-                                   
+                                False 
                                 
                                   
                                     True 
@@ -1935,12 +2103,13 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     0 
                                     #000000000000 
-                                     
                                   
                                     False 
+                                    True 
                                     end 
-                                    1 
+                                    0 
                                    
                                  
                                
@@ -1956,6 +2125,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 
                                    
@@ -1966,10 +2136,11 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     0 
                                     #000000000000 
-                                     
                                   
                                     False 
+                                    True 
                                     end 
                                     1 
                                    
@@ -1985,6 +2156,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 
                                    
@@ -1995,10 +2167,11 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     0 
                                     #000000000000 
-                                     
                                   
                                     False 
+                                    True 
                                     end 
                                     1 
                                    
@@ -2016,6 +2189,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 
                                    
@@ -2026,10 +2200,11 @@ $T will be replaced by auto-not-available timeout
                                     True 
                                     0 
                                     #000000000000 
-                                     
                                   
                                     False 
+                                    True 
                                     end 
                                     1 
                                    
@@ -2047,6 +2222,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 Group chat highlight: 
                                 True 
@@ -2058,12 +2234,6 @@ $T will be replaced by auto-not-available timeout
                                            
                              
-                            
-                               
-                            
-                               
                            
                          
                        
@@ -2071,6 +2241,7 @@ $T will be replaced by auto-not-available timeout
                     
                       
                         True 
+                        False 
                         <b>Chat Line Colors</b> 
                         True 
                        
@@ -2090,6 +2261,7 @@ $T will be replaced by auto-not-available timeout
             
               
                 True 
+                False 
                 Style 
                
               
@@ -2100,21 +2272,28 @@ $T will be replaced by auto-not-available timeout
             
               
                 True 
+                False 
                 12 
-                vertical 
                 12 
                 
                   
                     True 
+                    False 
                     0 
+                    1 
                     none 
                     
                       
                         True 
+                        False 
+                        0 
+                        0 
+                        0 
                         12 
                         
                           
                             True 
+                            False 
                             2 
                             2 
                             6 
@@ -2122,28 +2301,33 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
                                 2 
+                                 
                              
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
                                 2 
                                 1 
                                 2 
+                                 
                              
                             
                               
                                 True 
+                                False 
                                 0 
                                 Audio input device 
                                
@@ -2154,6 +2338,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 Audio output device 
                                
@@ -2170,6 +2355,7 @@ $T will be replaced by auto-not-available timeout
                     
                       
                         True 
+                        False 
                         <b>Audio</b> 
                         True 
                        
@@ -2177,28 +2363,37 @@ $T will be replaced by auto-not-available timeout
                       
                   
                     False 
+                    True 
                     0 
                    
                  
                 
                   
                     True 
+                    False 
                     0 
+                    0 
                     none 
                     
                       
                         True 
+                        False 
+                        0 
+                        0 
+                        0 
                         12 
                         
                           
                             True 
-                            5 
+                            False 
+                            4 
                             2 
                             6 
                             6 
                             
                               
                                 True 
+                                False 
                                 0 
                                 Video input device 
                                
@@ -2209,6 +2404,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 Video output device 
                                
@@ -2221,28 +2417,33 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
                                 2 
+                                 
                              
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
                                 2 
                                 1 
                                 2 
+                                 
                              
                             
                               
                                 True 
+                                False 
                                 0 
                                 Video framerate 
                                
@@ -2255,6 +2456,7 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
+                                False 
                                 0 
                                 Video size 
                                
@@ -2267,40 +2469,29 @@ $T will be replaced by auto-not-available timeout
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
                                 2 
                                 2 
                                 3 
+                                 
                              
                             
                               
                                 True 
-                                False 
+                                 
                               
                                 1 
                                 2 
                                 3 
                                 4 
-                               
-                             
-                            
-                              
-                                View own video source 
-                                True 
-                                True 
-                                False 
-                                True 
-                                 
-                              
-                                2 
-                                4 
-                                5 
+                                 
                              
                                
@@ -2310,6 +2501,7 @@ $T will be replaced by auto-not-available timeout
                     
                       
                         True 
+                        False 
                         <b>Video</b> 
                         True 
                        
@@ -2317,37 +2509,48 @@ $T will be replaced by auto-not-available timeout
                      
                   
                     False 
+                    False 
                     1 
                    
                  
                 
                   
                     True 
+                    False 
                     0 
+                    0 
                     none 
                     
                       
                         True 
+                        False 
+                        0 
+                        0 
+                        0 
                         12 
                         
                           
                             True 
+                            False 
                             4 
                             6 
                             6 
                             
                               
                                 True 
+                                False 
                                 0 
                                 STUN server: 
                                
                               
                                 GTK_FILL 
+                                 
                              
                             
                               
                                 True 
+                                False 
                                 <i>(example: stunserver.org)</i> 
                                 True 
                                
@@ -2363,12 +2566,13 @@ $T will be replaced by auto-not-available timeout
                                 True 
                                 STUN server hostname. If none given, Gajim will try
 to discover one from server. 
-                                ● 
-                                ● 
+                                  
                               
                                 2 
                                 3 
+                                 
                              
                             
@@ -2376,13 +2580,15 @@ to discover one from server.
                                 True 
                                 True 
                                 False 
+                                0.5 
                                 True 
-                                  
                               
                                 1 
                                 2 
                                 GTK_FILL 
+                                 
                              
                            
@@ -2392,24 +2598,31 @@ to discover one from server.
                     
                       
                         True 
+                        False 
                         <b>Connection</b> 
                         True 
                        
                      
                     
                   
-                    False 
+                    True 
+                    True 
                     2 
                    
                  
+                
+                   
                
               
                 5 
+                False 
                
              
             
               
                 True 
+                False 
                 Audio / Video 
                
               
@@ -2420,29 +2633,32 @@ to discover one from server.
             
               
                 True 
+                False 
                 12 
-                vertical 
                 12 
                 
                   
                     True 
+                    False 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         12 
                         
                           
                             True 
-                            vertical 
+                            False 
                             6 
                             
                               
                                 True 
+                                False 
                                 liststore1 
-                                
                                   
@@ -2451,21 +2667,26 @@ to discover one from server.
                                   
                                
                               
+                                True 
+                                True 
                                 0 
                                
                              
                             
                               
+                                False 
                                 0 
                                 none 
                                 
                                   
                                     True 
+                                    False 
                                     6 
                                     12 
                                     
                                       
                                         True 
+                                        False 
                                         3 
                                         2 
                                         12 
@@ -2474,7 +2695,7 @@ to discover one from server.
                                           
                                             True 
                                             True 
-                                             
                                           
                                             1 
@@ -2487,6 +2708,7 @@ to discover one from server.
                                         
                                           
                                             True 
+                                            False 
                                             0 
                                             _File manager: 
                                             True 
@@ -2503,7 +2725,7 @@ to discover one from server.
                                           
                                             True 
                                             True 
-                                             
                                           
                                             1 
@@ -2515,7 +2737,7 @@ to discover one from server.
                                           
                                             True 
                                             True 
-                                             
                                           
                                             1 
@@ -2528,6 +2750,7 @@ to discover one from server.
                                         
                                           
                                             True 
+                                            False 
                                             0 
                                             _Mail client: 
                                             True 
@@ -2543,6 +2766,7 @@ to discover one from server.
                                         
                                           
                                             True 
+                                            False 
                                             0 
                                             _Browser: 
                                             True 
@@ -2560,12 +2784,15 @@ to discover one from server.
                                 
                                   
                                     True 
+                                    False 
                                     <b>Custom</b> 
                                     True 
                                    
                                  
                                
                               
+                                True 
+                                True 
                                 1 
                                
                              
@@ -2576,6 +2803,7 @@ to discover one from server.
                     
                       
                         True 
+                        False 
                         <b>Applications</b> 
                         True 
                        
@@ -2590,18 +2818,21 @@ to discover one from server.
                 
                   
                     True 
+                    False 
                     GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         6 
                         12 
                         
                           
                             True 
+                            False 
                             GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                             6 
                             6 
@@ -2614,8 +2845,9 @@ to discover one from server.
                                 False 
                                 If checked, Gajim will ignore incoming events from unauthorized contacts. Use with caution, because it blocks all messages from any contact that is not in the roster 
                                 True 
+                                0 
                                 True 
-                                 
                               
                                 GTK_FILL 
@@ -2629,8 +2861,9 @@ to discover one from server.
                                 False 
                                 If checked, Gajim will allow others to detect the operation system you are using 
                                 True 
+                                0 
                                 True 
-                                   
                               
                                 1 
@@ -2645,8 +2878,9 @@ to discover one from server.
                                 False 
                                 If checked, Gajim will allow others to detect the time on your system 
                                 True 
+                                0 
                                 True 
-                                   
                               
                                 2 
@@ -2661,8 +2895,9 @@ to discover one from server.
                                 False 
                                 If checked, Gajim will keep logs for encrypted messages. Please note that when using E2E encryption the remote party has to agree on logging, else the messages will not be logged. 
                                 True 
+                                0 
                                 True 
-                                    
                               
                                 3 
@@ -2676,8 +2911,9 @@ to discover one from server.
                                 True 
                                 False 
                                 True 
+                                0 
                                 True 
-                                     
                               
                                 4 
@@ -2687,22 +2923,26 @@ to discover one from server.
                             
                               
                                 True 
+                                False 
                                 6 
                                 
                                   
                                     True 
+                                    False 
                                     Global proxy: 
                                    
                                   
                                     False 
+                                    True 
                                     0 
                                    
                                  
                                 
                                   
                                     True 
+                                    False 
                                     liststore8 
-                                    
                                       
@@ -2711,6 +2951,8 @@ to discover one from server.
                                       
                                    
                                   
+                                    True 
+                                    True 
                                     1 
                                    
                                  
@@ -2721,10 +2963,11 @@ to discover one from server.
                                     True 
                                     True 
                                     True 
-                                     
                                   
                                     False 
+                                    True 
                                     2 
                                    
                                  
@@ -2741,6 +2984,7 @@ to discover one from server.
                     
                       
                         True 
+                        False 
                         GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                         <b>Privacy</b> 
                         True 
@@ -2749,23 +2993,26 @@ to discover one from server.
                    
                   
                     False 
+                    True 
                     1 
                    
                  
                 
                   
                     True 
+                    False 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         12 
                         
                           
                             True 
-                            vertical 
+                            False 
                             6 
                             
                               
@@ -2774,8 +3021,9 @@ to discover one from server.
                                 True 
                                 False 
                                 True 
+                                0 
                                 True 
-                                 
                               
                                 False 
@@ -2790,8 +3038,9 @@ to discover one from server.
                                 True 
                                 False 
                                 True 
+                                0 
                                 True 
-                                   
                               
                                 False 
@@ -2806,6 +3055,7 @@ to discover one from server.
                     
                       
                         True 
+                        False 
                         <b>Miscellaneous</b> 
                         True 
                        
@@ -2820,57 +3070,26 @@ to discover one from server.
                 
                   
                     True 
+                    False 
                     0 
                     none 
                     
                       
                         True 
+                        False 
                         6 
                         0 
                         12 
                         335 
                         
                           
+                            _Open... 
                             True 
                             True 
                             False 
-                            
-                              
-                                True 
-                                0 
-                                0 
-                                
-                                  
-                                    True 
-                                    2 
-                                    
-                                      
-                                        True 
-                                        gtk-open 
-                                       
-                                      
-                                        False 
-                                        False 
-                                        0 
-                                       
-                                     
-                                    
-                                      
-                                        True 
-                                        _Open... 
-                                        True 
-                                       
-                                      
-                                        False 
-                                        False 
-                                        1 
-                                       
-                                     
-                                   
-                                 
-                               
-                             
+                            image2 
+                            True 
+                             
                          
                        
@@ -2878,6 +3097,7 @@ to discover one from server.
                     
                       
                         True 
+                        False 
                         <b>Advanced Configuration Editor</b> 
                         True 
                        
@@ -2897,6 +3117,7 @@ to discover one from server.
             
               
                 True 
+                False 
                 Advanced 
                
               
@@ -2906,12 +3127,15 @@ to discover one from server.
               
              
           
+            True 
+            True 
             0 
            
          
         
           
             True 
+            False 
             15 
             end 
             
@@ -2922,7 +3146,7 @@ to discover one from server.
                 True 
                 False 
                 True 
-                  
               
                 False 
@@ -2933,6 +3157,7 @@ to discover one from server.
                 
           
             False 
+            True 
             1 
            
          
diff --git a/data/gui/profile_window.ui b/data/gui/profile_window.ui
index 88ba214e4..005668f3c 100644
--- a/data/gui/profile_window.ui
+++ b/data/gui/profile_window.ui
@@ -531,6 +531,7 @@
                   
                     True 
                     Format: YYYY-MM-DD 
+                    False 
                     
                       
                         True 
@@ -1152,7 +1153,6 @@
         
           
             True 
-            False 
            
           
             False 
diff --git a/data/gui/remove_account_window.ui b/data/gui/remove_account_window.ui
index a84a3012e..e0130c5a3 100644
--- a/data/gui/remove_account_window.ui
+++ b/data/gui/remove_account_window.ui
@@ -123,47 +123,14 @@
               
             
               
+                _Remove 
                 True 
                 True 
                 True 
                 False 
+                image1 
+                True 
                 
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-delete 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Remove 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -181,4 +148,8 @@
          
      
    
+  
+    True 
+    gtk-delete 
+   
                                                      
diff --git a/data/gui/roster_window.ui b/data/gui/roster_window.ui
index a0fd915e2..f47bbb26c 100644
--- a/data/gui/roster_window.ui
+++ b/data/gui/roster_window.ui
@@ -1,10 +1,95 @@
-
+
 
-  
+    True 
+    False 
+    gtk-help 
+    1 
+   
+  
+    True 
+    False 
+    gtk-dialog-question 
+    1 
+   
+  
+    True 
+    False 
+    gtk-properties 
+    1 
+   
+  
+    True 
+    False 
+    gtk-justify-fill 
+    1 
+   
+  
+    True 
+    False 
+    gtk-jump-to 
+    1 
+   
+  
+    True 
+    False 
+    gtk-disconnect 
+    1 
+   
+  
+    True 
+    False 
+    gtk-info 
+    1 
+   
+  
+    True 
+    False 
+    gtk-new 
+    1 
+   
+  
+    True 
+    False 
+    gtk-connect 
+    1 
+   
+  
+    True 
+    False 
+    gtk-add 
+    1 
+   
+  
+    True 
+    False 
+    gtk-find 
+    1 
+   
+  
+    True 
+    False 
+    gtk-network 
+    1 
+   
+  
+    True 
+    False 
+    gtk-properties 
+    1 
+   
+  
+    True 
+    False 
+    gtk-save 
+    1 
+   
   
     85 
     200 
+    False 
     Gajim 
     roster 
     250 
@@ -12,30 +97,34 @@
     
        
-    
       
         True 
-        vertical 
+        False 
         
                
diff --git a/data/gui/search_window.ui b/data/gui/search_window.ui
index dc23bda21..6af2ca9aa 100644
--- a/data/gui/search_window.ui
+++ b/data/gui/search_window.ui
@@ -52,50 +52,15 @@
             end 
             
               
+                _Add contact 
                 False 
                 True 
                 True 
                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                 True 
+                image1 
+                True 
                 
-                  
-                    True 
-                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                    
-                      
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        2 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            gtk-add 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            _Add contact 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -105,50 +70,15 @@
               
             
               
+                _Information 
                 False 
                 True 
                 True 
                 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
                 True 
+                image3 
+                True 
                 
-                  
-                    True 
-                    GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                    
-                      
-                        True 
-                        GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                        2 
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            gtk-info 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 
-                            _Information 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -158,47 +88,14 @@
               
             
               
+                _Search 
                 True 
                 True 
                 True 
                 False 
+                image2 
+                True 
                 
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-find 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Search 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -231,4 +128,16 @@
          
       
   
+  
+    True 
+    gtk-add 
+   
+  
+    True 
+    gtk-find 
+   
+  
+    True 
+    gtk-dialog-info 
+   
 
diff --git a/data/gui/service_discovery_window.ui b/data/gui/service_discovery_window.ui
index 46c83e4d0..0aa547cc2 100644
--- a/data/gui/service_discovery_window.ui
+++ b/data/gui/service_discovery_window.ui
@@ -1,7 +1,11 @@
-
+
 
-  
+    True 
+    False 
+    gtk-jump-to 
+   
   
     
       
@@ -9,27 +13,31 @@
      
    
   
+    False 
     6 
     Service Discovery 
     550 
     420 
     dialog 
-    
       
         True 
-        vertical 
+        False 
         6 
         
           
             True 
+            False 
             
               
                 True 
+                False 
                 6 
                 
                   
                     True 
+                    False 
                     0.05000000074505806 
                     6 
                     <span weight="heavy" size="large">Agent name</span>
@@ -37,18 +45,22 @@ Agent JID - node 
                     True 
                    
                   
+                    True 
+                    True 
                     0 
                    
                  
                 
                   
                     True 
+                    False 
                     6 
                     6 
                     gtk-missing-image 
                    
                   
                     False 
+                    True 
                     1 
                    
                  
@@ -64,99 +76,56 @@ Agent JID - node
         
           
             True 
+            False 
             3 
             3 
             6 
             
-              
-                True 
-                liststore1 
-                0 
-                 
-              
-                1 
-                2 
-                1 
-                2 
-                GTK_FILL 
-               
+               
+            
+               
+            
+               
             
               
+                G_o 
                 True 
                 True 
                 True 
                 True 
                 False 
-                
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-jump-to 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            G_o 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
+                image1 
+                True 
+                 
               
                 2 
                 3 
                 3 
                 GTK_FILL 
-                 
              
             
               
                 True 
+                False 
                 _Address: 
                 True 
-                address_comboboxentry 
                
               
                 3 
                 GTK_FILL 
-                 
              
-            
-               
-            
-               
            
           
             False 
+            True 
             1 
            
          
@@ -164,29 +133,31 @@ Agent JID - node
           
             True 
             True 
-            automatic 
-            automatic 
             etched-in 
             
               
                 True 
                 True 
                 False 
-                 
              
            
           
+            True 
+            True 
             2 
            
           
         
           
             True 
+            False 
             12 
             
               
                 True 
+                False 
                 True 
                 0.10000000149 
                
@@ -199,14 +170,18 @@ Agent JID - node
             
               
                 True 
+                False 
                
               
+                True 
+                True 
                 1 
                
              
             
               
                 True 
+                False 
                 6 
                 
                   
@@ -217,7 +192,7 @@ Agent JID - node
                     True 
                     False 
                     True 
-                     
                   
                     False 
@@ -229,12 +204,14 @@ Agent JID - node
                  
               
                 False 
+                True 
                 2 
                
              
             
           
             False 
+            True 
             2 
             3 
            
diff --git a/data/gui/service_registration_window.ui b/data/gui/service_registration_window.ui
index 3c6d275dc..f29802919 100644
--- a/data/gui/service_registration_window.ui
+++ b/data/gui/service_registration_window.ui
@@ -35,47 +35,14 @@
             end 
             
               
+                _Cancel 
                 True 
                 True 
                 True 
                 False 
+                image2 
+                True 
                 
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-cancel 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _Cancel 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -85,48 +52,15 @@
               
             
               
+                _OK 
                 True 
                 True 
                 True 
                 True 
                 False 
+                image1 
+                True 
                 
-                  
-                    True 
-                    0 
-                    0 
-                    
-                      
-                        True 
-                        2 
-                        
-                          
-                            True 
-                            gtk-ok 
-                           
-                          
-                            False 
-                            False 
-                            0 
-                           
-                         
-                        
-                          
-                            True 
-                            _OK 
-                            True 
-                           
-                          
-                            False 
-                            False 
-                            1 
-                           
-                         
-                       
-                     
-                   
-                 
                
               
                 False 
@@ -143,4 +77,12 @@
           
      
    
+  
+    True 
+    gtk-apply 
+   
+  
+    True 
+    gtk-cancel 
+   
    
diff --git a/data/gui/systray_context_menu.ui b/data/gui/systray_context_menu.ui
index f502dbcdb..c2cc6ae12 100644
--- a/data/gui/systray_context_menu.ui
+++ b/data/gui/systray_context_menu.ui
@@ -15,7 +15,7 @@
     
     
        
     
        
     
       
                       
                         False 
@@ -291,47 +316,14 @@
                       
                     
                       
+                        _Send 
                         True 
                         True 
                         True 
                         False 
-                        
-                          
-                            True 
-                            0 
-                            0 
-                            
-                              
-                                True 
-                                2 
-                                
-                                  
-                                    True 
-                                    gtk-apply 
-                                   
-                                  
-                                    False 
-                                    False 
-                                    0 
-                                   
-                                 
-                                
-                                  
-                                    True 
-                                    _Send 
-                                    True 
-                                   
-                                  
-                                    False 
-                                    False 
-                                    1 
-                                   
-                                 
-                               
-                             
-                           
-                         
+                        image1 
+                        True 
+                         
                       
                         False 
@@ -351,6 +343,7 @@
             
               
                 True 
+                False 
                 0 
                 <b>XML Input</b> 
                 True 
@@ -359,6 +352,7 @@
            
           
             False 
+            True 
             4 
            
          
diff --git a/data/other/cacerts.pem b/data/other/cacerts.pem
index cdcbc425e..b84848519 100644
--- a/data/other/cacerts.pem
+++ b/data/other/cacerts.pem
@@ -1,439 +1,47 @@
-ABAecom_=sub.__Am._Bankers_Assn.=_Root_CA
+cacert.org/cacert.org_class3.crt
 -----BEGIN CERTIFICATE-----
-MIIDtTCCAp2gAwIBAgIRANAeQJAAAEZSAAAAAQAAAAQwDQYJKoZIhvcNAQEF
-BQAwgYkxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJEQzETMBEGA1UEBxMKV2Fz
-aGluZ3RvbjEXMBUGA1UEChMOQUJBLkVDT00sIElOQy4xGTAXBgNVBAMTEEFC
-QS5FQ09NIFJvb3QgQ0ExJDAiBgkqhkiG9w0BCQEWFWFkbWluQGRpZ3NpZ3Ry
-dXN0LmNvbTAeFw05OTA3MTIxNzMzNTNaFw0wOTA3MDkxNzMzNTNaMIGJMQsw
-CQYDVQQGEwJVUzELMAkGA1UECBMCREMxEzARBgNVBAcTCldhc2hpbmd0b24x
-FzAVBgNVBAoTDkFCQS5FQ09NLCBJTkMuMRkwFwYDVQQDExBBQkEuRUNPTSBS
-b290IENBMSQwIgYJKoZIhvcNAQkBFhVhZG1pbkBkaWdzaWd0cnVzdC5jb20w
-ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCx0xHgeVVDBwhMywVC
-AOINg0Y95JO6tgbTDVm9PsHOQ2cBiiGo77zM0KLMsFWWU4RmBQDaREmA2FQK
-pSWGlO1jVv9wbKOhGdJ4vmgqRF4vz8wYXke8OrFGPR7wuSw0X4x8TAgpnUBV
-6zx9g9618PeKgw6hTLQ6pbNfWiKX7BmbwQVo/ea3qZGULOR4SCQaJRk665Wc
-OQqKz0Ky8BzVX/tr7WhWezkscjiw7pOp03t3POtxA6k4ShZsiSrK2jMTecJV
-jO2cu/LLWxD4LmE1xilMKtAqY9FlWbT4zfn0AIS2V0KFnTKo+SpU+/94Qby9
-cSj0u5C8/5Y0BONFnqFGKECBAgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8C
-AQgwDQYJKoZIhvcNAQEFBQADggEBAARvJYbk5pYntNlCwNDJALF/VD6Hsm0k
-qS8Kfv2kRLD4VAe9G52dyntQJHsRW0mjpr8SdNWJt7cvmGQlFLdh6X9ggGvT
-ZOirvRrWUfrAtF13Gn9kCF55xgVM8XrdTX3O5kh7VNJhkoHWG9YA8A6eKHeg
-TYjHInYZw8eeG6Z3ePhfm1bR8PIXrI6dWeYf/le22V7hXZ9F7GFoGUHhsiAm
-/lowdiT/QHI8eZ98IkirRs3bs4Ysj78FQdPB4xTjQRcm0HyncUwZ6EoPclgx
-fexgeqMiKL0ZJGA/O4dzwGvky663qyVDslUte6sGDnVdNOVdc22esnVApVnJ
-TzFxiNmIf1Q=
+MIIHWTCCBUGgAwIBAgIDCkGKMA0GCSqGSIb3DQEBCwUAMHkxEDAOBgNVBAoTB1Jv
+b3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZ
+Q0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYSc3VwcG9y
+dEBjYWNlcnQub3JnMB4XDTExMDUyMzE3NDgwMloXDTIxMDUyMDE3NDgwMlowVDEU
+MBIGA1UEChMLQ0FjZXJ0IEluYy4xHjAcBgNVBAsTFWh0dHA6Ly93d3cuQ0FjZXJ0
+Lm9yZzEcMBoGA1UEAxMTQ0FjZXJ0IENsYXNzIDMgUm9vdDCCAiIwDQYJKoZIhvcN
+AQEBBQADggIPADCCAgoCggIBAKtJNRFIfNImflOUz0Op3SjXQiqL84d4GVh8D57a
+iX3h++tykA10oZZkq5+gJJlz2uJVdscXe/UErEa4w75/ZI0QbCTzYZzA8pD6Ueb1
+aQFjww9W4kpCz+JEjCUoqMV5CX1GuYrz6fM0KQhF5Byfy5QEHIGoFLOYZcRD7E6C
+jQnRvapbjZLQ7N6QxX8KwuPr5jFaXnQ+lzNZ6MMDPWAzv/fRb0fEze5ig1JuLgia
+pNkVGJGmhZJHsK5I6223IeyFGmhyNav/8BBdwPSUp2rVO5J+TJAFfpPBLIukjmJ0
+FXFuC3ED6q8VOJrU0gVyb4z5K+taciX5OUbjchs+BMNkJyIQKopPWKcDrb60LhPt
+XapI19V91Cp7XPpGBFDkzA5CW4zt2/LP/JaT4NsRNlRiNDiPDGCbO5dWOK3z0luL
+oFvqTpa4fNfVoIZwQNORKbeiPK31jLvPGpKK5DR7wNhsX+kKwsOnIJpa3yxdUly6
+R9Wb7yQocDggL9V/KcCyQQNokszgnMyXS0XvOhAKq3A6mJVwrTWx6oUrpByAITGp
+rmB6gCZIALgBwJNjVSKRPFbnr9s6JfOPMVTqJouBWfmh0VMRxXudA/Z0EeBtsSw/
+LIaRmXGapneLNGDRFLQsrJ2vjBDTn8Rq+G8T/HNZ92ZCdB6K4/jc0m+YnMtHmJVA
+BfvpAgMBAAGjggINMIICCTAdBgNVHQ4EFgQUdahxYEyIE/B42Yl3tW3Fid+8sXow
+gaMGA1UdIwSBmzCBmIAUFrUyG9TH8+DmjvO90rA67rI5GNGhfaR7MHkxEDAOBgNV
+BAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAG
+A1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYS
+c3VwcG9ydEBjYWNlcnQub3JnggEAMA8GA1UdEwEB/wQFMAMBAf8wXQYIKwYBBQUH
+AQEEUTBPMCMGCCsGAQUFBzABhhdodHRwOi8vb2NzcC5DQWNlcnQub3JnLzAoBggr
+BgEFBQcwAoYcaHR0cDovL3d3dy5DQWNlcnQub3JnL2NhLmNydDBKBgNVHSAEQzBB
+MD8GCCsGAQQBgZBKMDMwMQYIKwYBBQUHAgEWJWh0dHA6Ly93d3cuQ0FjZXJ0Lm9y
+Zy9pbmRleC5waHA/aWQ9MTAwNAYJYIZIAYb4QgEIBCcWJWh0dHA6Ly93d3cuQ0Fj
+ZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAwUAYJYIZIAYb4QgENBEMWQVRvIGdldCB5
+b3VyIG93biBjZXJ0aWZpY2F0ZSBmb3IgRlJFRSwgZ28gdG8gaHR0cDovL3d3dy5D
+QWNlcnQub3JnMA0GCSqGSIb3DQEBCwUAA4ICAQApKIWuRKm5r6R5E/CooyuXYPNc
+7uMvwfbiZqARrjY3OnYVBFPqQvX56sAV2KaC2eRhrnILKVyQQ+hBsuF32wITRHhH
+Va9Y/MyY9kW50SD42CEH/m2qc9SzxgfpCYXMO/K2viwcJdVxjDm1Luq+GIG6sJO4
+D+Pm1yaMMVpyA4RS5qb1MyJFCsgLDYq4Nm+QCaGrvdfVTi5xotSu+qdUK+s1jVq3
+VIgv7nSf7UgWyg1I0JTTrKSi9iTfkuO960NAkW4cGI5WtIIS86mTn9S8nK2cde5a
+lxuV53QtHA+wLJef+6kzOXrnAzqSjiL2jA3k2X4Ndhj3AfnvlpaiVXPAPHG0HRpW
+Q7fDCo1y/OIQCQtBzoyUoPkD/XFzS4pXM+WOdH4VAQDmzEoc53+VGS3FpQyLu7Xt
+hbNc09+4ufLKxw0BFKxwWMWMjTPUnWajGlCVI/xI4AZDEtnNp4Y5LzZyo4AQ5OHz
+0ctbGsDkgJp8E3MGT9ujayQKurMcvEp4u+XjdTilSKeiHq921F73OIZWWonO1sOn
+ebJSoMbxhbQljPI/lrMQ2Y1sVzufb4Y6GIIiNsiwkTjbKqGTqoQ/9SdlrnPVyNXT
+d+pLncdBu8fA46A/5H2kjXPmEkvfoXNzczqA6NXLji/L6hOn1kGLrPo8idck9U60
+4GGSt/M3mMS+lqO3ig==
 -----END CERTIFICATE-----
-
-AddTrust_External_Root
------BEGIN CERTIFICATE-----
-MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJT
-RTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4
-dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFeHRlcm5h
-bCBDQSBSb290MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEwNDgzOFowbzEL
-MAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1B
-ZGRUcnVzdCBFeHRlcm5hbCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1
-c3QgRXh0ZXJuYWwgQ0EgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
-AQoCggEBALf3GjPm8gAELTngTlvtH7xsD821+iO2zt6bETOXpClMfZOfvUq8
-k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9uMq/NzgtHj6RQa1wVsfwTz/oMp50
-ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzXmk6vBbOmcZSccbNQYArHE504
-B4YCqOmoaSYYkKtMsE8jqzpPhNjfzp/haW+710LXa0Tkx63ubUFfclpxCDez
-eWWkWaCUN/cALw3CknLa0Dhy2xSoRcRdKn23tNbE7qzNE0S3ySvdQwAl+mG5
-aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv77+ldU9U0WicCAwEAAaOB
-3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYDVR0PBAQD
-AgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0Jvf6
-xCZU7wO94CTLVBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRU
-cnVzdCBBQjEmMCQGA1UECxMdQWRkVHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdv
-cmsxIjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENBIFJvb3SCAQEwDQYJ
-KoZIhvcNAQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZl
-j7DYd7usQWxHYINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5R
-xNKWt9x+Tu5w/Rw56wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjT
-K3rMUUKhemPR5ruhxSvCNr4TDea9Y355e6cJDUCrat2PisP29owaQgVR1EX1
-n6diIWgVIEM8med8vSTYqZEXc4g/VhsxOBi0cQ+azcgOno4uG+GMmIPLHzHx
-REzGBHNJdmAPx/i9F4BrLunMTA5amnkPIAou1Z5jJh5VkpTYghdae9C8x49O
-hgQ=
------END CERTIFICATE-----
-
-AddTrust_Low-Value_Services_Root
------BEGIN CERTIFICATE-----
-MIIEGDCCAwCgAwIBAgIBATANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQGEwJT
-RTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRU
-UCBOZXR3b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3Qw
-HhcNMDAwNTMwMTAzODMxWhcNMjAwNTMwMTAzODMxWjBlMQswCQYDVQQGEwJT
-RTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRU
-UCBOZXR3b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3Qw
-ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCWltQhSWDia+hBBwze
-xODcEyPNwTXH+9ZOEQpnXvUGW2ulCDtbKRY654eyNAbFvAWlA3yCyykQruGI
-gb3WntP+LVbBFc7jJp0VLhD7Bo8wBN6ntGO0/7Gcrjyvd7ZWxbWroulpOj0O
-M3kyP3CCkplhbY0wCI9xP6ZIVxn4JdxLZlyldI+Yrsj5wAYi56xz36Uu+1Lc
-sRVlIPo1Zmne3yzxbrww2ywkEtvrNTVokMsAsJchPXQhI2U0K7t4WaPW4XY5
-mqRJjox0r26kmqPZm9I4XJuiGMx1I4S+6+JNM3GOGvDC+Mcdoq0Dlyz4zyXG
-9rgkMbFjXZJ/Y/AlyVMuH79NAgMBAAGjgdIwgc8wHQYDVR0OBBYEFJWxtPCU
-tr3H2tERCSG+wa9J/RB7MAsGA1UdDwQEAwIBBjAPBgNVHRMBAf8EBTADAQH/
-MIGPBgNVHSMEgYcwgYSAFJWxtPCUtr3H2tERCSG+wa9J/RB7oWmkZzBlMQsw
-CQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFk
-ZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAx
-IENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBACxtZBsfzQ3duQH6lmM0
-MkhHma6X7f1yFqZzR1r0693p9db7RcwpiURdv0Y5PejuvE1Uhh4dbOMXJ0Ph
-iVYrqW9yTkkz43J8KiOavD7/KCrto/8cI7pDVwlnTUtiBi34/2ydYB7YHEt9
-tTEv2dB8Xfjea4MYeDdXL+gzB2ffHsdrKpV2ro9Xo/D0UrSpUwjP4E/TelOL
-/bscVjby/rK25Xa71SJlpz/+0WatC7xrmYbvP33zGDLKe8bjq2RGlfgmadlV
-g3sslgf/WSxEo8bl6ancoWOAWiFeIc9TVPC6b4nbqKqVz4vjccweGyBECMB6
-tkD9xOQ14R0WHNC8K47Wcdk=
------END CERTIFICATE-----
-
-AddTrust_Public_Services_Root
------BEGIN CERTIFICATE-----
-MIIEFTCCAv2gAwIBAgIBATANBgkqhkiG9w0BAQUFADBkMQswCQYDVQQGEwJT
-RTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRU
-UCBOZXR3b3JrMSAwHgYDVQQDExdBZGRUcnVzdCBQdWJsaWMgQ0EgUm9vdDAe
-Fw0wMDA1MzAxMDQxNTBaFw0yMDA1MzAxMDQxNTBaMGQxCzAJBgNVBAYTAlNF
-MRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQ
-IE5ldHdvcmsxIDAeBgNVBAMTF0FkZFRydXN0IFB1YmxpYyBDQSBSb290MIIB
-IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6Rowj4OIFMEg2Dybjxt+
-A3S72mnTRqX4jsIMEZBRpS9mVEBV6tsfSlbunyNu9DnLoblv8n75XYcmYZ4c
-+OLspoH4IcUkzBEMP9smcnrHAZcHF/nXGCwwfQ56HmIexkvA/X1id9NEHif2
-P0tEs7c42TkfYNVRknMDtABp4/MUTu7R3AnPdzRGULD4EfL+OHn3Bzn+UZKX
-C1sIXzSGAa2Il+tmzV7R/9x98oTaunet3IAIx6eH1lWfl2royBFkuucZKT8R
-s3iQhCBSWxHveNCD9tVIkNAwHM+A+WD+eeSI8t0A65RF62WUaUC6wNW0uLp9
-BBGo6zEFlpROWCGOn9Bg/QIDAQABo4HRMIHOMB0GA1UdDgQWBBSBPjfYkrAf
-d59ctKtzquf2NGAv+jALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zCB
-jgYDVR0jBIGGMIGDgBSBPjfYkrAfd59ctKtzquf2NGAv+qFopGYwZDELMAkG
-A1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQLExRBZGRU
-cnVzdCBUVFAgTmV0d29yazEgMB4GA1UEAxMXQWRkVHJ1c3QgUHVibGljIENB
-IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBAAP3FUr4JNojVhaTdt02KLmu
-G7jD8WS6IBh4lSknVwW8fCr0uVFV2ocC3g8WFzH4qnkuCRO7r7IgGRLlk/lL
-+YPoRNWyQSW/iHVv/xD8SlTQX/D67zZzfRs2RcYhbbQVuE7PnFylPVoAjgbj
-PGsye/Kf8Lb93/AoGEjwxrzQvzSAlsJKsW2Ox5BF3i9nrEUEo3rcVZLJR2bY
-GozH7ZxOmuASu7VqTITh4SINhwBk/ox9Yjllpu9CtoAlEmEBqCQTcAARJl/6
-NVDFSMwGR+gn2HCNX2TmoUQmXiLsks3/QppEIW1cxeMiHV9HEufOX1362Kqx
-My3ZdvJOOjMMK7MtkAY=
------END CERTIFICATE-----
-
-AddTrust_Qualified_Certificates_Root
------BEGIN CERTIFICATE-----
-MIIEHjCCAwagAwIBAgIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJT
-RTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRU
-UCBOZXR3b3JrMSMwIQYDVQQDExpBZGRUcnVzdCBRdWFsaWZpZWQgQ0EgUm9v
-dDAeFw0wMDA1MzAxMDQ0NTBaFw0yMDA1MzAxMDQ0NTBaMGcxCzAJBgNVBAYT
-AlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3Qg
-VFRQIE5ldHdvcmsxIzAhBgNVBAMTGkFkZFRydXN0IFF1YWxpZmllZCBDQSBS
-b290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5B6a/twJWoek
-n0e+EV+vhDTbYjx5eLfpMLXsDBwqxBb/4Oxx64r1EW7tTw2R0hIYLUkVAcKk
-IhPHEWT/IhKauY5cLwjPcWqzZwFZ8V1G87B4pfYOQnrjfxvM0PC3KP0q6p6z
-sLkEqv32x7SxuCqg+1jxGaBvcCV+PmlKfw8i2O+tCBGaKZnhqkRFmhJePp1t
-UvznoD1oL/BLcHwTOK28FSXx1s6rosAx1i+f4P8UWfyEk9mHfExUE+uf0S0R
-+Bg6Ot4l2ffTQO2kBhLEO+GRwVY18BTcZTYJbqukB8c10cIDMzZbdSZtQvES
-a0NvS3GU+jQd7RNuyoB/mC9suWXY6QIDAQABo4HUMIHRMB0GA1UdDgQWBBQ5
-lYtii1zJ1IC6WA+XPxUIQ8yYpzALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/BAUw
-AwEB/zCBkQYDVR0jBIGJMIGGgBQ5lYtii1zJ1IC6WA+XPxUIQ8yYp6FrpGkw
-ZzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQL
-ExRBZGRUcnVzdCBUVFAgTmV0d29yazEjMCEGA1UEAxMaQWRkVHJ1c3QgUXVh
-bGlmaWVkIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBABmrder4i2Vh
-lRO6aQTvhsoToMeqT2QbPxj2qC0sVY8FtzDqQmodwCVRLae/DLPt7wh/bDxG
-GuoYQ992zPlmhpwsaPXpF/gxsxjE1kh9I0xowX67ARRvxdlu3rsEQmr49lx9
-5dr6h+sNNVJn0J6XdgWTP5XHAeZpVTh/EGGZyeNfpso+gmNIquIISD6q8rKF
-Yqa0p9m9N5xotS1WfbC3P6CxB9bpT9zeRXEwMn8bLgn5v1Kh7sKAPgZcLlVA
-wRv1cEWw3F369nJad9Jjzc9YiQBCYz95OdBEsIJuQRno3eDBiFrRHnGTHyQw
-dOUeqN48Jzd/g66ed8/wMLH/S5noxqE=
------END CERTIFICATE-----
-
-America_Online_Root_Certification_Authority_1
------BEGIN CERTIFICATE-----
-MIIDpDCCAoygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJV
-UzEcMBoGA1UEChMTQW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1l
-cmljYSBPbmxpbmUgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAxMB4X
-DTAyMDUyODA2MDAwMFoXDTM3MTExOTIwNDMwMFowYzELMAkGA1UEBhMCVVMx
-HDAaBgNVBAoTE0FtZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJp
-Y2EgT25saW5lIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMTCCASIw
-DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKgv6KRpBgNHw+kqmP8ZonCa
-xlCyfqXfaE0bfA+2l2h9LaaLl+lkhsmj76CGv2BlnEtUiMJIxUo5vxTjWVXl
-GbR0yLQFOVwWpeKVBeASrlmLojNoWBym1BW32J/X3HGrfpq/m44zDyL9Hy7n
-BzbvYjnF3cu6JRQj3gzGPTzOggjmZj7aUTsWOqMFf6Dch9Wc/HKpoH145Lcx
-VR5lu9RhsCFg7RAycsWSJR74kEoYeEfffjA3PlAb2xzTa5qGUwew76wGePiE
-mf4hjUyAtgyC9mZweRrTT6PP8c9GsEsPPt2IYriMqQkoO3rHl+Ee5fSfwMCu
-JKDIodkP1nsmgmkyPacCAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAdBgNV
-HQ4EFgQUAK3Zo/Z59m50qX8zPYEX10zPM94wHwYDVR0jBBgwFoAUAK3Zo/Z5
-9m50qX8zPYEX10zPM94wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBBQUA
-A4IBAQB8itEfGDeC4Liwo+1WlchiYZwFos3CYiZhzRAW18y0ZTTQEYqtqKkF
-Zu90821fnZmv9ov761KyBZiibyrFVL0lvV+uyIbqRizBs73B6UlwGBaXCBOM
-IOAbLjpHyx7kADCVW/RFo8AasAFOq73AI25jP4BKxQft3OJvx8Fi8eNy1gTI
-dGcL+oiroQHIb/AUr9KZzVGTfu0uOMe9zkZQPXLjeSWdm4grECDdpbgyn43g
-Kd8hdIaC2y+CMMbHNYaz+ZZfRtsMRf3zUMNvxsNIrUam4SdHCh0Om7bCd39j
-8uB9Gr784N/Xx6dssPmuujz9dLQR6FgNgLzTqIA6me11zEZ7
------END CERTIFICATE-----
-
-America_Online_Root_Certification_Authority_2
------BEGIN CERTIFICATE-----
-MIIFpDCCA4ygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJV
-UzEcMBoGA1UEChMTQW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1l
-cmljYSBPbmxpbmUgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAyMB4X
-DTAyMDUyODA2MDAwMFoXDTM3MDkyOTE0MDgwMFowYzELMAkGA1UEBhMCVVMx
-HDAaBgNVBAoTE0FtZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJp
-Y2EgT25saW5lIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMjCCAiIw
-DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMxBRR3pPU0Q9oyxQcngXssN
-t79Hc9PwVU3dxgz6sWYFas14tNwC206B89enfHG8dWOgXeMHDEjsJcQDIPT/
-DjsS/5uN4cbVG7RtIuOx238hZK+GvFciKtZHgVdEglZTvYYUAQv8f3SkWq7x
-uhG1m1hagLQ3eAkzfDJHA1zEpYNI9FdWboE2JxhP7JsowtS013wMPgwr38oE
-18aO6lhOqKSlGBxsRZijQdEt0sdtjRnxrXm3gT+9BoInLRBYBbV4Bbkv2wxr
-kJB+FFk4u5QkE+XRnRTf04JNRvCAOVIyD+OEsnpD8l7eXz8d3eOyG6ChKiMD
-bi4BFYdcpnV1x5dhvt6G3NRI270qv0pV2uh9UPu0gBe4lL8BPeraunzgWGcX
-uVjgiIZGZ2ydEEdYMtA1fHkqkKJaEBEjNa0vzORKW6fIJ/KD3l67Xnfn6KVu
-Y8INXWHQjNJsWiEOyiijzirplcdIz5ZvHZIlyMbGwcEMBawmxNJ10uEqZ8A9
-W6Wa6897GqidFEXlD6CaZd4vKL3Ob5Rmg0gp2OpljK+T2WSfVVcmv2/LNzGZ
-o2C7HK2JNDJiuEMhBnIMoVxtRsX6Kc8w3onccVvdtjc+31D1uAclJuW8tf48
-ArO3+L5DwYcRlJ4jbBeKuIonDFRH8KmzwICMoCfrHRnjB453cMor9H124Hhn
-AgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFE1FwWg4u3Op
-aaEg5+31IqEjFNeeMB8GA1UdIwQYMBaAFE1FwWg4u3OpaaEg5+31IqEjFNee
-MA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQUFAAOCAgEAZ2sGuV9FOypL
-M7PmG2tZTiLMubekJcmnxPBUlgtk87FYT15R/LKXeydlwuXK5w0MJXti4/qf
-tIe3RUavg6WXSIylvfEWK5t2LHo1YGwRgJfMqZJS5ivmae2p+DYtLHe/YUjR
-Ywu5W1LtGLBDQiKmsXeu3mnFzcccobGlHBD7GL4acN3Bkku+KVqdPzW+5X1R
-+FXgJXUjhx5c3LqdsKyzadsXg8n33gy8CNyRnqjQ1xU3c6U1uPx+xURABsPr
-+CKAXEfOAuMRn0T//ZoyzH1kUQ7rVyZ2OuMeIjzCpjbdGe+n/BLzJsBZMYVM
-nNjP36TMzCmT/5RtdlwTCJfy7aULTd3oyWgOZtMADjMSW7yV5TKQqLPGbIOt
-d+6Lfn6xqavT4fG2wLHqiMDn05DpKJKUe2h7lyoKZy2FAjgQ5ANh1NolNscI
-WC2hp1GvMApJ9aZphwctREZ2jirlmjvXGKL8nDgQzMY70rUXOm/9riW99XJZ
-ZLF0KjhfGEzfz3EEWjbUvy+ZnOjZurGV5gJLIaFb1cFPj65pbVPbAZO1XB4Y
-3WRayhgoPmMEEf0cjQAPuDffZ4qdZqkCapH/E8ovXYO8h5Ns3CRRFgQlZvqz
-2cK6Kb6aSDiCmfS/O0oxGfm/jiEzFMpPVF/7zvuPcX/9XhmgD0uRuMRUvAaw
-RY8mkaKO/qk=
------END CERTIFICATE-----
-
-AOL_Time_Warner_Root_Certification_Authority_1
------BEGIN CERTIFICATE-----
-MIID5jCCAs6gAwIBAgIBATANBgkqhkiG9w0BAQUFADCBgzELMAkGA1UEBhMC
-VVMxHTAbBgNVBAoTFEFPTCBUaW1lIFdhcm5lciBJbmMuMRwwGgYDVQQLExNB
-bWVyaWNhIE9ubGluZSBJbmMuMTcwNQYDVQQDEy5BT0wgVGltZSBXYXJuZXIg
-Um9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAxMB4XDTAyMDUyOTA2MDAw
-MFoXDTM3MTEyMDE1MDMwMFowgYMxCzAJBgNVBAYTAlVTMR0wGwYDVQQKExRB
-T0wgVGltZSBXYXJuZXIgSW5jLjEcMBoGA1UECxMTQW1lcmljYSBPbmxpbmUg
-SW5jLjE3MDUGA1UEAxMuQU9MIFRpbWUgV2FybmVyIFJvb3QgQ2VydGlmaWNh
-dGlvbiBBdXRob3JpdHkgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
-ggEBAJnej8Mlo2k06AX3dLm/WpcZuS+U0pPlLYnKhHw/EEMbjIt8hFj4JHxI
-zyr9wBXZGH6EGhfT257XyuTZ16pYUYfw8ItITuLCxFlpMGK2MKKMCxGZYTVt
-fu/FsRkGIBKOQuHfD5YQUqjPnF+VFNivO3ULMSAfRC+iYkGzuxgh28pxPIzs
-trkNn+9R7017EvILDOGsQI93f7DKeHEMXRZxcKLXwjqFzQ6axOAAsNUl6twr
-5JQtOJyJQVdkKGUZHLZEtMgxa44Be3ZZJX8VHIQIfHNlIAqhBC4aMqiaILGc
-LCFZ5/vP7nAtCMpjPiybkxlqpMKX/7eGV4iFbJ4VFitNLLMCAwEAAaNjMGEw
-DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUoTYwFsuGkABFgFOxj8jYPXy+
-XxIwHwYDVR0jBBgwFoAUoTYwFsuGkABFgFOxj8jYPXy+XxIwDgYDVR0PAQH/
-BAQDAgGGMA0GCSqGSIb3DQEBBQUAA4IBAQCKIBilvrMvtKaEAEAwKfq0FHNM
-eUWn9nDg6H5kHgqVfGphwu9OH77/yZkfB2FK4V1Mza3u0FIy2VkyvNp5ctZ7
-CegCgTXTCt8RHcl5oIBN/lrXVtbtDyqvpxh1MwzqwWEFT2qaifKNuZ8u77Bf
-WgDrvq2g+EQFZ7zLBO+eZMXpyD8Fv8YvBxzDNnGGyjhmSs3WuEvGbKeXO/oT
-LW4jYYehY0KswsuXn2Fozy1MBJ3XJU8KDk2QixhWqJNIV9xvrr2eZ1d3iVCz
-vhGbRWeDhhmH05i9CBoWH1iCC+GWaQVLjuyDUTEH1dSf/1l7qG6Fz9NLqUmw
-X7A5KGgOc90lmt4S
------END CERTIFICATE-----
-
-AOL_Time_Warner_Root_Certification_Authority_2
------BEGIN CERTIFICATE-----
-MIIF5jCCA86gAwIBAgIBATANBgkqhkiG9w0BAQUFADCBgzELMAkGA1UEBhMC
-VVMxHTAbBgNVBAoTFEFPTCBUaW1lIFdhcm5lciBJbmMuMRwwGgYDVQQLExNB
-bWVyaWNhIE9ubGluZSBJbmMuMTcwNQYDVQQDEy5BT0wgVGltZSBXYXJuZXIg
-Um9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAyMB4XDTAyMDUyOTA2MDAw
-MFoXDTM3MDkyODIzNDMwMFowgYMxCzAJBgNVBAYTAlVTMR0wGwYDVQQKExRB
-T0wgVGltZSBXYXJuZXIgSW5jLjEcMBoGA1UECxMTQW1lcmljYSBPbmxpbmUg
-SW5jLjE3MDUGA1UEAxMuQU9MIFRpbWUgV2FybmVyIFJvb3QgQ2VydGlmaWNh
-dGlvbiBBdXRob3JpdHkgMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
-ggIBALQ3WggWmRToVbEbJGv8x4vmh6mJ7ouZzU9AhqS2TcnZsdw8TQ2FTBVs
-RotSeJ/4I/1n9SQ6aF3Q92RhQVSji6UI0ilbm2BPJoPRYxJWSXakFsKlnUWs
-i4SVqBax7J/qJBrvuVdcmiQhLE0OcR+mrF1FdAOYxFSMFkpBd4aVdQxHAWZg
-/BXxD+r1FHjHDtdugRxev17nOirYlxcwfACtCJ0zr7iZYYCLqJV+FNwSbKTQ
-2O9ASQI2+W6p1h2WVgSysy0WVoaP2SBXgM1nEG2wTPDaRrbqJS5Gr42whTg0
-ixQmgiusrpkLjhTXUr2eacOGAgvqdnUxCc4zGSGFQ+aJLZ8lN2fxI2rSAG2X
-+Z/nKcrdH9cG6rjJuQkhn8g/BsXS6RJGAE57COtCPStIbp1n3UsC5ETzkxml
-J85per5n0/xQpCyrw2u544BMzwVhSyvcG7mm0tCq9Stz+86QNZ8MUhy/XCFh
-EVsVS6kkUfykXPcXnbDS+gfpj1bkGoxoigTTfFrjnqKhynFbotSg5ymFXQNo
-Kk/SBtc9+cMDLz9l+WceR0DTYw/j1Y75hauXTLPXJuuWCpTehTacyH+BCQJJ
-Kg71ZDIMgtG6aoIbs0t0EfOMd9afv9w3pKdVBC/UMejTRrkDfNoSTllkt1Ex
-MVCgyhwn2RAurda9EGYrw7AiShJbAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMB
-Af8wHQYDVR0OBBYEFE9pbQN+nZ8HGEO8txBO1b+pxCAoMB8GA1UdIwQYMBaA
-FE9pbQN+nZ8HGEO8txBO1b+pxCAoMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG
-9w0BAQUFAAOCAgEAO/Ouyuguh4X7ZVnnrREUpVe8WJ8kEle7+z802u6teio0
-cnAxa8cZmIDJgt43d15Ui47y6mdPyXSEkVYJ1eV6moG2gcKtNuTxVBFT8zRF
-ASbI5Rq8NEQh3q0l/HYWdyGQgJhXnU7q7C+qPBR7V8F+GBRn7iTGvboVsNIY
-vbdVgaxTwOjdaRITQrcCtQVBynlQboIOcXKTRuidDV29rs4prWPVVRaAMCf/
-drr3uNZK49m1+VLQTkCpx+XCMseqdiThawVQ68W/ClTluUI8JPu3B5wwn3la
-5uBAUhX0/Kr0VvlEl4ftDmVyXr4m+02kLQgH3thcoNyBM5kYJRF3p+v9WAks
-mWsbivNSPxpNSGDxoPYzAlOL7SUJuA0t7Zdz7NeWH45gDtoQmy8YJPamTQr5
-O8t1wswvziRpyQoijlmn94IM19drNZxDAGrElWe6nEXLuA4399xOAU++CrYD
-062KRffaJ00psUjf5BHklka9bAI+1lHIlRcBFanyqqryvy9lG2/QuRqT9Y41
-xICHPpQvZuTpqP9BnHAqTyo5GJUefvthATxRCC4oGKQWDzH9OmwjkyB24f0H
-hdFbP9IcczLd+rn4jM8Ch3qaluTtT4mNU0OrDhPAARW0eTjb/G49nlG2uBOL
-Z8/5fNkiHfZdxRwBL5joeiQYvITX+txyW/fBOmg=
------END CERTIFICATE-----
-
-Baltimore_CyberTrust_Root
------BEGIN CERTIFICATE-----
-MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQG
-EwJJRTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0
-MSIwIAYDVQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUx
-MjE4NDYwMFoXDTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNV
-BAoTCUJhbHRpbW9yZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZ
-QmFsdGltb3JlIEN5YmVyVHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQAD
-ggEPADCCAQoCggEBAKMEuyKrmD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+h
-Xe2wCQVt2yguzmKiYv60iNoS6zjrIZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gR
-QKfRzMpijS3ljwumUNKoUMMo6vWrJYeKmpYcqWe4PwzV9/lSEy/CG9VwcPCP
-wBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSuXmD+tqYF/LTdB1kC1FkYmGP1
-pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZydc93Uk3zyZAsuT3lySNT
-Px8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/yejl0qhqdNkNwnGjkC
-AwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1BE3wMBIGA1Ud
-EwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUA
-A4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT929hkT
-I7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx
-jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/
-oCr0Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67
-G7fyUIhzksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9H
-RCwBXbsdtTLSR9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp
------END CERTIFICATE-----
-
-beTRUSTed_Root_CA-Baltimore_Implementation
------BEGIN CERTIFICATE-----
-MIIFajCCBFKgAwIBAgIEPLU9RjANBgkqhkiG9w0BAQUFADBmMRIwEAYDVQQK
-EwliZVRSVVNUZWQxGzAZBgNVBAsTEmJlVFJVU1RlZCBSb290IENBczEzMDEG
-A1UEAxMqYmVUUlVTVGVkIFJvb3QgQ0EtQmFsdGltb3JlIEltcGxlbWVudGF0
-aW9uMB4XDTAyMDQxMTA3Mzg1MVoXDTIyMDQxMTA3Mzg1MVowZjESMBAGA1UE
-ChMJYmVUUlVTVGVkMRswGQYDVQQLExJiZVRSVVNUZWQgUm9vdCBDQXMxMzAx
-BgNVBAMTKmJlVFJVU1RlZCBSb290IENBLUJhbHRpbW9yZSBJbXBsZW1lbnRh
-dGlvbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALx+xDmcjOPW
-HIb/ymKt4H8wRXqOGrO4x/nRNv8i805qX4QQ+2aBw5R5MdKR4XeOGCrDFN5R
-9U+jK7wYFuK13XneIviCfsuBH/0nLI/6l2Qijvj/YaOcGx6Sj8CoCd8JEey3
-fTGaGuqDIQY8n7pc/5TqarjDa1U0Tz0yH92BFODEPM2dMPgwqZfT7syj0B9f
-HBOB1BirlNFjw55/NZKeX0Tq7PQiXLfoPX2k+YmpkbIq2eszh+6l/ePazIjm
-iSZuxyuC0F6dWdsU7JGDBcNeDsYq0ATdcT0gTlgn/FP7eHgZFLL8kFKJOGJg
-B7Sg7KxrUNb9uShr71ItOrL/8QFArDcCAwEAAaOCAh4wggIaMA8GA1UdEwEB
-/wQFMAMBAf8wggG1BgNVHSAEggGsMIIBqDCCAaQGDysGAQQBsT4AAAEJKIOR
-MTCCAY8wggFIBggrBgEFBQcCAjCCAToaggE2UmVsaWFuY2Ugb24gb3IgdXNl
-IG9mIHRoaXMgQ2VydGlmaWNhdGUgY3JlYXRlcyBhbiBhY2tub3dsZWRnbWVu
-dCBhbmQgYWNjZXB0YW5jZSBvZiB0aGUgdGhlbiBhcHBsaWNhYmxlIHN0YW5k
-YXJkIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHVzZSwgdGhlIENlcnRpZmlj
-YXRpb24gUHJhY3RpY2UgU3RhdGVtZW50IGFuZCB0aGUgUmVseWluZyBQYXJ0
-eSBBZ3JlZW1lbnQsIHdoaWNoIGNhbiBiZSBmb3VuZCBhdCB0aGUgYmVUUlVT
-VGVkIHdlYiBzaXRlLCBodHRwOi8vd3d3LmJldHJ1c3RlZC5jb20vcHJvZHVj
-dHNfc2VydmljZXMvaW5kZXguaHRtbDBBBggrBgEFBQcCARY1aHR0cDovL3d3
-dy5iZXRydXN0ZWQuY29tL3Byb2R1Y3RzX3NlcnZpY2VzL2luZGV4Lmh0bWww
-HQYDVR0OBBYEFEU9w6nR3D8kVpgccxiIav+DR+22MB8GA1UdIwQYMBaAFEU9
-w6nR3D8kVpgccxiIav+DR+22MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0B
-AQUFAAOCAQEASZK8o+6svfoNyYt5hhwjdrCAWXf82n+0S9/DZEtqTg6t8n1Z
-dwWtColzsPq8y9yNAIiPpqCy6qxSJ7+hSHyXEHu67RMdmgduyzFiEuhjA6p9
-beP4G3YheBufS0OM00mG9htc9i5gFdPp43t1P9ACg9AYgkHNZTfqjjJ+vWuZ
-XTARyNtIVBw74acT02pIk/c9jH8F6M7ziCpjBLjqflh8AXtb4cV97yHgjQ5d
-UX2xZ/2jvTg2xvI4hocalmhgRvsoFEdV4aeADGvi6t9NfJBIoDa9CReJf8Py
-05yc493EG931t3GzUwWJBtDLSoDByFOQtTwxiBdQn8nEDovYqAJjDQ==
------END CERTIFICATE-----
-
-beTRUSTed_Root_CA
------BEGIN CERTIFICATE-----
-MIIFLDCCBBSgAwIBAgIEOU99hzANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQG
-EwJXVzESMBAGA1UEChMJYmVUUlVTVGVkMRswGQYDVQQDExJiZVRSVVNUZWQg
-Um9vdCBDQXMxGjAYBgNVBAMTEWJlVFJVU1RlZCBSb290IENBMB4XDTAwMDYy
-MDE0MjEwNFoXDTEwMDYyMDEzMjEwNFowWjELMAkGA1UEBhMCV1cxEjAQBgNV
-BAoTCWJlVFJVU1RlZDEbMBkGA1UEAxMSYmVUUlVTVGVkIFJvb3QgQ0FzMRow
-GAYDVQQDExFiZVRSVVNUZWQgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQAD
-ggEPADCCAQoCggEBANS0c3oTCjhVAb6JVuGUntS+WutKNHUbYSnE4a0IYCF4
-SP+00PpeQY1hRIfo7clY+vyTmt9P6j41ffgzeubx181vSUs9Ty1uDoM6GHh3
-o8/n9E1z2Jo7Gh2+lVPPIJfCzz4kUmwMjmVZxXH/YgmPqsWPzGCgc0rXOD8V
-cr+il7dw6K/ifhYGTPWqZCZyByWtNfwYsSbX2P8ZDoMbjNx4RWc0PfSvHI3k
-bWvtILNnmrRhyxdviTX/507AMhLn7uzf/5cwdO2NR47rtMNE5qdMf1ZD6Li8
-tr76g5fmu/vEtpO+GRg+jIG5c4gW9JZDnGdzF5DYCW5jrEq2I8QBoa2k5MUC
-AwEAAaOCAfgwggH0MA8GA1UdEwEB/wQFMAMBAf8wggFZBgNVHSAEggFQMIIB
-TDCCAUgGCisGAQQBsT4BAAAwggE4MIIBAQYIKwYBBQUHAgIwgfQagfFSZWxp
-YW5jZSBvbiB0aGlzIGNlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBhc3N1bWVz
-IGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFyZCB0
-ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGFuZCBjZXJ0aWZpY2F0aW9u
-IHByYWN0aWNlIHN0YXRlbWVudCwgd2hpY2ggY2FuIGJlIGZvdW5kIGF0IGJl
-VFJVU1RlZCdzIHdlYiBzaXRlLCBodHRwczovL3d3dy5iZVRSVVNUZWQuY29t
-L3ZhdWx0L3Rlcm1zMDEGCCsGAQUFBwIBFiVodHRwczovL3d3dy5iZVRSVVNU
-ZWQuY29tL3ZhdWx0L3Rlcm1zMDQGA1UdHwQtMCswKaAnoCWkIzAhMRIwEAYD
-VQQKEwliZVRSVVNUZWQxCzAJBgNVBAYTAldXMB0GA1UdDgQWBBQquZtpLjub
-2M3eKjEENGvKBxirZzAfBgNVHSMEGDAWgBQquZtpLjub2M3eKjEENGvKBxir
-ZzAOBgNVHQ8BAf8EBAMCAf4wDQYJKoZIhvcNAQEFBQADggEBAHlh26Nebhax
-6nZR+csVm8tpvuaBa58oH2U+3RGFktToQb9+M70j5/Egv6S0phkBxoyNNXxl
-pE8JpNbYIxUFE6dDea/bow6be3ga8wSGWsb2jCBHOElQBp1yZzrwmAOtlmdE
-/D8QDYZN5AA7KXvOOzuZhmElQITcE2K3+spZ1gMe1lMBzW1MaFVA4e5rxyoA
-AEiCswoBw2AqDPeCNe5IhpbkdNQ96gFxugR1QKepfzk5mlWXKWWuGVUlBXJH
-0+gY3Ljpr0NzARJ0o+FcXxVdJPP55PS2Z2cS52QiivalQaYctmBjRYoQtLpG
-EK5BV2VsPyMQPyEQWbfkQN0mDCP2qq4=
------END CERTIFICATE-----
-
-beTRUSTed_Root_CA_-_Entrust_Implementation
------BEGIN CERTIFICATE-----
-MIIGUTCCBTmgAwIBAgIEPLVPQDANBgkqhkiG9w0BAQUFADBmMRIwEAYDVQQK
-EwliZVRSVVNUZWQxGzAZBgNVBAsTEmJlVFJVU1RlZCBSb290IENBczEzMDEG
-A1UEAxMqYmVUUlVTVGVkIFJvb3QgQ0EgLSBFbnRydXN0IEltcGxlbWVudGF0
-aW9uMB4XDTAyMDQxMTA4MjQyN1oXDTIyMDQxMTA4NTQyN1owZjESMBAGA1UE
-ChMJYmVUUlVTVGVkMRswGQYDVQQLExJiZVRSVVNUZWQgUm9vdCBDQXMxMzAx
-BgNVBAMTKmJlVFJVU1RlZCBSb290IENBIC0gRW50cnVzdCBJbXBsZW1lbnRh
-dGlvbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALr0RAOqEmq1
-Q+xVkrYwfTVXDNvzDSduTPdQqJtOK2/b9a0cS12zqcH+e0TrW6MFDR/FNCsw
-ACnxeECypP869AGIF37m1CbTukzqMvtDd5eHI8XbQ6P1KqNRXuE70mVpflUV
-m3rnafdE4Fe1FehmYA8NA/uCjqPoEXtsvsdjDheT389Lrm5zdeDzqrmkwAkb
-hepxKYhBMvnwKg5sCfJ0a2ZsUhMfGLzUPvfYbiCeyv78IZTuEyhL11xeDGbu
-6bsPwTSxfwh28z0mcMmLJR1iJAzqHHVOwBLkuhMdMCktVjMFu5dZfsZJT4nX
-LySotohAtWSSU1Yk5KKghbNekLQSM80CAwEAAaOCAwUwggMBMIIBtwYDVR0g
-BIIBrjCCAaowggGmBg8rBgEEAbE+AAACCSiDkTEwggGRMIIBSQYIKwYBBQUH
-AgIwggE7GoIBN1JlbGlhbmNlIG9uIG9yIHVzZSBvZiB0aGlzIENlcnRpZmlj
-YXRlIGNyZWF0ZXMgYW4gYWNrbm93bGVkZ21lbnQgYW5kIGFjY2VwdGFuY2Ug
-b2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29u
-ZGl0aW9ucyBvZiB1c2UsIHRoZSBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0
-YXRlbWVudCBhbmQgdGhlIFJlbHlpbmcgUGFydHkgQWdyZWVtZW50LCB3aGlj
-aCBjYW4gYmUgZm91bmQgYXQgdGhlIGJlVFJVU1RlZCB3ZWIgc2l0ZSwgaHR0
-cHM6Ly93d3cuYmV0cnVzdGVkLmNvbS9wcm9kdWN0c19zZXJ2aWNlcy9pbmRl
-eC5odG1sMEIGCCsGAQUFBwIBFjZodHRwczovL3d3dy5iZXRydXN0ZWQuY29t
-L3Byb2R1Y3RzX3NlcnZpY2VzL2luZGV4Lmh0bWwwEQYJYIZIAYb4QgEBBAQD
-AgAHMIGJBgNVHR8EgYEwfzB9oHugeaR3MHUxEjAQBgNVBAoTCWJlVFJVU1Rl
-ZDEbMBkGA1UECxMSYmVUUlVTVGVkIFJvb3QgQ0FzMTMwMQYDVQQDEypiZVRS
-VVNUZWQgUm9vdCBDQSAtIEVudHJ1c3QgSW1wbGVtZW50YXRpb24xDTALBgNV
-BAMTBENSTDEwKwYDVR0QBCQwIoAPMjAwMjA0MTEwODI0MjdagQ8yMDIyMDQx
-MTA4NTQyN1owCwYDVR0PBAQDAgEGMB8GA1UdIwQYMBaAFH1w5a44iwY/qhwa
-j/nPJDCqhIQWMB0GA1UdDgQWBBR9cOWuOIsGP6ocGo/5zyQwqoSEFjAMBgNV
-HRMEBTADAQH/MB0GCSqGSIb2fQdBAAQQMA4bCFY2LjA6NC4wAwIEkDANBgkq
-hkiG9w0BAQUFAAOCAQEAKrgXzh8QlOu4mre5X+za95IkrNySO8cgjfKZ5V04
-ocI07cUTWVwFtStPYZuR+0H8/NU8TZh2BvWBfevdkObRVlTa4y0MnxEylCIB
-evZsLHRnBMylj44ss0O1lKLQfelifwa+JwGDnjr9iu6YQ0pr17WXOzq/T220
-Y/ozADQuLW2WyXvKmWO6vvT2MKAtmJbpVkQFqUSjYRDrgqFnXbxdJ3Wqiig2
-KjiS2d2kXgClzMx8KSreKJCrt+G2/30lC0DYqjSjLd4H61/OCt3Kfjp9JsFi
-aDrmLzfzgYYhxKlkqu9FNtEaZnz46TfW1mG+oq1I59/mdP7TbX3SJdysYlep
-9w==
------END CERTIFICATE-----
-
-beTRUSTed_Root_CA_-_RSA_Implementation
------BEGIN CERTIFICATE-----
-MIIFaDCCBFCgAwIBAgIQO1nHe81bV569N1KsdrSqGjANBgkqhkiG9w0BAQUF
-ADBiMRIwEAYDVQQKEwliZVRSVVNUZWQxGzAZBgNVBAsTEmJlVFJVU1RlZCBS
-b290IENBczEvMC0GA1UEAxMmYmVUUlVTVGVkIFJvb3QgQ0EgLSBSU0EgSW1w
-bGVtZW50YXRpb24wHhcNMDIwNDExMTExODEzWhcNMjIwNDEyMTEwNzI1WjBi
-MRIwEAYDVQQKEwliZVRSVVNUZWQxGzAZBgNVBAsTEmJlVFJVU1RlZCBSb290
-IENBczEvMC0GA1UEAxMmYmVUUlVTVGVkIFJvb3QgQ0EgLSBSU0EgSW1wbGVt
-ZW50YXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkujQw
-CY5X0LkGLG9uJIAiv11DpvpPrILnHGhwhRujbrWqeNluB0s/6d/16uhUoWGK
-Di9pdRi3DOUUjXFumLhV/AyV0Jtu4S2I1DpAa5LxmZZk3tv/ePTulh1HiXzU
-vrmIdyM6CeYEnm2qXtLIvZpOGd+J6lsOfsPktPDgaTuID0GQ+NRxQyTBjyZL
-O1bp/4xsN+lFrYWMU8NghpBKlsmzVLC7F/AcRdnUGxlkVgoZ98zh/4avflhe
-rHqQH8koOUV7orbHnB/ahdQhhlkwk75TMzf270HPM8ercmsl9fNTGwxMLvF1
-S++gh/f+ihXQbNXL+WhTuXAVE8L1LvtDNXUtAgMBAAGjggIYMIICFDAMBgNV
-HRMEBTADAQH/MIIBtQYDVR0gBIIBrDCCAagwggGkBg8rBgEEAbE+AAADCSiD
-kTEwggGPMEEGCCsGAQUFBwIBFjVodHRwOi8vd3d3LmJldHJ1c3RlZC5jb20v
-cHJvZHVjdHNfc2VydmljZXMvaW5kZXguaHRtbDCCAUgGCCsGAQUFBwICMIIB
-OhqCATZSZWxpYW5jZSBvbiBvciB1c2Ugb2YgdGhpcyBDZXJ0aWZpY2F0ZSBj
-cmVhdGVzIGFuIGFja25vd2xlZGdtZW50IGFuZCBhY2NlcHRhbmNlIG9mIHRo
-ZSB0aGVuIGFwcGxpY2FibGUgc3RhbmRhcmQgdGVybXMgYW5kIGNvbmRpdGlv
-bnMgb2YgdXNlLCB0aGUgQ2VydGlmaWNhdGlvbiBQcmFjdGljZSBTdGF0ZW1l
-bnQgYW5kIHRoZSBSZWx5aW5nIFBhcnR5IEFncmVlbWVudCwgd2hpY2ggY2Fu
-IGJlIGZvdW5kIGF0IHRoZSBiZVRSVVNUZWQgd2ViIHNpdGUsIGh0dHA6Ly93
-d3cuYmV0cnVzdGVkLmNvbS9wcm9kdWN0c19zZXJ2aWNlcy9pbmRleC5odG1s
-MAsGA1UdDwQEAwIBBjAfBgNVHSMEGDAWgBSp7BR++dlDzFMrFK3P9/BZiUHN
-GTAdBgNVHQ4EFgQUqewUfvnZQ8xTKxStz/fwWYlBzRkwDQYJKoZIhvcNAQEF
-BQADggEBANuXsHXqDMTBmMpWBcCorSZIry0g6IHHtt9DwSwddUvUQo3neqh0
-3GZCWYez9Wlt2ames30cMcH1VOJZJEnl7r05pmuKmET7m9cqg5c0Lcd9NUwt
-NLg+DcTsiCevnpL9UGGCqGAHFFPMZRPB9kdEadIxyKbdLrML3kqNWz2rDcI1
-UqJWN8wyiyiFQpyRQHpwKzg21eFzGh/l+n5f3NacOzDq28BbJ1zTcwfBwvNM
-m2+fG8oeqqg4MwlYsq78B+g23FW6L09A/nq9BqaBwZMifIYRCgZ3SK41ty8y
-mmFei74pnykkiFY5LKjSq5YDWtRIn7lAhAuYaPsBQ9Yb4gmxlxw=
------END CERTIFICATE-----
-
-CAcert_org_-_root_CA
+cacert.org/cacert.org_root.crt
 -----BEGIN CERTIFICATE-----
 MIIHPTCCBSWgAwIBAgIBADANBgkqhkiG9w0BAQQFADB5MRAwDgYDVQQKEwdSb290
 IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNB
@@ -475,2044 +83,250 @@ GCSNe9FINSkYQKyTYOGWhlC0elnYjyELn8+CkcY7v2vcB5G5l1YjqrZslMZIBjzk
 zk6q5PYvCdxTby78dOs6Y5nCpqyJvKeyRKANihDjbPIky/qbn3BHLt4Ui9SyIAmW
 omTxJBzcoTWcFbLUvFUufQb1nA5V9FrWk9p2rSVzTMVD
 -----END CERTIFICATE-----
-
-CAcert_org_-_class3_CA
------BEGIN CERTIFICATE-----
-MIIGCDCCA/CgAwIBAgIBATANBgkqhkiG9w0BAQQFADB5MRAwDgYDVQQKEwdSb290
-IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNB
-IENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRA
-Y2FjZXJ0Lm9yZzAeFw0wNTEwMTQwNzM2NTVaFw0zMzAzMjgwNzM2NTVaMFQxFDAS
-BgNVBAoTC0NBY2VydCBJbmMuMR4wHAYDVQQLExVodHRwOi8vd3d3LkNBY2VydC5v
-cmcxHDAaBgNVBAMTE0NBY2VydCBDbGFzcyAzIFJvb3QwggIiMA0GCSqGSIb3DQEB
-AQUAA4ICDwAwggIKAoICAQCrSTURSHzSJn5TlM9Dqd0o10Iqi/OHeBlYfA+e2ol9
-4fvrcpANdKGWZKufoCSZc9riVXbHF3v1BKxGuMO+f2SNEGwk82GcwPKQ+lHm9WkB
-Y8MPVuJKQs/iRIwlKKjFeQl9RrmK8+nzNCkIReQcn8uUBByBqBSzmGXEQ+xOgo0J
-0b2qW42S0OzekMV/CsLj6+YxWl50PpczWejDAz1gM7/30W9HxM3uYoNSbi4ImqTZ
-FRiRpoWSR7CuSOtttyHshRpocjWr//AQXcD0lKdq1TuSfkyQBX6TwSyLpI5idBVx
-bgtxA+qvFTia1NIFcm+M+SvrWnIl+TlG43IbPgTDZCciECqKT1inA62+tC4T7V2q
-SNfVfdQqe1z6RgRQ5MwOQluM7dvyz/yWk+DbETZUYjQ4jwxgmzuXVjit89Jbi6Bb
-6k6WuHzX1aCGcEDTkSm3ojyt9Yy7zxqSiuQ0e8DYbF/pCsLDpyCaWt8sXVJcukfV
-m+8kKHA4IC/VfynAskEDaJLM4JzMl0tF7zoQCqtwOpiVcK01seqFK6QcgCExqa5g
-eoAmSAC4AcCTY1UikTxW56/bOiXzjzFU6iaLgVn5odFTEcV7nQP2dBHgbbEsPyyG
-kZlxmqZ3izRg0RS0LKydr4wQ05/EavhvE/xzWfdmQnQeiuP43NJvmJzLR5iVQAX7
-6QIDAQABo4G/MIG8MA8GA1UdEwEB/wQFMAMBAf8wXQYIKwYBBQUHAQEEUTBPMCMG
-CCsGAQUFBzABhhdodHRwOi8vb2NzcC5DQWNlcnQub3JnLzAoBggrBgEFBQcwAoYc
-aHR0cDovL3d3dy5DQWNlcnQub3JnL2NhLmNydDBKBgNVHSAEQzBBMD8GCCsGAQQB
-gZBKMDMwMQYIKwYBBQUHAgEWJWh0dHA6Ly93d3cuQ0FjZXJ0Lm9yZy9pbmRleC5w
-aHA/aWQ9MTAwDQYJKoZIhvcNAQEEBQADggIBAH8IiKHaGlBJ2on7oQhy84r3HsQ6
-tHlbIDCxRd7CXdNlafHCXVRUPIVfuXtCkcKZ/RtRm6tGpaEQU55tiKxzbiwzpvD0
-nuB1wT6IRanhZkP+VlrRekF490DaSjrxC1uluxYG5sLnk7mFTZdPsR44Q4Dvmw2M
-77inYACHV30eRBzLI++bPJmdr7UpHEV5FpZNJ23xHGzDwlVks7wU4vOkHx4y/CcV
-Bc/dLq4+gmF78CEQGPZE6lM5+dzQmiDgxrvgu1pPxJnIB721vaLbLmINQjRBvP+L
-ivVRIqqIMADisNS8vmW61QNXeZvo3MhN+FDtkaVSKKKs+zZYPumUK5FQhxvWXtaM
-zPcPEAxSTtAWYeXlCmy/F8dyRlecmPVsYGN6b165Ti/Iubm7aoW8mA3t+T6XhDSU
-rgCvoeXnkm5OvfPi2RSLXNLrAWygF6UtEOucekq9ve7O/e0iQKtwOIj1CodqwqsF
-YMlIBdpTwd5Ed2qz8zw87YC8pjhKKSRf/lk7myV6VmMAZLldpGJ9VzZPrYPvH5JT
-oI53V93lYRE9IwCQTDz6o2CTBKOvNfYOao9PSmCnhQVsRqGP9Md246FZV/dxssRu
-FFxtbUFm3xuTsdQAw+7Lzzw9IYCpX2Nl/N3gX6T0K/CFcUHUZyX7GrGXrtaZghNB
-0m6lG5kngOcLqagA
------END CERTIFICATE-----
-
-
-Certum_Root_CA
------BEGIN CERTIFICATE-----
-MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYT
-AlBMMRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNl
-cnR1bSBDQTAeFw0wMjA2MTExMDQ2MzlaFw0yNzA2MTExMDQ2MzlaMD4xCzAJ
-BgNVBAYTAlBMMRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNV
-BAMTCUNlcnR1bSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
-AM6xwS7TT3zNJc4YPk/EjG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYV
-M42sLQnFdvkrOYCJ5JdLkKWoePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/Ox
-LjBos8Q82KxujZlakE403Daaj4GIULdtlkIJ89eVgw1BS7Bqa/j8D35in2fE
-7SZfECYPCE/wpFcozo+47UX2bu4lXapuOb7kky/ZR6By6/qmW6/KUz/iDsaW
-VhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUgAKpoC6EahQGcxEZjgoi2IrHu
-/qpGWX7PNSzVttpd90gzFFS269lvzs2I1qsb2pY7HVkCAwEAAaMTMBEwDwYD
-VR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAuI3O7+cUus/usESS
-bLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+GXYkHAQaTOs9qmdvLdTN
-/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTgxSvgGrZg
-FCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1qCjqT
-E5s7FCMTY5w/0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5x
-O/fIR/RpbxXyEV6DHpx8Uq79AtoSqFlnGNu8cN2bsWntgM6JQEhqDjXKKWYV
-IZQs6GAqm4VKQPNriiTsBhYscw==
------END CERTIFICATE-----
-
-Comodo_AAA_Services_root
------BEGIN CERTIFICATE-----
-MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJH
-QjEbMBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxm
-b3JkMRowGAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UEAwwYQUFB
-IENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIz
-MTIzNTk1OVowezELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFu
-Y2hlc3RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENB
-IExpbWl0ZWQxITAfBgNVBAMMGEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCC
-ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL5AnfRu4ep2hxxNRUSO
-vkbIgwadwSr+GB+O5AL686tdUIoWMQuaBtDFcCLNSS1UY8y2bmhGC1Pqy0wk
-wLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe3M/vg4aijJRPn2jymJBGhCfH
-dr/jzDUsi14HZGWCwEiwqJH5YZ92IFCokcdmtet4YgNW8IoaE+oxox6gmf04
-9vYnMlhvB/VruPsUK6+3qszWY19zjNoFmag4qMsXeDZRrOme9Hg6jc8P2ULi
-mAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjHYpy+g8cmez6KJcfA3Z3m
-NWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQUoBEKIz6W
-8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB
-Af8wewYDVR0fBHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20v
-QUFBQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwu
-Y29tb2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2VzLmNybDANBgkqhkiG
-9w0BAQUFAAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm
-7l3sAg9g1o1QGE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHC
-v8S5dIa2LX1rzNLzRt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdV
-CYfeU0BsWO/8tqtlbgT2G9w84FoVxp7Z8VlIMCFlA2zs6SFz7JsDoeA3raAV
-GI/6ugLOpyypEBMs1OUIJqsil2D4kF501KKaU73yqWjgom7C12yxow+ev+to
-51byrvLjKzg6CYG1a4XXvi3tPxq3smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg==
------END CERTIFICATE-----
-
-Comodo_Secure_Services_root
------BEGIN CERTIFICATE-----
-MIIEPzCCAyegAwIBAgIBATANBgkqhkiG9w0BAQUFADB+MQswCQYDVQQGEwJH
-QjEbMBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxm
-b3JkMRowGAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEkMCIGA1UEAwwbU2Vj
-dXJlIENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4
-MTIzMTIzNTk1OVowfjELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIg
-TWFuY2hlc3RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2Rv
-IENBIExpbWl0ZWQxJDAiBgNVBAMMG1NlY3VyZSBDZXJ0aWZpY2F0ZSBTZXJ2
-aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMBxM4KK0HDr
-c4eCQNUd5MvJDkKQ+d40uaG6EfQlhfPMcm3ye5drswfxdySRXyWP9nQ95IDC
-+DwN879A6vfIUtFyb+/Iq0G4bi4XKpVpDM3SHpR7LZQdqnXXs5jLrLxkU0C8
-j6ysNstcrbvd4JQX7NFc0L/vpZXJkMWwrPsbQ996CF23uPJAGysnnlDOXmWC
-iIxe004MeuoIkbY2qitC++rCoznl2yY4rYsK7hljxxwk3wN42ubqwUcaCwtG
-Cd0C/N7Lh1/XMGNooa7cMqG6vv5Eq2i2pRcV/b3Vp6ea5EQz6YiO/O1R65Nx
-Tq0B50SOqy3LqP4BSUjwwN3HaNiS/j0CAwEAAaOBxzCBxDAdBgNVHQ4EFgQU
-PNiTiMLAggnMAZkGkyDpnnAJY08wDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB
-/wQFMAMBAf8wgYEGA1UdHwR6MHgwO6A5oDeGNWh0dHA6Ly9jcmwuY29tb2Rv
-Y2EuY29tL1NlY3VyZUNlcnRpZmljYXRlU2VydmljZXMuY3JsMDmgN6A1hjNo
-dHRwOi8vY3JsLmNvbW9kby5uZXQvU2VjdXJlQ2VydGlmaWNhdGVTZXJ2aWNl
-cy5jcmwwDQYJKoZIhvcNAQEFBQADggEBAIcBbSMdflsXfcFhMs+P5/OKlFlm
-4J4oqF7Tt/Q05qo5spcWxYJvMqTpjOev/e/C6LlLqqP05tqNZSH7uoDrJiiF
-Gv45jN5bBAS0VPmjZ55B+glSzAVIqMk/IQQezkhr/IXownuvf7fM+F86/TXG
-De+X3EyrEeFryzHRbPtIgKvcnDe4IRRLDXE97IMzbtFuMhbsmMcWi1mmNKsF
-Vy2T96oTy9IT4rcuO81rUBcJaD61JlfutuC23bkpgHl9j6PwpCikFcSF9CfU
-a7/lXORlAnZUtOM3ZiTTGWHIUhDlizeauan5Hb/qmZJhlv8BzaFfDbxxvA6s
-Cx1HRR3B7Hzs/Sk=
------END CERTIFICATE-----
-
-Comodo_Trusted_Services_root
------BEGIN CERTIFICATE-----
-MIIEQzCCAyugAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJH
-QjEbMBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxm
-b3JkMRowGAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDElMCMGA1UEAwwcVHJ1
-c3RlZCBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczAeFw0wNDAxMDEwMDAwMDBaFw0y
-ODEyMzEyMzU5NTlaMH8xCzAJBgNVBAYTAkdCMRswGQYDVQQIDBJHcmVhdGVy
-IE1hbmNoZXN0ZXIxEDAOBgNVBAcMB1NhbGZvcmQxGjAYBgNVBAoMEUNvbW9k
-byBDQSBMaW1pdGVkMSUwIwYDVQQDDBxUcnVzdGVkIENlcnRpZmljYXRlIFNl
-cnZpY2VzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA33FvNlhT
-WvI2VFeAxHQIIO0Yfyod5jWaHiWsnOWWfnJSoBVC21ndZHoa0Lh73TkVvFVI
-xO06AOoxEbrycXQaZ7jPM8yoMa+j49d/vzMtTGo87IvDktJTdyR0nAducPy9
-C1t2ul/y/9c3S0pgePfw+spwtOpZqqPOSC+pw7ILfhdyFgymBwwbOM/JYrc/
-oJOlh0Hyt3BAd9i+FHzjqMB6juljatEPmsbS9Is6FARW1O24zG71++IsWL1/
-T2sr92AkWCTOJu80kTrV44HQsvAEAtdbtz6SrGsSivnkBbA7kUlcsutT6vif
-R4buv5XAwAaf0lteERv0xwQ1KdJVXOTt6wIDAQABo4HJMIHGMB0GA1UdDgQW
-BBTFe1i97doladL3WRaoszLAeydb9DAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0T
-AQH/BAUwAwEB/zCBgwYDVR0fBHwwejA8oDqgOIY2aHR0cDovL2NybC5jb21v
-ZG9jYS5jb20vVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMuY3JsMDqgOKA2
-hjRodHRwOi8vY3JsLmNvbW9kby5uZXQvVHJ1c3RlZENlcnRpZmljYXRlU2Vy
-dmljZXMuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQDIk4E7ibSvuIQSTI3S8Ntw
-uleGFTQQuS9/HrCoiWChisJ3DFBKmwCL2Iv0QeLQg4pKHBQGsKNoBXAxMKdT
-mw7pSqBYaWcOrp32pSxBvzwGa+RZzG0Q8ZZvH9/0BAKkn0U+yNj6NkZEUD+C
-l5EfKNsYEYwq5GWDVxISjBc/lDb+XbDABHcTuPQV1T84zJQ6VdCsmPW6AF/g
-hhmBeC8owH7TzEIK9a5QoNE+xqFx7D+gIIxmOom0jtTYsU0lR+4viMi14QVF
-wL4Ucd56/Y57fU0IlqUSc/AtyjcndBInTMu2l+nZrghtWjlA3QVHdWpaIbOj
-GM9O9y5Xt5hwXsjEeLBi
------END CERTIFICATE-----
-
-Digital_Signature_Trust_Co._Global_CA_1
------BEGIN CERTIFICATE-----
-MIIDKTCCApKgAwIBAgIENnAVljANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQG
-EwJVUzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREw
-DwYDVQQLEwhEU1RDQSBFMTAeFw05ODEyMTAxODEwMjNaFw0xODEyMTAxODQw
-MjNaMEYxCzAJBgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVy
-ZSBUcnVzdCBDby4xETAPBgNVBAsTCERTVENBIEUxMIGdMA0GCSqGSIb3DQEB
-AQUAA4GLADCBhwKBgQCgbIGpzzQeJN3+hijM3oMv+V7UQtLodGBmE5gGHKlR
-EmlvMVW5SXIACH7TpWJENySZj9mDSI+ZbZUTu0M7LklOiDfBu1h//uG9+Lth
-zfNHwJmm8fOR6Hh8AMthyUQncWlVSn5JTe2io74CTADKAqjuAQIxZA9SLRN0
-dja1erQtcQIBA6OCASQwggEgMBEGCWCGSAGG+EIBAQQEAwIABzBoBgNVHR8E
-YTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMxJDAiBgNVBAoTG0RpZ2l0YWwg
-U2lnbmF0dXJlIFRydXN0IENvLjERMA8GA1UECxMIRFNUQ0EgRTExDTALBgNV
-BAMTBENSTDEwKwYDVR0QBCQwIoAPMTk5ODEyMTAxODEwMjNagQ8yMDE4MTIx
-MDE4MTAyM1owCwYDVR0PBAQDAgEGMB8GA1UdIwQYMBaAFGp5fpFpRhgTCgJ3
-pVlbYJglDqL4MB0GA1UdDgQWBBRqeX6RaUYYEwoCd6VZW2CYJQ6i+DAMBgNV
-HRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqGSIb3
-DQEBBQUAA4GBACIS2Hod3IEGtgllsofIH160L+nEHvI8wbsEkBFKg05+k7lN
-QseSJqBcNJo4cvj9axY+IO6CizEqkzaFI4iKPANo08kJD038bKTaKHKTDomA
-sH3+gG9lbRgzl4vCa4nuYD3Im+9/KzJic5PLPON74nZ4RbyhkwS7hp86W0N6
-w4pl
------END CERTIFICATE-----
-
-Digital_Signature_Trust_Co._Global_CA_2
------BEGIN CERTIFICATE-----
-MIID2DCCAsACEQDQHkCLAAACfAAAAAIAAAABMA0GCSqGSIb3DQEBBQUAMIGp
-MQswCQYDVQQGEwJ1czENMAsGA1UECBMEVXRhaDEXMBUGA1UEBxMOU2FsdCBM
-YWtlIENpdHkxJDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0dXJlIFRydXN0IENv
-LjERMA8GA1UECxMIRFNUQ0EgWDExFjAUBgNVBAMTDURTVCBSb290Q0EgWDEx
-ITAfBgkqhkiG9w0BCQEWEmNhQGRpZ3NpZ3RydXN0LmNvbTAeFw05ODEyMDEx
-ODE4NTVaFw0wODExMjgxODE4NTVaMIGpMQswCQYDVQQGEwJ1czENMAsGA1UE
-CBMEVXRhaDEXMBUGA1UEBxMOU2FsdCBMYWtlIENpdHkxJDAiBgNVBAoTG0Rp
-Z2l0YWwgU2lnbmF0dXJlIFRydXN0IENvLjERMA8GA1UECxMIRFNUQ0EgWDEx
-FjAUBgNVBAMTDURTVCBSb290Q0EgWDExITAfBgkqhkiG9w0BCQEWEmNhQGRp
-Z3NpZ3RydXN0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
-ANLGJrbnpT3BxGjVUG9TxW9JEwm4ryxIjRRqoxdfWvnTLnUv2Chi0ZMv/E3U
-q4flCMeZ55I/db3rJbQVwZsZPdJEjdd0IG03Ao9pk1uKxBmd9LIO/BZsubEF
-koPRhSxglD5FVaDZqwgh5mDoO3TymVBRaNADLbGAvqPYUrBEzUNKcI5YhZXh
-TizWLUFv1oTnyJhEykfbLCSlaSbPa7gnYsP0yXqSI+0TZ4KuRS5F5X5yP4Wd
-lGIQ5jyRoa13AOAV7POEgHJ6jm5gl8ckWRA0g1vhpaRptlc1HHhZxtMvOnNn
-7pTKBBMFYgZwI7P0fO5F2WQLW0mqpEPOJsREEmy43XkCAwEAATANBgkqhkiG
-9w0BAQUFAAOCAQEAojeyP2n714Z5VEkxlTMr89EJFEliYIalsBHiUMIdBlc+
-LegzZL6bqq1fG03UmZWii5rJYnK1aerZWKs17RWiQ9a2vAd5ZWRzfdd5ynvV
-WlHG4VMElo04z6MXrDlxawHDi1M8Y+nuecDkvpIyZHqzH5eUYr3qsiAVlfuX
-8ngvYzZAOONGDx3drJXK50uQe7FLqdTF65raqtWjlBRGjS0f8zrWkzr2Pnn8
-6Oawde3uPclwx12qgUtGJRzHbBXjlU4PqjI3lAoXJJIThFjSY28r9+ZbYgsT
-F7ANUkz+/m9c4pFuHf2kYtdo+o56T9II2pPc8JIRetDccpMMc5NihWjQ9A==
------END CERTIFICATE-----
-
-Digital_Signature_Trust_Co._Global_CA_3
------BEGIN CERTIFICATE-----
-MIIDKTCCApKgAwIBAgIENm7TzjANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQG
-EwJVUzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREw
-DwYDVQQLEwhEU1RDQSBFMjAeFw05ODEyMDkxOTE3MjZaFw0xODEyMDkxOTQ3
-MjZaMEYxCzAJBgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVy
-ZSBUcnVzdCBDby4xETAPBgNVBAsTCERTVENBIEUyMIGdMA0GCSqGSIb3DQEB
-AQUAA4GLADCBhwKBgQC/k48Xku8zExjrEH9OFr//Bo8qhbxe+SSmJIi2A7fB
-w18DW9Fvrn5C6mYjuGODVvsoLeE4i7TuqAHhzhy2iCoiRoX7n6dwqUcUP87e
-ZfCocfdPJmyMvMa1795JJ/9IKn3oTQPMx7JSxhcxEzu1TdvIxPbDDyQq2gyd
-55FbgM2UnQIBA6OCASQwggEgMBEGCWCGSAGG+EIBAQQEAwIABzBoBgNVHR8E
-YTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMxJDAiBgNVBAoTG0RpZ2l0YWwg
-U2lnbmF0dXJlIFRydXN0IENvLjERMA8GA1UECxMIRFNUQ0EgRTIxDTALBgNV
-BAMTBENSTDEwKwYDVR0QBCQwIoAPMTk5ODEyMDkxOTE3MjZagQ8yMDE4MTIw
-OTE5MTcyNlowCwYDVR0PBAQDAgEGMB8GA1UdIwQYMBaAFB6CTShlgDzJQW6s
-NS5ay97u+DlbMB0GA1UdDgQWBBQegk0oZYA8yUFurDUuWsve7vg5WzAMBgNV
-HRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqGSIb3
-DQEBBQUAA4GBAEeNg61i8tuwnkUiBbmi1gMOOHLnnvx75pO2mqWilMg0HZHR
-xdf0CiUPPXiBng+xZ8SQTGPdXqfiup/1902lMXucKS1M/mQ+7LZT/uqb7YLb
-dHVLB3luHtgZg3Pe9T7Qtd7nS2h9Qy4qIOF+oHhEngj1mPnHfxsb1gYgAlih
-w6ID
------END CERTIFICATE-----
-
-Digital_Signature_Trust_Co._Global_CA_4
------BEGIN CERTIFICATE-----
-MIID2DCCAsACEQDQHkCLAAB3bQAAAAEAAAAEMA0GCSqGSIb3DQEBBQUAMIGp
-MQswCQYDVQQGEwJ1czENMAsGA1UECBMEVXRhaDEXMBUGA1UEBxMOU2FsdCBM
-YWtlIENpdHkxJDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0dXJlIFRydXN0IENv
-LjERMA8GA1UECxMIRFNUQ0EgWDIxFjAUBgNVBAMTDURTVCBSb290Q0EgWDIx
-ITAfBgkqhkiG9w0BCQEWEmNhQGRpZ3NpZ3RydXN0LmNvbTAeFw05ODExMzAy
-MjQ2MTZaFw0wODExMjcyMjQ2MTZaMIGpMQswCQYDVQQGEwJ1czENMAsGA1UE
-CBMEVXRhaDEXMBUGA1UEBxMOU2FsdCBMYWtlIENpdHkxJDAiBgNVBAoTG0Rp
-Z2l0YWwgU2lnbmF0dXJlIFRydXN0IENvLjERMA8GA1UECxMIRFNUQ0EgWDIx
-FjAUBgNVBAMTDURTVCBSb290Q0EgWDIxITAfBgkqhkiG9w0BCQEWEmNhQGRp
-Z3NpZ3RydXN0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
-ANx18IzAdZaawGIfJvfE4Zrq4FZzW5nNAUSoCLbVp9oaBBg5kkp4o4HC9Xd6
-ULRw/5qrxsfKboNPQpj7Jgva3G3WqZlVUmfpKAOS3OWwBZoPFflrWXJW8vo5
-/Kpo7g8fEIMv/J36F5bdguPmRX3AS4BEH+0s4IT9kVySVGkl5WJp3OXuAFK9
-MwutdQKFp2RQLcUZGTDAJtvJ0/0uma1ZtQtN1EGuhUhDWdy3qOKi3sOP17ih
-YqZoUFLkzzGnlIXan0YyF1bl8utmPRL/Q9uY73fPy4GNNLHGUEom0eQ+QVCv
-bK4iNC7Va26Dunm4dmVI2gkpZGMiuftHdoWMhkTLCdsCAwEAATANBgkqhkiG
-9w0BAQUFAAOCAQEAtTYOXeFhKFoRZcA/gwN5Tb4opgsHAlKFzfiR0BBstWog
-WxyQ2TA8xkieil5k+aFxd+8EJx8H6+Qm93N0yUQYGmbT4EOvkTvRyyzYdFQ6
-HE3K1GjNI3wdEJ5F6fYAbqbNGf9PLCmPV03Ed5K+4EwJ+11EhmYhqLkyolbV
-6YyDfFk/xPEL553snr2cGA4+wjl5KLcDDQjLxufZATdQEOzMYRZA1K8xdHv8
-PzGn0EdzMzkbzE5q10mDEQb+64JYMzJM8FasHpwvVpp7wUocpf1VNs78lk30
-sPDst2yC7S8xmUJMqbINuBVd8d+6ybVK1GSYsyapMMj9puyrliGtf8J4tg==
------END CERTIFICATE-----
-
-Entrust.net_Global_Secure_Personal_CA
------BEGIN CERTIFICATE-----
-MIIEgzCCA+ygAwIBAgIEOJ725DANBgkqhkiG9w0BAQQFADCBtDEUMBIGA1UE
-ChMLRW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9HQ0NB
-X0NQUyBpbmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsT
-HChjKSAyMDAwIEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1
-c3QubmV0IENsaWVudCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMDAy
-MDcxNjE2NDBaFw0yMDAyMDcxNjQ2NDBaMIG0MRQwEgYDVQQKEwtFbnRydXN0
-Lm5ldDFAMD4GA1UECxQ3d3d3LmVudHJ1c3QubmV0L0dDQ0FfQ1BTIGluY29y
-cC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMcKGMpIDIwMDAg
-RW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50cnVzdC5uZXQgQ2xp
-ZW50IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUA
-A4GNADCBiQKBgQCTdLS25MVL1qFof2LV7PdRV7NySpj10InJrWPNTTVRaoTU
-rcloeW+46xHbh65cJFET8VQlhK8pK5/jgOLZy93GRUk0iJBeAZfv6lOm3fzB
-3ksqJeTpNfpVBQbliXrqpBFXO/x8PTbNZzVtpKklWb1m9fkn5JVn1j+SgF7y
-NH0rhQIDAQABo4IBnjCCAZowEQYJYIZIAYb4QgEBBAQDAgAHMIHdBgNVHR8E
-gdUwgdIwgc+ggcyggcmkgcYwgcMxFDASBgNVBAoTC0VudHJ1c3QubmV0MUAw
-PgYDVQQLFDd3d3cuZW50cnVzdC5uZXQvR0NDQV9DUFMgaW5jb3JwLiBieSBy
-ZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMjAwMCBFbnRydXN0
-Lm5ldCBMaW1pdGVkMTMwMQYDVQQDEypFbnRydXN0Lm5ldCBDbGllbnQgQ2Vy
-dGlmaWNhdGlvbiBBdXRob3JpdHkxDTALBgNVBAMTBENSTDEwKwYDVR0QBCQw
-IoAPMjAwMDAyMDcxNjE2NDBagQ8yMDIwMDIwNzE2NDY0MFowCwYDVR0PBAQD
-AgEGMB8GA1UdIwQYMBaAFISLdP3FjcD/J20gN0V8/i3OutN9MB0GA1UdDgQW
-BBSEi3T9xY3A/ydtIDdFfP4tzrrTfTAMBgNVHRMEBTADAQH/MB0GCSqGSIb2
-fQdBAAQQMA4bCFY1LjA6NC4wAwIEkDANBgkqhkiG9w0BAQQFAAOBgQBObzWA
-O9GK9Q6nIMstZVXQkvTnhLUGJoMShAusO7JE7r3PQNsgDrpuFOow4DtifH+L
-a3xKp9U1PL6oXOpLu5OOgGarDyn9TS2/GpsKkMWr2tGzhtQvJFJcem3G8v7l
-TRowjJDyutdKPkN+1MhQGof4T4HHdguEOnKdzmVml64mXg==
------END CERTIFICATE-----
-
-Entrust.net_Global_Secure_Server_CA
------BEGIN CERTIFICATE-----
-MIIElTCCA/6gAwIBAgIEOJsRPDANBgkqhkiG9w0BAQQFADCBujEUMBIGA1UE
-ChMLRW50cnVzdC5uZXQxPzA9BgNVBAsUNnd3dy5lbnRydXN0Lm5ldC9TU0xf
-Q1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc
-KGMpIDIwMDAgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVz
-dC5uZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe
-Fw0wMDAyMDQxNzIwMDBaFw0yMDAyMDQxNzUwMDBaMIG6MRQwEgYDVQQKEwtF
-bnRydXN0Lm5ldDE/MD0GA1UECxQ2d3d3LmVudHJ1c3QubmV0L1NTTF9DUFMg
-aW5jb3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykg
-MjAwMCBFbnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5l
-dCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0G
-CSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHwV9OcfHO8GCGD9JYf9Mzly0XonUw
-tZZkJi9ow0SrqHXmAGc0V55lxyKbc+bT3QgON1WqJUaBbL3+qPZ1V1eMkGxK
-wz6LS0MKyRFWmponIpnPVZ5h2QLifLZ8OAfc439PmrkDQYC2dWcTC5/oVzbI
-XQA23mYU2m52H083jIITiQIDAQABo4IBpDCCAaAwEQYJYIZIAYb4QgEBBAQD
-AgAHMIHjBgNVHR8EgdswgdgwgdWggdKggc+kgcwwgckxFDASBgNVBAoTC0Vu
-dHJ1c3QubmV0MT8wPQYDVQQLFDZ3d3cuZW50cnVzdC5uZXQvU1NMX0NQUyBp
-bmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAy
-MDAwIEVudHJ1c3QubmV0IExpbWl0ZWQxOjA4BgNVBAMTMUVudHJ1c3QubmV0
-IFNlY3VyZSBTZXJ2ZXIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxDTALBgNV
-BAMTBENSTDEwKwYDVR0QBCQwIoAPMjAwMDAyMDQxNzIwMDBagQ8yMDIwMDIw
-NDE3NTAwMFowCwYDVR0PBAQDAgEGMB8GA1UdIwQYMBaAFMtswGvjuz7L/CKc
-/vuLkpyw8m4iMB0GA1UdDgQWBBTLbMBr47s+y/winP77i5KcsPJuIjAMBgNV
-HRMEBTADAQH/MB0GCSqGSIb2fQdBAAQQMA4bCFY1LjA6NC4wAwIEkDANBgkq
-hkiG9w0BAQQFAAOBgQBi24GRzsiad0Iv7L0no1MPUBvqTpLwqa+poLpIYcvv
-yQbvH9X07t9WLebKahlzqlO+krNQAraFJnJj2HVQYnUUt7NQGj/KEQALhUVp
-bbalrlHhStyCP2yMNLJ3a9kC9n8O6mUE8c1UyrrJzOCE98g+EZfTYAkYvAX/
-bIkz8OwVDw==
------END CERTIFICATE-----
-
-Entrust.net_Premium_2048_Secure_Server_CA
------BEGIN CERTIFICATE-----
-MIIEXDCCA0SgAwIBAgIEOGO5ZjANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UE
-ChMLRW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNf
-MjA0OCBpbmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsT
-HChjKSAxOTk5IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1
-c3QubmV0IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEy
-MjQxNzUwNTFaFw0xOTEyMjQxODIwNTFaMIG0MRQwEgYDVQQKEwtFbnRydXN0
-Lm5ldDFAMD4GA1UECxQ3d3d3LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29y
-cC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMcKGMpIDE5OTkg
-RW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50cnVzdC5uZXQgQ2Vy
-dGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgpMIIBIjANBgkqhkiG9w0BAQEF
-AAOCAQ8AMIIBCgKCAQEArU1LqRKGsuqjIAcVFmQqK0vRvwtKTY7tgHalZ7d4
-QMBzQshowNtTK91euHaYNZOLGp18EzoOH1u3Hs/lJBQesYGpjX24zGtLA/EC
-DNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSrhRSGlVuXMlBvPci6Zgzj
-/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVTXTzWnLLP
-KQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/HoZd
-enoVve8AjhUiVBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH
-4QIDAQABo3QwcjARBglghkgBhvhCAQEEBAMCAAcwHwYDVR0jBBgwFoAUVeSB
-0RGAvtiJuQijMfmhJAkWuXAwHQYDVR0OBBYEFFXkgdERgL7YibkIozH5oSQJ
-FrlwMB0GCSqGSIb2fQdBAAQQMA4bCFY1LjA6NC4wAwIEkDANBgkqhkiG9w0B
-AQUFAAOCAQEAWUesIYSKF8mciVMeuoCFGsY8Tj6xnLZ8xpJdGGQC49MGCBFh
-fGPjK50xA3B20qMooPS7mmNz7W3lKtvtFKkrxjYR0CvrB4ul2p5cGZ1WEvVU
-KcgF7bISKo30Axv/55IQh7A6tcOdBTcSo8f0FbnVpDkWm1M6I5HxqIKiaoho
-wXkCIryqptau37AUX7iH0N18f3v/rxzP5tsHrV7bhZ3QKw0z2wTR5klAEyt2
-+z7pnIkPFc4YsIV4IU9rTw76NmfNB/L/CNDi3tm/Kq+4h4YhPATKt5Rof888
-6ZjXOP/swNlQ8C5LWK5Gb9Auw2DaclVyvUxFnmG6v4SBkgPR0ml8xQ==
------END CERTIFICATE-----
-
-Entrust.net_Secure_Personal_CA
------BEGIN CERTIFICATE-----
-MIIE7TCCBFagAwIBAgIEOAOR7jANBgkqhkiG9w0BAQQFADCByTELMAkGA1UE
-BhMCVVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MUgwRgYDVQQLFD93d3cuZW50
-cnVzdC5uZXQvQ2xpZW50X0NBX0luZm8vQ1BTIGluY29ycC4gYnkgcmVmLiBs
-aW1pdHMgbGlhYi4xJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1c3QubmV0IExp
-bWl0ZWQxMzAxBgNVBAMTKkVudHJ1c3QubmV0IENsaWVudCBDZXJ0aWZpY2F0
-aW9uIEF1dGhvcml0eTAeFw05OTEwMTIxOTI0MzBaFw0xOTEwMTIxOTU0MzBa
-MIHJMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxSDBGBgNV
-BAsUP3d3dy5lbnRydXN0Lm5ldC9DbGllbnRfQ0FfSW5mby9DUFMgaW5jb3Jw
-LiBieSByZWYuIGxpbWl0cyBsaWFiLjElMCMGA1UECxMcKGMpIDE5OTkgRW50
-cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50cnVzdC5uZXQgQ2xpZW50
-IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUAA4GL
-ADCBhwKBgQDIOpleMRffrCdvkHvkGf9FozTC28GoT/Bo6oT9n3V5z8GKUZSv
-x1cDR2SerYIbWtp/N3hHuzeYEpbOxhN979IMMFGpOZ5V+Pux5zDeg7K6PvHV
-iTs7hbqqdCz+PzFur5GVbgbUB01LLFZHGARS2g4Qk79jkJvh34zmAqTmT173
-iwIBA6OCAeAwggHcMBEGCWCGSAGG+EIBAQQEAwIABzCCASIGA1UdHwSCARkw
-ggEVMIHkoIHhoIHepIHbMIHYMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50
-cnVzdC5uZXQxSDBGBgNVBAsUP3d3dy5lbnRydXN0Lm5ldC9DbGllbnRfQ0Ff
-SW5mby9DUFMgaW5jb3JwLiBieSByZWYuIGxpbWl0cyBsaWFiLjElMCMGA1UE
-CxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50
-cnVzdC5uZXQgQ2xpZW50IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MQ0wCwYD
-VQQDEwRDUkwxMCygKqAohiZodHRwOi8vd3d3LmVudHJ1c3QubmV0L0NSTC9D
-bGllbnQxLmNybDArBgNVHRAEJDAigA8xOTk5MTAxMjE5MjQzMFqBDzIwMTkx
-MDEyMTkyNDMwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUxPucKXuXzUyW
-/O5bs8qZdIuV6kwwHQYDVR0OBBYEFMT7nCl7l81MlvzuW7PKmXSLlepMMAwG
-A1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZI
-hvcNAQEEBQADgYEAP66K8ddmAwWePvrqHEa7pFuPeJoSSJn59DXeDDYHAmsQ
-OokUgZwxpnyyQbJq5wcBoUv5nyU7lsqZwz6hURzzwy5E97BnRqqS5TvaHBkU
-ODDV4qIxJS7x7EU47fgGWANzYrAQMY9Av2TgXD7FTx/aEkP/TOYGJqibGapE
-PHayXOw=
------END CERTIFICATE-----
-
-Entrust.net_Secure_Server_CA
------BEGIN CERTIFICATE-----
-MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UE
-BhMCVVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50
-cnVzdC5uZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTEl
-MCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UE
-AxMxRW50cnVzdC5uZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1
-dGhvcml0eTAeFw05OTA1MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQsw
-CQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3
-dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1pdHMgbGlh
-Yi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1pdGVkMTow
-OAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRp
-b24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQDNKIM0
-VBuJ8w+vN5Ex/68xYMmo6LIQaO2f55M28Qpku0f1BBc/I0dNxScZgSYMVHIN
-iC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5gXpa0zf3wkrYKZImZNHk
-mGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OCAdcwggHT
-MBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHboIHY
-pIHVMIHSMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5
-BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChs
-aW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBM
-aW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENl
-cnRpZmljYXRpb24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNo
-dHRwOi8vd3d3LmVudHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAi
-gA8xOTk5MDUyNTE2MDk0MFqBDzIwMTkwNTI1MTYwOTQwWjALBgNVHQ8EBAMC
-AQYwHwYDVR0jBBgwFoAU8BdiE1U9s/8KAGv7UISX8+1i0BowHQYDVR0OBBYE
-FPAXYhNVPbP/CgBr+1CEl/PtYtAaMAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9
-B0EABAwwChsEVjQuMAMCBJAwDQYJKoZIhvcNAQEFBQADgYEAkNwwAvpkdMKn
-CqV8IY00F6j7Rw7/JXyNEwr75Ji174z4xRAN95K+8cPV1ZVqBLssziY2Zcgx
-xufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9n9cd2cNgQ4xYDiKWL2KjLB+6
-rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI=
------END CERTIFICATE-----
-
-Equifax_Secure_CA
------BEGIN CERTIFICATE-----
-MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQG
-EwJVUzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1
-cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4
-MDgyMjE2NDE1MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VxdWlmYXgx
-LTArBgNVBAsTJEVxdWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0
-eTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2R
-FGiYCh7+2gRvE4RiIcPRfM6fBeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO
-/t0BCezhABRP/PvwDN1Dulsr4R+AcJkVV5MW8Q+XarfCaCMczE1ZMKxRHjuv
-K9buY0V7xdlfUNLjUA86iOe/FP3gx7kCAwEAAaOCAQkwggEFMHAGA1UdHwRp
-MGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQMA4GA1UEChMHRXF1aWZheDEt
-MCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5
-MQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTgwODIyMTY0MTUxWjAL
-BgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvSspXXR9gjIBBPM5iQn9Qw
-HQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQFMAMBAf8w
-GgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUAA4GB
-AFjOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y
-7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2u
-FHdh1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4
------END CERTIFICATE-----
-
-Equifax_Secure_eBusiness_CA_1
------BEGIN CERTIFICATE-----
-MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJV
-UzEcMBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1
-aWZheCBTZWN1cmUgZUJ1c2luZXNzIENBLTEwHhcNOTkwNjIxMDQwMDAwWhcN
-MjAwNjIxMDQwMDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMTRXF1aWZh
-eCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2lu
-ZXNzIENBLTEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fe
-k6lfWg0XTzQaDJj0ItlZ1MRoRvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5
-/VGcqiTZ9J2DKocKIdMSODRsjQBuWqDZQu4aIZX5UkxVWsUPOE9G+m34LjXW
-HXzr4vCwdYDIqROsvojvOm6rXyo4YgKwEnv+j6YDAgMBAAGjZjBkMBEGCWCG
-SAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFEp4
-MlIR21kWNl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRKeDJSEdtZFjZe38EUNkBq
-R3xMoTANBgkqhkiG9w0BAQQFAAOBgQB1W6ibAxHm6VZMzfmpTMANmvPMZWnm
-JXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5lSE/9dR+WB5Hh1Q+WKG1
-tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN/Bf+KpYr
-tWKmpj29f5JZzVoqgrI3eQ==
------END CERTIFICATE-----
-
-Equifax_Secure_eBusiness_CA_2
------BEGIN CERTIFICATE-----
-MIIDIDCCAomgAwIBAgIEN3DPtTANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQG
-EwJVUzEXMBUGA1UEChMORXF1aWZheCBTZWN1cmUxJjAkBgNVBAsTHUVxdWlm
-YXggU2VjdXJlIGVCdXNpbmVzcyBDQS0yMB4XDTk5MDYyMzEyMTQ0NVoXDTE5
-MDYyMzEyMTQ0NVowTjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkVxdWlmYXgg
-U2VjdXJlMSYwJAYDVQQLEx1FcXVpZmF4IFNlY3VyZSBlQnVzaW5lc3MgQ0Et
-MjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA5Dk5kx5SBhsoNviyoynF
-7Y6yEb3+6+e0dMKP/wXn2Z0GvxLIPw7y1tEkshHe0XMJitSxLJgJDR5QRrKD
-pkWNYmi7hRsgcDKqQM2mll/EcTc/BPO3QSQ5BxoeLmFYoBIL5aXfxavqN3HM
-HMg3OrmXUqesxWoklE6ce8/AatbfIb0CAwEAAaOCAQkwggEFMHAGA1UdHwRp
-MGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORXF1aWZheCBT
-ZWN1cmUxJjAkBgNVBAsTHUVxdWlmYXggU2VjdXJlIGVCdXNpbmVzcyBDQS0y
-MQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTkwNjIzMTIxNDQ1WjAL
-BgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUUJ4L6q9euSBIplBqy/3YIHqngnYw
-HQYDVR0OBBYEFFCeC+qvXrkgSKZQasv92CB6p4J2MAwGA1UdEwQFMAMBAf8w
-GgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUAA4GB
-AAyGgq3oThr1jokn4jVYPSm0B482UJW/bsGe68SQsoWou7dC4A8HOd/7npCy
-0cE+U58DRLB+S/Rv5Hwf5+Kx5Lia78O9zt4LMjTZ3ijtM2vE1Nc9ElirfQkt
-y3D1E4qUoSek1nDFbZS1yX2doNLGCEnZZpum0/QL3MUmV+GRMOrN
------END CERTIFICATE-----
-
-Equifax_Secure_Global_eBusiness_CA
------BEGIN CERTIFICATE-----
-MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJV
-UzEcMBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1
-aWZheCBTZWN1cmUgR2xvYmFsIGVCdXNpbmVzcyBDQS0xMB4XDTk5MDYyMTA0
-MDAwMFoXDTIwMDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMxHDAaBgNVBAoT
-E0VxdWlmYXggU2VjdXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJl
-IEdsb2JhbCBlQnVzaW5lc3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
-gYkCgYEAuucXkAJlsTRVPEnCUdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQy
-td4zjTov2/KaelpzmKNc6fuKcxtc58O/gGzNqfTWK8D3+ZmqY6KxRwIP1ORR
-OhI8bIpaVIRw28HFkM9yRcuoWcDNM50/o5brhTMhHD4ePmBudpxnhcXIw2EC
-AwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAHMA8GA1UdEwEB/wQFMAMBAf8w
-HwYDVR0jBBgwFoAUvqigdHJQa0S3ySPY+6j/s1draGwwHQYDVR0OBBYEFL6o
-oHRyUGtEt8kj2Puo/7NXa2hsMA0GCSqGSIb3DQEBBAUAA4GBADDiAVGqx+pf
-2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okENI7SS+RkAZ70Br83gcfxa
-z2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv8qIYNMR1
-pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV
------END CERTIFICATE-----
-
-GeoTrust_Global_CA
------BEGIN CERTIFICATE-----
-MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYT
-AlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVz
-dCBHbG9iYWwgQ0EwHhcNMDIwNTIxMDQwMDAwWhcNMjIwNTIxMDQwMDAwWjBC
-MQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEbMBkGA1UE
-AxMSR2VvVHJ1c3QgR2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
-MIIBCgKCAQEA2swYYzD99BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEH
-CIjaWC9mOSm9BXiLnTjoBbdqfnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlC
-GDUUna2YRpIuT8rxh0PBFpVXLVDviS2Aelet8u5fa9IAjbkU+BQVNdnARqN7
-csiRv8lVK83Qlz6cJmTM386DGXHKTubU1XupGc1V3sjs0l44U+VcT4wt/lAj
-Nvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+bw8HHa8sHo9gOeL6NlMTOdRe
-JivbPagUvTLrGAMoUgRx5aszPeE4uwc2hGKceeoWMPRfwCvocWvk+QIDAQAB
-o1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTAephojYn7qwVkDBF9
-qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVkDBF9qn1luMrMTjANBgkq
-hkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKInZ57Qzxpe
-R+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfStQWV
-Yrmm3ok9Nns4d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcF
-PseKUgzbFbS9bZvlxrFUaKnjaZC2mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot
-2/Unhw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6pXE0zX5IJL4hmXXeX
-xx12E6nV5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvm
-Mw==
------END CERTIFICATE-----
-
-GlobalSign_Root_CA
------BEGIN CERTIFICATE-----
-MIIDdTCCAl2gAwIBAgILAgAAAAAA1ni3lAUwDQYJKoZIhvcNAQEEBQAwVzEL
-MAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNV
-BAsTB1Jvb3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05
-ODA5MDExMjAwMDBaFw0xNDAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkw
-FwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRsw
-GQYDVQQDExJHbG9iYWxTaWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUA
-A4IBDwAwggEKAoIBAQDaDuaZjc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR
-4mdmzxzdzxtIK+6NiY6arymAZavpxy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc
-71DuxC73/OlS8pF94G3VNTCOXkNz8kHp1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4
-bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdGsnUOhugZitVtbNV4FpWi6cgK
-OOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJU26Qzns3dLlwR5EiUWMW
-ea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N89iFo7+ryUp9/k5DP
-AgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIABjAdBgNVHQ4EFgQUYHtmGkUNl8qJ
-UC99BM00qP/8/UswDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQQFAAOC
-AQEArqqf/LfSyx9fOSkoGJ40yWxPbxrwZKJwSk8ThptgKJ7ogUmYfQq75bCd
-PTbbjwVR/wkxKh/diXeeDy5slQTthsu0AD+EAk2AaioteAuubyuig0SDH81Q
-gkwkr733pbTIWg/050deSY43lv6aiAU62cDbKYfmGZZHpzqmjIs8d/5GY6dT
-2iHRrH5Jokvmw2dZL7OKDrssvamqQnw1wdh/1acxOk5jQzmvCLBhNIzTmKlD
-NPYPhyk7ncJWWJh3w/cbrPad+D6qp1RF8PX51TFl/mtYnHGzHtdS6jIX/EBg
-Hcl5JLL2bP2oZg6C3ZjL2sJETy6ge/L3ayx2EYRGinij4w==
------END CERTIFICATE-----
-
-GTE_CyberTrust_Global_Root
------BEGIN CERTIFICATE-----
-MIICWjCCAcMCAgGlMA0GCSqGSIb3DQEBBAUAMHUxCzAJBgNVBAYTAlVTMRgw
-FgYDVQQKEw9HVEUgQ29ycG9yYXRpb24xJzAlBgNVBAsTHkdURSBDeWJlclRy
-dXN0IFNvbHV0aW9ucywgSW5jLjEjMCEGA1UEAxMaR1RFIEN5YmVyVHJ1c3Qg
-R2xvYmFsIFJvb3QwHhcNOTgwODEzMDAyOTAwWhcNMTgwODEzMjM1OTAwWjB1
-MQswCQYDVQQGEwJVUzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMScwJQYD
-VQQLEx5HVEUgQ3liZXJUcnVzdCBTb2x1dGlvbnMsIEluYy4xIzAhBgNVBAMT
-GkdURSBDeWJlclRydXN0IEdsb2JhbCBSb290MIGfMA0GCSqGSIb3DQEBAQUA
-A4GNADCBiQKBgQCVD6C28FCc6HrHiM3dFw4usJTQGz0O9pTAipTHBsiQl8i4
-ZBp6fmw8U+E3KHNgf7KXUwefU/ltWJTSr41tiGeA5u2ylc9yMcqlHHK6XALn
-ZELn+aks1joNrI1CqiQBOeacPwGFVw1Yh0X404Wqk2kmhXBIgD8SFcd5tB8F
-LztimQIDAQABMA0GCSqGSIb3DQEBBAUAA4GBAG3rGwnpXtlR22ciYaQqPEh3
-46B8pt5zohQDhT37qw4wxYMWM4ETCJ57NE7fQMh017l93PR2VX2bY1QY6fDq
-81yx2YtCHrnAlU66+tXifPVoYb+O7AWXX1uw16OFNMQkpw0PlZPvy5TYnh+d
-XIVtx6quTx8itc2VrbqnzPmrC3p/
------END CERTIFICATE-----
-
-GTE_CyberTrust_Root_CA
------BEGIN CERTIFICATE-----
-MIIB+jCCAWMCAgGjMA0GCSqGSIb3DQEBBAUAMEUxCzAJBgNVBAYTAlVTMRgw
-FgYDVQQKEw9HVEUgQ29ycG9yYXRpb24xHDAaBgNVBAMTE0dURSBDeWJlclRy
-dXN0IFJvb3QwHhcNOTYwMjIzMjMwMTAwWhcNMDYwMjIzMjM1OTAwWjBFMQsw
-CQYDVQQGEwJVUzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMRwwGgYDVQQD
-ExNHVEUgQ3liZXJUcnVzdCBSb290MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCB
-iQKBgQC45k+625h8cXyvRLfTD0bZZOWTwUKOx7pJjTUteueLveUFMVnGsS8K
-DPufpz+iCWaEVh43KRuH6X4MypqfpX/1FZSj1aJGgthoTNE3FQZor734sLPw
-KfWVWgkWYXcKIiXUT0Wqx73llt/51KiOQswkwB6RJ0q1bQaAYznEol44AwID
-AQABMA0GCSqGSIb3DQEBBAUAA4GBABKzdcZfHeFhVYAA1IFLezEPI2PnPfMD
-+fQ2qLvZ46WXTeorKeDWanOB5sCJo9Px4KWlIjeaY8JIILTbcuPI9tl8vrGv
-U9oUtCG41tWW4/5ODFlitppK+ULdjG+BqXH/9ApybW1EDp3zdHSo1TRJ6V6e
-6bR64eVaH4QwnNOfpSXY
------END CERTIFICATE-----
-
-IPS_Chained_CAs_root
------BEGIN CERTIFICATE-----
-MIIH9zCCB2CgAwIBAgIBADANBgkqhkiG9w0BAQUFADCCARwxCzAJBgNVBAYT
-AkVTMRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEu
-MCwGA1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5s
-LjErMCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1
-MjEzMDEGA1UECxMqSVBTIENBIENoYWluZWQgQ0FzIENlcnRpZmljYXRpb24g
-QXV0aG9yaXR5MTMwMQYDVQQDEypJUFMgQ0EgQ2hhaW5lZCBDQXMgQ2VydGlm
-aWNhdGlvbiBBdXRob3JpdHkxHjAcBgkqhkiG9w0BCQEWD2lwc0BtYWlsLmlw
-cy5lczAeFw0wMTEyMjkwMDUzNThaFw0yNTEyMjcwMDUzNThaMIIBHDELMAkG
-A1UEBhMCRVMxEjAQBgNVBAgTCUJhcmNlbG9uYTESMBAGA1UEBxMJQmFyY2Vs
-b25hMS4wLAYDVQQKEyVJUFMgSW50ZXJuZXQgcHVibGlzaGluZyBTZXJ2aWNl
-cyBzLmwuMSswKQYDVQQKFCJpcHNAbWFpbC5pcHMuZXMgQy5JLkYuICBCLTYw
-OTI5NDUyMTMwMQYDVQQLEypJUFMgQ0EgQ2hhaW5lZCBDQXMgQ2VydGlmaWNh
-dGlvbiBBdXRob3JpdHkxMzAxBgNVBAMTKklQUyBDQSBDaGFpbmVkIENBcyBD
-ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEeMBwGCSqGSIb3DQEJARYPaXBzQG1h
-aWwuaXBzLmVzMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDcVpJJspQg
-vJhPUOtopKdJC7/SMejHT8KGC/po/UNaivNgkjWZOLtNA1IhW/A3mTXhQSCB
-hYEFcYGdtJUZqV92NC5jNzVXjrQfQj8VXOF6wV8TGDIxya2+o8eDZh65nAQT
-y2nBBt4wBrszo7Uf8I9vzv+W6FS+ZoCua9tBhDaiPQIDAQABo4IEQzCCBD8w
-HQYDVR0OBBYEFKGtMbH5PuEXpsirNPxShwkeYlJBMIIBTgYDVR0jBIIBRTCC
-AUGAFKGtMbH5PuEXpsirNPxShwkeYlJBoYIBJKSCASAwggEcMQswCQYDVQQG
-EwJFUzESMBAGA1UECBMJQmFyY2Vsb25hMRIwEAYDVQQHEwlCYXJjZWxvbmEx
-LjAsBgNVBAoTJUlQUyBJbnRlcm5ldCBwdWJsaXNoaW5nIFNlcnZpY2VzIHMu
-bC4xKzApBgNVBAoUImlwc0BtYWlsLmlwcy5lcyBDLkkuRi4gIEItNjA5Mjk0
-NTIxMzAxBgNVBAsTKklQUyBDQSBDaGFpbmVkIENBcyBDZXJ0aWZpY2F0aW9u
-IEF1dGhvcml0eTEzMDEGA1UEAxMqSVBTIENBIENoYWluZWQgQ0FzIENlcnRp
-ZmljYXRpb24gQXV0aG9yaXR5MR4wHAYJKoZIhvcNAQkBFg9pcHNAbWFpbC5p
-cHMuZXOCAQAwDAYDVR0TBAUwAwEB/zAMBgNVHQ8EBQMDB/+AMGsGA1UdJQRk
-MGIGCCsGAQUFBwMBBggrBgEFBQcDAgYIKwYBBQUHAwMGCCsGAQUFBwMEBggr
-BgEFBQcDCAYKKwYBBAGCNwIBFQYKKwYBBAGCNwIBFgYKKwYBBAGCNwoDAQYK
-KwYBBAGCNwoDBDARBglghkgBhvhCAQEEBAMCAAcwGgYDVR0RBBMwEYEPaXBz
-QG1haWwuaXBzLmVzMBoGA1UdEgQTMBGBD2lwc0BtYWlsLmlwcy5lczBCBglg
-hkgBhvhCAQ0ENRYzQ2hhaW5lZCBDQSBDZXJ0aWZpY2F0ZSBpc3N1ZWQgYnkg
-aHR0cDovL3d3dy5pcHMuZXMvMCkGCWCGSAGG+EIBAgQcFhpodHRwOi8vd3d3
-Lmlwcy5lcy9pcHMyMDAyLzA3BglghkgBhvhCAQQEKhYoaHR0cDovL3d3dy5p
-cHMuZXMvaXBzMjAwMi9pcHMyMDAyQ0FDLmNybDA8BglghkgBhvhCAQMELxYt
-aHR0cDovL3d3dy5pcHMuZXMvaXBzMjAwMi9yZXZvY2F0aW9uQ0FDLmh0bWw/
-MDkGCWCGSAGG+EIBBwQsFipodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL3Jl
-bmV3YWxDQUMuaHRtbD8wNwYJYIZIAYb4QgEIBCoWKGh0dHA6Ly93d3cuaXBz
-LmVzL2lwczIwMDIvcG9saWN5Q0FDLmh0bWwwbQYDVR0fBGYwZDAuoCygKoYo
-aHR0cDovL3d3dy5pcHMuZXMvaXBzMjAwMi9pcHMyMDAyQ0FDLmNybDAyoDCg
-LoYsaHR0cDovL3d3d2JhY2suaXBzLmVzL2lwczIwMDIvaXBzMjAwMkNBQy5j
-cmwwLwYIKwYBBQUHAQEEIzAhMB8GCCsGAQUFBzABhhNodHRwOi8vb2NzcC5p
-cHMuZXMvMA0GCSqGSIb3DQEBBQUAA4GBAERyMJ1WWKJBGyi3leGmGpVfp3hA
-K+/blkr8THFj2XOVvQLiogbHvpcqk4A0hgP63Ng9HgfNHnNDJGD1HWHc3Jag
-vPsd4+cSACczAsDAK1M92GsDgaPb1pOVIO/Tln4mkImcJpvNb2ar7QMiRDjM
-Wb2f2/YHogF/JsRj9SVCXmK9
------END CERTIFICATE-----
-
-IPS_CLASE1_root
------BEGIN CERTIFICATE-----
-MIIH6jCCB1OgAwIBAgIBADANBgkqhkiG9w0BAQUFADCCARIxCzAJBgNVBAYT
-AkVTMRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEu
-MCwGA1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5s
-LjErMCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1
-MjEuMCwGA1UECxMlSVBTIENBIENMQVNFMSBDZXJ0aWZpY2F0aW9uIEF1dGhv
-cml0eTEuMCwGA1UEAxMlSVBTIENBIENMQVNFMSBDZXJ0aWZpY2F0aW9uIEF1
-dGhvcml0eTEeMBwGCSqGSIb3DQEJARYPaXBzQG1haWwuaXBzLmVzMB4XDTAx
-MTIyOTAwNTkzOFoXDTI1MTIyNzAwNTkzOFowggESMQswCQYDVQQGEwJFUzES
-MBAGA1UECBMJQmFyY2Vsb25hMRIwEAYDVQQHEwlCYXJjZWxvbmExLjAsBgNV
-BAoTJUlQUyBJbnRlcm5ldCBwdWJsaXNoaW5nIFNlcnZpY2VzIHMubC4xKzAp
-BgNVBAoUImlwc0BtYWlsLmlwcy5lcyBDLkkuRi4gIEItNjA5Mjk0NTIxLjAs
-BgNVBAsTJUlQUyBDQSBDTEFTRTEgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkx
-LjAsBgNVBAMTJUlQUyBDQSBDTEFTRTEgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
-dHkxHjAcBgkqhkiG9w0BCQEWD2lwc0BtYWlsLmlwcy5lczCBnzANBgkqhkiG
-9w0BAQEFAAOBjQAwgYkCgYEA4FEnpwvdr9G5Q1uCN0VWcu+atsIS7ywSzHb5
-BlmvXSHU0lq4oNTzav3KaY1mSPd05u42veiWkXWmcSjK5yISMmmwPh5r9FBS
-YmL9Yzt9fuzuOOpi9GyocY3h6YvJP8a1zZRCb92CRTzo3wno7wpVqVZHYUxJ
-ZHMQKD/Kvwn/xi8CAwEAAaOCBEowggRGMB0GA1UdDgQWBBTrsxl588GlHKzc
-uh9morKbadB4CDCCAUQGA1UdIwSCATswggE3gBTrsxl588GlHKzcuh9morKb
-adB4CKGCARqkggEWMIIBEjELMAkGA1UEBhMCRVMxEjAQBgNVBAgTCUJhcmNl
-bG9uYTESMBAGA1UEBxMJQmFyY2Vsb25hMS4wLAYDVQQKEyVJUFMgSW50ZXJu
-ZXQgcHVibGlzaGluZyBTZXJ2aWNlcyBzLmwuMSswKQYDVQQKFCJpcHNAbWFp
-bC5pcHMuZXMgQy5JLkYuICBCLTYwOTI5NDUyMS4wLAYDVQQLEyVJUFMgQ0Eg
-Q0xBU0UxIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQDEyVJUFMg
-Q0EgQ0xBU0UxIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MR4wHAYJKoZIhvcN
-AQkBFg9pcHNAbWFpbC5pcHMuZXOCAQAwDAYDVR0TBAUwAwEB/zAMBgNVHQ8E
-BQMDB/+AMGsGA1UdJQRkMGIGCCsGAQUFBwMBBggrBgEFBQcDAgYIKwYBBQUH
-AwMGCCsGAQUFBwMEBggrBgEFBQcDCAYKKwYBBAGCNwIBFQYKKwYBBAGCNwIB
-FgYKKwYBBAGCNwoDAQYKKwYBBAGCNwoDBDARBglghkgBhvhCAQEEBAMCAAcw
-GgYDVR0RBBMwEYEPaXBzQG1haWwuaXBzLmVzMBoGA1UdEgQTMBGBD2lwc0Bt
-YWlsLmlwcy5lczBBBglghkgBhvhCAQ0ENBYyQ0xBU0UxIENBIENlcnRpZmlj
-YXRlIGlzc3VlZCBieSBodHRwOi8vd3d3Lmlwcy5lcy8wKQYJYIZIAYb4QgEC
-BBwWGmh0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIvMDoGCWCGSAGG+EIBBAQt
-FitodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL2lwczIwMDJDTEFTRTEuY3Js
-MD8GCWCGSAGG+EIBAwQyFjBodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL3Jl
-dm9jYXRpb25DTEFTRTEuaHRtbD8wPAYJYIZIAYb4QgEHBC8WLWh0dHA6Ly93
-d3cuaXBzLmVzL2lwczIwMDIvcmVuZXdhbENMQVNFMS5odG1sPzA6BglghkgB
-hvhCAQgELRYraHR0cDovL3d3dy5pcHMuZXMvaXBzMjAwMi9wb2xpY3lDTEFT
-RTEuaHRtbDBzBgNVHR8EbDBqMDGgL6AthitodHRwOi8vd3d3Lmlwcy5lcy9p
-cHMyMDAyL2lwczIwMDJDTEFTRTEuY3JsMDWgM6Axhi9odHRwOi8vd3d3YmFj
-ay5pcHMuZXMvaXBzMjAwMi9pcHMyMDAyQ0xBU0UxLmNybDAvBggrBgEFBQcB
-AQQjMCEwHwYIKwYBBQUHMAGGE2h0dHA6Ly9vY3NwLmlwcy5lcy8wDQYJKoZI
-hvcNAQEFBQADgYEAK9Dr/drIyllq2tPMMi7JVBuKYn4VLenZMdMu9Ccj/1ur
-xUq2ckCuU3T0vAW0xtnIyXf7t/k0f3gA+Nak5FI/LEpjV4F1Wo7ojPsCwJTG
-Kbqz3Bzosq/SLmJbGqmODszFV0VRFOlOHIilkfSj945RyKm+hjM+5i9Ibq9U
-kE6tsSU=
------END CERTIFICATE-----
-
-IPS_CLASE3_root
------BEGIN CERTIFICATE-----
-MIIH6jCCB1OgAwIBAgIBADANBgkqhkiG9w0BAQUFADCCARIxCzAJBgNVBAYT
-AkVTMRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEu
-MCwGA1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5s
-LjErMCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1
-MjEuMCwGA1UECxMlSVBTIENBIENMQVNFMyBDZXJ0aWZpY2F0aW9uIEF1dGhv
-cml0eTEuMCwGA1UEAxMlSVBTIENBIENMQVNFMyBDZXJ0aWZpY2F0aW9uIEF1
-dGhvcml0eTEeMBwGCSqGSIb3DQEJARYPaXBzQG1haWwuaXBzLmVzMB4XDTAx
-MTIyOTAxMDE0NFoXDTI1MTIyNzAxMDE0NFowggESMQswCQYDVQQGEwJFUzES
-MBAGA1UECBMJQmFyY2Vsb25hMRIwEAYDVQQHEwlCYXJjZWxvbmExLjAsBgNV
-BAoTJUlQUyBJbnRlcm5ldCBwdWJsaXNoaW5nIFNlcnZpY2VzIHMubC4xKzAp
-BgNVBAoUImlwc0BtYWlsLmlwcy5lcyBDLkkuRi4gIEItNjA5Mjk0NTIxLjAs
-BgNVBAsTJUlQUyBDQSBDTEFTRTMgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkx
-LjAsBgNVBAMTJUlQUyBDQSBDTEFTRTMgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
-dHkxHjAcBgkqhkiG9w0BCQEWD2lwc0BtYWlsLmlwcy5lczCBnzANBgkqhkiG
-9w0BAQEFAAOBjQAwgYkCgYEAqxf+DrDGaBtT8FK+n/ra+osTBLsBjzLZH49N
-zjaY2uQARIwo2BNEKqRrThckQpzTiKRBgtYj+4vJhuW5qYIF3PHeH+AMmVWY
-8jjsbJ0gA8DvqqPGZARRLXgNo9KoOtYkTOmWehisEyMiG3zoMRGzXwmqMHBx
-RiVrSXGAK5UBsh8CAwEAAaOCBEowggRGMB0GA1UdDgQWBBS4k/8uy9wsjqLn
-ev42USGjmFsMNDCCAUQGA1UdIwSCATswggE3gBS4k/8uy9wsjqLnev42USGj
-mFsMNKGCARqkggEWMIIBEjELMAkGA1UEBhMCRVMxEjAQBgNVBAgTCUJhcmNl
-bG9uYTESMBAGA1UEBxMJQmFyY2Vsb25hMS4wLAYDVQQKEyVJUFMgSW50ZXJu
-ZXQgcHVibGlzaGluZyBTZXJ2aWNlcyBzLmwuMSswKQYDVQQKFCJpcHNAbWFp
-bC5pcHMuZXMgQy5JLkYuICBCLTYwOTI5NDUyMS4wLAYDVQQLEyVJUFMgQ0Eg
-Q0xBU0UzIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQDEyVJUFMg
-Q0EgQ0xBU0UzIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MR4wHAYJKoZIhvcN
-AQkBFg9pcHNAbWFpbC5pcHMuZXOCAQAwDAYDVR0TBAUwAwEB/zAMBgNVHQ8E
-BQMDB/+AMGsGA1UdJQRkMGIGCCsGAQUFBwMBBggrBgEFBQcDAgYIKwYBBQUH
-AwMGCCsGAQUFBwMEBggrBgEFBQcDCAYKKwYBBAGCNwIBFQYKKwYBBAGCNwIB
-FgYKKwYBBAGCNwoDAQYKKwYBBAGCNwoDBDARBglghkgBhvhCAQEEBAMCAAcw
-GgYDVR0RBBMwEYEPaXBzQG1haWwuaXBzLmVzMBoGA1UdEgQTMBGBD2lwc0Bt
-YWlsLmlwcy5lczBBBglghkgBhvhCAQ0ENBYyQ0xBU0UzIENBIENlcnRpZmlj
-YXRlIGlzc3VlZCBieSBodHRwOi8vd3d3Lmlwcy5lcy8wKQYJYIZIAYb4QgEC
-BBwWGmh0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIvMDoGCWCGSAGG+EIBBAQt
-FitodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL2lwczIwMDJDTEFTRTMuY3Js
-MD8GCWCGSAGG+EIBAwQyFjBodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL3Jl
-dm9jYXRpb25DTEFTRTMuaHRtbD8wPAYJYIZIAYb4QgEHBC8WLWh0dHA6Ly93
-d3cuaXBzLmVzL2lwczIwMDIvcmVuZXdhbENMQVNFMy5odG1sPzA6BglghkgB
-hvhCAQgELRYraHR0cDovL3d3dy5pcHMuZXMvaXBzMjAwMi9wb2xpY3lDTEFT
-RTMuaHRtbDBzBgNVHR8EbDBqMDGgL6AthitodHRwOi8vd3d3Lmlwcy5lcy9p
-cHMyMDAyL2lwczIwMDJDTEFTRTMuY3JsMDWgM6Axhi9odHRwOi8vd3d3YmFj
-ay5pcHMuZXMvaXBzMjAwMi9pcHMyMDAyQ0xBU0UzLmNybDAvBggrBgEFBQcB
-AQQjMCEwHwYIKwYBBQUHMAGGE2h0dHA6Ly9vY3NwLmlwcy5lcy8wDQYJKoZI
-hvcNAQEFBQADgYEAF2VcmZVDAyevJuXr0LMXI/dDqsfwfewPxqmurpYPdikc
-4gYtfibFPPqhwYHOU7BC0ZdXGhd+pFFhxu7pXu8Fuuu9D6eSb9ijBmgpjnn1
-/7/5p6/ksc7C0YBCJwUENPjDfxZ4IwwHJPJGR607VNCv1TGyr33I6unUVtkO
-E7LFRVA=
------END CERTIFICATE-----
-
-IPS_CLASEA1_root
------BEGIN CERTIFICATE-----
-MIIH9zCCB2CgAwIBAgIBADANBgkqhkiG9w0BAQUFADCCARQxCzAJBgNVBAYT
-AkVTMRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEu
-MCwGA1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5s
-LjErMCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1
-MjEvMC0GA1UECxMmSVBTIENBIENMQVNFQTEgQ2VydGlmaWNhdGlvbiBBdXRo
-b3JpdHkxLzAtBgNVBAMTJklQUyBDQSBDTEFTRUExIENlcnRpZmljYXRpb24g
-QXV0aG9yaXR5MR4wHAYJKoZIhvcNAQkBFg9pcHNAbWFpbC5pcHMuZXMwHhcN
-MDExMjI5MDEwNTMyWhcNMjUxMjI3MDEwNTMyWjCCARQxCzAJBgNVBAYTAkVT
-MRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEuMCwG
-A1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5sLjEr
-MCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1MjEv
-MC0GA1UECxMmSVBTIENBIENMQVNFQTEgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
-dHkxLzAtBgNVBAMTJklQUyBDQSBDTEFTRUExIENlcnRpZmljYXRpb24gQXV0
-aG9yaXR5MR4wHAYJKoZIhvcNAQkBFg9pcHNAbWFpbC5pcHMuZXMwgZ8wDQYJ
-KoZIhvcNAQEBBQADgY0AMIGJAoGBALsw19zQVL01Tp/FTILq0VA8R5j8m2md
-d81u4D/u6zJfX5/S0HnllXNEITLgCtud186Nq1KLK3jgm1t99P1tCeWu4Wwd
-ByOgF9H5fahGRpEiqLJpxq339fWUoTCUvQDMRH/uxJ7JweaPCjbB/SQ9AaD1
-e+J8eGZDi09Z8pvZ+kmzAgMBAAGjggRTMIIETzAdBgNVHQ4EFgQUZyaW56G/
-2LUDnf473P7yiuYV3TAwggFGBgNVHSMEggE9MIIBOYAUZyaW56G/2LUDnf47
-3P7yiuYV3TChggEcpIIBGDCCARQxCzAJBgNVBAYTAkVTMRIwEAYDVQQIEwlC
-YXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEuMCwGA1UEChMlSVBTIElu
-dGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5sLjErMCkGA1UEChQiaXBz
-QG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1MjEvMC0GA1UECxMmSVBT
-IENBIENMQVNFQTEgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxLzAtBgNVBAMT
-JklQUyBDQSBDTEFTRUExIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MR4wHAYJ
-KoZIhvcNAQkBFg9pcHNAbWFpbC5pcHMuZXOCAQAwDAYDVR0TBAUwAwEB/zAM
-BgNVHQ8EBQMDB/+AMGsGA1UdJQRkMGIGCCsGAQUFBwMBBggrBgEFBQcDAgYI
-KwYBBQUHAwMGCCsGAQUFBwMEBggrBgEFBQcDCAYKKwYBBAGCNwIBFQYKKwYB
-BAGCNwIBFgYKKwYBBAGCNwoDAQYKKwYBBAGCNwoDBDARBglghkgBhvhCAQEE
-BAMCAAcwGgYDVR0RBBMwEYEPaXBzQG1haWwuaXBzLmVzMBoGA1UdEgQTMBGB
-D2lwc0BtYWlsLmlwcy5lczBCBglghkgBhvhCAQ0ENRYzQ0xBU0VBMSBDQSBD
-ZXJ0aWZpY2F0ZSBpc3N1ZWQgYnkgaHR0cDovL3d3dy5pcHMuZXMvMCkGCWCG
-SAGG+EIBAgQcFhpodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyLzA7BglghkgB
-hvhCAQQELhYsaHR0cDovL3d3dy5pcHMuZXMvaXBzMjAwMi9pcHMyMDAyQ0xB
-U0VBMS5jcmwwQAYJYIZIAYb4QgEDBDMWMWh0dHA6Ly93d3cuaXBzLmVzL2lw
-czIwMDIvcmV2b2NhdGlvbkNMQVNFQTEuaHRtbD8wPQYJYIZIAYb4QgEHBDAW
-Lmh0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIvcmVuZXdhbENMQVNFQTEuaHRt
-bD8wOwYJYIZIAYb4QgEIBC4WLGh0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIv
-cG9saWN5Q0xBU0VBMS5odG1sMHUGA1UdHwRuMGwwMqAwoC6GLGh0dHA6Ly93
-d3cuaXBzLmVzL2lwczIwMDIvaXBzMjAwMkNMQVNFQTEuY3JsMDagNKAyhjBo
-dHRwOi8vd3d3YmFjay5pcHMuZXMvaXBzMjAwMi9pcHMyMDAyQ0xBU0VBMS5j
-cmwwLwYIKwYBBQUHAQEEIzAhMB8GCCsGAQUFBzABhhNodHRwOi8vb2NzcC5p
-cHMuZXMvMA0GCSqGSIb3DQEBBQUAA4GBAH66iqyAAIQVCtWYUQxkxZwCWINm
-yq0eB81+atqAB98DNEock8RLWCA1NnHtogo1EqWmZaeFaQoO42Hu6r4okzPV
-7Oi+xNtff6j5YzHIa5biKcJboOeXNp13XjFr/tOn2yrb25aLH2betgPAK7N4
-1lUH5Y85UN4HI3LmvSAUS7SG
------END CERTIFICATE-----
-
-IPS_CLASEA3_root
------BEGIN CERTIFICATE-----
-MIIH9zCCB2CgAwIBAgIBADANBgkqhkiG9w0BAQUFADCCARQxCzAJBgNVBAYT
-AkVTMRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEu
-MCwGA1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5s
-LjErMCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1
-MjEvMC0GA1UECxMmSVBTIENBIENMQVNFQTMgQ2VydGlmaWNhdGlvbiBBdXRo
-b3JpdHkxLzAtBgNVBAMTJklQUyBDQSBDTEFTRUEzIENlcnRpZmljYXRpb24g
-QXV0aG9yaXR5MR4wHAYJKoZIhvcNAQkBFg9pcHNAbWFpbC5pcHMuZXMwHhcN
-MDExMjI5MDEwNzUwWhcNMjUxMjI3MDEwNzUwWjCCARQxCzAJBgNVBAYTAkVT
-MRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEuMCwG
-A1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5sLjEr
-MCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1MjEv
-MC0GA1UECxMmSVBTIENBIENMQVNFQTMgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
-dHkxLzAtBgNVBAMTJklQUyBDQSBDTEFTRUEzIENlcnRpZmljYXRpb24gQXV0
-aG9yaXR5MR4wHAYJKoZIhvcNAQkBFg9pcHNAbWFpbC5pcHMuZXMwgZ8wDQYJ
-KoZIhvcNAQEBBQADgY0AMIGJAoGBAO6AAPYaZC6tasiDsYun7o/ZttvNG7uG
-BiJ2MwwSbUhWYdLcgiViL5/SaTBlA0IjWLxH3GvWdV0XPOH/8lhneaDBgbHU
-VqLyjRGZ/fZ98cfEXgIqmuJKtROKAP2Md4bm15T1IHUuDky/dMQ/gT6DtKM4
-Ninn6Cr1jIhBqoCm42zvAgMBAAGjggRTMIIETzAdBgNVHQ4EFgQUHp9XUEe2
-YZM50yz82l09BXW3mQIwggFGBgNVHSMEggE9MIIBOYAUHp9XUEe2YZM50yz8
-2l09BXW3mQKhggEcpIIBGDCCARQxCzAJBgNVBAYTAkVTMRIwEAYDVQQIEwlC
-YXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEuMCwGA1UEChMlSVBTIElu
-dGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5sLjErMCkGA1UEChQiaXBz
-QG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1MjEvMC0GA1UECxMmSVBT
-IENBIENMQVNFQTMgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxLzAtBgNVBAMT
-JklQUyBDQSBDTEFTRUEzIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MR4wHAYJ
-KoZIhvcNAQkBFg9pcHNAbWFpbC5pcHMuZXOCAQAwDAYDVR0TBAUwAwEB/zAM
-BgNVHQ8EBQMDB/+AMGsGA1UdJQRkMGIGCCsGAQUFBwMBBggrBgEFBQcDAgYI
-KwYBBQUHAwMGCCsGAQUFBwMEBggrBgEFBQcDCAYKKwYBBAGCNwIBFQYKKwYB
-BAGCNwIBFgYKKwYBBAGCNwoDAQYKKwYBBAGCNwoDBDARBglghkgBhvhCAQEE
-BAMCAAcwGgYDVR0RBBMwEYEPaXBzQG1haWwuaXBzLmVzMBoGA1UdEgQTMBGB
-D2lwc0BtYWlsLmlwcy5lczBCBglghkgBhvhCAQ0ENRYzQ0xBU0VBMyBDQSBD
-ZXJ0aWZpY2F0ZSBpc3N1ZWQgYnkgaHR0cDovL3d3dy5pcHMuZXMvMCkGCWCG
-SAGG+EIBAgQcFhpodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyLzA7BglghkgB
-hvhCAQQELhYsaHR0cDovL3d3dy5pcHMuZXMvaXBzMjAwMi9pcHMyMDAyQ0xB
-U0VBMy5jcmwwQAYJYIZIAYb4QgEDBDMWMWh0dHA6Ly93d3cuaXBzLmVzL2lw
-czIwMDIvcmV2b2NhdGlvbkNMQVNFQTMuaHRtbD8wPQYJYIZIAYb4QgEHBDAW
-Lmh0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIvcmVuZXdhbENMQVNFQTMuaHRt
-bD8wOwYJYIZIAYb4QgEIBC4WLGh0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIv
-cG9saWN5Q0xBU0VBMy5odG1sMHUGA1UdHwRuMGwwMqAwoC6GLGh0dHA6Ly93
-d3cuaXBzLmVzL2lwczIwMDIvaXBzMjAwMkNMQVNFQTMuY3JsMDagNKAyhjBo
-dHRwOi8vd3d3YmFjay5pcHMuZXMvaXBzMjAwMi9pcHMyMDAyQ0xBU0VBMy5j
-cmwwLwYIKwYBBQUHAQEEIzAhMB8GCCsGAQUFBzABhhNodHRwOi8vb2NzcC5p
-cHMuZXMvMA0GCSqGSIb3DQEBBQUAA4GBAEo9IEca2on0eisxeewBwMwB9dbB
-/MjD81ACUZBYKp/nNQlbMAqBACVHr9QPDp5gJqiVp4MI3y2s6Q73nMify5NF
-8bpqxmdRSmlPa/59Cy9SKcJQrSRE7SOzSMtEQMEDlQwKeAYSAfWRMS1Jjbs/
-RU4s4OjNtckUFQzjB4ObJnXv
------END CERTIFICATE-----
-
-IPS_Servidores_root
------BEGIN CERTIFICATE-----
-MIICtzCCAiACAQAwDQYJKoZIhvcNAQEEBQAwgaMxCzAJBgNVBAYTAkVTMRIw
-EAYDVQQIEwlCQVJDRUxPTkExEjAQBgNVBAcTCUJBUkNFTE9OQTEZMBcGA1UE
-ChMQSVBTIFNlZ3VyaWRhZCBDQTEYMBYGA1UECxMPQ2VydGlmaWNhY2lvbmVz
-MRcwFQYDVQQDEw5JUFMgU0VSVklET1JFUzEeMBwGCSqGSIb3DQEJARYPaXBz
-QG1haWwuaXBzLmVzMB4XDTk4MDEwMTIzMjEwN1oXDTA5MTIyOTIzMjEwN1ow
-gaMxCzAJBgNVBAYTAkVTMRIwEAYDVQQIEwlCQVJDRUxPTkExEjAQBgNVBAcT
-CUJBUkNFTE9OQTEZMBcGA1UEChMQSVBTIFNlZ3VyaWRhZCBDQTEYMBYGA1UE
-CxMPQ2VydGlmaWNhY2lvbmVzMRcwFQYDVQQDEw5JUFMgU0VSVklET1JFUzEe
-MBwGCSqGSIb3DQEJARYPaXBzQG1haWwuaXBzLmVzMIGfMA0GCSqGSIb3DQEB
-AQUAA4GNADCBiQKBgQCsT1J0nznqjtwlxLyYXZhkJAk8IbPMGbWOlI6H0fg3
-PqHILVikgDVboXVsHUUMH2Fjal5vmwpMwci4YSM1gf/+rHhwLWjhOgeYlQJU
-3c0jt4BT18g3RXIGJBK6E2Ehim51KODFDzT9NthFf+G4Nu+z4cYgjui0OLzh
-PvYR3oydAQIDAQABMA0GCSqGSIb3DQEBBAUAA4GBACzzw3lYJN7GO9HgQmm4
-7mSzPWIBubOE3yN93ZjPEKn+ANgilgUTB1RXxafey9m4iEL2mdsUdx+2/iU9
-4aI+A6mB0i1sR/WWRowiq8jMDQ6XXotBtDvECgZAHd1G9AHduoIuPD14cJ58
-GNCr+Lh3B0Zx8coLY1xq+XKU1QFPoNtC
------END CERTIFICATE-----
-
-IPS_Timestamping_root
------BEGIN CERTIFICATE-----
-MIIIODCCB6GgAwIBAgIBADANBgkqhkiG9w0BAQUFADCCAR4xCzAJBgNVBAYT
-AkVTMRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEu
-MCwGA1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5s
-LjErMCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1
-MjE0MDIGA1UECxMrSVBTIENBIFRpbWVzdGFtcGluZyBDZXJ0aWZpY2F0aW9u
-IEF1dGhvcml0eTE0MDIGA1UEAxMrSVBTIENBIFRpbWVzdGFtcGluZyBDZXJ0
-aWZpY2F0aW9uIEF1dGhvcml0eTEeMBwGCSqGSIb3DQEJARYPaXBzQG1haWwu
-aXBzLmVzMB4XDTAxMTIyOTAxMTAxOFoXDTI1MTIyNzAxMTAxOFowggEeMQsw
-CQYDVQQGEwJFUzESMBAGA1UECBMJQmFyY2Vsb25hMRIwEAYDVQQHEwlCYXJj
-ZWxvbmExLjAsBgNVBAoTJUlQUyBJbnRlcm5ldCBwdWJsaXNoaW5nIFNlcnZp
-Y2VzIHMubC4xKzApBgNVBAoUImlwc0BtYWlsLmlwcy5lcyBDLkkuRi4gIEIt
-NjA5Mjk0NTIxNDAyBgNVBAsTK0lQUyBDQSBUaW1lc3RhbXBpbmcgQ2VydGlm
-aWNhdGlvbiBBdXRob3JpdHkxNDAyBgNVBAMTK0lQUyBDQSBUaW1lc3RhbXBp
-bmcgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxHjAcBgkqhkiG9w0BCQEWD2lw
-c0BtYWlsLmlwcy5lczCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAvLju
-VqWajOY2ycJioGaBjRrVetJznw6EZLqVtJCneK/K/lRhW86yIFcBrkSSQxA4
-Efdo/BdApWgnMjvEp+ZCccWZ73b/K5Uk9UmSGGjKALWkWi9uy9YbLA1UZ2t6
-KaFYq6JaANZbuxjC3/YeE1Z2m6Vo4pjOxgOKNNtMg0GmqaMCAwEAAaOCBIAw
-ggR8MB0GA1UdDgQWBBSL0BBQCYHynQnVDmB4AyKiP8jKZjCCAVAGA1UdIwSC
-AUcwggFDgBSL0BBQCYHynQnVDmB4AyKiP8jKZqGCASakggEiMIIBHjELMAkG
-A1UEBhMCRVMxEjAQBgNVBAgTCUJhcmNlbG9uYTESMBAGA1UEBxMJQmFyY2Vs
-b25hMS4wLAYDVQQKEyVJUFMgSW50ZXJuZXQgcHVibGlzaGluZyBTZXJ2aWNl
-cyBzLmwuMSswKQYDVQQKFCJpcHNAbWFpbC5pcHMuZXMgQy5JLkYuICBCLTYw
-OTI5NDUyMTQwMgYDVQQLEytJUFMgQ0EgVGltZXN0YW1waW5nIENlcnRpZmlj
-YXRpb24gQXV0aG9yaXR5MTQwMgYDVQQDEytJUFMgQ0EgVGltZXN0YW1waW5n
-IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MR4wHAYJKoZIhvcNAQkBFg9pcHNA
-bWFpbC5pcHMuZXOCAQAwDAYDVR0TBAUwAwEB/zAMBgNVHQ8EBQMDB/+AMGsG
-A1UdJQRkMGIGCCsGAQUFBwMBBggrBgEFBQcDAgYIKwYBBQUHAwMGCCsGAQUF
-BwMEBggrBgEFBQcDCAYKKwYBBAGCNwIBFQYKKwYBBAGCNwIBFgYKKwYBBAGC
-NwoDAQYKKwYBBAGCNwoDBDARBglghkgBhvhCAQEEBAMCAAcwGgYDVR0RBBMw
-EYEPaXBzQG1haWwuaXBzLmVzMBoGA1UdEgQTMBGBD2lwc0BtYWlsLmlwcy5l
-czBHBglghkgBhvhCAQ0EOhY4VGltZXN0YW1waW5nIENBIENlcnRpZmljYXRl
-IGlzc3VlZCBieSBodHRwOi8vd3d3Lmlwcy5lcy8wKQYJYIZIAYb4QgECBBwW
-Gmh0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIvMEAGCWCGSAGG+EIBBAQzFjFo
-dHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL2lwczIwMDJUaW1lc3RhbXBpbmcu
-Y3JsMEUGCWCGSAGG+EIBAwQ4FjZodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAy
-L3Jldm9jYXRpb25UaW1lc3RhbXBpbmcuaHRtbD8wQgYJYIZIAYb4QgEHBDUW
-M2h0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIvcmVuZXdhbFRpbWVzdGFtcGlu
-Zy5odG1sPzBABglghkgBhvhCAQgEMxYxaHR0cDovL3d3dy5pcHMuZXMvaXBz
-MjAwMi9wb2xpY3lUaW1lc3RhbXBpbmcuaHRtbDB/BgNVHR8EeDB2MDegNaAz
-hjFodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL2lwczIwMDJUaW1lc3RhbXBp
-bmcuY3JsMDugOaA3hjVodHRwOi8vd3d3YmFjay5pcHMuZXMvaXBzMjAwMi9p
-cHMyMDAyVGltZXN0YW1waW5nLmNybDAvBggrBgEFBQcBAQQjMCEwHwYIKwYB
-BQUHMAGGE2h0dHA6Ly9vY3NwLmlwcy5lcy8wDQYJKoZIhvcNAQEFBQADgYEA
-ZbrBzAAalZHK6Ww6vzoeFAh8+4Pua2JR0zORtWB5fgTYXXk36MNbsMRnLWha
-sl8OCvrNPzpFoeo2zyYepxEoxZSPhExTCMWTs/zif/WN87GphV+I3pGW7hdb
-rqXqcGV4LCFkAZXOzkw+UPS2Wctjjba9GNSHSl/c7+lW8AoM6HU=
------END CERTIFICATE-----
-
-QuoVadis_Root_CA
------BEGIN CERTIFICATE-----
-MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQG
-EwJCTTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9v
-dCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEuMCwGA1UEAxMlUXVvVmFkaXMg
-Um9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAzMTkxODMzMzNa
-Fw0yMTAzMTcxODMzMzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9W
-YWRpcyBMaW1pdGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0
-aG9yaXR5MS4wLAYDVQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24g
-QXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv2G1
-lVO6V/z68mcLOhrfEYBklbTRvM16z/Ypli4kVEAkOPcahdxYTMukJ0KX0J+D
-isPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2DrOpm2RgbaIr1VxqYuvXtdj18
-2d6UajtLF8HVj71lODqV0D1VNk7feVcxKh7YWWVJWCCYfqtffp/p1k3sg3Sp
-x2zY7ilKhSoGFPlU5tPaZQeLYzcS19Dsw3sgQUSj7cugF+FxZc4dZjH3dgEZ
-yH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWenAScOospUxbF6lR1xHkop
-igPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCCAk4wPQYI
-KwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVvdmFk
-aXNvZmZzaG9yZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREw
-ggENMIIBCQYJKwYBBAG+WAABMIH7MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlh
-bmNlIG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmljYXRlIGJ5IGFueSBw
-YXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJs
-ZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRp
-ZmljYXRpb24gcHJhY3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmlj
-YXRlIFBvbGljeS4wIgYIKwYBBQUHAgEWFmh0dHA6Ly93d3cucXVvdmFkaXMu
-Ym0wHQYDVR0OBBYEFItLbe3TKbkGGew5Oanwl4Rqy+/fMIGuBgNVHSMEgaYw
-gaOAFItLbe3TKbkGGew5Oanwl4Rqy+/foYGEpIGBMH8xCzAJBgNVBAYTAkJN
-MRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUwIwYDVQQLExxSb290IENl
-cnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQDEyVRdW9WYWRpcyBSb290
-IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6tlCLMA4GA1UdDwEB/wQEAwIB
-BjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSkfnIYj9lofFIk3Wdv
-OXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf87C9TqnN7Az10
-buYWnuulLsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1RcHhXHTMe
-/QKZnAzNCgVPx7uOpHX6Sm2xgI4JVrmcGmD+XcHXetwReNDWXcG31a0ymQM6
-isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi5upZIof4l/UO/erMkqQW
-xFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi5nrQ
-NiOKSnQ2+Q==
------END CERTIFICATE-----
-
-RSA_Root_Certificate_1
------BEGIN CERTIFICATE-----
-MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlD
-ZXJ0IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIElu
-Yy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMgUG9saWN5IFZhbGlkYXRp
-b24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNv
-bS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYy
-NjAwMjIzM1oXDTE5MDYyNjAwMjIzM1owgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0
-IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4x
-NTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMgUG9saWN5IFZhbGlkYXRpb24g
-QXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8x
-IDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3
-DQEBAQUAA4GNADCBiQKBgQDjmFGWHOjVsQaBalfDcnWTq8+epvzzFlLWLU2f
-NUSoLgRNB0mKOCn1dzfnt6td3zZxFJmP3MKS8edgkpfs2Ejcv8ECIMYkpChM
-MFp2bbFc893enhBxoYjHW5tBbcqwuI4V7q0zK89HBFx1cQqYJJgpp0lZpd34
-t0NiYfPT4tBVPwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFa7AliEZwgs3x/b
-e0kz9dNnnfS0ChCzycUs4pJqcXgn8nCDQtM+z6lU9PHYkhaM0QTLS6vJn0Wu
-PIqpsHEzXcjFV9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/A
-PhmcGcwTTYJBtYze4D1gCCAPRX5ron+jjBXu
------END CERTIFICATE-----
-
-RSA_Security_1024_v3
------BEGIN CERTIFICATE-----
-MIICXDCCAcWgAwIBAgIQCgEBAQAAAnwAAAALAAAAAjANBgkqhkiG9w0BAQUF
-ADA6MRkwFwYDVQQKExBSU0EgU2VjdXJpdHkgSW5jMR0wGwYDVQQLExRSU0Eg
-U2VjdXJpdHkgMTAyNCBWMzAeFw0wMTAyMjIyMTAxNDlaFw0yNjAyMjIyMDAx
-NDlaMDoxGTAXBgNVBAoTEFJTQSBTZWN1cml0eSBJbmMxHTAbBgNVBAsTFFJT
-QSBTZWN1cml0eSAxMDI0IFYzMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKB
-gQDV3f5mCc8kPD6ugU5OisRpgFtZO9+5TUzKtS3DJy08rwBCbbwoppbPf9dY
-rIMKo1W1exeQFYRMiu4mmdxY78c4pqqv0I5CyGLXq6yp+0p9v+r+Ek3d/yYt
-bzZUaMjShFbuklNhCbM/OZuoyZu9zp9+1BlqFikYvtc6adwlWzMaUQIDAQAB
-o2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSME
-GDAWgBTEwBykB5T9zU0B1FTapQxf3q4FWjAdBgNVHQ4EFgQUxMAcpAeU/c1N
-AdRU2qUMX96uBVowDQYJKoZIhvcNAQEFBQADgYEAPy1q4yZDlX2Jl2X7deRy
-HUZXxGFraZ8SmyzVWujAovBDleMf6XbN3Ou8k6BlCsdNT1+nr6JGFLkM88y9
-am63nd4lQtBU/55oc2PcJOsiv6hy8l4A4Q1OOkNumU4/iXgDmMrzVcydro7B
-qkWY+o8aoI2II/EVQQ2lRj6RP4vr93E=
------END CERTIFICATE-----
-
-RSA_Security_2048_v3
------BEGIN CERTIFICATE-----
-MIIDYTCCAkmgAwIBAgIQCgEBAQAAAnwAAAAKAAAAAjANBgkqhkiG9w0BAQUF
-ADA6MRkwFwYDVQQKExBSU0EgU2VjdXJpdHkgSW5jMR0wGwYDVQQLExRSU0Eg
-U2VjdXJpdHkgMjA0OCBWMzAeFw0wMTAyMjIyMDM5MjNaFw0yNjAyMjIyMDM5
-MjNaMDoxGTAXBgNVBAoTEFJTQSBTZWN1cml0eSBJbmMxHTAbBgNVBAsTFFJT
-QSBTZWN1cml0eSAyMDQ4IFYzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
-CgKCAQEAt49VcdKA3XtpeafwGFAyPGJn9gqVB93mG/Oe2dJBVGutn3y+Gc37
-RqtBaB4Y6lXIL5F4iSj7Jylg/9+PjDvJSZu1pJTOAeo+tWN7fyb9Gd3AIb2E
-0S1PRsNO3Ng3OTsor8udGuorryGlwSMiuLgbWhOHV4PR8CDn6E8jQrAApX2J
-6elhc5SYcSa8LWrg903w8bYqODGBDSnhAMFRD0xS+ARaqn1y07iHKrtjEAMq
-s6FPDVpeRrc9DvV07Jmf+T0kgYim3WBU6JU2PcYJk5qjEoAAVZkZR73QpXzD
-uvsf9/UP+Ky5tfQ3mBMY3oVbtwyCO4dvlTlYMNpuAWgXIszACwIDAQABo2Mw
-YTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAW
-gBQHw1EwpKrpRa41JPr/JCwz0LGdjDAdBgNVHQ4EFgQUB8NRMKSq6UWuNST6
-/yQsM9CxnYwwDQYJKoZIhvcNAQEFBQADggEBAF8+hnZuuDU8TjYcHnmYv/3V
-EhF5Ug7uMYm83X/50cYVIeiKAVQNOvtUudZj1LGqlk2iQk3UUx+LEN5/Zb5g
-EydxiKRz44Rj0aRV4VCT5hsOedBnvEbIvz8XDZXmxpBp3ue0L96VfdASPz0+
-f00/FGj1EVDVwfSQpQgdMWD/YIwjVAqv/qFuxdF6Kmh4zx6CCiC0H63lhbJq
-aHVOrSU3lIW+vaHU6rcMSzyd6BIA8F+sDeGscGNz9395nzIlQnQFgCi/vcEk
-llgVsRch6YlL2weIZ/QVrXA+L02FO8K32/6YaCOJ4XQP3vTFhGMpG8zLB8kA
-pKnXwiJPZ9d37CAFYd4=
------END CERTIFICATE-----
-
-Security_Communication_Root_CA
------BEGIN CERTIFICATE-----
-MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJK
-UDEYMBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0
-eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEwHhcNMDMwOTMwMDQyMDQ5WhcNMjMw
-OTMwMDQyMDQ5WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMPU0VDT00gVHJ1
-c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RD
-QTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8
-V6UMbXaKL0u/ZPtM7orw8yl89f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpx
-xpp9Hp3dfGzGjGdnSj74cbAZJ6kJDKaVv0uMDPpVmDvY6CKhS3E4eayXkmmz
-iX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9Ms+k2Y7CI9eNqPPYJayX5HA49LY6
-tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/NQV3Is00qVUarH9oe4kA92819
-uZKAnDfdDJZkndwi92SL32HeFZRSFaB9UslLqCHJxrHty8OVYNEP8Ktw+N/L
-TX7s1vqr2b1/VPKl6Xn62dZ2JChzAgMBAAGjPzA9MB0GA1UdDgQWBBSgc0mZ
-aNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB
-/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vGkl3g0dNq
-/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfrUj94
-nK9NrvjVT8+amCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5
-Bw+SUEmK3TGXX8npN6o7WWWXlDLJs58+OmJYxUmtYg5xpTKqL8aJdkNAExNn
-PaJUJRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ6rBK+1YWc26sTfci
-oU+tHXotRSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAi
-FL39vmwLAw==
------END CERTIFICATE-----
-
-Sonera_Class_1_Root_CA
------BEGIN CERTIFICATE-----
-MIIDIDCCAgigAwIBAgIBJDANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJG
-STEPMA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MxIENB
-MB4XDTAxMDQwNjEwNDkxM1oXDTIxMDQwNjEwNDkxM1owOTELMAkGA1UEBhMC
-RkkxDzANBgNVBAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMSBD
-QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALWJHytPZwp5/8Ue
-+H887dF+2rDNbS82rDTG29lkFwhjMDMiikzujrsPDUJVyZ0upe/3p4zDq7mX
-y47vPxVnqIJyY1MPQYx9EJUkoVqlBvqSV536pQHydekfvFYmUk54GWVYVQNY
-wBSujHxVX3BbdyMGNpfzJLWaRpXk3w0LBUXl0fIdgrvGE+D+qnr9aTCU89JF
-hfzyMlsy3uhsXR/LpCJ0sICOXZT3BgBLqdReLjVQCfOAl/QMF6452F/NM8Ec
-yonCIvdFEu1eEpOdY6uCLrnrQkFEy0oaAIINnvmLVz5MxxftLItyM19yejhW
-1ebZrgUaHXVFsculJRwSVzb9IjcCAwEAAaMzMDEwDwYDVR0TAQH/BAUwAwEB
-/zARBgNVHQ4ECgQIR+IMi/ZTiFIwCwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEB
-BQUAA4IBAQCLGrLJXWG04bkruVPRsoWdd44W7hE928Jj2VuXZfsSZ9gqXLar
-5V7DtxYvyOirHYr9qxp81V9jz9yw3Xe5qObSIjiHBxTZ/75Wtf0HDjxVyhbM
-p6Z3N/vbXB9OWQaHowND9Rart4S9Tu+fMTfwRvFAttEMpWT4Y14h21VOTzF2
-nBBhjrZTOqMRvq9tfB69ri3iDGnHhVNoomG6xT60eVR4ngrHAr5i0RGCS2Uv
-kVrCqIexVmiUefkl98HVrhq4uz2PqYo4Ffdz0Fpg0YCw8NzVUM1O7pJIae2y
-Ix4wzMiUyLb1O4Z/P6Yun/Y+LLWSlj7fLJOK/4GMDw9ZIRlXvVWa
------END CERTIFICATE-----
-
-Sonera_Class_2_Root_CA
------BEGIN CERTIFICATE-----
-MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJG
-STEPMA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENB
-MB4XDTAxMDQwNjA3Mjk0MFoXDTIxMDQwNjA3Mjk0MFowOTELMAkGA1UEBhMC
-RkkxDzANBgNVBAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMiBD
-QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE
-+hY3/Ei9vX+ALTU74W+oZ6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gX
-GM2RX/uJ4+q/Tl18GybTdXnt5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQ
-TiMofRhj8VQ7Jp12W5dCsv+u8E7s3TmVToMGf+dJQMjFAbJUWmYdPfz56TwK
-noG4cPABi+QjVHzIrviQHgCWctRUz2EjvOr7nQKV0ba5cTppCD8PtOFCx4j1
-P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu8nYybieDwnPz3BjotJPqdURr
-BGAgcVeHnfO+oJAjPYok4doh28MCAwEAAaMzMDEwDwYDVR0TAQH/BAUwAwEB
-/zARBgNVHQ4ECgQISqCqWITTXjwwCwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEB
-BQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt0jSv9zilzqsWuasvfDXL
-rNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/3DEIcbCd
-jdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvDFNr4
-50kkkdAdavphOe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6
-Tk6ezAyNlNzZRZxe7EJQY670XcSxEtzKO6gunRRaBXW37Ndj4ro1tgQIkeja
-nZz2ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLHllpwrN9M
------END CERTIFICATE-----
-
-Staat_der_Nederlanden_Root_CA
------BEGIN CERTIFICATE-----
-MIIDujCCAqKgAwIBAgIEAJiWijANBgkqhkiG9w0BAQUFADBVMQswCQYDVQQG
-EwJOTDEeMBwGA1UEChMVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSYwJAYDVQQD
-Ex1TdGFhdCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQTAeFw0wMjEyMTcwOTIz
-NDlaFw0xNTEyMTYwOTE1MzhaMFUxCzAJBgNVBAYTAk5MMR4wHAYDVQQKExVT
-dGFhdCBkZXIgTmVkZXJsYW5kZW4xJjAkBgNVBAMTHVN0YWF0IGRlciBOZWRl
-cmxhbmRlbiBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
-AQEAmNK1URF6gaYUmHFtvsznExvWJw56s2oYHLZhWtVhCb/ekBPHZ+7d89rF
-DBKeNVU+LCeIQGv33N0iYfXCxw719tV2U02PjLwYdjeFnejKScfST5gTCaI+
-Ioicf9byEGW07l8Y1Rfj+MX94p2i71MOhXeiD+EwR+4A5zN9RGcaC1Hoi6Ce
-UJhoNFIfLm0B8mBF8jHrqTFoKbt6QZ7GGX+UtFE5A3+y3qcym7RHjm+0Sq7l
-r7HcsBthvJly3uSJt3omXdozSVtSnA71iq3DuD3oBmrC1SoLbHuEvVYFy4Zl
-kuxEK7COudxwC0barbxjiDn622r+I/q85Ej0ZytqERAhSQIDAQABo4GRMIGO
-MAwGA1UdEwQFMAMBAf8wTwYDVR0gBEgwRjBEBgRVHSAAMDwwOgYIKwYBBQUH
-AgEWLmh0dHA6Ly93d3cucGtpb3ZlcmhlaWQubmwvcG9saWNpZXMvcm9vdC1w
-b2xpY3kwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSofeu8Y6R0E3QA7Jbg
-0zTBLL9s+DANBgkqhkiG9w0BAQUFAAOCAQEABYSHVXQ2YcG70dTGFagTtJ+k
-/rvuFbQvBgwp8qiSpGEN/KtcCFtREytNwiphyPgJWPwtArI5fZlmgb9uXJVF
-IGzmeafR2Bwp/MIgJ1HI8XxdNGdphREwxgDS1/PTfLbwMVcoEoJz6TMvplW0
-C5GUR5z6u3pCMuiufi3IvKwUv9kP2Vv8wfl6leF9fpb8cbDCTMjfRTTJzg3y
-nGQI0DvDKcWy7ZAEwbEpkcUwb8GpcjPM/l0WFywRaed+/sWDCN+83CI6LiBp
-IzlWYGeQiy52OfsRiJf2fL1LuCAWZwWN4jvBcj+UlTfHXbme2JOhF4//DGYV
-wSR8MnwDHTuhWEUykw==
------END CERTIFICATE-----
-
-StartCom_Ltd__Free_SSL_Certification_Authority
------BEGIN CERTIFICATE-----
-MIIFFjCCBH+gAwIBAgIBADANBgkqhkiG9w0BAQQFADCBsDELMAkGA1UEBhMCSUwx
-DzANBgNVBAgTBklzcmFlbDEOMAwGA1UEBxMFRWlsYXQxFjAUBgNVBAoTDVN0YXJ0
-Q29tIEx0ZC4xGjAYBgNVBAsTEUNBIEF1dGhvcml0eSBEZXAuMSkwJwYDVQQDEyBG
-cmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYS
-YWRtaW5Ac3RhcnRjb20ub3JnMB4XDTA1MDMxNzE3Mzc0OFoXDTM1MDMxMDE3Mzc0
-OFowgbAxCzAJBgNVBAYTAklMMQ8wDQYDVQQIEwZJc3JhZWwxDjAMBgNVBAcTBUVp
-bGF0MRYwFAYDVQQKEw1TdGFydENvbSBMdGQuMRowGAYDVQQLExFDQSBBdXRob3Jp
-dHkgRGVwLjEpMCcGA1UEAxMgRnJlZSBTU0wgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
-dHkxITAfBgkqhkiG9w0BCQEWEmFkbWluQHN0YXJ0Y29tLm9yZzCBnzANBgkqhkiG
-9w0BAQEFAAOBjQAwgYkCgYEA7YRgACOeyEpRKSfeOqE5tWmrCbIvNP1h3D3TsM+x
-18LEwrHkllbEvqoUDufMOlDIOmKdw6OsWXuO7lUaHEe+o5c5s7XvIywI6Nivcy+5
-yYPo7QAPyHWlLzRMGOh2iCNJitu27Wjaw7ViKUylS7eYtAkUEKD4/mJ2IhULpNYI
-LzUCAwEAAaOCAjwwggI4MA8GA1UdEwEB/wQFMAMBAf8wCwYDVR0PBAQDAgHmMB0G
-A1UdDgQWBBQcicOWzL3+MtUNjIExtpidjShkjTCB3QYDVR0jBIHVMIHSgBQcicOW
-zL3+MtUNjIExtpidjShkjaGBtqSBszCBsDELMAkGA1UEBhMCSUwxDzANBgNVBAgT
-BklzcmFlbDEOMAwGA1UEBxMFRWlsYXQxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4x
-GjAYBgNVBAsTEUNBIEF1dGhvcml0eSBEZXAuMSkwJwYDVQQDEyBGcmVlIFNTTCBD
-ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYSYWRtaW5Ac3Rh
-cnRjb20ub3JnggEAMB0GA1UdEQQWMBSBEmFkbWluQHN0YXJ0Y29tLm9yZzAdBgNV
-HRIEFjAUgRJhZG1pbkBzdGFydGNvbS5vcmcwEQYJYIZIAYb4QgEBBAQDAgAHMC8G
-CWCGSAGG+EIBDQQiFiBGcmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAy
-BglghkgBhvhCAQQEJRYjaHR0cDovL2NlcnQuc3RhcnRjb20ub3JnL2NhLWNybC5j
-cmwwKAYJYIZIAYb4QgECBBsWGWh0dHA6Ly9jZXJ0LnN0YXJ0Y29tLm9yZy8wOQYJ
-YIZIAYb4QgEIBCwWKmh0dHA6Ly9jZXJ0LnN0YXJ0Y29tLm9yZy9pbmRleC5waHA/
-YXBwPTExMTANBgkqhkiG9w0BAQQFAAOBgQBscSXhnjSRIe/bbL0BCFaPiNhBOlP1
-ct8nV0t2hPdopP7rPwl+KLhX6h/BquL/lp9JmeaylXOWxkjHXo0Hclb4g4+fd68p
-00UOpO6wNnQt8M2YI3s3S9r+UZjEHjQ8iP2ZO1CnwYszx8JSFhKVU2Ui77qLzmLb
-cCOxgN8aIDjnfg==
------END CERTIFICATE-----
-
-TC_TrustCenter__Germany__Class_2_CA
------BEGIN CERTIFICATE-----
-MIIDXDCCAsWgAwIBAgICA+owDQYJKoZIhvcNAQEEBQAwgbwxCzAJBgNVBAYT
-AkRFMRAwDgYDVQQIEwdIYW1idXJnMRAwDgYDVQQHEwdIYW1idXJnMTowOAYD
-VQQKEzFUQyBUcnVzdENlbnRlciBmb3IgU2VjdXJpdHkgaW4gRGF0YSBOZXR3
-b3JrcyBHbWJIMSIwIAYDVQQLExlUQyBUcnVzdENlbnRlciBDbGFzcyAyIENB
-MSkwJwYJKoZIhvcNAQkBFhpjZXJ0aWZpY2F0ZUB0cnVzdGNlbnRlci5kZTAe
-Fw05ODAzMDkxMTU5NTlaFw0xMTAxMDExMTU5NTlaMIG8MQswCQYDVQQGEwJE
-RTEQMA4GA1UECBMHSGFtYnVyZzEQMA4GA1UEBxMHSGFtYnVyZzE6MDgGA1UE
-ChMxVEMgVHJ1c3RDZW50ZXIgZm9yIFNlY3VyaXR5IGluIERhdGEgTmV0d29y
-a3MgR21iSDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQTEp
-MCcGCSqGSIb3DQEJARYaY2VydGlmaWNhdGVAdHJ1c3RjZW50ZXIuZGUwgZ8w
-DQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANo46O0yAClxgwENv4wB3NrGrTmk
-qYov1YtcaF9QxmL1Zr3KkSLsqh1R1z2zUbKDTl3LSbDwTFXlay3HhQswHJJO
-gtTKAu33b77c4OMUuAVT8pr0VotanoWT0bSCVq5Nu6hLVxa8/vhYnvgpjbB7
-zXjJT6yLZwzxnPv8V5tXXE8NAgMBAAGjazBpMA8GA1UdEwEB/wQFMAMBAf8w
-DgYDVR0PAQH/BAQDAgGGMDMGCWCGSAGG+EIBCAQmFiRodHRwOi8vd3d3LnRy
-dXN0Y2VudGVyLmRlL2d1aWRlbGluZXMwEQYJYIZIAYb4QgEBBAQDAgAHMA0G
-CSqGSIb3DQEBBAUAA4GBAIRS+yjf/x91AbwBvgRWl2p0QiQxg/lGsQaKic+W
-LDO/jLVfenKhhQbOhvgFjuj5Jcrag4wGrOs2bYWRNAQ29ELw+HkuCkhcq8xR
-T3h2oNmsGb0q0WkEKJHKNhAngFdb0lz1wlurZIFjdFH0l7/NEij3TWZ/p/Ac
-ASZ4smZHcFFk
------END CERTIFICATE-----
-
-TC_TrustCenter__Germany__Class_3_CA
------BEGIN CERTIFICATE-----
-MIIDXDCCAsWgAwIBAgICA+swDQYJKoZIhvcNAQEEBQAwgbwxCzAJBgNVBAYT
-AkRFMRAwDgYDVQQIEwdIYW1idXJnMRAwDgYDVQQHEwdIYW1idXJnMTowOAYD
-VQQKEzFUQyBUcnVzdENlbnRlciBmb3IgU2VjdXJpdHkgaW4gRGF0YSBOZXR3
-b3JrcyBHbWJIMSIwIAYDVQQLExlUQyBUcnVzdENlbnRlciBDbGFzcyAzIENB
-MSkwJwYJKoZIhvcNAQkBFhpjZXJ0aWZpY2F0ZUB0cnVzdGNlbnRlci5kZTAe
-Fw05ODAzMDkxMTU5NTlaFw0xMTAxMDExMTU5NTlaMIG8MQswCQYDVQQGEwJE
-RTEQMA4GA1UECBMHSGFtYnVyZzEQMA4GA1UEBxMHSGFtYnVyZzE6MDgGA1UE
-ChMxVEMgVHJ1c3RDZW50ZXIgZm9yIFNlY3VyaXR5IGluIERhdGEgTmV0d29y
-a3MgR21iSDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQTEp
-MCcGCSqGSIb3DQEJARYaY2VydGlmaWNhdGVAdHJ1c3RjZW50ZXIuZGUwgZ8w
-DQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALa0wTUFLg2N7KBAahwOJ6ZQkmtQ
-GwfeLud2zODa/ISoXoxjaitN2U4CdhHBC/KNecoAtvGwDtf7pBc9r6tpepYn
-v68zoZoqWarEtTcI8hKlMbZD9TKWcSgoq40oht+77uMMfTDWw1Krj10nnGvA
-o+cFa1dJRLNu6mTP0o56UHd3AgMBAAGjazBpMA8GA1UdEwEB/wQFMAMBAf8w
-DgYDVR0PAQH/BAQDAgGGMDMGCWCGSAGG+EIBCAQmFiRodHRwOi8vd3d3LnRy
-dXN0Y2VudGVyLmRlL2d1aWRlbGluZXMwEQYJYIZIAYb4QgEBBAQDAgAHMA0G
-CSqGSIb3DQEBBAUAA4GBABY9xs3Bu4VxhUafPiCPUSiZ7C1FIWMjWwS7TJC4
-iJIETb19AaM/9uzO8d7+feXhPrvGq14L3T2WxMup1Pkm5gZOngylerpuw3yC
-GdHHsbHD2w2Om0B8NwvxXej9H5CIpQ5ON2QhqE6NtJ/x3kit1VYYUimLRzQS
-CdS7kjXvD9s0
------END CERTIFICATE-----
-
-TDC_Internet_Root_CA
------BEGIN CERTIFICATE-----
-MIIEKzCCAxOgAwIBAgIEOsylTDANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQG
-EwJESzEVMBMGA1UEChMMVERDIEludGVybmV0MR0wGwYDVQQLExRUREMgSW50
-ZXJuZXQgUm9vdCBDQTAeFw0wMTA0MDUxNjMzMTdaFw0yMTA0MDUxNzAzMTda
-MEMxCzAJBgNVBAYTAkRLMRUwEwYDVQQKEwxUREMgSW50ZXJuZXQxHTAbBgNV
-BAsTFFREQyBJbnRlcm5ldCBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOC
-AQ8AMIIBCgKCAQEAxLhAvJHVYx/XmaCLDEAedLdInUaMArLgJF/wGROnN4Nr
-XceO+YQwzho7+vvOi20jxsNuZp+Jpd/gQlBn+h9sHvTQBda/ytZO5GhgbEaq
-HF1j4QeGDmUApy6mcca8uYGoOn0a0vnRrEvLznWv3Hv6gXPU/Lq9QYjUdLP5
-Xjg6PEOo0pVOd20TDJ2PeAG3WiAfAzc14izbSysseLlJ28TQx5yc5IogCSEW
-Vmb/Bexb4/DPqyQkXsN/cHoSxNK1EKC2IeGNeGlVRGn1ypYcNIUXJXfi9i8n
-mHj9eQY6otZaQ8H/7AQ77hPv01ha/5Lr7K7a8jcDR0G2l8ktCkEiu7vmpwID
-AQABo4IBJTCCASEwEQYJYIZIAYb4QgEBBAQDAgAHMGUGA1UdHwReMFwwWqBY
-oFakVDBSMQswCQYDVQQGEwJESzEVMBMGA1UEChMMVERDIEludGVybmV0MR0w
-GwYDVQQLExRUREMgSW50ZXJuZXQgUm9vdCBDQTENMAsGA1UEAxMEQ1JMMTAr
-BgNVHRAEJDAigA8yMDAxMDQwNTE2MzMxN1qBDzIwMjEwNDA1MTcwMzE3WjAL
-BgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUbGQBx/2FbazI2p5QCIUItTxWqFAw
-HQYDVR0OBBYEFGxkAcf9hW2syNqeUAiFCLU8VqhQMAwGA1UdEwQFMAMBAf8w
-HQYJKoZIhvZ9B0EABBAwDhsIVjUuMDo0LjADAgSQMA0GCSqGSIb3DQEBBQUA
-A4IBAQBOQ8zR3R0QGwZ/t6T609lN+yOfI1Rb5osvBCiLtSdtiaHsmGnc540m
-gwV5dOy0uaOXwTUA/RXaOYE6lTGQ3pfphqiZdwzlWqCE/xIWrG64jcN7ksKs
-LtB9KOy282A4aW8+2ARVPp7MVdK6/rtHBNcK2RYKNCn1WBPVT8+PVkuzHu7T
-mHnaCB4Mb7j4Fifvwm899qNLPg7kbWzbO0ESm70NRyN/PErQr8Cv9u8btRXE
-64PECV90i9kR+8JWsTz4cMo0jUNAE4z9mQNUecYu6oah9jrUCbz0vGbMPVjQ
-V0kK7iXiQe4T+Zs4NNEA9X7nlB38aQNiuJkFBT1reBK9sG9l
------END CERTIFICATE-----
-
-TDC_OCES_Root_CA
------BEGIN CERTIFICATE-----
-MIIFGTCCBAGgAwIBAgIEPki9xDANBgkqhkiG9w0BAQUFADAxMQswCQYDVQQG
-EwJESzEMMAoGA1UEChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTAeFw0w
-MzAyMTEwODM5MzBaFw0zNzAyMTEwOTA5MzBaMDExCzAJBgNVBAYTAkRLMQww
-CgYDVQQKEwNUREMxFDASBgNVBAMTC1REQyBPQ0VTIENBMIIBIjANBgkqhkiG
-9w0BAQEFAAOCAQ8AMIIBCgKCAQEArGL2YSCyz8DGhdfjeebM7fI5kqSXLmSj
-hFuHnEz9pPPEXyG9VhDr2y5h7JNp46PMvZnDBfwGuMo2HP6QjklMxFaaL1a8
-z3sM8W9Hpg1DTeLpHTk0zY0s2RKY+ePhwUp8hjjEqcRhiNJerxomTdXkoCJH
-hNlktxmW/OwZ5LKXJk5KTMuPJItUGBxIYXvViGjaXbXqzRowwYCDdlCqT9HU
-3Tjw7xb04QxQBr/q+3pJoSgrHPb8FTKjdGqPqcNiKXEx5TukYBdedObaE+3p
-Hx8b0bJoc8YQNHVGEBDjkAB2QMuLt0MJIf+rTpPGWOmlgtt3xDqZsXKVSQTw
-tyv6e1mO3QIDAQABo4ICNzCCAjMwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8B
-Af8EBAMCAQYwgewGA1UdIASB5DCB4TCB3gYIKoFQgSkBAQEwgdEwLwYIKwYB
-BQUHAgEWI2h0dHA6Ly93d3cuY2VydGlmaWthdC5kay9yZXBvc2l0b3J5MIGd
-BggrBgEFBQcCAjCBkDAKFgNUREMwAwIBARqBgUNlcnRpZmlrYXRlciBmcmEg
-ZGVubmUgQ0EgdWRzdGVkZXMgdW5kZXIgT0lEIDEuMi4yMDguMTY5LjEuMS4x
-LiBDZXJ0aWZpY2F0ZXMgZnJvbSB0aGlzIENBIGFyZSBpc3N1ZWQgdW5kZXIg
-T0lEIDEuMi4yMDguMTY5LjEuMS4xLjARBglghkgBhvhCAQEEBAMCAAcwgYEG
-A1UdHwR6MHgwSKBGoESkQjBAMQswCQYDVQQGEwJESzEMMAoGA1UEChMDVERD
-MRQwEgYDVQQDEwtUREMgT0NFUyBDQTENMAsGA1UEAxMEQ1JMMTAsoCqgKIYm
-aHR0cDovL2NybC5vY2VzLmNlcnRpZmlrYXQuZGsvb2Nlcy5jcmwwKwYDVR0Q
-BCQwIoAPMjAwMzAyMTEwODM5MzBagQ8yMDM3MDIxMTA5MDkzMFowHwYDVR0j
-BBgwFoAUYLWF7FZkfhIZJ2cdUBVLc647+RIwHQYDVR0OBBYEFGC1hexWZH4S
-GSdnHVAVS3OuO/kSMB0GCSqGSIb2fQdBAAQQMA4bCFY2LjA6NC4wAwIEkDAN
-BgkqhkiG9w0BAQUFAAOCAQEACromJkbTc6gJ82sLMJn9iuFXehHTuJTXCRBu
-o7E4A9G28kNBKWKnctj7fAXmMXAnVBhOinxO5dHKjHiIzxvTkIvmI/gLDjND
-fZziChmPyQE+dF10yYscA+UYyAFMP8uXBV2YcaaYb7Z8vTd/vuGTJW1v8Aqt
-FxjhA7wHKcitJuj4YfD9IQl+mo6paH1IYnK9AOoBmbgGglGBTvH1tJFUuSN6
-AJqfXY3gPGS5GhKSKseCRHI53OI8xthV9RVOyAUO28bQYqbsFbS1AoLbrIyi
-gfCbmTH1ICCoiGEKB5+U/NDXG8wuF/MEJ3Zn61SD/aSQfgY9BKNDLdr8C2Lq
-L19iUw==
------END CERTIFICATE-----
-
-Thawte_Personal_Basic_CA
------BEGIN CERTIFICATE-----
-MIIDITCCAoqgAwIBAgIBADANBgkqhkiG9w0BAQQFADCByzELMAkGA1UEBhMC
-WkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3du
-MRowGAYDVQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMfQ2VydGlm
-aWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhhd3RlIFBl
-cnNvbmFsIEJhc2ljIENBMSgwJgYJKoZIhvcNAQkBFhlwZXJzb25hbC1iYXNp
-Y0B0aGF3dGUuY29tMB4XDTk2MDEwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVow
-gcsxCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNV
-BAcTCUNhcGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAm
-BgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNpb24xITAfBgNV
-BAMTGFRoYXd0ZSBQZXJzb25hbCBCYXNpYyBDQTEoMCYGCSqGSIb3DQEJARYZ
-cGVyc29uYWwtYmFzaWNAdGhhd3RlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOB
-jQAwgYkCgYEAvLyTU23AUE+CFeZIlDWmWr5vQvoPR+53dXLdjUmbllegeNTK
-P1GzaQuRdhciB5dqxFGTS+CN7zeVoQxN2jSQHReJl+A1OFdKwPQIcOk8RHtQ
-fmGakOMj04gRRif1CwcOu93RfyAKiLlWCy4cgNrx454p7xS9CkT7G1sY0b8j
-kyECAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQQFAAOB
-gQAt4plrsD16iddZopQBHyvdEktTwq1/qqcAXJFAVyVKOKqEcLnZgA+le1z7
-c8a914phXAPjLSeoF+CEhULcXpvGt7Jtu3Sv5D/Lp7ew4F2+eIMllNLbgQ95
-B21P9DkVWlIBe94y1k049hJcBlDfBVu9FEuh3ym6O0GN92NWod8isQ==
------END CERTIFICATE-----
-
-Thawte_Personal_Freemail_CA
------BEGIN CERTIFICATE-----
-MIIDLTCCApagAwIBAgIBADANBgkqhkiG9w0BAQQFADCB0TELMAkGA1UEBhMC
-WkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3du
-MRowGAYDVQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMfQ2VydGlm
-aWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEkMCIGA1UEAxMbVGhhd3RlIFBl
-cnNvbmFsIEZyZWVtYWlsIENBMSswKQYJKoZIhvcNAQkBFhxwZXJzb25hbC1m
-cmVlbWFpbEB0aGF3dGUuY29tMB4XDTk2MDEwMTAwMDAwMFoXDTIwMTIzMTIz
-NTk1OVowgdExCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUx
-EjAQBgNVBAcTCUNhcGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRp
-bmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNpb24x
-JDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTErMCkGCSqG
-SIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTCBnzANBgkq
-hkiG9w0BAQEFAAOBjQAwgYkCgYEA1GnX1LCUZFtx6UfYDFG26nKRsIRefS0N
-j3sS34UldSh0OkIsYyeflXtL734Zhx2G6qPduc6WZBrCFG5ErHzmj+hND3Ef
-QDimAKOHePb5lIZererAXnbr2RSjXW56fAylS1V/Bhkpf56aJtVquzgkCGqY
-x7Hao5iR/Xnb5VrEHLkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkq
-hkiG9w0BAQQFAAOBgQDH7JJ+Tvj1lqVnYiqk8E0RYNBvjWBYYawmu1I1XAjP
-MPuoSpaKH2JCI4wXD/S6ZJwXrEcp352YXtJsYHFcoqzceePnbgBHH7UNKOgC
-neSa/RP0ptl8sfjcXyMmCZGAc9AUG95DqYMl8uacLxXK/qarigd1iwzdUYRr
-5PjRzneigQ==
------END CERTIFICATE-----
-
-Thawte_Personal_Premium_CA
------BEGIN CERTIFICATE-----
-MIIDKTCCApKgAwIBAgIBADANBgkqhkiG9w0BAQQFADCBzzELMAkGA1UEBhMC
-WkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3du
-MRowGAYDVQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMfQ2VydGlm
-aWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEjMCEGA1UEAxMaVGhhd3RlIFBl
-cnNvbmFsIFByZW1pdW0gQ0ExKjAoBgkqhkiG9w0BCQEWG3BlcnNvbmFsLXBy
-ZW1pdW1AdGhhd3RlLmNvbTAeFw05NjAxMDEwMDAwMDBaFw0yMDEyMzEyMzU5
-NTlaMIHPMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIw
-EAYDVQQHEwlDYXBlIFRvd24xGjAYBgNVBAoTEVRoYXd0ZSBDb25zdWx0aW5n
-MSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMSMw
-IQYDVQQDExpUaGF3dGUgUGVyc29uYWwgUHJlbWl1bSBDQTEqMCgGCSqGSIb3
-DQEJARYbcGVyc29uYWwtcHJlbWl1bUB0aGF3dGUuY29tMIGfMA0GCSqGSIb3
-DQEBAQUAA4GNADCBiQKBgQDJZtn4B0TPuYwu8KHvE0VsBd/eJxZRNkERbGw7
-7f4QfRKe5ZtCmv5gMcNmt3M6SK5O0DI3lIi1DbbZ8/JE2dWIEt12TfIa/G8j
-Hnrx2JhFTgcQ7xZC0EN1bUre4qrJMf8fAHB8Zs8QJQi6+u4A6UYDZicRFTuq
-W/KY3TZCstqIdQIDAQABoxMwETAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3
-DQEBBAUAA4GBAGk2ifc0KjNyL2071CKyuG+axTZmDhs8obF1Wub9NdP4qPIH
-b4Vnjt4rueIXsDqg8A6iAJrf8xQVbrvIhVqYgPn/vnQdPfP+MCXRNzRn+qVx
-eTBhKXLA4CxM+1bkOqhv5TJZUtt1KFBZDPgLGeSs2a+WjS9Q2wfD6h+rM+D1
-KzGJ
------END CERTIFICATE-----
-
-Thawte_Premium_Server_CA
------BEGIN CERTIFICATE-----
-MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMC
-WkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3du
-MR0wGwYDVQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2Vy
-dGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhhd3Rl
-IFByZW1pdW0gU2VydmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNl
-cnZlckB0aGF3dGUuY29tMB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1
-OVowgc4xCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQ
-BgNVBAcTCUNhcGUgVG93bjEdMBsGA1UEChMUVGhhd3RlIENvbnN1bHRpbmcg
-Y2MxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNpb24x
-ITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNlcnZlciBDQTEoMCYGCSqGSIb3
-DQEJARYZcHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNvbTCBnzANBgkqhkiG9w0B
-AQEFAAOBjQAwgYkCgYEA0jY2aovXwlue2oFBYo847kkEVdbQ7xwblRZH7xhI
-NTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIhUdib0GfQug2SBhRz1JPL
-lyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMRuHM/qgeN
-9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B
-AQQFAAOBgQAmSCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUI
-hfzJATj/Tb7yFkJD57taRvvBxhEf8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZ
-a4JMpAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7tUCemDaYj+bvLpgcU
-Qg==
------END CERTIFICATE-----
-
-Thawte_Server_CA
------BEGIN CERTIFICATE-----
-MIIDEzCCAnygAwIBAgIBATANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMC
-WkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3du
-MR0wGwYDVQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2Vy
-dGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3Rl
-IFNlcnZlciBDQTEmMCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0
-ZS5jb20wHhcNOTYwODAxMDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBxDELMAkG
-A1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2Fw
-ZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UE
-CxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UEAxMQ
-VGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRz
-QHRoYXd0ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANOkUG7I
-/1Zr5s9dtuoMaHVHoqrC2oQl/Kj0R1HahbUgdJSGHg91yekIYfUGbTBuFRkC
-6VLAYttNmZ7iagxEOM3+vuNkCXDF/rFrKbYvScg71CcEJRCXL+eQbcAoQpnX
-TEPew/UhbVSfXcNY4cDk2VuwuNy0e982OsK1ZiIS1ocNAgMBAAGjEzARMA8G
-A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAB/pMaVz7lcxG7oWD
-TSEwjsrZqG9JGubaUeNgcGyEYRGhGshIPllDfU+VPaGLtwtimHp1it2ITk6e
-QNuozDJ0uW8NxuOzRAvZim+aKZuZGCg70eNAKJpaPNW15yAbi8qkq43pUdni
-TCxZqdq5snUb9kLy78fyGPmJvKP/iiMucEc=
------END CERTIFICATE-----
-
-Thawte_Time_Stamping_CA
------BEGIN CERTIFICATE-----
-MIICoTCCAgqgAwIBAgIBADANBgkqhkiG9w0BAQQFADCBizELMAkGA1UEBhMC
-WkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTEUMBIGA1UEBxMLRHVyYmFudmls
-bGUxDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUVGhhd3RlIENlcnRpZmlj
-YXRpb24xHzAdBgNVBAMTFlRoYXd0ZSBUaW1lc3RhbXBpbmcgQ0EwHhcNOTcw
-MTAxMDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBizELMAkGA1UEBhMCWkExFTAT
-BgNVBAgTDFdlc3Rlcm4gQ2FwZTEUMBIGA1UEBxMLRHVyYmFudmlsbGUxDzAN
-BgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUVGhhd3RlIENlcnRpZmljYXRpb24x
-HzAdBgNVBAMTFlRoYXd0ZSBUaW1lc3RhbXBpbmcgQ0EwgZ8wDQYJKoZIhvcN
-AQEBBQADgY0AMIGJAoGBANYrWHhhRYZT6jR7UZztsOYuGA7+4F+oJ9O0yeB8
-WU4WDnNUYMF/9p8u6TqFJBU820cEY8OexJQaWt9MevPZQx08EHp5JduQ/vBR
-5zDWQQD9nyjfeb6Uu522FOMjhdepQeBMpHmwKxqL8vg7ij5FrHGSALSQQZj7
-X+36ty6K+Ig3AgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcN
-AQEEBQADgYEAZ9viwuaHPUCDhjc1fR/OmsMMZiCouqoEiYbC9RAIDb/LogWK
-0E02PvTX72nGXuSwlG9KuefeW4i2e9vjJ+V2w/A1wcu1J5szedyQpgCed/r8
-zSeUQhac0xxo7L9c3eWpexAKMnRUEzGLhQOEkbdYATAUOK8oyvyxUBkZCayJ
-SdM=
------END CERTIFICATE-----
-
-UTN_DATACorp_SGC_Root_CA
------BEGIN CERTIFICATE-----
-MIIEXjCCA0agAwIBAgIQRL4Mi1AAIbQR0ypoBqmtaTANBgkqhkiG9w0BAQUF
-ADCBkzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0
-IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEw
-HwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xGzAZBgNVBAMTElVU
-TiAtIERBVEFDb3JwIFNHQzAeFw05OTA2MjQxODU3MjFaFw0xOTA2MjQxOTA2
-MzBaMIGTMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVVQxFzAVBgNVBAcTDlNh
-bHQgTGFrZSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsx
-ITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRydXN0LmNvbTEbMBkGA1UEAxMS
-VVROIC0gREFUQUNvcnAgU0dDMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
-CgKCAQEA3+5YEKIrblXEjr8uRgnn4AgPLit6E5Qbvfa2gI5lBZMAHryv4g+O
-GQ0SR+ysraP6LnD43m77VkIVni5c7yPeIbkFdicZD0/Ww5y0vpQZY/KmEQrr
-U0icvvIpOxboGqBMpsn0GFlowHDyUwDAXlCCpVZvNvlK4ESGoE1O1kduSUrL
-Z9emxAW5jh70/P/N5zbgnAVssjMiFdC04MwXwLLA9P4yPykqlXvY8qdOD1R8
-oQ2AswkDwf9c3V6aPryuvEeKaq5xyh+xKrhfQgUL7EYw0XILyulWbfXv33i+
-Ybqypa4ETLyorGkVl73v67SMvzX41MPRKA5cOp9wGDMgd8SirwIDAQABo4Gr
-MIGoMAsGA1UdDwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRT
-MtGzz3/64PGgXYVOktKeRR20TzA9BgNVHR8ENjA0MDKgMKAuhixodHRwOi8v
-Y3JsLnVzZXJ0cnVzdC5jb20vVVROLURBVEFDb3JwU0dDLmNybDAqBgNVHSUE
-IzAhBggrBgEFBQcDAQYKKwYBBAGCNwoDAwYJYIZIAYb4QgQBMA0GCSqGSIb3
-DQEBBQUAA4IBAQAnNZcAiosovcYzMB4p/OL31ZjUQLtgyr+rFywJNn9Q+kHc
-rpY6CiM+iVnJowftGzet/Hy+UUla3joKVAgWRcKZsYfNjGjgaQPpxE6YsjuM
-FrMOoAyYUJuTqXAJyCyjj98C5OBxOvG0I3KgqgHf35g+FFCgMSa9KOlaMCZ1
-+XtgHI3zzVAmbQQnmt/VDUVHKWss5nbZqSl9Mt3JNjy9rjXxEZ4du5A/EkdO
-jtd+D2JzHVImOBwYSf0wdJrE5SIv2MCN7ZF6TACPcn9d2t0bi0Vr591pl6jF
-VkwPDPafepE39peC4N1xaf92P2BNPM/3mfnGV/TJVTl4uix5yaaIK/QI
------END CERTIFICATE-----
-
-UTN_USERFirst_Email_Root_CA
------BEGIN CERTIFICATE-----
-MIIEojCCA4qgAwIBAgIQRL4Mi1AAJLQR0zYlJWfJiTANBgkqhkiG9w0BAQUF
-ADCBrjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0
-IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEw
-HwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xNjA0BgNVBAMTLVVU
-Ti1VU0VSRmlyc3QtQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBFbWFpbDAe
-Fw05OTA3MDkxNzI4NTBaFw0xOTA3MDkxNzM2NThaMIGuMQswCQYDVQQGEwJV
-UzELMAkGA1UECBMCVVQxFzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYD
-VQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93
-d3cudXNlcnRydXN0LmNvbTE2MDQGA1UEAxMtVVROLVVTRVJGaXJzdC1DbGll
-bnQgQXV0aGVudGljYXRpb24gYW5kIEVtYWlsMIIBIjANBgkqhkiG9w0BAQEF
-AAOCAQ8AMIIBCgKCAQEAsjmFpPJ9q0E7YkY3rs3BYHW8OWX5ShpHornMSMxq
-mNVNNRm5pELlzkniii8efNIxB8dOtINknS4p1aJkxIW9hVE1eaROaJB7HHqk
-kqgX8pgV8pPMyaQylbsMTzC9mKALi+VuG6JG+ni8om+rWV6lL8/K2m2qL+us
-obNqqrcuZzWLeeEeaYji5kbNoKXqvgvOdjp6Dpvq/NonWz1zHyLmSGHGTPNp
-saguG7bUMSAsvIKKjqQOpdeJQ/wWWq8dcdcRWdq6hw2v+vPhwvCkxWeM1tZU
-Ot4KpLoDd7NlyP0e03RiqhjKaJMeoYV+9Udly/hNVyh00jT/MLbu9mIwFIws
-6wIDAQABo4G5MIG2MAsGA1UdDwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0G
-A1UdDgQWBBSJgmd9xJ0mcABLtFBIfN49rgRufTBYBgNVHR8EUTBPME2gS6BJ
-hkdodHRwOi8vY3JsLnVzZXJ0cnVzdC5jb20vVVROLVVTRVJGaXJzdC1DbGll
-bnRBdXRoZW50aWNhdGlvbmFuZEVtYWlsLmNybDAdBgNVHSUEFjAUBggrBgEF
-BQcDAgYIKwYBBQUHAwQwDQYJKoZIhvcNAQEFBQADggEBALFtYV2mGn98q0rk
-MPxTbyUkxsrt4jFcKw7u7mFVbwQ+zznexRtJlOTrIEy05p5QLnLZjfWqo7NK
-2lYcYJeA3IKirUq9iiv/Cwm0xtcgBEXkzYABurorbs6q15L+5K/r9CYdFip/
-bDCVNy8zEqx/3cfREYxRmLLQo5HQrfafnoOTHh1CuEava2bwm3/q4wMC5QJR
-warVNZ1yQAOJujEdxRBoUp7fooXFXAimeOZTT7Hot9MUnpOmw2TjrH5xzbyf
-6QMbzPvprDHBr3wVdAKZw7JHpsIyYdfHb0gkUSeh1YdV8nuPmD0Wnu51tvjQ
-jvLzxq4oW6fw8zYX/MMF08oDSlQ=
------END CERTIFICATE-----
-
-UTN_USERFirst_Hardware_Root_CA
------BEGIN CERTIFICATE-----
-MIIEdDCCA1ygAwIBAgIQRL4Mi1AAJLQR0zYq/mUK/TANBgkqhkiG9w0BAQUF
-ADCBlzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0
-IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEw
-HwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVU
-Ti1VU0VSRmlyc3QtSGFyZHdhcmUwHhcNOTkwNzA5MTgxMDQyWhcNMTkwNzA5
-MTgxOTIyWjCBlzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQH
-Ew5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3
-b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNV
-BAMTFlVUTi1VU0VSRmlyc3QtSGFyZHdhcmUwggEiMA0GCSqGSIb3DQEBAQUA
-A4IBDwAwggEKAoIBAQCx98M4P7Sof885glFn0G2f0v9Y8+efK+wNiVSZuTiZ
-FvfgIXlIwrthdBKWHTxqctU8EGc6Oe0rE81m65UJM6Rsl7HoxuzBdXmcRl6N
-q9Bq/bkqVRcQVLMZ8Jr28bFdtqdt++BxF2uiiPsA3/4aMXcMmgF6sTLjKwEH
-OG7DpV4jvEWbe1DByTCP2+UretNb+zNAHqDVmBe8i4fDidNdoI6yqqr2jmmI
-BsX6iSHzCJ1pLgkzmykNRg+MzEk0sGlRvfkGzWitZky8PqxhvQqIDsjfPe58
-BEydCl5rkdbux+0ojatNh4lz0G6k0B4WixThdkQDf2Os5M1JnMWS9KsyoUhb
-AgMBAAGjgbkwgbYwCwYDVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAMBAf8wHQYD
-VR0OBBYEFKFyXyYbKJhDlV0HN9WFlp1L0sNFMEQGA1UdHwQ9MDswOaA3oDWG
-M2h0dHA6Ly9jcmwudXNlcnRydXN0LmNvbS9VVE4tVVNFUkZpcnN0LUhhcmR3
-YXJlLmNybDAxBgNVHSUEKjAoBggrBgEFBQcDAQYIKwYBBQUHAwUGCCsGAQUF
-BwMGBggrBgEFBQcDBzANBgkqhkiG9w0BAQUFAAOCAQEARxkP3nTGmZev/K0o
-XnWO6y1n7k57K9cM//bey1WiCuFMVGWTYGufEpytXoMs61quwOQt9ABjHbjA
-bPLPSbtNk28GpgoiskliCE7/yMgUsogWXecB5BKV5UU0s4tpvc+0hY91UZ59
-Ojg6FEgSxvunOxqNDYJAB+gECJChicsZUN/KHAG8HQQZexB2lzvukJDKxA4f
-Fm517zP4029bHpbj4HR3dHuKom4t3XbWOTCC8KucUvIqx69JXn7HaOWCgchq
-J/kniCrVWFCVH/A7HFe7fRQ5YiuayZSSKqMiDP+JJn1fIytH1xUdqWqeUQ0q
-UZ6B+dQ7XnASfxAynB67nfhmqA==
------END CERTIFICATE-----
-
-UTN-USER_First-Network_Applications
------BEGIN CERTIFICATE-----
-MIIEZDCCA0ygAwIBAgIQRL4Mi1AAJLQR0zYwS8AzdzANBgkqhkiG9w0BAQUF
-ADCBozELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0
-IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEw
-HwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xKzApBgNVBAMTIlVU
-Ti1VU0VSRmlyc3QtTmV0d29yayBBcHBsaWNhdGlvbnMwHhcNOTkwNzA5MTg0
-ODM5WhcNMTkwNzA5MTg1NzQ5WjCBozELMAkGA1UEBhMCVVMxCzAJBgNVBAgT
-AlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVT
-RVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVz
-dC5jb20xKzApBgNVBAMTIlVUTi1VU0VSRmlyc3QtTmV0d29yayBBcHBsaWNh
-dGlvbnMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCz+5Gh5DZV
-hawGNFugmliy+LUPBXeDrjKxdpJo7CNKyXY/45y2N3kDuatpjQclthln5LAb
-GHNhSuh+zdMvZOOmfAz6F4CjDUeJT1FxL+78P/m4FoCHiZMlIJpDgmkkdihZ
-NaEdwH+DBmQWICzTSaSFtMBhf1EI+GgVkYDLpdXuOzr0hAReYFmnjDRy7rh4
-xdE7EkpvfmUnuaRVxblvQ6TFHSyZwFKkeEwVs0CYCGtDxgGwenv1axwiP8vv
-/6jQOkt2FZ7S0cYu49tXGzKiuG/ohqY/cKvlcJKrRB5AUPuco2LkbG6gyN7i
-gEL66S/ozjIEj3yNtxyjNTwV3Z7DrpelAgMBAAGjgZEwgY4wCwYDVR0PBAQD
-AgHGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFPqGydvguul49Uuo1hXf
-8NPhahQ8ME8GA1UdHwRIMEYwRKBCoECGPmh0dHA6Ly9jcmwudXNlcnRydXN0
-LmNvbS9VVE4tVVNFUkZpcnN0LU5ldHdvcmtBcHBsaWNhdGlvbnMuY3JsMA0G
-CSqGSIb3DQEBBQUAA4IBAQCk8yXM0dSRgyLQzDKrm5ZONJFUICU0YV8qAhXh
-i6r/fWRRzwr/vH3YIWp4yy9Rb/hCHTO967V7lMPDqaAt39EpHx3+jz+7qEUq
-f9FuVSTiuwL7MT++6LzsQCv4AdRWOOTKRIK1YSAhZ2X28AvnNPilwpyjXEAf
-hZOVBt5P1CeptqX8Fs1zMT+4ZSfP1FMa8Kxun08FDAOBp4QpxFq9ZFdyrTvP
-NximmMatBrTcCKME1SmklpoSZ0qMYEWd8SOasACcaLWYUNPvji6SZbFIPiG+
-FTAqDbUMo2s/rn9X9R+WfN9v3YIwLGUbQErNaLly7HF27FSOH4UMAWr6pjis
-H8SE
------END CERTIFICATE-----
-
-UTN_USERFirst_Object_Root_CA
------BEGIN CERTIFICATE-----
-MIIEZjCCA06gAwIBAgIQRL4Mi1AAJLQR0zYt4LNfGzANBgkqhkiG9w0BAQUF
-ADCBlTELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0
-IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEw
-HwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHTAbBgNVBAMTFFVU
-Ti1VU0VSRmlyc3QtT2JqZWN0MB4XDTk5MDcwOTE4MzEyMFoXDTE5MDcwOTE4
-NDAzNlowgZUxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJVVDEXMBUGA1UEBxMO
-U2FsdCBMYWtlIENpdHkxHjAcBgNVBAoTFVRoZSBVU0VSVFJVU1QgTmV0d29y
-azEhMB8GA1UECxMYaHR0cDovL3d3dy51c2VydHJ1c3QuY29tMR0wGwYDVQQD
-ExRVVE4tVVNFUkZpcnN0LU9iamVjdDCCASIwDQYJKoZIhvcNAQEBBQADggEP
-ADCCAQoCggEBAM6qgT+jo2F4qjEAVZURnicPHxzfOpuCaDDASmEd8S8O+r55
-96Uj71VRloTN2+O5bj4x2AogZ8f02b+U60cEPgLOKqJdhwQJ9jCdGIqXsqoc
-/EHSoTbL+z2RuufZcDX65OeQw5ujm9M89RKZd7G3CeBo5hy485RjiGpq/gt2
-yb70IuRnuasaXnfBhQfdDWy/7gbHd2pBnqcP1/vulBe3/IW+pKvEHDHd17bR
-5PDv3xaPslKT16HUiaEHLr/hARJCHhrh2JU022R5KP+6LhHC5ehbkkj7RwvC
-bNqtMoNB86XlQXD9ZZBt+vpRxPm9lisZBCzTbafc8H9vg2XiaquHhnUCAwEA
-AaOBrzCBrDALBgNVHQ8EBAMCAcYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E
-FgQU2u1kdBScFDyr3ZmpvVsoTYs8ydgwQgYDVR0fBDswOTA3oDWgM4YxaHR0
-cDovL2NybC51c2VydHJ1c3QuY29tL1VUTi1VU0VSRmlyc3QtT2JqZWN0LmNy
-bDApBgNVHSUEIjAgBggrBgEFBQcDAwYIKwYBBQUHAwgGCisGAQQBgjcKAwQw
-DQYJKoZIhvcNAQEFBQADggEBAAgfUrE3RHjb/c652pWWmKpVZIC1WkDdIaXF
-wfNfLEzIR1pp6ujwNTX00CXzyKakh0q9G7FzCL3Uw8q2NbtZhncxzaeAFK4T
-7/yxSPlrJSUtUbYsbUXBmMiKVl0+7kNOPmsnjtA6S4ULX9Ptaqd1y9Fahy85
-dRNacrACgZ++8A+EVCBibGnU4U3GDZlDAQ0Slox4nb9QorFEqmrPF3rPbw/U
-+CRVX/A0FklmPlBGyWNxODFiuGK581OtbLUrohKqGU8J2l7nk8aOFAj+8DCA
-GKCGhU3IfdeLA/5u1fedFqySLKAj5ZyRUh+U3xeUc8OzwcFxBSAAeL0TUh2o
-Ps0AH8g=
------END CERTIFICATE-----
-
-ValiCert_Class_1_VA
------BEGIN CERTIFICATE-----
-MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlD
-ZXJ0IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIElu
-Yy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDEgUG9saWN5IFZhbGlkYXRp
-b24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNv
-bS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYy
-NTIyMjM0OFoXDTE5MDYyNTIyMjM0OFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0
-IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4x
-NTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDEgUG9saWN5IFZhbGlkYXRpb24g
-QXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8x
-IDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3
-DQEBAQUAA4GNADCBiQKBgQDYWYJ6ibiWuqYvaG9YLqdUHAZu9OqNSLwxlBfw
-8068srg1knaw0KWlAdcAAxIiGQj4/xEjm84H9b9pGib+TunRf50sQB1ZaG6m
-+FiwnRqP0z/x3BkGgagO4DrdyFNFCQbmD3DD+kCmDuJWBQ8YTfwggtFzVXSN
-dnKgHZ0dwN0/cQIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFBoPUn0LBwGlN+V
-YH+Wexf+T3GtZMjdd9LvWVXoP+iOBSoh8gfStadS/pyxtuJbdxdA6nLWI8so
-gTLDAHkY7FkXicnGah5xyf23dKUlRWnFSKsZ4UWKJWsZ7uW7EvV/96aNUcPw
-nXS3qT6gpf+2SQMT2iLM7XGCK5nPOrf1LXLI
------END CERTIFICATE-----
-
-ValiCert_Class_2_VA
------BEGIN CERTIFICATE-----
-MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlD
-ZXJ0IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIElu
-Yy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDIgUG9saWN5IFZhbGlkYXRp
-b24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNv
-bS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYy
-NjAwMTk1NFoXDTE5MDYyNjAwMTk1NFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0
-IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4x
-NTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDIgUG9saWN5IFZhbGlkYXRpb24g
-QXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8x
-IDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3
-DQEBAQUAA4GNADCBiQKBgQDOOnHK5avIWZJV16vYdA757tn2VUdZZUcOBVXc
-65g2PFxTXdMwzzjsvUGJ7SVCCSRrCl6zfN1SLUzm1NZ9WlmpZdRJEy0kTRxQ
-b7XBhVQ7/nHk01xC+YDgkRoKWzk2Z/M/VXwbP7RfZHM047QSv4dk+NoS/zcn
-wbNDu+97bi5p9wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADt/UG9vUJSZSWI4
-OB9L+KXIPqeCgfYrx+jFzug6EILLGACOTb2oWH+heQC1u+mNr0HZDzTuIYEZ
-oDJJKPTEjlbVUjP9UNV+mWwD5MlM/Mtsq2azSiGM5bUMMj4QssxsodyamEwC
-W/POuZ6lcg5Ktz885hZo+L7tdEy8W9ViH0Pd
------END CERTIFICATE-----
-
-Verisign_Class_1_Public_Primary_Certification_Authority
------BEGIN CERTIFICATE-----
-MIICPTCCAaYCEQDNun9W8N/kvFT+IqyzcqpVMA0GCSqGSIb3DQEBAgUAMF8x
-CzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE3MDUGA1UE
-CxMuQ2xhc3MgMSBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv
-cml0eTAeFw05NjAxMjkwMDAwMDBaFw0yODA4MDEyMzU5NTlaMF8xCzAJBgNV
-BAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE3MDUGA1UECxMuQ2xh
-c3MgMSBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCB
-nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA5Rm/baNWYS2ZSHH2Z965jeu3
-noaACpEO+jglr0aIguVzqKCbJF0NH8xlbgyw0FaEGIeaBpsQoXPftFg5a27B
-9hXVqKg/qhIGjTGsf7A01480Z4gJzRQR4k5FVmkfeAKA2txHkSm7NsljXMXg
-1y2He6G3MrB7MLoqLzGq7qNn2tsCAwEAATANBgkqhkiG9w0BAQIFAAOBgQBM
-P7iLxmjf7kMzDl3ppssHhE16M/+SG/Q2rdiVIjZoEWx8QszznC7EBz8UsA9P
-/5CSdvnivErpj82ggAr3xSnxgiJduLHdgSOjeyUVRjB5FvjqBUuUfx3CHMjj
-t/QQQDwTw18fU+hI5Ia0e6E1sHslurjTjqs/OJ0ANACY89FxlA==
------END CERTIFICATE-----
-
-Verisign_Class_1_Public_Primary_Certification_Authority_-_G2
------BEGIN CERTIFICATE-----
-MIIDAjCCAmsCEEzH6qqYPnHTkxD4PTqJkZIwDQYJKoZIhvcNAQEFBQAwgcEx
-CzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UE
-CxMzQ2xhc3MgMSBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv
-cml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAt
-IEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBU
-cnVzdCBOZXR3b3JrMB4XDTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVow
-gcExCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoG
-A1UECxMzQ2xhc3MgMSBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1
-dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5j
-LiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2ln
-biBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCq
-0Lq+Fi24g9TK0g+8djHKlNgdk4xWArzZbxpvUjZudVYKVdPfQ4chEWWKfo+9
-Id5rMj8bhDSVBZ1BNeuS65bdqlk/AVNtmU/t5eIqWpDBucSmFc/IReumXY6c
-PvBkJHalzasab7bYe1FhbqZ/h8jit+U03EGI6glAvnOSPWvndQIDAQABMA0G
-CSqGSIb3DQEBBQUAA4GBAKlPww3HZ74sy9mozS11534Vnjty637rXC0Jh9Zr
-bWB85a7FkCMMXErQr7Fd88e2CtvgFZMN3QO8x3aKtd1Pw5sTdbgBwObJW2ul
-uIncrKTdcu1OofdPvAbT6shkdHvClUGcZXNY8ZCaPGqxmMnEh7zPRW1F4m4i
-P/68DzFc6PLZ
------END CERTIFICATE-----
-
-Verisign_Class_1_Public_Primary_Certification_Authority_-_G3
------BEGIN CERTIFICATE-----
-MIIEGjCCAwICEQCLW3VWhFSFCwDPrzhIzrGkMA0GCSqGSIb3DQEBBQUAMIHK
-MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNV
-BAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5
-IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBD
-BgNVBAMTPFZlcmlTaWduIENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlm
-aWNhdGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3
-MTYyMzU5NTlaMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24s
-IEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNV
-BAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQg
-dXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDEgUHVibGljIFBy
-aW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZI
-hvcNAQEBBQADggEPADCCAQoCggEBAN2E1Lm0+afY8wR4nN493GwTFtl63SRR
-ZsDHJlkNrAYIwpTRMx/wgzUfbhvI3qpuFU5UJ+/EbRrsC+MO8ESlV8dAWB6j
-Rx9x7GD2bZTIGDnt/kIYVt/kTEkQeE4BdjVjEjbdZrwBBDajVWjVojYJrKsh
-JlQGrT/KFOCsyq0GHZXi+J3x4GD/wn91K0zM2v6HmSHquv4+VNfSWXjbPG7P
-oBMAGrgnoeS+Z5bKoMWznN3JdZ7rMJpfo83ZrngZPyPpXNspva1VyBtUjGP2
-6KbqxzcSXKMpHgLZ2x87tNcPVkeBFQRKr4Mn0cVYiMHd9qqnoxjaaKptEVHh
-v2Vrn5Z20T0CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAq2aN17O6x5q25lXQ
-BfGfMY1aqtmqRiYPce2lrVNWYgFHKkTp/j90CxObufRNG7LRX7K20ohcs5/N
-y9Sn2WCVhDr4wTcdYcrnsMXlkdpUpqwxga6X3s0IrLjAl4B/bnKk52kTlWUf
-xJM8/XmPBNQ+T+r3ns7NZ3xPZQL/kYVUc8f/NveGLezQXk//EZ9yBta4GvFM
-DSZl4kSAHsef493oCtrspSCAaWihT37ha88HQfqDjrw43bAuEbFrskLMmrz5
-SCJ5ShkPshw+IHTZasO+8ih4E1Z5T21Q6huwtVexN2ZYI/PcD98Kh8TvhgXV
-OBRgmaNL3gaWcSzy27YfpO8/7g==
------END CERTIFICATE-----
-
-Verisign_Class_1_Public_Primary_OCSP_Responder
------BEGIN CERTIFICATE-----
-MIIDnjCCAwegAwIBAgIQK2jUo0aexTsoCas4XX8nIDANBgkqhkiG9w0BAQUF
-ADBfMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xNzA1
-BgNVBAsTLkNsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBB
-dXRob3JpdHkwHhcNMDAwODA0MDAwMDAwWhcNMDQwODAzMjM1OTU5WjCBpzEX
-MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy
-dXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRlcm1zIG9mIHVzZSBhdCBodHRwczov
-L3d3dy52ZXJpc2lnbi5jb20vUlBBIChjKTAwMS4wLAYDVQQDEyVDbGFzcyAx
-IFB1YmxpYyBQcmltYXJ5IE9DU1AgUmVzcG9uZGVyMIGfMA0GCSqGSIb3DQEB
-AQUAA4GNADCBiQKBgQC57V56Ondfzl86UvzNZPdxtW9qlsZZklWUXS9bLsER
-6iaKy6eBPPZaRN56Ey/9WlHZezcmSsAnPwQDalbBgyzhb1upVFAkSsYuekyh
-WzdUJCExH6F4GHansXDaItBq/gdiQMb39pt9DAa4S8co5GYjhFHvRreT2IEz
-y+U2rMboBQIDAQABo4IBEDCCAQwwIAYDVR0RBBkwF6QVMBMxETAPBgNVBAMT
-CE9DU1AgMS0xMDEGA1UdHwQqMCgwJqAkoCKGIGh0dHA6Ly9jcmwudmVyaXNp
-Z24uY29tL3BjYTEuY3JsMBMGA1UdJQQMMAoGCCsGAQUFBwMJMEIGCCsGAQUF
-BwEBBDYwNDAyBggrBgEFBQcwAaYmFiRodHRwOi8vb2NzcC52ZXJpc2lnbi5j
-b20vb2NzcC9zdGF0dXMwRAYDVR0gBD0wOzA5BgtghkgBhvhFAQcBATAqMCgG
-CCsGAQUFBwIBFhxodHRwczovL3d3dy52ZXJpc2lnbi5jb20vUlBBMAkGA1Ud
-EwQCMAAwCwYDVR0PBAQDAgeAMA0GCSqGSIb3DQEBBQUAA4GBAHCQ3bjkvlMX
-fH8C6dX3i5mTMWCNfuZgayTvYKzSzpHegG0JpNO4OOVEynJeDS3Bd5y9LAN4
-KY2kpXeH9fErJq3MB2w6VFoo4AnzTQoEytRYaQuns/XdAaXn3PAfusFdkI2z
-6k/BEVmXarIrE7HarZehs7GgIFvKMquNzxPwHynD
------END CERTIFICATE-----
-
-Verisign_Class_2_Public_Primary_Certification_Authority
------BEGIN CERTIFICATE-----
-MIICPDCCAaUCEC0b/EoXjaOR6+f/9YtFvgswDQYJKoZIhvcNAQECBQAwXzEL
-MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQL
-Ey5DbGFzcyAyIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y
-aXR5MB4XDTk2MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVowXzELMAkGA1UE
-BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz
-cyAyIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGf
-MA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC2WoujDWojg4BrzzmH9CETMwZM
-JaLtVRKXxaeAufqDwSCg+i8VDXyhYGt+eSz6Bg86rvYbb7HS/y8oUl+DfUvE
-erf4Zh+AVPy3wo5ZShRXRtGak75BkQO7FYCTXOvnzAhsPz6zSvz/S2wj1VCC
-JkQZjiPDceoZJEcEnnW/yKYAHwIDAQABMA0GCSqGSIb3DQEBAgUAA4GBAIob
-K/o5wXTXXtgZZKJYSi034DNHD6zt96rbHuSLBlxgJ8pFUs4W7z8GZOeUaHxg
-MxURaa+dYo2jA1Rrpr7l7gUYYAS/QoD90KioHgE796Ncr6Pc5iaAIzy4RHT3
-Cq5Ji2F4zCS/iIqnDupzGUH9TQPwiNHleI2lKk/2lw0Xd8rY
------END CERTIFICATE-----
-
-Verisign_Class_2_Public_Primary_Certification_Authority_-_G2
------BEGIN CERTIFICATE-----
-MIIDAzCCAmwCEQC5L2DMiJ+hekYJuFtwbIqvMA0GCSqGSIb3DQEBBQUAMIHB
-MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNV
-BAsTM0NsYXNzIDIgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRo
-b3JpdHkgLSBHMjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNpZ24sIEluYy4g
-LSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNpZ24g
-VHJ1c3QgTmV0d29yazAeFw05ODA1MTgwMDAwMDBaFw0yODA4MDEyMzU5NTla
-MIHBMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6
-BgNVBAsTM0NsYXNzIDIgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBB
-dXRob3JpdHkgLSBHMjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNpZ24sIElu
-Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNp
-Z24gVHJ1c3QgTmV0d29yazCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
-p4gBIXQs5xoD8JjhlzwPIQjxnNuX6Zr8wgQGE75fUsjMHiwSViy4AWkszJkf
-rbCWrnkE8hM5wXuYuggs6MKEEyyqaekJ9MepAqRCwiNPStjwDqL7MWzJ5m+Z
-Jwf15vRMeJ5t60aG+rmGyVTyssSv1EYcWskVMP8NbPUtDm3Of3cCAwEAATAN
-BgkqhkiG9w0BAQUFAAOBgQByLvl/0fFx+8Se9sVeUYpAmLho+Jscg9jinb3/
-7aHmZuovCfTK1+qlK5X2JGCGTUQug6XELaDTrnhpb3LabK4I8GOSN+a7xDAX
-rXfMSTWqz9iP0b63GJZHc2pUIjRkLbYWm1lbtFFZOrMLFPQS32eg9K0yZF6x
-RnInjBJ7xUS0rg==
------END CERTIFICATE-----
-
-Verisign_Class_2_Public_Primary_Certification_Authority_-_G3
------BEGIN CERTIFICATE-----
-MIIEGTCCAwECEGFwy0mMX5hFKeewptlQW3owDQYJKoZIhvcNAQEFBQAwgcox
-CzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UE
-CxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkg
-VmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMG
-A1UEAxM8VmVyaVNpZ24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZp
-Y2F0aW9uIEF1dGhvcml0eSAtIEczMB4XDTk5MTAwMTAwMDAwMFoXDTM2MDcx
-NjIzNTk1OVowgcoxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwg
-SW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE6MDgGA1UE
-CxMxKGMpIDE5OTkgVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1
-c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24gQ2xhc3MgMiBQdWJsaWMgUHJp
-bWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEczMIIBIjANBgkqhkiG
-9w0BAQEFAAOCAQ8AMIIBCgKCAQEArwoNwtUs22e5LeWUJ92lvuCwTY+zYVY8
-1nzD9M0+hsuiiOLh2KRpxbXiv8GmR1BeRjmL1Za6tW8UvxDOJxOeBUebMXoT
-2B/Z0wI3i60sR/COgQanDTAM6/c8DyAd3HJG7qUCyFvDyVZpTMUYwZF7C9UT
-AJu878NIPkZgIIUq1ZC2zYugzDLdt/1AVbJQHFauzI13TccgTacxdu9okoqQ
-HgiBVrKtaaNS0MscxCM9H5n+TOgWY47GCI72MfbS+uV23bUckqNJzc0BzWjN
-qWm6o+sdDZykIKbBoMXRRkwXbdKsZj+WjOCE1Db/IlnF+RFgqF8EffIa9iVC
-YQ/ESrg+iQIDAQABMA0GCSqGSIb3DQEBBQUAA4IBAQA0JhU8wI1NQ0kdvekh
-ktdmnLfexbjQ5F1fdiLAJvmEOjr5jLX77GDx6M4EsMjdpwOPMPOY36TmpDHf
-0xwLRtxyID+u7gU8pDM/CzmscHhzS5kr3zDCVLCoO1Wh/hYozUK9dG6A2ydE
-p85EXdQbkJgNHkKUsQAsBNB0owIFImNjzYO1+8FtYmtpdf1dcEG59b98377B
-MnMiIYtYgXsVkXq642RIsH/7NiXaldDxJBQX3RiAa0YjOVT1jmIJBB2UkKab
-5iXiQkWquJCtvgiPqQtCGJTPcjnhsUPgKM+351psE2tJs//jGHyJizNdrDPX
-p/naOlXJWBD5qu9ats9LS98q
------END CERTIFICATE-----
-
-Verisign_Class_2_Public_Primary_OCSP_Responder
------BEGIN CERTIFICATE-----
-MIIDnjCCAwegAwIBAgIQCUYX5h3Y1BygDKBi6HmKpzANBgkqhkiG9w0BAQUF
-ADBfMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xNzA1
-BgNVBAsTLkNsYXNzIDIgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBB
-dXRob3JpdHkwHhcNMDAwODAxMDAwMDAwWhcNMDQwNzMxMjM1OTU5WjCBpzEX
-MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy
-dXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRlcm1zIG9mIHVzZSBhdCBodHRwczov
-L3d3dy52ZXJpc2lnbi5jb20vUlBBIChjKTAwMS4wLAYDVQQDEyVDbGFzcyAy
-IFB1YmxpYyBQcmltYXJ5IE9DU1AgUmVzcG9uZGVyMIGfMA0GCSqGSIb3DQEB
-AQUAA4GNADCBiQKBgQDQymMxYX9ENHwFfQs9apDLeUt3Cj9LxyPlwGItfpx+
-PoiHkdCs6E1Jh6KWkIrdBKUCP4yb6Yn+YqDiWr3I3bR45qVCkwhnAcAgTddc
-9F3as+M3plIaLExlTYqH2aij8UlUuzxcgFFoxvtJ/wtVqxXd+5rBuR10DbKM
-RF2J/J/5gwIDAQABo4IBEDCCAQwwIAYDVR0RBBkwF6QVMBMxETAPBgNVBAMT
-CE9DU1AgMS0yMDEGA1UdHwQqMCgwJqAkoCKGIGh0dHA6Ly9jcmwudmVyaXNp
-Z24uY29tL3BjYTIuY3JsMBMGA1UdJQQMMAoGCCsGAQUFBwMJMEIGCCsGAQUF
-BwEBBDYwNDAyBggrBgEFBQcwAaYmFiRodHRwOi8vb2NzcC52ZXJpc2lnbi5j
-b20vb2NzcC9zdGF0dXMwRAYDVR0gBD0wOzA5BgtghkgBhvhFAQcBATAqMCgG
-CCsGAQUFBwIBFhxodHRwczovL3d3dy52ZXJpc2lnbi5jb20vUlBBMAkGA1Ud
-EwQCMAAwCwYDVR0PBAQDAgeAMA0GCSqGSIb3DQEBBQUAA4GBAB99CW4kRnUE
-nPMmm+M5bhfvvL2iG9IChIar0ECXLMRDiDcZayKoA3FQnSDcNmAgmnMtc1Vs
-WJsswrQ0LHozQsqR2elDr88e4PXEeqs/cmMeqTfhWzuIsxOGgpBXy1f/9Fa+
-It3jl6jhvCJDwt1N2/aBnpIUnjkPE1TegtjAXjSN
------END CERTIFICATE-----
-
-Verisign_Class_3_Public_Primary_Certification_Authority
------BEGIN CERTIFICATE-----
-MIICPDCCAaUCEHC65B0Q2Sk0tjjKewPMur8wDQYJKoZIhvcNAQECBQAwXzEL
-MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQL
-Ey5DbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y
-aXR5MB4XDTk2MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVowXzELMAkGA1UE
-BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz
-cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGf
-MA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69q
-RUCPhAwL0TPZ2RHP7gJYHyX3KqhEBarsAx94f56TuZoAqiN91qyFomNFx3In
-zPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/isI19wKTakyYbnsZogy1Olhec9vn2a
-/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0GCSqGSIb3DQEBAgUAA4GBALtM
-EivPLCYATxQT3ab7/AoRhIzzKBxnki98tsX63/Dolbwdj2wsqFHMc9ikwFPw
-TtYmwHYBV4GSXiHx0bH/59AhWM1pF+NEHJwZRDmJXNycAA9WjQKZ7aKQRUzk
-uxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2OmufTqj/ZA1k
------END CERTIFICATE-----
-
-Verisign_Class_3_Public_Primary_Certification_Authority_-_G2
------BEGIN CERTIFICATE-----
-MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcEx
-CzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UE
-CxMzQ2xhc3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv
-cml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAt
-IEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBU
-cnVzdCBOZXR3b3JrMB4XDTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVow
-gcExCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoG
-A1UECxMzQ2xhc3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1
-dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5j
-LiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2ln
-biBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDM
-XtERXVxp0KvTuWpMmR9ZmDCOFoUgRm1HP9SFIIThbbP4pO0M8RcPO/mn+SXX
-wc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71lSk8UOg013gfqLptQ5GV
-j0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwIDAQABMA0G
-CSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSkU01U
-bSuvDV1Ai2TT1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7i
-F6YM40AIOw7n60RzKprxaZLvcRTDOaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo
-1KpYoJ2daZH9
------END CERTIFICATE-----
-
-Verisign_Class_3_Public_Primary_Certification_Authority_-_G3
------BEGIN CERTIFICATE-----
-MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHK
-MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNV
-BAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5
-IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBD
-BgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlm
-aWNhdGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3
-MTYyMzU5NTlaMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24s
-IEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNV
-BAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQg
-dXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFBy
-aW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZI
-hvcNAQEBBQADggEPADCCAQoCggEBAMu6nFL8eB8aHm8bN3O9+MlrlBIwT/A2
-R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1EUGO+i2tKmFZpGcmTNDo
-vFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGukxUccLwg
-TS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBmCC+V
-k7+qRy+oRpfwEuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJ
-Xwzw3sJ2zq/3avL6QaaiMxTJ5Xpj055iN9WFZZ4O5lMkdBteHRJTW8cs54NJ
-OxWuimi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAERSWwauSCPc/L8my
-/uRan2Te2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5f
-j267Cz3qWhMeDGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoA
-Wii/gt/4uhMdUIaC/Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8S
-GhJouPtmmRQURVyu565pF4ErWjfJXir0xuKhXFSbplQAz/DxwceYMBo7Nhbb
-o27q/a2ywtrvAkcTisDxszGtTxzhT5yvDwyd93gN2PQ1VoDat20Xj50egWTh
-/sVFuq1ruQp6Tk9LhO5L8X3dEQ==
------END CERTIFICATE-----
-
-Verisign_Class_3_Public_Primary_OCSP_Responder
------BEGIN CERTIFICATE-----
-MIIDojCCAwugAwIBAgIQLpaev7ZibOx76XPM42zBhDANBgkqhkiG9w0BAQUF
-ADBfMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xNzA1
-BgNVBAsTLkNsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBB
-dXRob3JpdHkwHhcNMDAwODA0MDAwMDAwWhcNMDQwODAzMjM1OTU5WjCBpzEX
-MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy
-dXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRlcm1zIG9mIHVzZSBhdCBodHRwczov
-L3d3dy52ZXJpc2lnbi5jb20vUlBBIChjKTAwMS4wLAYDVQQDEyVDbGFzcyAz
-IFB1YmxpYyBQcmltYXJ5IE9DU1AgUmVzcG9uZGVyMIGfMA0GCSqGSIb3DQEB
-AQUAA4GNADCBiQKBgQDx5AgOg7t140jluNum8Lmr6Txix141W9ACVBHYydFW
-uXZLuat65s269gwE1n7WsAplrE454/H3LaMlOe+wi8++2wxdbnD0B81w9zrA
-PjUW7XiMQ8/CJi5H1oZ9nPG+1mcMIiWkymXmH3p4KC8/BdsEIb/hRWb+PLeC
-7Vq4FhW5VQIDAQABo4IBFDCCARAwIAYDVR0RBBkwF6QVMBMxETAPBgNVBAMT
-CE9DU1AgMS0zMDUGA1UdHwQuMCwwKqAooCaGJGh0dHA6Ly9jcmwudmVyaXNp
-Z24uY29tL3BjYTMuMS4xLmNybDATBgNVHSUEDDAKBggrBgEFBQcDCTBCBggr
-BgEFBQcBAQQ2MDQwMgYIKwYBBQUHMAGmJhYkaHR0cDovL29jc3AudmVyaXNp
-Z24uY29tL29jc3Avc3RhdHVzMEQGA1UdIAQ9MDswOQYLYIZIAYb4RQEHAQEw
-KjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL1JQQTAJ
-BgNVHRMEAjAAMAsGA1UdDwQEAwIHgDANBgkqhkiG9w0BAQUFAAOBgQAC9lNj
-wKke8tCLMzCPSJtMsFa0g3FKvtxQ2PW24AvbvXhP6c8JNNopSZ0Bc1qRkYJU
-LBMK03cjzzf8Y96n4/a3tWlFKEnDkdyqRxypiJksBSqNjYr6YuJatwAgXTnE
-KMLL/J6oia5bPY4S6jKy/OsU1wkVGsDNG9W1FU5B1ZbjTg==
------END CERTIFICATE-----
-
-Verisign_Class_4_Public_Primary_Certification_Authority_-_G2
------BEGIN CERTIFICATE-----
-MIIDAjCCAmsCEDKIjprS9esTR/h/xCA3JfgwDQYJKoZIhvcNAQEFBQAwgcEx
-CzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UE
-CxMzQ2xhc3MgNCBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv
-cml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAt
-IEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBU
-cnVzdCBOZXR3b3JrMB4XDTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVow
-gcExCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoG
-A1UECxMzQ2xhc3MgNCBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1
-dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5j
-LiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2ln
-biBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC6
-8OTP+cSuhVS5B1f5j8V/aBH4xBewRNzjMHPVKmIquNDMHO0oW369atyzkSTK
-QWI8/AIBvxwWMZQFl3Zuoq29YRdsTjCG8FE3KlDHqGKB3FtKqsGgtG7rL+VX
-xbErQHDbWk2hjh+9Ax/YA9SPTJlxvOKCzFjomDqG04Y48wApHwIDAQABMA0G
-CSqGSIb3DQEBBQUAA4GBAIWMEsGnuVAVess+rLhDityq3RS6iYF+ATwjcSGI
-L4LcY/oCRaxFWdcqWERbt5+BO5JoPeI3JPV7bI92NZYJqFmduc4jq3TWg/0y
-cyfYaT5DdPauxYma51N86Xv2S/PBZYPejYqcPIiNOVn8qj8ijaHBZlCBckzt
-ImRPT8qAkbYp
------END CERTIFICATE-----
-
-Verisign_Class_4_Public_Primary_Certification_Authority_-_G3
------BEGIN CERTIFICATE-----
-MIIEGjCCAwICEQDsoKeLbnVqAc/EfMwvlF7XMA0GCSqGSIb3DQEBBQUAMIHK
-MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNV
-BAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5
-IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBD
-BgNVBAMTPFZlcmlTaWduIENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlm
-aWNhdGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3
-MTYyMzU5NTlaMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24s
-IEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNV
-BAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQg
-dXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDQgUHVibGljIFBy
-aW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZI
-hvcNAQEBBQADggEPADCCAQoCggEBAK3LpRFpxlmr8Y+1GQ9Wzsy1HyDkniYl
-S+BzZYlZ3tCD5PUPtbut8XzoIfzk6AzufEUiGXaStBO3IFsJ+mGuqPKljYXC
-KtbeZjbSmwL0qJJgfJxptI8kHtCGUvYynEFYHiK9zUVilQhu0GbdU6LM8BDc
-VHOLBKFGMzNcF0C5nk3T875Vg+ixiY5afJqWIpA7iCXy0lOIAgwLePLmNxdL
-MEYH5IBtptiWLugs+BGzOA1mppvqySNb247i8xOOGlktqgLw7KSHZtzBP/XY
-ufTsgsbSPZUd5cBPhMnZo0QoBmrXRazwa2rvTl/4EYIeOGM0ZlDUPpNz+jDD
-Zq3/ky2X7wMCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAj/ola09b5KROJ1Wr
-IhVZPMq1CtRK26vdoV9TxaBXOcLORyu+OshWv8LZJxA6sQU8wHcxuzrTBXtt
-mhwwjIDLk5Mqg6sFUYICABFna/OIYUdfA5PVWw3g8dShMjWFsjrbsIKr0csK
-vE+MW8VLADsfKoKmfjaF3H48ZwC15DtS4KjrXRX5xm3wrR0OhbepmnMUWluP
-QSjA1egtTaRezarZ7c7c2NU8Qh0XwRJdRTjDOPP8hS6DRkiy1yBfkjaP53kP
-mF6Z6PDQpLv1U70qzlmwr25/bLvSHgCwIe34QWKCudiyxLtGUPMxxY8BqHTr
-9Xgn2uf3ZkPznoM+IKrDNWCRzg==
------END CERTIFICATE-----
-
-Verisign_RSA_Secure_Server_CA
------BEGIN CERTIFICATE-----
-MIICNDCCAaECEAKtZn5ORf5eV288mBle3cAwDQYJKoZIhvcNAQECBQAwXzEL
-MAkGA1UEBhMCVVMxIDAeBgNVBAoTF1JTQSBEYXRhIFNlY3VyaXR5LCBJbmMu
-MS4wLAYDVQQLEyVTZWN1cmUgU2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9y
-aXR5MB4XDTk0MTEwOTAwMDAwMFoXDTEwMDEwNzIzNTk1OVowXzELMAkGA1UE
-BhMCVVMxIDAeBgNVBAoTF1JTQSBEYXRhIFNlY3VyaXR5LCBJbmMuMS4wLAYD
-VQQLEyVTZWN1cmUgU2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGb
-MA0GCSqGSIb3DQEBAQUAA4GJADCBhQJ+AJLOesGugz5aqomDV6wlAXYMra6O
-LDfO6zV4ZFQD5YRAUcm/jwjiioII0haGN1XpsSECrXZogZoFokvJSyVmIlZs
-iAeP94FZbYQHZXATcXY+m3dM41CJVphIuR2nKRoTLkoRWZweFdVJVCxzOmmC
-sZc5nG1wZ0jl3S3WyB57AgMBAAEwDQYJKoZIhvcNAQECBQADfgBl3X7hsuyw
-4jrg7HFGmhkRuNPHoLQDQCYCPgmc4RKz0Vr2N6W3YQO2WxZpO8ZECAyIUwxr
-l0nHPjXcbLm7qt9cuzovk2C2qUtN8iD3zV9/ZHuO3ABc1/p3yjkWWW8O6tO1
-g39NTUJWdrTJXwT4OPjr0l91X817/OWOgHz8UA==
------END CERTIFICATE-----
-
-Verisign_Secure_Server_OCSP_Responder
------BEGIN CERTIFICATE-----
-MIIDnzCCAwygAwIBAgIRAP9F1SddJPuzwjkkU1fhT94wDQYJKoZIhvcNAQEF
-BQAwXzELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1JTQSBEYXRhIFNlY3VyaXR5
-LCBJbmMuMS4wLAYDVQQLEyVTZWN1cmUgU2VydmVyIENlcnRpZmljYXRpb24g
-QXV0aG9yaXR5MB4XDTAwMDgwNDAwMDAwMFoXDTA0MDgwMzIzNTk1OVowgZ4x
-FzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBU
-cnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2UgYXQgaHR0cHM6
-Ly93d3cudmVyaXNpZ24uY29tL1JQQSAoYykwMDElMCMGA1UEAxMcU2VjdXJl
-IFNlcnZlciBPQ1NQIFJlc3BvbmRlcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
-gYkCgYEAuFGZZIUO7rMKaPC/Y3YdU/X8oXiMM+6f9L452psPTUepjyDoS0S9
-zs17kNEw6JDEJXuJKN699pMd/7n/krWpjeSuzOLDB4Nqo3IQASdiIqY1Jjkt
-ns9gDPxHpNfQQninHWzQy08VpykKtJVFxLHnWgnXOZXYHTWewr2zXcEMSx8C
-AwEAAaOCAR0wggEZMCAGA1UdEQQZMBekFTATMREwDwYDVQQDEwhPQ1NQIDEt
-NDA+BgNVHR8ENzA1MDOgMaAvhi1odHRwOi8vY3JsLnZlcmlzaWduLmNvbS9S
-U0FTZWN1cmVTZXJ2ZXItcC5jcmwwEwYDVR0lBAwwCgYIKwYBBQUHAwkwQgYI
-KwYBBQUHAQEENjA0MDIGCCsGAQUFBzABpiYWJGh0dHA6Ly9vY3NwLnZlcmlz
-aWduLmNvbS9vY3NwL3N0YXR1czBEBgNVHSAEPTA7MDkGC2CGSAGG+EUBBwEB
-MCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9SUEEw
-CQYDVR0TBAIwADALBgNVHQ8EBAMCB4AwDQYJKoZIhvcNAQEFBQADfgAAsxBT
-ZpxJky4xoAJC0lhXfmah/huKYRhQQCweK0Gl1tv/rAgcWgVtAlwqtpZPR9u+
-TtvOzLqGuBjOsRKRX2P380g+zPFNE+RtCZR4AJLLoyCdBgtqoEMHztEZbI8Y
-dZqfFzP9qSa44+LewqjEWop/mNYHBmvMVp6GcM7U7w==
------END CERTIFICATE-----
-
-Verisign_Time_Stamping_Authority_CA
------BEGIN CERTIFICATE-----
-MIIDzTCCAzagAwIBAgIQU2GyYK7bcY6nlLMTM/QHCTANBgkqhkiG9w0BAQUF
-ADCBwTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTww
-OgYDVQQLEzNDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24g
-QXV0aG9yaXR5IC0gRzIxOjA4BgNVBAsTMShjKSAxOTk4IFZlcmlTaWduLCBJ
-bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNVBAsTFlZlcmlT
-aWduIFRydXN0IE5ldHdvcmswHhcNMDAwOTI2MDAwMDAwWhcNMTAwOTI1MjM1
-OTU5WjCBpTEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl
-cmlTaWduIFRydXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRlcm1zIG9mIHVzZSBh
-dCBodHRwczovL3d3dy52ZXJpc2lnbi5jb20vcnBhIChjKTAwMSwwKgYDVQQD
-EyNWZXJpU2lnbiBUaW1lIFN0YW1waW5nIEF1dGhvcml0eSBDQTCBnzANBgkq
-hkiG9w0BAQEFAAOBjQAwgYkCgYEA0hmdZ8IAIVlizrQJIkRpivglWtvtDbc2
-fk7gu5Q+kCWHwmFHKdm9VLhjzCx9abQzNvQ3B5rB3UBU/OB4naCTuQk9I1F/
-RMIUdNsKvsvJMDRAmD7Q1yUQgZS9B0+c1lQn3y6ov8uQjI11S7zi6ESHzeZB
-CiVu6PQkAsVSD27smHUCAwEAAaOB3zCB3DAPBgNVHRMECDAGAQH/AgEAMEUG
-A1UdIAQ+MDwwOgYMYIZIAYb4RQEHFwEDMCowKAYIKwYBBQUHAgEWHGh0dHBz
-Oi8vd3d3LnZlcmlzaWduLmNvbS9ycGEwMQYDVR0fBCowKDAmoCSgIoYgaHR0
-cDovL2NybC52ZXJpc2lnbi5jb20vcGNhMy5jcmwwCwYDVR0PBAQDAgEGMEIG
-CCsGAQUFBwEBBDYwNDAyBggrBgEFBQcwAaYmFiRodHRwOi8vb2NzcC52ZXJp
-c2lnbi5jb20vb2NzcC9zdGF0dXMwDQYJKoZIhvcNAQEFBQADgYEAgnBold+2
-DcIBcBlK0lRWHqzyRUyHuPU163hLBanInTsZIS5wNEqi9YngFXVF5yg3ADQn
-Keg3S/LvRJdrF1Eaw1adPBqK9kpGRjeM+sv1ZFo4aC4cw+9wzrhGBha/937n
-tag+RaypJXUie28/sJyU58dzq6wf7iWbwBbtt8pb8BQ=
------END CERTIFICATE-----
-
-Visa_eCommerce_Root
------BEGIN CERTIFICATE-----
-MIIDojCCAoqgAwIBAgIQE4Y1TR0/BvLB+WUF1ZAcYjANBgkqhkiG9w0BAQUF
-ADBrMQswCQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlz
-YSBJbnRlcm5hdGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMT
-E1Zpc2EgZUNvbW1lcmNlIFJvb3QwHhcNMDIwNjI2MDIxODM2WhcNMjIwNjI0
-MDAxNjEyWjBrMQswCQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UE
-CxMmVmlzYSBJbnRlcm5hdGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAa
-BgNVBAMTE1Zpc2EgZUNvbW1lcmNlIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUA
-A4IBDwAwggEKAoIBAQCvV95WHm6h2mCxlCfLF9sHP4CFT8icttD0b0/Pmdjh
-28JIXDqsOTPHH2qLJj0rNfVIsZHBAk4ElpF7sDPwsRROEW+1QK8bRaVK7362
-rPKgH1g/EkZgPI2h4H3PVz4zHvtH8aoVlwdVZqW1LS7YgFmypw23RuwhY/81
-q6UCzyr0TP579ZRdhE2o8mCP2w4lPJ9zcc+U30rq299yOIzzlr3xF7zSujtF
-Wsan9sYXiwGd/BmoKoMWuDpI/k4+oKsGGelT84ATB+0tvz8KPFUgOSwsAGl0
-lUq8ILKpeeUYiZGo3BxN77t+Nwtd/jmliFKMAGzsGHxBvfaLdXe6YJ2E5/4t
-AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G
-A1UdDgQWBBQVOIMPPyw/cDMezUb+B4wg4NfDtzANBgkqhkiG9w0BAQUFAAOC
-AQEAX/FBfXxcCLkr4NWSR/pnXKUTwwMhmytMiUbPWU3J/qVAtmPN3XEolWcR
-zCSs00Rsca4BIGsDoo8Ytyk6feUWYFN4PMCvFYP3j1IzJL1kk5fui/fbGKht
-cbP3LBfQdCVp9/5rPJS+TUtBjE7ic9DjkCJzQ83z7+pzzkWKsKZJ/0x9nXGI
-xHYdkFsd7v3M9+79YKWxehZx0RbQfBI8bGmX265fOZpwLwU8GUYEmSA20GBu
-YQa7FkKMcPcw++DbZqMAAb3mLNqRX6BGi01qnD093QVG/na/oAo85ADmJ7f/
-hC3euiInlhBx6yLt398znM/jra6O1I7mT1GvFpLgXPYHDw==
------END CERTIFICATE-----
-
-Visa_International_Global_Root_2
------BEGIN CERTIFICATE-----
-MIIDgDCCAmigAwIBAgICAx4wDQYJKoZIhvcNAQEFBQAwYTELMAkGA1UEBhMC
-VVMxDTALBgNVBAoTBFZJU0ExLzAtBgNVBAsTJlZpc2EgSW50ZXJuYXRpb25h
-bCBTZXJ2aWNlIEFzc29jaWF0aW9uMRIwEAYDVQQDEwlHUCBSb290IDIwHhcN
-MDAwODE2MjI1MTAwWhcNMjAwODE1MjM1OTAwWjBhMQswCQYDVQQGEwJVUzEN
-MAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRlcm5hdGlvbmFsIFNl
-cnZpY2UgQXNzb2NpYXRpb24xEjAQBgNVBAMTCUdQIFJvb3QgMjCCASIwDQYJ
-KoZIhvcNAQEBBQADggEPADCCAQoCggEBAKkBcLWqxEDwq2omYXkZAPy/mzdZ
-DK9vZBv42pWUJGkzEXDK41Z0ohdXZFwgBuHW73G3O/erwWnQSaSxBNf0V2KJ
-XLB1LRckaeNCYOTudNargFbYiCjh+20i/SN8RnNPflRzHqgsVVh1t0zzWkWl
-Ahr62p3DRcMiXvOL8WAp0sdftAw6UYPvMPjU58fy+pmjIlC++QU3o63tmsPm
-7IgbthknGziLgE3sucfFicv8GjLtI/C1AVj59o/ghalMCXI5Etuz9c9OYmTa
-xhkVOmMd6RdVoUwiPDQyRvhlV7or7zaMavrZ2UT0qt2E1w0cslSsMoW0ZA3e
-QbuxNMYBhjJk1Z8CAwEAAaNCMEAwHQYDVR0OBBYEFJ59SzS/ca3CBfYDdYDO
-qU8axCRMMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqG
-SIb3DQEBBQUAA4IBAQAhpXYUVfmtJ3CPPPTVbMjMCqujmAuKBiPFyWHbmQdp
-NSYx/scuhMKZYdQN6X0uEyt8joW2hcdLzzW2LEc9zikv2G+fiRxkk78IvXbQ
-kIqUs38oW26sTTMs7WXcFsziza6kPWKSBpUmv9+55CCmc2rBvveURNZNbyoL
-axhNdBA2aGpawWqn3TYpjLgwi08hPwAuVDAHOrqK5MOeyti12HvOdUVmB/Rt
-Ldh6yumJivIj2C/LbgA2T/vwLwHMD8AiZfSr4k5hLQOCfZEWtTDVFN5ex5D8
-ofyrEK9ca3CnB+8phuiyJccg/ybdd+95RBTEvd07xQObdyPsoOy7Wjm1zK0G
------END CERTIFICATE-----
-
-ICA XSF
------BEGIN CERTIFICATE-----
-MIIHADCCBmmgAwIBAgIBFDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMCSUwx
-DzANBgNVBAgTBklzcmFlbDEOMAwGA1UEBxMFRWlsYXQxFjAUBgNVBAoTDVN0YXJ0
-Q29tIEx0ZC4xGjAYBgNVBAsTEUNBIEF1dGhvcml0eSBEZXAuMSkwJwYDVQQDEyBG
-cmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYS
-YWRtaW5Ac3RhcnRjb20ub3JnMB4XDTA2MTIwMjIzNTUyMVoXDTExMTIwMjIzNTUy
-MVowgdgxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhDb2xvcmFkbzEjMCEGA1UECgwa
-SmFiYmVyIFNvZnR3YXJlIEZvdW5kYXRpb24xIzAhBgNVBAsMGlNlY3VyZSBDZXJ0
-aWZpY2F0ZSBTaWduaW5nMUYwRAYDVQQDDD1TdGFydENvbSBDbGFzcyAxIEludGVy
-bWVkaWF0ZSBDQSAtIEphYmJlciBTb2Z0d2FyZSBGb3VuZGF0aW9uMSQwIgYJKoZI
-hvcNAQkBFhVjZXJ0bWFzdGVyQGphYmJlci5vcmcwggEiMA0GCSqGSIb3DQEBAQUA
-A4IBDwAwggEKAoIBAQCeju/E54r6cwRmEzkGwBIq5anE2IHM10iYIeqOjTnN2WMM
-XERxgmuSpwJays/BaMATh1/QFnMHjXiTICmeyXbJ2fKrxTHPCJ+DUeLbFvVX3bOO
-SxAffkCLwZuUw9RyZ9zDLBNpR1FsdiSD9mV9DEH4T3sNU79Mjy+o83jFojTg39R7
-nH8B6z7VLmlC+ENxsMqjdwRv7HtY595VBLwK/gejblT8kCVFFA/WjmiOVoZ4aMGd
-OOvsSgEZ9LaejB4xZdq+PP40DjxqhMQw89uzhWnCxxh0h+4PNfxhbPqJxZ9UMUWg
-uPLYPAoj9U5p3YgmRvEaKdrijOkhODeNVkV/a57jAgMBAAGjggN6MIIDdjAMBgNV
-HRMEBTADAQH/MAsGA1UdDwQEAwIBJjAdBgNVHQ4EFgQUe47EZ9BGIRcR/6F6QnWf
-6sSrcuQwgd0GA1UdIwSB1TCB0oAUHInDlsy9/jLVDYyBMbaYnY0oZI2hgbakgbMw
-gbAxCzAJBgNVBAYTAklMMQ8wDQYDVQQIEwZJc3JhZWwxDjAMBgNVBAcTBUVpbGF0
-MRYwFAYDVQQKEw1TdGFydENvbSBMdGQuMRowGAYDVQQLExFDQSBBdXRob3JpdHkg
-RGVwLjEpMCcGA1UEAxMgRnJlZSBTU0wgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkx
-ITAfBgkqhkiG9w0BCQEWEmFkbWluQHN0YXJ0Y29tLm9yZ4IBADAgBgNVHREEGTAX
-gRVjZXJ0bWFzdGVyQGphYmJlci5vcmcwHQYDVR0SBBYwFIESYWRtaW5Ac3RhcnRj
-b20ub3JnMBEGCWCGSAGG+EIBAQQEAwIABzBUBglghkgBhvhCAQ0ERxZFU3RhcnRD
-b20gQ2xhc3MgMSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEphYmJlciBTb2Z0
-d2FyZSBGb3VuZGF0aW9uMGIGA1UdHwRbMFkwKaAnoCWGI2h0dHA6Ly9jZXJ0LnN0
-YXJ0Y29tLm9yZy9jYS1jcmwuY3JsMCygKqAohiZodHRwOi8vY3JsLnN0YXJ0Y29t
-Lm9yZy9jcmwvY2EtY3JsLmNybDCCAUoGA1UdIASCAUEwggE9MIIBOQYLKwYBBAGB
-tTcBAQEwggEoMC8GCCsGAQUFBwIBFiNodHRwOi8vY2VydC5zdGFydGNvbS5vcmcv
-cG9saWN5LnBkZjA1BggrBgEFBQcCARYpaHR0cDovL2NlcnQuc3RhcnRjb20ub3Jn
-L2ludGVybWVkaWF0ZS5wZGYwgb0GCCsGAQUFBwICMIGwMBQWDVN0YXJ0Q29tIEx0
-ZC4wAwIBARqBl0xpbWl0ZWQgTGlhYmlsaXR5LCByZWFkIHRoZSBzZWN0aW9uICpM
-ZWdhbCBMaW1pdGF0aW9ucyogb2YgdGhlIFN0YXJ0Q29tIENlcnRpZmljYXRpb24g
-QXV0aG9yaXR5IFBvbGljeSBhdmFpbGFibGUgYXQgaHR0cDovL2NlcnQuc3RhcnRj
-b20ub3JnL3BvbGljeS5wZGYwDQYJKoZIhvcNAQEFBQADgYEAtOq85Q1lf8PjsJCg
-uQ6TL3TJ1rSadfOwEyHJqIjR5LYpxdcJ5WxSEM3DxdrFnTaPBC6RQ7v836i9DdW3
-FS5/y1Et5gKksLNPQqaYEVFuvB4AGTp2HkdUGo8Oz9Dd4zTcvTSTeo/9mVxqdxKa
-lhMZMHD/ivqg8faZSQNYMg6xq7I=
------END CERTIFICATE-----
-
-StartCom_root_Certificate
------BEGIN CERTIFICATE-----
-MIIHyTCCBbGgAwIBAgIBATANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJJTDEW
+mozilla/Security_Communication_EV_RootCA1.crt
+-----BEGIN CERTIFICATE-----
+MIIDfTCCAmWgAwIBAgIBADANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJKUDEl
+MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEqMCgGA1UECxMh
+U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBFViBSb290Q0ExMB4XDTA3MDYwNjAyMTIz
+MloXDTM3MDYwNjAyMTIzMlowYDELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09N
+IFRydXN0IFN5c3RlbXMgQ08uLExURC4xKjAoBgNVBAsTIVNlY3VyaXR5IENvbW11
+bmljYXRpb24gRVYgUm9vdENBMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
+ggEBALx/7FebJOD+nLpCeamIivqA4PUHKUPqjgo0No0c+qe1OXj/l3X3L+SqawSE
+RMqm4miO/VVQYg+kcQ7OBzgtQoVQrTyWb4vVog7P3kmJPdZkLjjlHmy1V4qe70gO
+zXppFodEtZDkBp2uoQSXWHnvIEqCa4wiv+wfD+mEce3xDuS4GBPMVjZd0ZoeUWs5
+bmB2iDQL87PRsJ3KYeJkHcFGB7hj3R4zZbOOCVVSPbW9/wfrrWFVGCypaZhKqkDF
+MxRldAD5kd6vA0jFQFTcD4SQaCDFkpbcLuUCRarAX1T4bepJz11sS6/vmsJWXMY1
+VkJqMF/Cq/biPT+zyRGPMUzXn0kCAwEAAaNCMEAwHQYDVR0OBBYEFDVK9U2vP9eC
+OKyrcWUXdYydVZPmMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G
+CSqGSIb3DQEBBQUAA4IBAQCoh+ns+EBnXcPBZsdAS5f8hxOQWsTvoMpfi7ent/HW
+tWS3irO4G8za+6xmiEHO6Pzk2x6Ipu0nUBsCMCRGef4Eh3CXQHPRwMFXGZpppSeZ
+q51ihPZRwSzJIxXYKLerJRO1RuGGAv8mjMSIkh1W/hln8lXkgKNrnKt34VFxDSDb
+EJrbvXZ5B3eZKK2aXtqxT0QsNY6llsf9g/BYxnnWmHyojf6GPgcWkuF75x3sM3Z+
+Qi5KhfmRiWiEA4Glm5q+4zfFVKtWOxgtQaQM+ELbmaDgcm+7XeEWT1MKZPlO9L9O
+VL14bIjqv5wTJMJwaaJ/D8g8rQjJsJhAoyrniIPtd490
+-----END CERTIFICATE-----
+mozilla/DST_ACES_CA_X6.crt
+-----BEGIN CERTIFICATE-----
+MIIECTCCAvGgAwIBAgIQDV6ZCtadt3js2AdWO4YV2TANBgkqhkiG9w0BAQUFADBb
+MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3Qx
+ETAPBgNVBAsTCERTVCBBQ0VTMRcwFQYDVQQDEw5EU1QgQUNFUyBDQSBYNjAeFw0w
+MzExMjAyMTE5NThaFw0xNzExMjAyMTE5NThaMFsxCzAJBgNVBAYTAlVTMSAwHgYD
+VQQKExdEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdDERMA8GA1UECxMIRFNUIEFDRVMx
+FzAVBgNVBAMTDkRTVCBBQ0VTIENBIFg2MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEAuT31LMmU3HWKlV1j6IR3dma5WZFcRt2SPp/5DgO0PWGSvSMmtWPu
+ktKe1jzIDZBfZIGxqAgNTNj50wUoUrQBJcWVHAx+PhCEdc/BGZFjz+iokYi5Q1K7
+gLFViYsx+tC3dr5BPTCapCIlF3PoHuLTrCq9Wzgh1SpL11V94zpVvddtawJXa+ZH
+fAjIgrrep4c9oW24MFbCswKBXy314powGCi4ZtPLAZZv6opFVdbgnf9nKxcCpk4a
+ahELfrd755jWjHZvwTvbUJN+5dCOHze4vbrGn2zpfDPyMjwmR/onJALJfh1biEIT
+ajV8fTXpLmaRcpPVMibEdPVTo7NdmvYJywIDAQABo4HIMIHFMA8GA1UdEwEB/wQF
+MAMBAf8wDgYDVR0PAQH/BAQDAgHGMB8GA1UdEQQYMBaBFHBraS1vcHNAdHJ1c3Rk
+c3QuY29tMGIGA1UdIARbMFkwVwYKYIZIAWUDAgEBATBJMEcGCCsGAQUFBwIBFjto
+dHRwOi8vd3d3LnRydXN0ZHN0LmNvbS9jZXJ0aWZpY2F0ZXMvcG9saWN5L0FDRVMt
+aW5kZXguaHRtbDAdBgNVHQ4EFgQUCXIGThhDD+XWzMNqizF7eI+og7gwDQYJKoZI
+hvcNAQEFBQADggEBAKPYjtay284F5zLNAdMEA+V25FYrnJmQ6AgwbN99Pe7lv7Uk
+QIRJ4dEorsTCOlMwiPH1d25Ryvr/ma8kXxug/fKshMrfqfBfBC6tFr8hlxCBPeP/
+h40y3JTlR4peahPJlJU90u7INJXQgNStMgiAVDzgvVJT11J8smk/f3rPanTK+gQq
+nExaBqXpIK1FZg9p8d2/6eMyi/rgwYZNcjwu2JN4Cir42NInPRmJX1p7ijvMDNpR
+rscL9yuwNwXsvFcj4jjSm2jzVhKIT0J8uDHEtdvkyCE06UgRNe76x5JXxZ805Mf2
+9w4LTJxoeHtxMcfrHuBnQfO3oKfN5XozNmr6mis=
+-----END CERTIFICATE-----
+mozilla/Swisscom_Root_EV_CA_2.crt
+-----BEGIN CERTIFICATE-----
+MIIF4DCCA8igAwIBAgIRAPL6ZOJ0Y9ON/RAdBB92ylgwDQYJKoZIhvcNAQELBQAw
+ZzELMAkGA1UEBhMCY2gxETAPBgNVBAoTCFN3aXNzY29tMSUwIwYDVQQLExxEaWdp
+dGFsIENlcnRpZmljYXRlIFNlcnZpY2VzMR4wHAYDVQQDExVTd2lzc2NvbSBSb290
+IEVWIENBIDIwHhcNMTEwNjI0MDk0NTA4WhcNMzEwNjI1MDg0NTA4WjBnMQswCQYD
+VQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0YWwgQ2Vy
+dGlmaWNhdGUgU2VydmljZXMxHjAcBgNVBAMTFVN3aXNzY29tIFJvb3QgRVYgQ0Eg
+MjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMT3HS9X6lds93BdY7Bx
+UglgRCgzo3pOCvrY6myLURYaVa5UJsTMRQdBTxB5f3HSek4/OE6zAMaVylvNwSqD
+1ycfMQ4jFrclyxy0uYAyXhqdk/HoPGAsp15XGVhRXrwsVgu42O+LgrQ8uMIkqBPH
+oCE2G3pXKSinLr9xJZDzRINpUKTk4RtiGZQJo/PDvO/0vezbE53PnUgJUmfANykR
+HvvSEaeFGHR55E+FFOtSN+KxRdjMDUN/rhPSays/p8LiqG12W0OfvrSdsyaGOx9/
+5fLoZigWJdBLlzin5M8J0TbDC77aO0RYjb7xnglrPvMyxyuHxuxenPaHZa0zKcQv
+idm5y8kDnftslFGXEBuGCxobP/YCfnvUxVFkKJ3106yDgYjTdLRZncHrYTNaRdHL
+OdAGalNgHa/2+2m8atwBz735j9m9W8E6X47aD0upm50qKGsaCnw8qyIL5XctcfaC
+NYGu+HuB5ur+rPQam3Rc6I8k9l2dRsQs0h4rIWqDJ2dVSqTjyDKXZpBy2uPUZC5f
+46Fq9mDU5zXNysRojddxyNMkM3OxbPlq4SjbX8Y96L5V5jcb7STZDxmPX2MYWFCB
+UWVv8p9+agTnNCRxunZLWB4ZvRVgRaoMEkABnRDixzgHcgplwLa7JSnaFp6LNYth
+7eVxV4O1PHGf40+/fh6Bn0GXAgMBAAGjgYYwgYMwDgYDVR0PAQH/BAQDAgGGMB0G
+A1UdIQQWMBQwEgYHYIV0AVMCAgYHYIV0AVMCAjASBgNVHRMBAf8ECDAGAQH/AgED
+MB0GA1UdDgQWBBRF2aWBbj2ITY1x0kbBbkUe88SAnTAfBgNVHSMEGDAWgBRF2aWB
+bj2ITY1x0kbBbkUe88SAnTANBgkqhkiG9w0BAQsFAAOCAgEAlDpzBp9SSzBc1P6x
+XCX5145v9Ydkn+0UjrgEjihLj6p7jjm02Vj2e6E1CqGdivdj5eu9OYLU43otb98T
+PLr+flaYC/NUn81ETm484T4VvwYmneTwkLbUwp4wLh/vx3rEUMfqe9pQy3omywC0
+Wqu1kx+AiYQElY2NfwmTv9SoqORjbdlk5LgpWgi/UOGED1V7XwgiG/W9mR4U9s70
+WBCCswo9GcG/W6uqmdjyMb3lOGbcWAXH7WMaLgqXfIeTK7KK4/HsGOV1timH59yL
+Gn602MnTihdsfSlEvoqq9X46Lmgxk7lq2prg2+kupYTNHAq4Sgj5nPFhJpiTt3tm
+7JFe3VE/23MPrQRYCd0EApUKPtN236YQHoA96M2kZNEzx5LH4k5E4wnJTsJdhw4S
+nr8PyQUQ3nqjsTzyP6WqJ3mtMX0f/fwZacXduT98zca0wjAefm6S139hdlqP65VN
+vBFuIXxZN5nQBrz5Bm0yFqXZaajh3DyAHmBR3NdUIR7KYndP+tiPsys6DXhyyWhB
+WkdKwqPrGtcKqzwyVcgKEZzfdNbwQBUdyLmPtTbFr/giuMod89a2GQ+fYWVq6nTI
+fI/DT11lgh/ZDYnadXL77/FHZxOzyNEZiCcmmpl5fx7kLD977vHeTYuWl8PVP3wb
+I+2ksx0WckNLIOFZfsLorSa/ovc=
+-----END CERTIFICATE-----
+mozilla/D-TRUST_Root_Class_3_CA_2_EV_2009.crt
+-----BEGIN CERTIFICATE-----
+MIIEQzCCAyugAwIBAgIDCYP0MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNVBAYTAkRF
+MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vdCBD
+bGFzcyAzIENBIDIgRVYgMjAwOTAeFw0wOTExMDUwODUwNDZaFw0yOTExMDUwODUw
+NDZaMFAxCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNV
+BAMMIUQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMjAwOTCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBAJnxhDRwui+3MKCOvXwEz75ivJn9gpfSegpn
+ljgJ9hBOlSJzmY3aFS3nBfwZcyK3jpgAvDw9rKFs+9Z5JUut8Mxk2og+KbgPCdM0
+3TP1YtHhzRnp7hhPTFiu4h7WDFsVWtg6uMQYZB7jM7K1iXdODL/ZlGsTl28So/6Z
+qQTMFexgaDbtCHu39b+T7WYxg4zGcTSHThfqr4uRjRxWQa4iN1438h3Z0S0NL2lR
+p75mpoo6Kr3HGrHhFPC+Oh25z1uxav60sUYgovseO3Dvk5h9jHOW8sXvhXCtKSb8
+HgQ+HKDYD8tSg2J87otTlZCpV6LqYQXY+U3EJ/pure3511H3a6UCAwEAAaOCASQw
+ggEgMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNOUikxiEyoZLsyvcop9Ntea
+HNxnMA4GA1UdDwEB/wQEAwIBBjCB3QYDVR0fBIHVMIHSMIGHoIGEoIGBhn9sZGFw
+Oi8vZGlyZWN0b3J5LmQtdHJ1c3QubmV0L0NOPUQtVFJVU1QlMjBSb290JTIwQ2xh
+c3MlMjAzJTIwQ0ElMjAyJTIwRVYlMjAyMDA5LE89RC1UcnVzdCUyMEdtYkgsQz1E
+RT9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0MEagRKBChkBodHRwOi8vd3d3LmQt
+dHJ1c3QubmV0L2NybC9kLXRydXN0X3Jvb3RfY2xhc3NfM19jYV8yX2V2XzIwMDku
+Y3JsMA0GCSqGSIb3DQEBCwUAA4IBAQA07XtaPKSUiO8aEXUHL7P+PPoeUSbrh/Yp
+3uDx1MYkCenBz1UbtDDZzhr+BlGmFaQt77JLvyAoJUnRpjZ3NOhk31KxEcdzes05
+nsKtjHEh8lprr988TlWvsoRlFIm5d8sqMb7Po23Pb0iUMkZv53GMoKaEGTcH8gNF
+CSuGdXzfX2lXANtu2KZyIktQ1HWYVt+3GP9DQ1CuekR78HlR10M9p9OB0/DJT7na
+xpeG0ILD5EJt/rDiZE4OJudANCa1CInXCGNjOCd1HjPqbqjdn5lPdE2BiYBL3ZqX
+KVwvvoFBuYz/6n1gBp7N1z3TLqMVvKjmJuVvw9y4AyHqnxbxLFS1
+-----END CERTIFICATE-----
+mozilla/VeriSign_Class_3_Public_Primary_Certification_Authority_-_G4.crt
+-----BEGIN CERTIFICATE-----
+MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjEL
+MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW
+ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2ln
+biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp
+U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y
+aXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjELMAkG
+A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJp
+U2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwg
+SW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2ln
+biBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5
+IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8Utpkmw4tXNherJI9/gHm
+GUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGzrl0Bp3ve
+fLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUw
+AwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJ
+aW1hZ2UvZ2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYj
+aHR0cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMW
+kf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMDA2gAMGUCMGYhDBgmYFo4e1ZC
+4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIxAJw9SDkjOVga
+FRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA==
+-----END CERTIFICATE-----
+mozilla/CA_Disig.crt
+-----BEGIN CERTIFICATE-----
+MIIEDzCCAvegAwIBAgIBATANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJTSzET
+MBEGA1UEBxMKQnJhdGlzbGF2YTETMBEGA1UEChMKRGlzaWcgYS5zLjERMA8GA1UE
+AxMIQ0EgRGlzaWcwHhcNMDYwMzIyMDEzOTM0WhcNMTYwMzIyMDEzOTM0WjBKMQsw
+CQYDVQQGEwJTSzETMBEGA1UEBxMKQnJhdGlzbGF2YTETMBEGA1UEChMKRGlzaWcg
+YS5zLjERMA8GA1UEAxMIQ0EgRGlzaWcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQCS9jHBfYj9mQGp2HvycXXxMcbzdWb6UShGhJd4NLxs/LxFWYgmGErE
+Nx+hSkS943EE9UQX4j/8SFhvXJ56CbpRNyIjZkMhsDxkovhqFQ4/61HhVKndBpnX
+mjxUizkDPw/Fzsbrg3ICqB9x8y34dQjbYkzo+s7552oftms1grrijxaSfQUMbEYD
+XcDtab86wYqg6I7ZuUUohwjstMoVvoLdtUSLLa2GDGhibYVW8qwUYzrG0ZmsNHhW
+S8+2rT+MitcE5eN4TPWGqvWP+j1scaMtymfraHtuM6kMgiioTGohQBUgDCZbg8Kp
+FhXAJIJdKxatymP2dACw30PEEGBWZ2NFAgMBAAGjgf8wgfwwDwYDVR0TAQH/BAUw
+AwEB/zAdBgNVHQ4EFgQUjbJJaJ1yCCW5wCf1UJNWSEZx+Y8wDgYDVR0PAQH/BAQD
+AgEGMDYGA1UdEQQvMC2BE2Nhb3BlcmF0b3JAZGlzaWcuc2uGFmh0dHA6Ly93d3cu
+ZGlzaWcuc2svY2EwZgYDVR0fBF8wXTAtoCugKYYnaHR0cDovL3d3dy5kaXNpZy5z
+ay9jYS9jcmwvY2FfZGlzaWcuY3JsMCygKqAohiZodHRwOi8vY2EuZGlzaWcuc2sv
+Y2EvY3JsL2NhX2Rpc2lnLmNybDAaBgNVHSAEEzARMA8GDSuBHpGT5goAAAABAQEw
+DQYJKoZIhvcNAQEFBQADggEBAF00dGFMrzvY/59tWDYcPQuBDRIrRhCA/ec8J9B6
+yKm2fnQwM6M6int0wHl5QpNt/7EpFIKrIYwvF/k/Ji/1WcbvgAa3mkkp7M5+cTxq
+EEHA9tOasnxakZzArFvITV734VP/Q3f8nktnbNfzg9Gg4H8l37iYC5oyOGwwoPP/
+CBUz91BKez6jPiCp3C9WgArtQVCwyfTssuMmRAAOb54GvCKWU3BlxFAKRmukLyeB
+EicTXxChds6KezfqwzlhA5WYOudsiCUI/HloDYd9Yvi0X/vF2Ey9WLw/Q1vUHgFN
+PGO+I++MzVpQuGhU+QqZMxEA4Z7CRneC9VkGjCFMhwnN5ag=
+-----END CERTIFICATE-----
+mozilla/VeriSign_Universal_Root_Certification_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCB
+vTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL
+ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJp
+U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MTgwNgYDVQQDEy9W
+ZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe
+Fw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJVUzEX
+MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0
+IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9y
+IGF1dGhvcml6ZWQgdXNlIG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNh
+bCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEF
+AAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj1mCOkdeQmIN65lgZOIzF
+9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGPMiJhgsWH
+H26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+H
+LL729fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN
+/BMReYTtXlT2NJ8IAfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPT
+rJ9VAMf2CGqUuV/c4DPxhGD5WycRtPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1Ud
+EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0GCCsGAQUFBwEMBGEwX6FdoFsw
+WTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2Oa8PPgGrUSBgs
+exkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud
+DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4
+sAPmLGd75JR3Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+
+seQxIcaBlVZaDrHC1LGmWazxY8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz
+4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTxP/jgdFcrGJ2BtMQo2pSXpXDrrB2+
+BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+PwGZsY6rp2aQW9IHR
+lRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4mJO3
+7M2CYfE45k+XmCpajQ==
+-----END CERTIFICATE-----
+mozilla/GeoTrust_Global_CA_2.crt
+-----BEGIN CERTIFICATE-----
+MIIDZjCCAk6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJVUzEW
+MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFs
+IENBIDIwHhcNMDQwMzA0MDUwMDAwWhcNMTkwMzA0MDUwMDAwWjBEMQswCQYDVQQG
+EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3Qg
+R2xvYmFsIENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDvPE1A
+PRDfO1MA4Wf+lGAVPoWI8YkNkMgoI5kF6CsgncbzYEbYwbLVjDHZ3CB5JIG/NTL8
+Y2nbsSpr7iFY8gjpeMtvy/wWUsiRxP89c96xPqfCfWbB9X5SJBri1WeR0IIQ13hL
+TytCOb1kLUCgsBDTOEhGiKEMuzozKmKY+wCdE1l/bztyqu6mD4b5BWHqZ38MN5aL
+5mkWRxHCJ1kDs6ZgwiFAVvqgx306E+PsV8ez1q6diYD3Aecs9pYrEw15LNnA5IZ7
+S4wMcoKK+xfNAGw6EzywhIdLFnopsk/bHdQL82Y3vdj2V7teJHq4PIu5+pIaGoSe
+2HSPqht/XvT+RSIhAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE
+FHE4NvICMVNHK266ZUapEBVYIAUJMB8GA1UdIwQYMBaAFHE4NvICMVNHK266ZUap
+EBVYIAUJMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQUFAAOCAQEAA/e1K6td
+EPx7srJerJsOflN4WT5CBP51o62sgU7XAotexC3IUnbHLB/8gTKY0UvGkpMzNTEv
+/NgdRN3ggX+d6YvhZJFiCzkIjKx0nVnZellSlxG5FntvRdOW2TF9AjYPnDtuzywN
+A0ZF66D0f0hExghAzN4bcLUprbqLOzRldRtxIR0sFAqwlpW41uryZfspuk/qkZN0
+abby/+Ea0AzRdoXLiiW9l14sbxWZJue2Kf8i7MkCx1YAzUm5s2x7UwQa4qjJqhIF
+I8LO57sEAszAR6LkxCkvW0VXiVHuPOtSCP8HNR6fNWpHSlaY0VqFH4z1Ir+rzoPz
+4iIprn2DQKi6bA==
+-----END CERTIFICATE-----
+mozilla/EC-ACC.crt
+-----BEGIN CERTIFICATE-----
+MIIFVjCCBD6gAwIBAgIQ7is969Qh3hSoYqwE893EATANBgkqhkiG9w0BAQUFADCB
+8zELMAkGA1UEBhMCRVMxOzA5BgNVBAoTMkFnZW5jaWEgQ2F0YWxhbmEgZGUgQ2Vy
+dGlmaWNhY2lvIChOSUYgUS0wODAxMTc2LUkpMSgwJgYDVQQLEx9TZXJ2ZWlzIFB1
+YmxpY3MgZGUgQ2VydGlmaWNhY2lvMTUwMwYDVQQLEyxWZWdldSBodHRwczovL3d3
+dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAoYykwMzE1MDMGA1UECxMsSmVyYXJxdWlh
+IEVudGl0YXRzIGRlIENlcnRpZmljYWNpbyBDYXRhbGFuZXMxDzANBgNVBAMTBkVD
+LUFDQzAeFw0wMzAxMDcyMzAwMDBaFw0zMTAxMDcyMjU5NTlaMIHzMQswCQYDVQQG
+EwJFUzE7MDkGA1UEChMyQWdlbmNpYSBDYXRhbGFuYSBkZSBDZXJ0aWZpY2FjaW8g
+KE5JRiBRLTA4MDExNzYtSSkxKDAmBgNVBAsTH1NlcnZlaXMgUHVibGljcyBkZSBD
+ZXJ0aWZpY2FjaW8xNTAzBgNVBAsTLFZlZ2V1IGh0dHBzOi8vd3d3LmNhdGNlcnQu
+bmV0L3ZlcmFycmVsIChjKTAzMTUwMwYDVQQLEyxKZXJhcnF1aWEgRW50aXRhdHMg
+ZGUgQ2VydGlmaWNhY2lvIENhdGFsYW5lczEPMA0GA1UEAxMGRUMtQUNDMIIBIjAN
+BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsyLHT+KXQpWIR4NA9h0X84NzJB5R
+85iKw5K4/0CQBXCHYMkAqbWUZRkiFRfCQ2xmRJoNBD45b6VLeqpjt4pEndljkYRm
+4CgPukLjbo73FCeTae6RDqNfDrHrZqJyTxIThmV6PttPB/SnCWDaOkKZx7J/sxaV
+HMf5NLWUhdWZXqBIoH7nF2W4onW4HvPlQn2v7fOKSGRdghST2MDk/7NQcvJ29rNd
+QlB50JQ+awwAvthrDk4q7D7SzIKiGGUzE3eeml0aE9jD2z3Il3rucO2n5nzbcc8t
+lGLfbdb1OL4/pYUKGbio2Al1QnDE6u/LDsg0qBIimAy4E5S2S+zw0JDnJwIDAQAB
+o4HjMIHgMB0GA1UdEQQWMBSBEmVjX2FjY0BjYXRjZXJ0Lm5ldDAPBgNVHRMBAf8E
+BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUoMOLRKo3pUW/l4Ba0fF4
+opvpXY0wfwYDVR0gBHgwdjB0BgsrBgEEAfV4AQMBCjBlMCwGCCsGAQUFBwIBFiBo
+dHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbDA1BggrBgEFBQcCAjApGidW
+ZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAwDQYJKoZIhvcN
+AQEFBQADggEBAKBIW4IB9k1IuDlVNZyAelOZ1Vr/sXE7zDkJlF7W2u++AVtd0x7Y
+/X1PzaBB4DSTv8vihpw3kpBWHNzrKQXlxJ7HNd+KDM3FIUPpqojlNcAZQmNaAl6k
+SBg6hW/cnbw/nZzBh7h6YQjpdwt/cKt63dmXLGQehb+8dJahw3oS7AwaboMMPOhy
+Rp/7SNVel+axofjk70YllJyJ22k4vuxcDlbHZVHlUIiIv0LVKz3l+bqeLrPK9HOS
+Agu+TGbrIP65y7WZf+a2E/rKS03Z7lNGBjvGTq2TWoF+bCpLagVFjPIhpDGQh2xl
+nJ2lYJU6Un/10asIbvPuW/mIPX64b24D5EI=
+-----END CERTIFICATE-----
+mozilla/StartCom_Certification_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIIHhzCCBW+gAwIBAgIBLTANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQGEwJJTDEW
 MBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwg
 Q2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNh
-dGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0NjM2WhcNMzYwOTE3MTk0NjM2WjB9
+dGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0NjM3WhcNMzYwOTE3MTk0NjM2WjB9
 MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi
 U2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3Rh
 cnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUA
@@ -2527,32 +341,3023 @@ Av+Z6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w
 Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3
 Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVcUjyJthkqcwEKDwOzEmDyei+B
 26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT37uMdBNSSwID
-AQABo4ICUjCCAk4wDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAa4wHQYDVR0OBBYE
-FE4L7xqkQFulF2mHMMo0aEPQQa7yMGQGA1UdHwRdMFswLKAqoCiGJmh0dHA6Ly9j
-ZXJ0LnN0YXJ0Y29tLm9yZy9zZnNjYS1jcmwuY3JsMCugKaAnhiVodHRwOi8vY3Js
-LnN0YXJ0Y29tLm9yZy9zZnNjYS1jcmwuY3JsMIIBXQYDVR0gBIIBVDCCAVAwggFM
-BgsrBgEEAYG1NwEBATCCATswLwYIKwYBBQUHAgEWI2h0dHA6Ly9jZXJ0LnN0YXJ0
-Y29tLm9yZy9wb2xpY3kucGRmMDUGCCsGAQUFBwIBFilodHRwOi8vY2VydC5zdGFy
-dGNvbS5vcmcvaW50ZXJtZWRpYXRlLnBkZjCB0AYIKwYBBQUHAgIwgcMwJxYgU3Rh
-cnQgQ29tbWVyY2lhbCAoU3RhcnRDb20pIEx0ZC4wAwIBARqBl0xpbWl0ZWQgTGlh
-YmlsaXR5LCByZWFkIHRoZSBzZWN0aW9uICpMZWdhbCBMaW1pdGF0aW9ucyogb2Yg
-dGhlIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFBvbGljeSBhdmFp
-bGFibGUgYXQgaHR0cDovL2NlcnQuc3RhcnRjb20ub3JnL3BvbGljeS5wZGYwEQYJ
-YIZIAYb4QgEBBAQDAgAHMDgGCWCGSAGG+EIBDQQrFilTdGFydENvbSBGcmVlIFNT
-TCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAgEAFmyZ
-9GYMNPXQhV59CuzaEE44HF7fpiUFS5Eyweg78T3dRAlbB0mKKctmArexmvclmAk8
-jhvh3TaHK0u7aNM5Zj2gJsfyOZEdUauCe37Vzlrk4gNXcGmXCPleWKYK34wGmkUW
-FjgKXlf2Ysd6AgXmvB618p70qSmD+LIU424oh0TDkBreOKk8rENNZEXO3SipXPJz
-ewT4F+irsfMuXGRuczE6Eri8sxHkfY+BUZo7jYn0TZNmezwD7dOaHZrzZVD1oNB1
-ny+v8OqCQ5j4aZyJecRDjkZy42Q2Eq/3JR44iZB3fsNrarnDy0RLrHiQi+fHLB5L
-EUTINFInzQpdn4XBidUaePKVEFMy3YCEZnXZtWgo+2EuvoSoOMCZEoalHmdkrQYu
-L6lwhceWD3yJZfWOQ1QOq92lgDmUYMA0yZZwLKMS9R9Ie70cfmu3nZD0Ijuu+Pwq
-yvqCUqDvr0tVk+vBtfAii6w0TiYiBKGHLHVKt+V9E9e4DGTANtLJL4YSjCMJwRuC
-O3NJo2pXh5Tl1njFmUNj403gdy3hZZlyaQQaRwnmDwFWJPsfvw55qVguucQJAX6V
-um0ABj6y6koQOdjQK/W/7HW/lwLFCRsI3FU34oH7N4RDYiDK51ZLZer+bMEkkySh
-NOsF/5oirpt9P/FlUQqmMGqz9IgcgA38corog14=
+AQABo4ICEDCCAgwwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD
+VR0OBBYEFE4L7xqkQFulF2mHMMo0aEPQQa7yMB8GA1UdIwQYMBaAFE4L7xqkQFul
+F2mHMMo0aEPQQa7yMIIBWgYDVR0gBIIBUTCCAU0wggFJBgsrBgEEAYG1NwEBATCC
+ATgwLgYIKwYBBQUHAgEWImh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeS5w
+ZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL2ludGVybWVk
+aWF0ZS5wZGYwgc8GCCsGAQUFBwICMIHCMCcWIFN0YXJ0IENvbW1lcmNpYWwgKFN0
+YXJ0Q29tKSBMdGQuMAMCAQEagZZMaW1pdGVkIExpYWJpbGl0eSwgcmVhZCB0aGUg
+c2VjdGlvbiAqTGVnYWwgTGltaXRhdGlvbnMqIG9mIHRoZSBTdGFydENvbSBDZXJ0
+aWZpY2F0aW9uIEF1dGhvcml0eSBQb2xpY3kgYXZhaWxhYmxlIGF0IGh0dHA6Ly93
+d3cuc3RhcnRzc2wuY29tL3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgG
+CWCGSAGG+EIBDQQrFilTdGFydENvbSBGcmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1
+dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAgEAjo/n3JR5fPGFf59Jb2vKXfuM/gTF
+wWLRfUKKvFO3lANmMD+x5wqnUCBVJX92ehQN6wQOQOY+2IirByeDqXWmN3PH/UvS
+Ta0XQMhGvjt/UfzDtgUx3M2FIk5xt/JxXrAaxrqTi3iSSoX4eA+D/i+tLPfkpLst
+0OcNOrg+zvZ49q5HJMqjNTbOx8aHmNrs++myziebiMMEofYLWWivydsQD032ZGNc
+pRJvkrKTlMeIFw6Ttn5ii5B/q06f/ON1FE8qMt9bDeD1e5MNq6HPh+GlBEXoPBKl
+CcWw0bdT82AUuoVpaiF8H3VhFyAXe2w7QSlc4axa0c2Mm+tgHRns9+Ww2vl5GKVF
+P0lDV9LdJNUso/2RjSe15esUBppMeyG7Oq0wBhjA2MFrLH9ZXF2RsXAiV+uKa0hK
+1Q8p7MZAwC+ITGgBF3f0JBlPvfrhsiAhS90a2Cl9qrjeVOwhVYBsHvUwyKMQ5bLm
+KhQxw4UtjJixhlpPiVktucf3HMiKf8CdBUrmQk9io20ppB+Fq9vlgcitKj1MXVuE
+JnHEhV5xJMqlG2zYYdMa4FTbzrqpMrUi9nNBCV24F10OD5mQ1kfabwo6YigUZ4LZ
+8dCAWZvLMdibD4x3TrVoivJs9iQOLWxwxXPR3hTQcY+203sC9uO41Alua551hDnm
+fyWl8kgAwKQB2j8=
 -----END CERTIFICATE-----
-Deutsche Telekom Root CA 2
+mozilla/WellsSecure_Public_Root_Certificate_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIIEvTCCA6WgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBhTELMAkGA1UEBhMCVVMx
+IDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxs
+cyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9v
+dCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDcxMjEzMTcwNzU0WhcNMjIxMjE0
+MDAwNzU0WjCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdl
+bGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQD
+DC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkw
+ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDub7S9eeKPCCGeOARBJe+r
+WxxTkqxtnt3CxC5FlAM1iGd0V+PfjLindo8796jE2yljDpFoNoqXjopxaAkH5OjU
+Dk/41itMpBb570OYj7OeUt9tkTmPOL13i0Nj67eT/DBMHAGTthP796EfvyXhdDcs
+HqRePGj4S78NuR4uNuip5Kf4D8uCdXw1LSLWwr8L87T8bJVhHlfXBIEyg1J55oNj
+z7fLY4sR4r1e6/aN7ZVyKLSsEmLpSjPmgzKuBXWVvYSV2ypcm44uDLiBK0HmOFaf
+SZtsdvqKXfcBeYF8wYNABf5x/Qw/zE5gCQ5lRxAvAcAFP4/4s0HvWkJ+We/Slwxl
+AgMBAAGjggE0MIIBMDAPBgNVHRMBAf8EBTADAQH/MDkGA1UdHwQyMDAwLqAsoCqG
+KGh0dHA6Ly9jcmwucGtpLndlbGxzZmFyZ28uY29tL3dzcHJjYS5jcmwwDgYDVR0P
+AQH/BAQDAgHGMB0GA1UdDgQWBBQmlRkQ2eihl5H/3BnZtQQ+0nMKajCBsgYDVR0j
+BIGqMIGngBQmlRkQ2eihl5H/3BnZtQQ+0nMKaqGBi6SBiDCBhTELMAkGA1UEBhMC
+VVMxIDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNX
+ZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMg
+Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHmCAQEwDQYJKoZIhvcNAQEFBQADggEB
+ALkVsUSRzCPIK0134/iaeycNzXK7mQDKfGYZUMbVmO2rvwNa5U3lHshPcZeG1eMd
+/ZDJPHV3V3p9+N701NX3leZ0bh08rnyd2wIDBSxxSyU+B+NemvVmFymIGjifz6pB
+A4SXa5M4esowRBskRDPQ5NHcKDj0E0M1NSljqHyita04pO2t/caaH/+Xc/77szWn
+k4bGdpEA5qxRFsQnMlzbc9qlk1eOPm01JghZ1edE13YgY+esE2fDbbFwRnzVlhE9
+iW9dqKHrjQrawx0zbKPqZxmamX9LPYNRKh3KL4YMon4QLSvUFpULB6ouFJJJtylv
+2G0xffX8oRAHh84vWdw+WNs=
+-----END CERTIFICATE-----
+mozilla/Entrust_Root_Certification_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMC
+VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0
+Lm5ldC9DUFMgaXMgaW5jb3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMW
+KGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsGA1UEAxMkRW50cnVzdCBSb290IENl
+cnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0MloXDTI2MTEyNzIw
+NTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMTkw
+NwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSBy
+ZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNV
+BAMTJEVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJ
+KoZIhvcNAQEBBQADggEPADCCAQoCggEBALaVtkNC+sZtKm9I35RMOVcF7sN5EUFo
+Nu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYszA9u3g3s+IIRe7bJWKKf4
+4LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOwwCj0Yzfv9
+KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGI
+rb68j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi
+94DkZfs0Nw4pgHBNrziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOB
+sDCBrTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAi
+gA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1MzQyWjAfBgNVHSMEGDAWgBRo
+kORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DHhmak8fdLQ/uE
+vW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA
+A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9t
+O1KzKtvn1ISMY/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6Zua
+AGAT/3B+XxFNSRuzFVJ7yVTav52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP
+9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTSW3iDVuycNsMm4hH2Z0kdkquM++v/
+eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0tHuu2guQOHXvgR1m
+0vdXcDazv/wor3ElhVsT/h5/WrQ8
+-----END CERTIFICATE-----
+mozilla/Staat_der_Nederlanden_Root_CA_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIIFyjCCA7KgAwIBAgIEAJiWjDANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJO
+TDEeMBwGA1UECgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFh
+dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQSAtIEcyMB4XDTA4MDMyNjExMTgxN1oX
+DTIwMDMyNTExMDMxMFowWjELMAkGA1UEBhMCTkwxHjAcBgNVBAoMFVN0YWF0IGRl
+ciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5lZGVybGFuZGVuIFJv
+b3QgQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMVZ5291
+qj5LnLW4rJ4L5PnZyqtdj7U5EILXr1HgO+EASGrP2uEGQxGZqhQlEq0i6ABtQ8Sp
+uOUfiUtnvWFI7/3S4GCI5bkYYCjDdyutsDeqN95kWSpGV+RLufg3fNU254DBtvPU
+Z5uW6M7XxgpT0GtJlvOjCwV3SPcl5XCsMBQgJeN/dVrlSPhOewMHBPqCYYdu8DvE
+pMfQ9XQ+pV0aCPKbJdL2rAQmPlU6Yiile7Iwr/g3wtG61jj99O9JMDeZJiFIhQGp
+5Rbn3JBV3w/oOM2ZNyFPXfUib2rFEhZgF1XyZWampzCROME4HYYEhLoaJXhena/M
+UGDWE4dS7WMfbWV9whUYdMrhfmQpjHLYFhN9C0lK8SgbIHRrxT3dsKpICT0ugpTN
+GmXZK4iambwYfp/ufWZ8Pr2UuIHOzZgweMFvZ9C+X+Bo7d7iscksWXiSqt8rYGPy
+5V6548r6f1CGPqI0GAwJaCgRHOThuVw+R7oyPxjMW4T182t0xHJ04eOLoEq9jWYv
+6q012iDTiIJh8BIitrzQ1aTsr1SIJSQ8p22xcik/Plemf1WvbibG/ufMQFxRRIEK
+eN5KzlW/HdXZt1bv8Hb/C3m1r737qWmRRpdogBQ2HbN/uymYNqUg+oJgYjOk7Na6
+B6duxc8UpufWkjTYgfX8HV2qXB72o007uPc5AgMBAAGjgZcwgZQwDwYDVR0TAQH/
+BAUwAwEB/zBSBgNVHSAESzBJMEcGBFUdIAAwPzA9BggrBgEFBQcCARYxaHR0cDov
+L3d3dy5wa2lvdmVyaGVpZC5ubC9wb2xpY2llcy9yb290LXBvbGljeS1HMjAOBgNV
+HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJFoMocVHYnitfGsNig0jQt8YojrMA0GCSqG
+SIb3DQEBCwUAA4ICAQCoQUpnKpKBglBu4dfYszk78wIVCVBR7y29JHuIhjv5tLyS
+CZa59sCrI2AGeYwRTlHSeYAz+51IvuxBQ4EffkdAHOV6CMqqi3WtFMTC6GY8ggen
+5ieCWxjmD27ZUD6KQhgpxrRW/FYQoAUXvQwjf/ST7ZwaUb7dRUG/kSS0H4zpX897
+IZmflZ85OkYcbPnNe5yQzSipx6lVu6xiNGI1E0sUOlWDuYaNkqbG9AclVMwWVxJK
+gnjIFNkXgiYtXSAfea7+1HAWFpWD2DU5/1JddRwWxRNVz0fMdWVSSt7wsKfkCpYL
++63C4iWEst3kvX5ZbJvw8NjnyvLplzh+ib7M+zkXYT9y2zqR2GUBGR2tUKRXCnxL
+vJxxcypFURmFzI79R6d0lR2o0a9OF7FpJsKqeFdbxU2n5Z4FF5TKsl+gSRiNNOkm
+bEgeqmiSBeGCc1qb3AdbCG19ndeNIdn8FCCqwkXfP+cAslHkwvgFuXkajDTznlvk
+N1trSt8sV4pAWja63XVECDdCcAz+3F4hoKOKwJCcaNpQ5kUQR3i2TtJlycM33+FC
+Y7BXN0Ute4qcvwXqZVUz9zkQxSgqIXobisQk+T8VyJoVIPVVYpbtbZNQvOSqeK3Z
+ywplh6ZmwcSBo3c6WB4L7oOLnR7SUqTMHW+wmG2UMbX4cQrcufx9MmDm66+KAQ==
+-----END CERTIFICATE-----
+mozilla/thawte_Primary_Root_CA_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDEL
+MAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMp
+IDIwMDcgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAi
+BgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMjAeFw0wNzExMDUwMDAw
+MDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh
+d3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBGb3Ig
+YXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9v
+dCBDQSAtIEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/
+BebfowJPDQfGAFG6DAJSLSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6
+papu+7qzcMBniKI11KOasf2twu8x+qi58/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8E
+BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUmtgAMADna3+FGO6Lts6K
+DPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUNG4k8VIZ3
+KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41ox
+XZ3Krr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg==
+-----END CERTIFICATE-----
+mozilla/ACEDICOM_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIFtTCCA52gAwIBAgIIYY3HhjsBggUwDQYJKoZIhvcNAQEFBQAwRDEWMBQGA1UE
+AwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZFRElDT00x
+CzAJBgNVBAYTAkVTMB4XDTA4MDQxODE2MjQyMloXDTI4MDQxMzE2MjQyMlowRDEW
+MBQGA1UEAwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZF
+RElDT00xCzAJBgNVBAYTAkVTMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
+AgEA/5KV4WgGdrQsyFhIyv2AVClVYyT/kGWbEHV7w2rbYgIB8hiGtXxaOLHkWLn7
+09gtn70yN78sFW2+tfQh0hOR2QetAQXW8713zl9CgQr5auODAKgrLlUTY4HKRxx7
+XBZXehuDYAQ6PmXDzQHe3qTWDLqO3tkE7hdWIpuPY/1NFgu3e3eM+SW10W2ZEi5P
+Grjm6gSSrj0RuVFCPYewMYWveVqc/udOXpJPQ/yrOq2lEiZmueIM15jO1FillUAK
+t0SdE3QrwqXrIhWYENiLxQSfHY9g5QYbm8+5eaA9oiM/Qj9r+hwDezCNzmzAv+Yb
+X79nuIQZ1RXve8uQNjFiybwCq0Zfm/4aaJQ0PZCOrfbkHQl/Sog4P75n/TSW9R28
+MHTLOO7VbKvU/PQAtwBbhTIWdjPp2KOZnQUAqhbm84F9b32qhm2tFXTTxKJxqvQU
+fecyuB+81fFOvW8XAjnXDpVCOscAPukmYxHqC9FK/xidstd7LzrZlvvoHpKuE1XI
+2Sf23EgbsCTBheN3nZqk8wwRHQ3ItBTutYJXCb8gWH8vIiPYcMt5bMlL8qkqyPyH
+K9caUPgn6C9D4zq92Fdx/c6mUlv53U3t5fZvie27k5x2IXXwkkwp9y+cAS7+UEae
+ZAwUswdbxcJzbPEHXEUkFDWug/FqTYl6+rPYLWbwNof1K1MCAwEAAaOBqjCBpzAP
+BgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKaz4SsrSbbXc6GqlPUB53NlTKxQ
+MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUprPhKytJttdzoaqU9QHnc2VMrFAw
+RAYDVR0gBD0wOzA5BgRVHSAAMDEwLwYIKwYBBQUHAgEWI2h0dHA6Ly9hY2VkaWNv
+bS5lZGljb21ncm91cC5jb20vZG9jMA0GCSqGSIb3DQEBBQUAA4ICAQDOLAtSUWIm
+fQwng4/F9tqgaHtPkl7qpHMyEVNEskTLnewPeUKzEKbHDZ3Ltvo/Onzqv4hTGzz3
+gvoFNTPhNahXwOf9jU8/kzJPeGYDdwdY6ZXIfj7QeQCM8htRM5u8lOk6e25SLTKe
+I6RF+7YuE7CLGLHdztUdp0J/Vb77W7tH1PwkzQSulgUV1qzOMPPKC8W64iLgpq0i
+5ALudBF/TP94HTXa5gI06xgSYXcGCRZj6hitoocf8seACQl1ThCojz2GuHURwCRi
+ipZ7SkXp7FnFvmuD5uHorLUwHv4FB4D54SMNUI8FmP8sX+g7tq3PgbUhh8oIKiMn
+MCArz+2UW6yyetLHKKGKC5tNSixthT8Jcjxn4tncB7rrZXtaAWPWkFtPF2Y9fwsZ
+o5NjEFIqnxQWWOLcpfShFosOkYuByptZ+thrkQdlVV9SH686+5DdaaVbnG0OLLb6
+zqylfDJKZ0DcMDQj3dcEI2bw/FWAp/tmGYI1Z2JwOV5vx+qQQEQIHriy1tvuWacN
+GHk0vFQYXlPKNFHtRQrmjseCNj6nOGOpMCwXEGCSn1WHElkQwg9naRHMTh5+Spqt
+r0CodaxWkHS4oJyleW/c6RrIaQXpuvoDs3zk4E7Czp3otkYNbn5XOmeUwssfnHdK
+Z05phkOTOPu220+DkdRgfks+KzgHVZhepA==
+-----END CERTIFICATE-----
+mozilla/ePKI_Root_Certification_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBe
+MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0
+ZC4xKjAoBgNVBAsMIWVQS0kgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe
+Fw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMxMjdaMF4xCzAJBgNVBAYTAlRXMSMw
+IQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEqMCgGA1UECwwhZVBL
+SSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEF
+AAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAH
+SyZbCUNsIZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAh
+ijHyl3SJCRImHJ7K2RKilTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3X
+DZoTM1PRYfl61dd4s5oz9wCGzh1NlDivqOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1
+TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX12ruOzjjK9SXDrkb5wdJ
+fzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0OWQqraffA
+sgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uU
+WH1+ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLS
+nT0IFaUQAS2zMnaolQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pH
+dmX2Os+PYhcZewoozRrSgx4hxyy/vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJip
+NiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXiZo1jDiVN1Rmy5nk3pyKdVDEC
+AwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/QkqiMAwGA1UdEwQF
+MAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH
+ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGB
+uvl2ICO1J2B01GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6Yl
+PwZpVnPDimZI+ymBV3QGypzqKOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkP
+JXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdVxrsStZf0X4OFunHB2WyBEXYKCrC/
+gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEPNXubrjlpC2JgQCA2
+j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+rGNm6
+5ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUB
+o2M3IUxExJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS
+/jQ6fbjpKdx2qcgw+BRxgMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2z
+Gp1iro2C6pSe3VkQw63d4k3jMdXH7OjysP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTE
+W9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmODBCEIZ43ygknQW/2xzQ+D
+hNQ+IIX3Sj0rnP0qCglN6oH4EZw=
+-----END CERTIFICATE-----
+mozilla/GeoTrust_Primary_Certification_Authority_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDEL
+MAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChj
+KSAyMDA3IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2
+MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0
+eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1OVowgZgxCzAJBgNV
+BAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykgMjAw
+NyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNV
+BAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBH
+MjB2MBAGByqGSM49AgEGBSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcL
+So17VDs6bl8VAsBQps8lL33KSLjHUGMcKiEIfJo22Av+0SbFWDEwKCXzXV2juLal
+tJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO
+BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+EVXVMAoG
+CCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGT
+qQ7mndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBucz
+rD6ogRLQy7rQkgu2npaqBA+K
+-----END CERTIFICATE-----
+mozilla/Taiwan_GRCA.crt
+-----BEGIN CERTIFICATE-----
+MIIFcjCCA1qgAwIBAgIQH51ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w0BAQUFADA/
+MQswCQYDVQQGEwJUVzEwMC4GA1UECgwnR292ZXJubWVudCBSb290IENlcnRpZmlj
+YXRpb24gQXV0aG9yaXR5MB4XDTAyMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjMzM1ow
+PzELMAkGA1UEBhMCVFcxMDAuBgNVBAoMJ0dvdmVybm1lbnQgUm9vdCBDZXJ0aWZp
+Y2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
+AJoluOzMonWoe/fOW1mKydGGEghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV4qNw8XR
+IePaJD9IK/ufLqGU5ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3+qhZSV1q
+gQdW8or5BtD3cCJNtLdBuTK4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQkclSGxtKy
+yhwOeYHWtXBiCAEuTk8O1RGvqa/lmr/czIdtJuTJV6L7lvnM4T9TjGxMfptTCAts
+F/tnyMKtsc2AtJfcdgEWFelq16TheEfOhtX7MfP6Mb40qij7cEwdScevLJ1tZqa2
+jWR+tSBqnTuBto9AAGdLiYa4zGX+FVPpBMHWXx1E1wovJ5pGfaENda1UhhXcSTvx
+ls4Pm6Dso3pdvtUqdULle96ltqqvKKyskKw4t9VoNSZ63Pc78/1Fm9G7Q3hub/FC
+VGqY8A2tl+lSXunVanLeavcbYBT0peS2cWeqH+riTcFCQP5nRhc4L0c/cZyu5SHK
+YS1tB6iEfC3uUSXxY5Ce/eFXiGvviiNtsea9P63RPZYLhY3Naye7twWb7LuRqQoH
+EgKXTiCQ8P8NHuJBO9NAOueNXdpm5AKwB1KYXA6OM5zCppX7VRluTI6uSw+9wThN
+Xo+EHWbNxWCWtFJaBYmOlXqYwZE8lSOyDvR5tMl8wUohAgMBAAGjajBoMB0GA1Ud
+DgQWBBTMzO/MKWCkO7GStjz6MmKPrCUVOzAMBgNVHRMEBTADAQH/MDkGBGcqBwAE
+MTAvMC0CAQAwCQYFKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP/lSg209yewDL7MTqK
+UWUwDQYJKoZIhvcNAQEFBQADggIBAECASvomyc5eMN1PhnR2WPWus4MzeKR6dBcZ
+TulStbngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04rQ2JyftB8M3jh+Vzj8jeJPXgyf
+qzvS/3WXy6TjZwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKnI6mGq3ZW6A4M9hPdKmaK
+ZEk9GhiHkASfQlK3T8v+R0F2Ne//AHY2RTKbxkaFXeIksB7jSJaYV0eUVXoPQbFE
+JPPB/hprv4j9wabak2BegUqZIJxIZhm1AHlUD7gsL0u8qV1bYH+Mh6XgUmMqvtg7
+hUAV/h62ZT/FS9p+tXo1KaMuephgIqP0fSdOLeq0dDzpD6QzDxARvBMB1uUO07+1
+EqLhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2fI56wwbSdLaG5LKlwCCDTb+HbkZ6Mm
+nD+iMsJKxYEYMRBWqoTvLQr/uB930r+lWKBi5NdLkXWNiYCYfm3LU05er/ayl4WX
+udpVBrkk7tfGOB5jGxI7leFYrPLfhNVfmS8NVVvmONsuP3LpSIXLuykTjx44Vbnz
+ssQwmSNOXfJIoRIM3BKQCZBUkQM8R+XVyWXgt0t97EfTsws+rZ7QdAAO671RrcDe
+LMDDav7v3Aun+kbfYNucpllQdSNpc5Oy+fwC00fmcc4QAu4njIT/rEUNE1yDMuAl
+pYYsfPQS
+-----END CERTIFICATE-----
+mozilla/AffirmTrust_Networking.crt
+-----BEGIN CERTIFICATE-----
+MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UE
+BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz
+dCBOZXR3b3JraW5nMB4XDTEwMDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDEL
+MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp
+cm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
+AQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SEHi3y
+YJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbua
+kCNrmreIdIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRL
+QESxG9fhwoXA3hA/Pe24/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp
+6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gbh+0t+nvujArjqWaJGctB+d1ENmHP4ndG
+yH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNVHQ4EFgQUBx/S55zawm6i
+QLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ
+KoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfO
+tDIuUFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzu
+QY0x2+c06lkh1QF612S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZ
+Lgo/bNjR9eUJtGxUAArgFU2HdW23WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4u
+olu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9/ZFvgrG+CJPbFEfxojfHRZ48
+x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s=
+-----END CERTIFICATE-----
+mozilla/Sonera_Class_2_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEP
+MA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENBMB4XDTAx
+MDQwNjA3Mjk0MFoXDTIxMDQwNjA3Mjk0MFowOTELMAkGA1UEBhMCRkkxDzANBgNV
+BAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMiBDQTCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE+hY3/Ei9vX+ALTU74W+o
+Z6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2RX/uJ4+q/Tl18GybTdXnt
+5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQTiMofRhj8VQ7Jp12W5dCsv+u8E7s
+3TmVToMGf+dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+QjVHzIrviQHgCWctRUz2Ej
+vOr7nQKV0ba5cTppCD8PtOFCx4j1P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu
+8nYybieDwnPz3BjotJPqdURrBGAgcVeHnfO+oJAjPYok4doh28MCAwEAAaMzMDEw
+DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISqCqWITTXjwwCwYDVR0PBAQDAgEG
+MA0GCSqGSIb3DQEBBQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt0jSv9zil
+zqsWuasvfDXLrNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/
+3DEIcbCdjdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvD
+FNr450kkkdAdavphOe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6
+Tk6ezAyNlNzZRZxe7EJQY670XcSxEtzKO6gunRRaBXW37Ndj4ro1tgQIkejanZz2
+ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLHllpwrN9M
+-----END CERTIFICATE-----
+mozilla/Juur-SK.crt
+-----BEGIN CERTIFICATE-----
+MIIE5jCCA86gAwIBAgIEO45L/DANBgkqhkiG9w0BAQUFADBdMRgwFgYJKoZIhvcN
+AQkBFglwa2lAc2suZWUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKExlBUyBTZXJ0aWZp
+dHNlZXJpbWlza2Vza3VzMRAwDgYDVQQDEwdKdXVyLVNLMB4XDTAxMDgzMDE0MjMw
+MVoXDTE2MDgyNjE0MjMwMVowXTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMQsw
+CQYDVQQGEwJFRTEiMCAGA1UEChMZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEQ
+MA4GA1UEAxMHSnV1ci1TSzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
+AIFxNj4zB9bjMI0TfncyRsvPGbJgMUaXhvSYRqTCZUXP00B841oiqBB4M8yIsdOB
+SvZiF3tfTQou0M+LI+5PAk676w7KvRhj6IAcjeEcjT3g/1tf6mTll+g/mX8MCgkz
+ABpTpyHhOEvWgxutr2TC+Rx6jGZITWYfGAriPrsfB2WThbkasLnE+w0R9vXW+RvH
+LCu3GFH+4Hv2qEivbDtPL+/40UceJlfwUR0zlv/vWT3aTdEVNMfqPxZIe5EcgEMP
+PbgFPtGzlc3Yyg/CQ2fbt5PgIoIuvvVoKIO5wTtpeyDaTpxt4brNj3pssAki14sL
+2xzVWiZbDcDq5WDQn/413z8CAwEAAaOCAawwggGoMA8GA1UdEwEB/wQFMAMBAf8w
+ggEWBgNVHSAEggENMIIBCTCCAQUGCisGAQQBzh8BAQEwgfYwgdAGCCsGAQUFBwIC
+MIHDHoHAAFMAZQBlACAAcwBlAHIAdABpAGYAaQBrAGEAYQB0ACAAbwBuACAAdgDk
+AGwAagBhAHMAdABhAHQAdQBkACAAQQBTAC0AaQBzACAAUwBlAHIAdABpAGYAaQB0
+AHMAZQBlAHIAaQBtAGkAcwBrAGUAcwBrAHUAcwAgAGEAbABhAG0ALQBTAEsAIABz
+AGUAcgB0AGkAZgBpAGsAYQBhAHQAaQBkAGUAIABrAGkAbgBuAGkAdABhAG0AaQBz
+AGUAawBzMCEGCCsGAQUFBwIBFhVodHRwOi8vd3d3LnNrLmVlL2Nwcy8wKwYDVR0f
+BCQwIjAgoB6gHIYaaHR0cDovL3d3dy5zay5lZS9qdXVyL2NybC8wHQYDVR0OBBYE
+FASqekej5ImvGs8KQKcYP2/v6X2+MB8GA1UdIwQYMBaAFASqekej5ImvGs8KQKcY
+P2/v6X2+MA4GA1UdDwEB/wQEAwIB5jANBgkqhkiG9w0BAQUFAAOCAQEAe8EYlFOi
+CfP+JmeaUOTDBS8rNXiRTHyoERF5TElZrMj3hWVcRrs7EKACr81Ptcw2Kuxd/u+g
+kcm2k298gFTsxwhwDY77guwqYHhpNjbRxZyLabVAyJRld/JXIWY7zoVAtjNjGr95
+HvxcHdMdkxuLDF2FvZkwMhgJkVLpfKG6/2SSmuz+Ne6ML678IIbsSt4beDI3poHS
+na9aEhbKmVv8b20OxaAehsmR0FyYgl9jDIpaq9iVpszLita/ZEuOyoqysOkhMp6q
+qIWYNIE5ITuoOlIyPfZrN4YGWhWY3PARZv40ILcD9EEQfTmEeZZyY7aWAuVrua0Z
+TbvGRNs2yyqcjg==
+-----END CERTIFICATE-----
+mozilla/Baltimore_CyberTrust_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ
+RTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYD
+VQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoX
+DTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNVBAoTCUJhbHRpbW9y
+ZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFsdGltb3JlIEN5YmVy
+VHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMEuyKr
+mD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjr
+IZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeK
+mpYcqWe4PwzV9/lSEy/CG9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSu
+XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZy
+dc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/ye
+jl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1
+BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3
+DQEBBQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT92
+9hkTI7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx
+jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0
+Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67G7fyUIhz
+ksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9HRCwBXbsdtTLS
+R9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp
+-----END CERTIFICATE-----
+mozilla/Trustis_FPS_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDZzCCAk+gAwIBAgIQGx+ttiD5JNM2a/fH8YygWTANBgkqhkiG9w0BAQUFADBF
+MQswCQYDVQQGEwJHQjEYMBYGA1UEChMPVHJ1c3RpcyBMaW1pdGVkMRwwGgYDVQQL
+ExNUcnVzdGlzIEZQUyBSb290IENBMB4XDTAzMTIyMzEyMTQwNloXDTI0MDEyMTEx
+MzY1NFowRTELMAkGA1UEBhMCR0IxGDAWBgNVBAoTD1RydXN0aXMgTGltaXRlZDEc
+MBoGA1UECxMTVHJ1c3RpcyBGUFMgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAMVQe547NdDfxIzNjpvto8A2mfRC6qc+gIMPpqdZh8mQRUN+
+AOqGeSoDvT03mYlmt+WKVoaTnGhLaASMk5MCPjDSNzoiYYkchU59j9WvezX2fihH
+iTHcDnlkH5nSW7r+f2C/revnPDgpai/lkQtV/+xvWNUtyd5MZnGPDNcE2gfmHhjj
+vSkCqPoc4Vu5g6hBSLwacY3nYuUtsuvffM/bq1rKMfFMIvMFE/eC+XN5DL7XSxzA
+0RU8k0Fk0ea+IxciAIleH2ulrG6nS4zto3Lmr2NNL4XSFDWaLk6M6jKYKIahkQlB
+OrTh4/L68MkKokHdqeMDx4gVOxzUGpTXn2RZEm0CAwEAAaNTMFEwDwYDVR0TAQH/
+BAUwAwEB/zAfBgNVHSMEGDAWgBS6+nEleYtXQSUhhgtx67JkDoshZzAdBgNVHQ4E
+FgQUuvpxJXmLV0ElIYYLceuyZA6LIWcwDQYJKoZIhvcNAQEFBQADggEBAH5Y//01
+GX2cGE+esCu8jowU/yyg2kdbw++BLa8F6nRIW/M+TgfHbcWzk88iNVy2P3UnXwmW
+zaD+vkAMXBJV+JOCyinpXj9WV4s4NvdFGkwozZ5BuO1WTISkQMi4sKUraXAEasP4
+1BIy+Q7DsdwyhEQsb8tGD+pmQQ9P8Vilpg0ND2HepZ5dfWWhPBfnqFVO76DH7cZE
+f1T1o+CP8HxVIo8ptoGj4W1OLBuAZ+ytIJ8MYmHVl/9D7S3B2l0pKoU/rGXuhg8F
+jZBf3+6f9L/uHfuY5H+QK4R4EA5sSVPvFVtlRkpdr7r7OnIdzfYliB6XzCGcKQEN
+ZetX2fNXlrtIzYE=
+-----END CERTIFICATE-----
+mozilla/UTN_USERFirst_Email_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEojCCA4qgAwIBAgIQRL4Mi1AAJLQR0zYlJWfJiTANBgkqhkiG9w0BAQUFADCB
+rjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug
+Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho
+dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xNjA0BgNVBAMTLVVUTi1VU0VSRmlyc3Qt
+Q2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBFbWFpbDAeFw05OTA3MDkxNzI4NTBa
+Fw0xOTA3MDkxNzM2NThaMIGuMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVVQxFzAV
+BgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5l
+dHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRydXN0LmNvbTE2MDQGA1UE
+AxMtVVROLVVTRVJGaXJzdC1DbGllbnQgQXV0aGVudGljYXRpb24gYW5kIEVtYWls
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsjmFpPJ9q0E7YkY3rs3B
+YHW8OWX5ShpHornMSMxqmNVNNRm5pELlzkniii8efNIxB8dOtINknS4p1aJkxIW9
+hVE1eaROaJB7HHqkkqgX8pgV8pPMyaQylbsMTzC9mKALi+VuG6JG+ni8om+rWV6l
+L8/K2m2qL+usobNqqrcuZzWLeeEeaYji5kbNoKXqvgvOdjp6Dpvq/NonWz1zHyLm
+SGHGTPNpsaguG7bUMSAsvIKKjqQOpdeJQ/wWWq8dcdcRWdq6hw2v+vPhwvCkxWeM
+1tZUOt4KpLoDd7NlyP0e03RiqhjKaJMeoYV+9Udly/hNVyh00jT/MLbu9mIwFIws
+6wIDAQABo4G5MIG2MAsGA1UdDwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud
+DgQWBBSJgmd9xJ0mcABLtFBIfN49rgRufTBYBgNVHR8EUTBPME2gS6BJhkdodHRw
+Oi8vY3JsLnVzZXJ0cnVzdC5jb20vVVROLVVTRVJGaXJzdC1DbGllbnRBdXRoZW50
+aWNhdGlvbmFuZEVtYWlsLmNybDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH
+AwQwDQYJKoZIhvcNAQEFBQADggEBALFtYV2mGn98q0rkMPxTbyUkxsrt4jFcKw7u
+7mFVbwQ+zznexRtJlOTrIEy05p5QLnLZjfWqo7NK2lYcYJeA3IKirUq9iiv/Cwm0
+xtcgBEXkzYABurorbs6q15L+5K/r9CYdFip/bDCVNy8zEqx/3cfREYxRmLLQo5HQ
+rfafnoOTHh1CuEava2bwm3/q4wMC5QJRwarVNZ1yQAOJujEdxRBoUp7fooXFXAim
+eOZTT7Hot9MUnpOmw2TjrH5xzbyf6QMbzPvprDHBr3wVdAKZw7JHpsIyYdfHb0gk
+USeh1YdV8nuPmD0Wnu51tvjQjvLzxq4oW6fw8zYX/MMF08oDSlQ=
+-----END CERTIFICATE-----
+mozilla/Swisscom_Root_CA_1.crt
+-----BEGIN CERTIFICATE-----
+MIIF2TCCA8GgAwIBAgIQXAuFXAvnWUHfV8w/f52oNjANBgkqhkiG9w0BAQUFADBk
+MQswCQYDVQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0
+YWwgQ2VydGlmaWNhdGUgU2VydmljZXMxGzAZBgNVBAMTElN3aXNzY29tIFJvb3Qg
+Q0EgMTAeFw0wNTA4MTgxMjA2MjBaFw0yNTA4MTgyMjA2MjBaMGQxCzAJBgNVBAYT
+AmNoMREwDwYDVQQKEwhTd2lzc2NvbTElMCMGA1UECxMcRGlnaXRhbCBDZXJ0aWZp
+Y2F0ZSBTZXJ2aWNlczEbMBkGA1UEAxMSU3dpc3Njb20gUm9vdCBDQSAxMIICIjAN
+BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0LmwqAzZuz8h+BvVM5OAFmUgdbI9
+m2BtRsiMMW8Xw/qabFbtPMWRV8PNq5ZJkCoZSx6jbVfd8StiKHVFXqrWW/oLJdih
+FvkcxC7mlSpnzNApbjyFNDhhSbEAn9Y6cV9Nbc5fuankiX9qUvrKm/LcqfmdmUc/
+TilftKaNXXsLmREDA/7n29uj/x2lzZAeAR81sH8A25Bvxn570e56eqeqDFdvpG3F
+EzuwpdntMhy0XmeLVNxzh+XTF3xmUHJd1BpYwdnP2IkCb6dJtDZd0KTeByy2dbco
+kdaXvij1mB7qWybJvbCXc9qukSbraMH5ORXWZ0sKbU/Lz7DkQnGMU3nn7uHbHaBu
+HYwadzVcFh4rUx80i9Fs/PJnB3r1re3WmquhsUvhzDdf/X/NTa64H5xD+SpYVUNF
+vJbNcA78yeNmuk6NO4HLFWR7uZToXTNShXEuT46iBhFRyePLoW4xCGQMwtI89Tbo
+19AOeCMgkckkKmUpWyL3Ic6DXqTz3kvTaI9GdVyDCW4pa8RwjPWd1yAv/0bSKzjC
+L3UcPX7ape8eYIVpQtPM+GP+HkM5haa2Y0EQs3MevNP6yn0WR+Kn1dCjigoIlmJW
+bjTb2QK5MHXjBNLnj8KwEUAKrNVxAmKLMb7dxiNYMUJDLXT5xp6mig/p/r+D5kNX
+JLrvRjSq1xIBOO0CAwEAAaOBhjCBgzAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0hBBYw
+FDASBgdghXQBUwABBgdghXQBUwABMBIGA1UdEwEB/wQIMAYBAf8CAQcwHwYDVR0j
+BBgwFoAUAyUv3m+CATpcLNwroWm1Z9SM0/0wHQYDVR0OBBYEFAMlL95vggE6XCzc
+K6FptWfUjNP9MA0GCSqGSIb3DQEBBQUAA4ICAQA1EMvspgQNDQ/NwNurqPKIlwzf
+ky9NfEBWMXrrpA9gzXrzvsMnjgM+pN0S734edAY8PzHyHHuRMSG08NBsl9Tpl7Ik
+Vh5WwzW9iAUPWxAaZOHHgjD5Mq2eUCzneAXQMbFamIp1TpBcahQq4FJHgmDmHtqB
+sfsUC1rxn9KVuj7QG9YVHaO+htXbD8BJZLsuUBlL0iT43R4HVtA4oJVwIHaM190e
+3p9xxCPvgxNcoyQVTSlAPGrEqdi3pkSlDfTgnXceQHAm/NrZNuR55LU/vJtlvrsR
+ls/bxig5OgjOR1tTWsWZ/l2p3e9M1MalrQLmjAcSHm8D0W+go/MpvRLHUKKwf4ip
+mXeascClOS5cfGniLLDqN2qk4Vrh9VDlg++luyqI54zb/W1elxmofmZ1a3Hqv7HH
+b6D0jqTsNFFbjCYDcKF31QESVwA12yPeDooomf2xEG9L/zgtYE4snOtnta1J7ksf
+rK/7DZBaZmBwXarNeNQk7shBoJMBkpxqnvy5JMWzFYJ+vq6VK+uxwNrjAWALXmms
+hFZhvnEX/h0TD/7Gh0Xp/jKgGg0TpJRVcaUWi7rKibCyx/yP2FS1k2Kdzs9Z+z0Y
+zirLNRWCXf9UIltxUvu3yf5gmwBBZPCqKuy2QkPOiWaByIufOVQDJdMWNY6E0F/6
+MBr1mmz0DlP5OlvRHA==
+-----END CERTIFICATE-----
+mozilla/QuoVadis_Root_CA_3.crt
+-----BEGIN CERTIFICATE-----
+MIIGnTCCBIWgAwIBAgICBcYwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x
+GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv
+b3QgQ0EgMzAeFw0wNjExMjQxOTExMjNaFw0zMTExMjQxOTA2NDRaMEUxCzAJBgNV
+BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W
+YWRpcyBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDM
+V0IWVJzmmNPTTe7+7cefQzlKZbPoFog02w1ZkXTPkrgEQK0CSzGrvI2RaNggDhoB
+4hp7Thdd4oq3P5kazethq8Jlph+3t723j/z9cI8LoGe+AaJZz3HmDyl2/7FWeUUr
+H556VOijKTVopAFPD6QuN+8bv+OPEKhyq1hX51SGyMnzW9os2l2ObjyjPtr7guXd
+8lyyBTNvijbO0BNO/79KDDRMpsMhvVAEVeuxu537RR5kFd5VAYwCdrXLoT9Cabwv
+vWhDFlaJKjdhkf2mrk7AyxRllDdLkgbvBNDInIjbC3uBr7E9KsRlOni27tyAsdLT
+mZw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb659n/je7Mwpp5ijJUMv7/FfJuGITfhe
+btfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJCg54U7QVSWllWp5f8nT8KKdjc
+T5EOE7zelaTfi5m+rJsziO+1ga8bxiJTyPbH7pcUsMV8eFLI8M5ud2CEpukqdiDt
+WAEXMJPpGovgc2PZapKUSU60rUqFxKMiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkODZ
+c6tsgLjoC2SToJyMGf+z0gzskSaHirOi4XCPLArlzW1oUevaPwV/izLmE1xr/l9A
+4iLItLRkT9a6fUg+qGkM17uGcclzuD87nSVL2v9A6wIDAQABo4IBlTCCAZEwDwYD
+VR0TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIHWMIHTBgkrBgEEAb5YAAMwgcUwgZMG
+CCsGAQUFBwICMIGGGoGDQW55IHVzZSBvZiB0aGlzIENlcnRpZmljYXRlIGNvbnN0
+aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0
+aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0YXRlbWVu
+dC4wLQYIKwYBBQUHAgEWIWh0dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwuY29tL2Nw
+czALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFPLAE+CCQz777i9nMpY1XNu4ywLQMG4G
+A1UdIwRnMGWAFPLAE+CCQz777i9nMpY1XNu4ywLQoUmkRzBFMQswCQYDVQQGEwJC
+TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDEbMBkGA1UEAxMSUXVvVmFkaXMg
+Um9vdCBDQSAzggIFxjANBgkqhkiG9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZVqyM0
+7ucp2sNbtrCD2dDQ4iH782CnO11gUyeim/YIIirnv6By5ZwkajGxkHon24QRiSem
+d1o417+shvzuXYO8BsbRd2sPbSQvS3pspweWyuOEn62Iix2rFo1bZhfZFvSLgNLd
++LJ2w/w4E6oM3kJpK27zPOuAJ9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyUDUSly7B
+4f/xI4hROJ/yZlZ25w9Rl6VSDE1JUZU2Pb+iSwwQHYaZTKrzchGT5Or2m9qoXadN
+t54CrnMAyNojA+j56hl0YgCUyyIgvpSnWbWCar6ZeXqp8kokUvd0/bpO5qgdAm6x
+DYBEwa7TIzdfu4V8K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO9SbkbnBCbjPsMZ57
+k8HkyWkaPcBrTiJt7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmRmioHfRMJ6s
+zHXug/WwYjnPbFfiTNKRCw51KBuav/0aQ/HKd/s7j2G4aSgWQgRecCocIdiP4b0j
+Wy10QJLZYxkNc91pvGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeT
+mJlglFwjz1onl14LBQaTNx47aTbrqZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK
+4SVhM7JZG+Ju1zdXtg2pEto=
+-----END CERTIFICATE-----
+mozilla/GeoTrust_Primary_Certification_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIIDfDCCAmSgAwIBAgIQGKy1av1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQUFADBY
+MQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA1UEAxMo
+R2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEx
+MjcwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMFgxCzAJBgNVBAYTAlVTMRYwFAYDVQQK
+Ew1HZW9UcnVzdCBJbmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQcmltYXJ5IENlcnRp
+ZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
+AQEAvrgVe//UfH1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+zmEwu3qDXwK9
+AWbK7hWNb6EwnL2hhZ6UOvNWiAAxz9juapYC2e0DjPt1befquFUWBRaa9OBesYjA
+ZIVcFU2Ix7e64HXprQU9nceJSOC7KMgD4TCTZF5SwFlwIjVXiIrxlQqD17wxcwE0
+7e9GceBrAqg1cmuXm2bgyxx5X9gaBGgeRwLmnWDiNpcB3841kt++Z8dtd1k7j53W
+kBWUvEI0EME5+bEnPn7WinXFsq+W06Lem+SYvn3h6YGttm/81w7a4DSwDRp35+MI
+mO9Y+pyEtzavwt+s0vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4G
+A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFbSvtr2ZnJM5IwDQYJ
+KoZIhvcNAQEFBQADggEBAFpwfyzdtzRP9YZRqSa+S7iq8XEN3GHHoOo0Hnp3DwQ1
+6CePbJC/kRYkRj5KTs4rFtULUh38H2eiAkUxT87z+gOneZ1TatnaYzr4gNfTmeGl
+4b7UVXGYNTq+k+qurUKykG/g/CFNNWMziUnWm07Kx+dOCQD32sfvmWKZd7aVIl6K
+oKv0uHiYyjgZmclynnjNS6yvGaBzEi38wkG6gZHaFloxt/m0cYASSJlyc1pZU8Fj
+UjPtp8nSOQJw+uCxQmYpqptR7TBUIhRf2asdweSU8Pj1K/fqynhG1riR/aYNKxoU
+AT6A8EKglQdebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk=
+-----END CERTIFICATE-----
+mozilla/Cybertrust_Global_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIDoTCCAomgAwIBAgILBAAAAAABD4WqLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBYG
+A1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2Jh
+bCBSb290MB4XDTA2MTIxNTA4MDAwMFoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA1UE
+ChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2JhbCBS
+b290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+Mi8vRRQZhP/8NN5
+7CPytxrHjoXxEnOmGaoQ25yiZXRadz5RfVb23CO21O1fWLE3TdVJDm71aofW0ozS
+J8bi/zafmGWgE07GKmSb1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb3VOm2y
+HLtgwEZLAfVJrn5GitB0jaEMAs7u/OePuGtm839EAL9mJRQr3RAwHQeWP032a7iP
+t3sMpTjr3kfb1V05/Iin89cqdPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93TZxiyWNz
+FtApD0mpSPCzqrdsxacwOUBdrsTiXSZT8M4cIwhhqJQZugRiQOwfOHB3EgZxpzAY
+XSUnpQIDAQABo4GlMIGiMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/
+MB0GA1UdDgQWBBS2CHsNesysIEyGVjJez6tuhS1wVzA/BgNVHR8EODA2MDSgMqAw
+hi5odHRwOi8vd3d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC9jdC9jdHJvb3QuY3Js
+MB8GA1UdIwQYMBaAFLYIew16zKwgTIZWMl7Pq26FLXBXMA0GCSqGSIb3DQEBBQUA
+A4IBAQBW7wojoFROlZfJ+InaRcHUowAl9B8Tq7ejhVhpwjCt2BWKLePJzYFa+HMj
+Wqd8BfP9IjsO0QbE2zZMcwSO5bAi5MXzLqXZI+O4Tkogp24CJJ8iYGd7ix1yCcUx
+XOl5n4BHPa2hCwcUPUf/A2kaDAtE52Mlp3+yybh2hO0j9n0Hq0V+09+zv+mKts2o
+omcrUtW3ZfA5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYRB+TX3EJIrduPuoc
+A06dGiBh+4E37F78CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0tl0ypkxWdYcQBX0jW
+WL1WMRJOEcgh4LMRkWXbtKaIOM5V
+-----END CERTIFICATE-----
+mozilla/SwissSign_Silver_CA_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIIFvTCCA6WgAwIBAgIITxvUL1S7L0swDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UE
+BhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWdu
+IFNpbHZlciBDQSAtIEcyMB4XDTA2MTAyNTA4MzI0NloXDTM2MTAyNTA4MzI0Nlow
+RzELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMY
+U3dpc3NTaWduIFNpbHZlciBDQSAtIEcyMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A
+MIICCgKCAgEAxPGHf9N4Mfc4yfjDmUO8x/e8N+dOcbpLj6VzHVxumK4DV644N0Mv
+Fz0fyM5oEMF4rhkDKxD6LHmD9ui5aLlV8gREpzn5/ASLHvGiTSf5YXu6t+WiE7br
+YT7QbNHm+/pe7R20nqA1W6GSy/BJkv6FCgU+5tkL4k+73JU3/JHpMjUi0R86TieF
+nbAVlDLaYQ1HTWBCrpJH6INaUFjpiou5XaHc3ZlKHzZnu0jkg7Y360g6rw9njxcH
+6ATK72oxh9TAtvmUcXtnZLi2kUpCe2UuMGoM9ZDulebyzYLs2aFK7PayS+VFheZt
+eJMELpyCbTapxDFkH4aDCyr0NQp4yVXPQbBH6TCfmb5hqAaEuSh6XzjZG6k4sIN/
+c8HDO0gqgg8hm7jMqDXDhBuDsz6+pJVpATqJAHgE2cn0mRmrVn5bi4Y5FZGkECwJ
+MoBgs5PAKrYYC51+jUnyEEp/+dVGLxmSo5mnJqy7jDzmDrxHB9xzUfFwZC8I+bRH
+HTBsROopN4WSaGa8gzj+ezku01DwH/teYLappvonQfGbGHLy9YR0SslnxFSuSGTf
+jNFusB3hB48IHpmccelM2KX3RxIfdNFRnobzwqIjQAtz20um53MGjMGg6cFZrEb6
+5i/4z3GcRm25xBWNOHkDRUjvxF3XCO6HOSKGsg0PWEP3calILv3q1h8CAwEAAaOB
+rDCBqTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU
+F6DNweRBtjpbO8tFnb0cwpj6hlgwHwYDVR0jBBgwFoAUF6DNweRBtjpbO8tFnb0c
+wpj6hlgwRgYDVR0gBD8wPTA7BglghXQBWQEDAQEwLjAsBggrBgEFBQcCARYgaHR0
+cDovL3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIB
+AHPGgeAn0i0P4JUw4ppBf1AsX19iYamGamkYDHRJ1l2E6kFSGG9YrVBWIGrGvShp
+WJHckRE1qTodvBqlYJ7YH39FkWnZfrt4csEGDyrOj4VwYaygzQu4OSlWhDJOhrs9
+xCrZ1x9y7v5RoSJBsXECYxqCsGKrXlcSH9/L3XWgwF15kIwb4FDm3jH+mHtwX6WQ
+2K34ArZv02DdQEsixT2tOnqfGhpHkXkzuoLcMmkDlm4fS/Bx/uNncqCxv1yL5PqZ
+IseEuRuNI5c/7SXgz2W79WEE790eslpBIlqhn10s6FvJbakMDHiqYMZWjwFaDGi8
+aRl5xB9+lwW/xekkUV7U1UtT7dkjWjYDZaPBA61BMPNGG4WQr2W11bHkFlt4dR2X
+em1ZqSqPe97Dh4kQmUlzeMg9vVE1dCrV8X5pGyq7O70luJpaPXJhkGaH7gzWTdQR
+dAtq/gsD/KNVV4n+SsuuWxcFyPKNIzFTONItaj+CuY0IavdeQXRuwxF+B6wpYJE/
+OMpXEA29MC/HpeZBoNquBYeaoKRlbEwJDIm6uNO5wJOKMPqN5ZprFQFOZ6raYlY+
+hAhm0sQ2fac+EPyI4NSA5QC9qvNOBqN6avlicuMJT+ubDgEj8Z+7fNzcbBGXJbLy
+tGMU0gYqZ4yD9c7qB9iaah7s5Aq7KkzrCWA5zspi2C5u
+-----END CERTIFICATE-----
+mozilla/Hellenic_Academic_and_Research_Institutions_RootCA_2011.crt
+-----BEGIN CERTIFICATE-----
+MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1Ix
+RDBCBgNVBAoTO0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1
+dGlvbnMgQ2VydC4gQXV0aG9yaXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1p
+YyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIFJvb3RDQSAyMDExMB4XDTExMTIw
+NjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYTAkdSMUQwQgYDVQQK
+EztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIENl
+cnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl
+c2VhcmNoIEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEB
+BQADggEPADCCAQoCggEBAKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPz
+dYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJ
+fel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa71HFK9+WXesyHgLacEns
+bgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u8yBRQlqD
+75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSP
+FEDH3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNV
+HRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp
+5dgTBCPuQSUwRwYDVR0eBEAwPqA8MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQu
+b3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQub3JnMA0GCSqGSIb3DQEBBQUA
+A4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVtXdMiKahsog2p
+6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8
+TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7
+dIsXRSZMFpGD/md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8Acys
+Nnq/onN694/BtZqhFLKPM58N7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXI
+l7WdmplNsDz4SgCbZN2fOUvRJ9e4
+-----END CERTIFICATE-----
+mozilla/GlobalSign_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG
+A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv
+b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw
+MDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i
+YWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxT
+aWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZ
+jc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavp
+xy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp
+1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdG
+snUOhugZitVtbNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJ
+U26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N8
+9iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8E
+BTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0B
+AQUFAAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOz
+yj1hTdNGCbM+w6DjY1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE
+38NflNUVyRRBnMRddWQVDf9VMOyGj/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymP
+AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad
+DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME
+HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A==
+-----END CERTIFICATE-----
+mozilla/EE_Certification_Centre_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1
+MQswCQYDVQQGEwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1
+czEoMCYGA1UEAwwfRUUgQ2VydGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYG
+CSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIwMTAxMDMwMTAxMDMwWhgPMjAzMDEy
+MTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlBUyBTZXJ0aWZpdHNl
+ZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRyZSBS
+b290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEB
+AQUAA4IBDwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUy
+euuOF0+W2Ap7kaJjbMeMTC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvO
+bntl8jixwKIy72KyaOBhU8E2lf/slLo2rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIw
+WFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw93X2PaRka9ZP585ArQ/d
+MtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtNP2MbRMNE
+1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYD
+VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/
+zQas8fElyalL1BSZMEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYB
+BQUHAwMGCCsGAQUFBwMEBggrBgEFBQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEF
+BQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+RjxY6hUFaTlrg4wCQiZrxTFGGV
+v9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqMlIpPnTX/dqQG
+E5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u
+uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIW
+iAYLtqZLICjU3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/v
+GVCJYMzpJJUPwssd8m92kMfMdcGWxZ0=
+-----END CERTIFICATE-----
+mozilla/America_Online_Root_Certification_Authority_1.crt
+-----BEGIN CERTIFICATE-----
+MIIDpDCCAoygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEc
+MBoGA1UEChMTQW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBP
+bmxpbmUgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAxMB4XDTAyMDUyODA2
+MDAwMFoXDTM3MTExOTIwNDMwMFowYzELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0Ft
+ZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2EgT25saW5lIFJvb3Qg
+Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP
+ADCCAQoCggEBAKgv6KRpBgNHw+kqmP8ZonCaxlCyfqXfaE0bfA+2l2h9LaaLl+lk
+hsmj76CGv2BlnEtUiMJIxUo5vxTjWVXlGbR0yLQFOVwWpeKVBeASrlmLojNoWBym
+1BW32J/X3HGrfpq/m44zDyL9Hy7nBzbvYjnF3cu6JRQj3gzGPTzOggjmZj7aUTsW
+OqMFf6Dch9Wc/HKpoH145LcxVR5lu9RhsCFg7RAycsWSJR74kEoYeEfffjA3PlAb
+2xzTa5qGUwew76wGePiEmf4hjUyAtgyC9mZweRrTT6PP8c9GsEsPPt2IYriMqQko
+O3rHl+Ee5fSfwMCuJKDIodkP1nsmgmkyPacCAwEAAaNjMGEwDwYDVR0TAQH/BAUw
+AwEB/zAdBgNVHQ4EFgQUAK3Zo/Z59m50qX8zPYEX10zPM94wHwYDVR0jBBgwFoAU
+AK3Zo/Z59m50qX8zPYEX10zPM94wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEB
+BQUAA4IBAQB8itEfGDeC4Liwo+1WlchiYZwFos3CYiZhzRAW18y0ZTTQEYqtqKkF
+Zu90821fnZmv9ov761KyBZiibyrFVL0lvV+uyIbqRizBs73B6UlwGBaXCBOMIOAb
+LjpHyx7kADCVW/RFo8AasAFOq73AI25jP4BKxQft3OJvx8Fi8eNy1gTIdGcL+oir
+oQHIb/AUr9KZzVGTfu0uOMe9zkZQPXLjeSWdm4grECDdpbgyn43gKd8hdIaC2y+C
+MMbHNYaz+ZZfRtsMRf3zUMNvxsNIrUam4SdHCh0Om7bCd39j8uB9Gr784N/Xx6ds
+sPmuujz9dLQR6FgNgLzTqIA6me11zEZ7
+-----END CERTIFICATE-----
+mozilla/Starfield_Services_Root_Certificate_Authority_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx
+EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT
+HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs
+ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5
+MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD
+VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy
+ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy
+dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p
+OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2
+8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K
+Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe
+hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk
+6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw
+DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q
+AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI
+bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB
+ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z
+qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd
+iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn
+0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN
+sSi6
+-----END CERTIFICATE-----
+mozilla/DigiCert_Assured_ID_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
+MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
+d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
+b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
+EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
+cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
+MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
+JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
+mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
+wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
+VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
+AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
+AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
+BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
+pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
+dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
+fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
+NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
+H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
++o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
+-----END CERTIFICATE-----
+mozilla/GeoTrust_Universal_CA_2.crt
+-----BEGIN CERTIFICATE-----
+MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEW
+MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVy
+c2FsIENBIDIwHhcNMDQwMzA0MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYD
+VQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1
+c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC
+AQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0DE81
+WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUG
+FF+3Qs17j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdq
+XbboW0W63MOhBW9Wjo8QJqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxL
+se4YuU6W3Nx2/zu+z18DwPw76L5GG//aQMJS9/7jOvdqdzXQ2o3rXhhqMcceujwb
+KNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2WP0+GfPtDCapkzj4T8Fd
+IgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP20gaXT73
+y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRt
+hAAnZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgoc
+QIgfksILAAX/8sgCSqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4
+Lt1ZrtmhN79UNdxzMk+MBB4zsslG8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNV
+HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAfBgNV
+HSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8EBAMCAYYwDQYJ
+KoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z
+dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQ
+L1EuxBRa3ugZ4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgr
+Fg5fNuH8KrUwJM/gYwx7WBr+mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSo
+ag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpqA1Ihn0CoZ1Dy81of398j9tx4TuaY
+T1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpgY+RdM4kX2TGq2tbz
+GDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiPpm8m
+1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJV
+OCiNUW7dFGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH
+6aLcr34YEoP9VhdBLtUpgn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwX
+QMAJKOSLakhT2+zNVVXxxvjpoixMptEmX36vWkzaH6byHCx+rgIW0lbQL1dTR+iS
+-----END CERTIFICATE-----
+mozilla/GeoTrust_Global_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT
+MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
+YWwgQ0EwHhcNMDIwNTIxMDQwMDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQG
+EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEbMBkGA1UEAxMSR2VvVHJ1c3Qg
+R2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2swYYzD9
+9BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjoBbdq
+fnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDv
+iS2Aelet8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU
+1XupGc1V3sjs0l44U+VcT4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+
+bw8HHa8sHo9gOeL6NlMTOdReJivbPagUvTLrGAMoUgRx5aszPeE4uwc2hGKceeoW
+MPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTA
+ephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVkDBF9qn1l
+uMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKIn
+Z57QzxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfS
+tQWVYrmm3ok9Nns4d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcF
+PseKUgzbFbS9bZvlxrFUaKnjaZC2mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Un
+hw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6pXE0zX5IJL4hmXXeXxx12E6nV
+5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvmMw==
+-----END CERTIFICATE-----
+mozilla/QuoVadis_Root_CA_2.crt
+-----BEGIN CERTIFICATE-----
+MIIFtzCCA5+gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x
+GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv
+b3QgQ0EgMjAeFw0wNjExMjQxODI3MDBaFw0zMTExMjQxODIzMzNaMEUxCzAJBgNV
+BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W
+YWRpcyBSb290IENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCa
+GMpLlA0ALa8DKYrwD4HIrkwZhR0In6spRIXzL4GtMh6QRr+jhiYaHv5+HBg6XJxg
+Fyo6dIMzMH1hVBHL7avg5tKifvVrbxi3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55J
+WpzmM+Yklvc/ulsrHHo1wtZn/qtmUIttKGAr79dgw8eTvI02kfN/+NsRE8Scd3bB
+rrcCaoF6qUWD4gXmuVbBlDePSHFjIuwXZQeVikvfj8ZaCuWw419eaxGrDPmF60Tp
++ARz8un+XJiM9XOva7R+zdRcAitMOeGylZUtQofX1bOQQ7dsE/He3fbE+Ik/0XX1
+ksOR1YqI0JDs3G3eicJlcZaLDQP9nL9bFqyS2+r+eXyt66/3FsvbzSUr5R/7mp/i
+Ucw6UwxI5g69ybR2BlLmEROFcmMDBOAENisgGQLodKcftslWZvB1JdxnwQ5hYIiz
+PtGo/KPaHbDRsSNU30R2be1B2MGyIrZTHN81Hdyhdyox5C315eXbyOD/5YDXC2Og
+/zOhD7osFRXql7PSorW+8oyWHhqPHWykYTe5hnMz15eWniN9gqRMgeKh0bpnX5UH
+oycR7hYQe7xFSkyyBNKr79X9DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9Otb+fVuI
+yV77zGHcizN300QyNQliBJIWENieJ0f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1Ud
+EwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1UdDgQWBBQahGK8SEwzJQTU7tD2
+A8QZRtGUazBuBgNVHSMEZzBlgBQahGK8SEwzJQTU7tD2A8QZRtGUa6FJpEcwRTEL
+MAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMT
+ElF1b1ZhZGlzIFJvb3QgQ0EgMoICBQkwDQYJKoZIhvcNAQEFBQADggIBAD4KFk2f
+BluornFdLwUvZ+YTRYPENvbzwCYMDbVHZF34tHLJRqUDGCdViXh9duqWNIAXINzn
+g/iN/Ae42l9NLmeyhP3ZRPx3UIHmfLTJDQtyU/h2BwdBR5YM++CCJpNVjP4iH2Bl
+fF/nJrP3MpCYUNQ3cVX2kiF495V5+vgtJodmVjB3pjd4M1IQWK4/YY7yarHvGH5K
+WWPKjaJW1acvvFYfzznB4vsKqBUsfU16Y8Zsl0Q80m/DShcK+JDSV6IZUaUtl0Ha
+B0+pUNqQjZRG4T7wlP0QADj1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57Es3zrWIozc
+hLsib9D45MY56QSIPMO661V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNWQjrLhVoQPR
+TUIZ3Ph1WVaj+ahJefivDrkRoHy3au000LYmYjgahwz46P0u05B/B5EqHdZ+XIWD
+mbA4CD/pXvk1B+TJYm5Xf6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmCXF2gw+nYSL0Z
+ohEUGW6yhhtoPkg3Goi3XZZenMfvJ2II4pEZXNLxId26F0KCl3GBUzGpn/Z9Yr9y
+4aOTHcyKJloJONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8VCLAAVBpQ570su9t+Oza
+8eOx79+Rj1QqCyXBJhnEUhAFZdWCEOrCMc0u
+-----END CERTIFICATE-----
+mozilla/AffirmTrust_Commercial.crt
+-----BEGIN CERTIFICATE-----
+MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UE
+BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz
+dCBDb21tZXJjaWFsMB4XDTEwMDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDEL
+MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp
+cm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
+AQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6EqdbDuKP
+Hx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yr
+ba0F8PrVC8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPAL
+MeIrJmqbTFeurCA+ukV6BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1
+yHp52UKqK39c/s4mT6NmgTWvRLpUHhwwMmWd5jyTXlBOeuM61G7MGvv50jeuJCqr
+VwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNVHQ4EFgQUnZPGU4teyq8/
+nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ
+KoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYG
+XUPGhi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNj
+vbz4YYCanrHOQnDiqX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivt
+Z8SOyUOyXGsViQK8YvxO8rUzqrJv0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9g
+N53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0khsUlHRUe072o0EclNmsxZt9YC
+nlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8=
+-----END CERTIFICATE-----
+mozilla/certSIGN_ROOT_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDODCCAiCgAwIBAgIGIAYFFnACMA0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBAYT
+AlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBD
+QTAeFw0wNjA3MDQxNzIwMDRaFw0zMTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYTAlJP
+MREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBDQTCC
+ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczuX7IJUqOtdu0KBuqV5Do
+0SLTZLrTk+jUrIZhQGpgV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/v+yv6efHHrfAQ
+UySQi2bJqIirr1qjAOm+ukbuW3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXDe3i+s5d
+RdY4zTW2ssHQnIFKquSyAVwdj1+ZxLGt24gh65AIgoDzMKND5pCCrlUoSe1b16kQ
+OA7+j0xbm0bqQfWwCHTD0IgztnzXdN/chNFDDnU5oSVAKOp4yw4sLjmdjItuFhwv
+JoIQ4uNllAoEwF73XVv4EOLQunpL+943AAAaWyjj0pxzPjKHmKHJUS/X3qwzs08C
+AwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAcYwHQYDVR0O
+BBYEFOCMm9slSbPxfIbWskKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA4IBAQA+0hyJ
+LjX8+HXd5n9liPRyTMks1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J06Gh40CEyecY
+MnQ8SG4Pn0vU9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NOFlV2oHB5bc0hH88vLbwZ
+44gx+FkagQnIl6Z0x2DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL+Hsr0Wefmq5L6I
+Jd1hJyMctTEHBDa0GpC9oHRxUIltvBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNw
+i/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7NzTogVZ96edhBiIL5VaZVDADlN
+9u6wWk5JRFRYX0KD
+-----END CERTIFICATE-----
+mozilla/GlobalSign_Root_CA_-_R3.crt
+-----BEGIN CERTIFICATE-----
+MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G
+A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp
+Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4
+MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG
+A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8
+RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT
+gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm
+KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd
+QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ
+XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw
+DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o
+LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU
+RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp
+jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK
+6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX
+mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs
+Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH
+WD9f
+-----END CERTIFICATE-----
+mozilla/QuoVadis_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJC
+TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9vdCBDZXJ0
+aWZpY2F0aW9uIEF1dGhvcml0eTEuMCwGA1UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0
+aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAzMTkxODMzMzNaFw0yMTAzMTcxODMz
+MzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUw
+IwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQDEyVR
+dW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG
+9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv2G1lVO6V/z68mcLOhrfEYBklbTRvM16z/Yp
+li4kVEAkOPcahdxYTMukJ0KX0J+DisPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2D
+rOpm2RgbaIr1VxqYuvXtdj182d6UajtLF8HVj71lODqV0D1VNk7feVcxKh7YWWVJ
+WCCYfqtffp/p1k3sg3Spx2zY7ilKhSoGFPlU5tPaZQeLYzcS19Dsw3sgQUSj7cug
+F+FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWenAScOospU
+xbF6lR1xHkopigPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCC
+Ak4wPQYIKwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVv
+dmFkaXNvZmZzaG9yZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREw
+ggENMIIBCQYJKwYBBAG+WAABMIH7MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlhbmNl
+IG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBh
+c3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFy
+ZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRpb24gcHJh
+Y3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmljYXRlIFBvbGljeS4wIgYI
+KwYBBQUHAgEWFmh0dHA6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFItLbe3T
+KbkGGew5Oanwl4Rqy+/fMIGuBgNVHSMEgaYwgaOAFItLbe3TKbkGGew5Oanwl4Rq
+y+/foYGEpIGBMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1p
+dGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYD
+VQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6tlCL
+MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSk
+fnIYj9lofFIk3WdvOXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf8
+7C9TqnN7Az10buYWnuulLsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1R
+cHhXHTMe/QKZnAzNCgVPx7uOpHX6Sm2xgI4JVrmcGmD+XcHXetwReNDWXcG31a0y
+mQM6isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi5upZIof4l/UO/erMkqQW
+xFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi5nrQNiOK
+SnQ2+Q==
+-----END CERTIFICATE-----
+mozilla/XRamp_Global_CA_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCB
+gjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEk
+MCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRY
+UmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQxMTAxMTcx
+NDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3
+dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2Vy
+dmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB
+dXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS6
+38eMpSe2OAtp87ZOqCwuIR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCP
+KZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMxfoArtYzAQDsRhtDLooY2YKTVMIJt2W7Q
+DxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FEzG+gSqmUsE3a56k0enI4
+qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqsAxcZZPRa
+JSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNVi
+PvryxS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0P
+BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASs
+jVy16bYbMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0
+eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQEwDQYJKoZIhvcNAQEFBQAD
+ggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc/Kh4ZzXxHfAR
+vbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt
+qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLa
+IR9NmXmd4c8nnxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSy
+i6mx5O+aGtA9aZnuqCij4Tyz8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQ
+O+7ETPTsJ3xCwnR8gooJybQDJbw=
+-----END CERTIFICATE-----
+mozilla/StartCom_Certification_Authority_G2.crt
+-----BEGIN CERTIFICATE-----
+MIIFYzCCA0ugAwIBAgIBOzANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJJTDEW
+MBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlm
+aWNhdGlvbiBBdXRob3JpdHkgRzIwHhcNMTAwMTAxMDEwMDAxWhcNMzkxMjMxMjM1
+OTAxWjBTMQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoG
+A1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRzIwggIiMA0G
+CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2iTZbB7cgNr2Cu+EWIAOVeq8Oo1XJ
+JZlKxdBWQYeQTSFgpBSHO839sj60ZwNq7eEPS8CRhXBF4EKe3ikj1AENoBB5uNsD
+vfOpL9HG4A/LnooUCri99lZi8cVytjIl2bLzvWXFDSxu1ZJvGIsAQRSCb0AgJnoo
+D/Uefyf3lLE3PbfHkffiAez9lInhzG7TNtYKGXmu1zSCZf98Qru23QumNK9LYP5/
+Q0kGi4xDuFby2X8hQxfqp0iVAXV16iulQ5XqFYSdCI0mblWbq9zSOdIxHWDirMxW
+RST1HFSr7obdljKF+ExP6JV2tgXdNiNnvP8V4so75qbsO+wmETRIjfaAKxojAuuK
+HDp2KntWFhxyKrOq42ClAJ8Em+JvHhRYW6Vsi1g8w7pOOlz34ZYrPu8HvKTlXcxN
+nw3h3Kq74W4a7I/htkxNeXJdFzULHdfBR9qWJODQcqhaX2YtENwvKhOuJv4KHBnM
+0D4LnMgJLvlblnpHnOl68wVQdJVznjAJ85eCXuaPOQgeWeU1FEIT/wCc976qUM/i
+UUjXuG+v+E5+M5iSFGI6dWPPe/regjupuznixL0sAA7IF6wT700ljtizkC+p2il9
+Ha90OrInwMEePnWjFqmveiJdnxMaz6eg6+OGCtP95paV1yPIN93EfKo2rJgaErHg
+TuixO/XWb/Ew1wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
+AwIBBjAdBgNVHQ4EFgQUS8W0QGutHLOlHGVuRjaJhwUMDrYwDQYJKoZIhvcNAQEL
+BQADggIBAHNXPyzVlTJ+N9uWkusZXn5T50HsEbZH77Xe7XRcxfGOSeD8bpkTzZ+K
+2s06Ctg6Wgk/XzTQLwPSZh0avZyQN8gMjgdalEVGKua+etqhqaRpEpKwfTbURIfX
+UfEpY9Z1zRbkJ4kd+MIySP3bmdCPX1R0zKxnNBFi2QwKN4fRoxdIjtIXHfbX/dtl
+6/2o1PXWT6RbdejF0mCy2wl+JYt7ulKSnj7oxXehPOBKc2thz4bcQ///If4jXSRK
+9dNtD2IEBVeC2m6kMyV5Sy5UGYvMLD0w6dEG/+gyRr61M3Z3qAFdlsHB1b6uJcDJ
+HgoJIIihDsnzb02CVAAgp9KP5DlUFy6NHrgbuxu9mk47EDTcnIhT76IxW1hPkWLI
+wpqazRVdOKnWvvgTtZ8SafJQYqz7Fzf07rh1Z2AQ+4NQ+US1dZxAF7L+/XldblhY
+XzD8AK6vM8EOTmy6p6ahfzLbOOCxchcKK5HsamMm7YnUeMx0HgX4a/6ManY5Ka5l
+IxKVCCIcl85bBu4M4ru8H0ST9tg4RQUh7eStqxK2A6RCLi3ECToDZ2mEmuFZkIoo
+hdVddLHRDiBYmxOlsGOm7XtH/UVVMKTumtTm4ofvmMkyghEpIrwACjFeLQ/Ajulr
+so8uBtjRkcfGEvRM/TAXw8HaOFvjqermobp573PYtlNXLfbQ4ddI
+-----END CERTIFICATE-----
+mozilla/Go_Daddy_Class_2_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh
+MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE
+YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3
+MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo
+ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg
+MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN
+ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA
+PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w
+wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi
+EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY
+avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+
+YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE
+sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h
+/t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5
+IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj
+YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
+ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy
+OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P
+TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ
+HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER
+dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf
+ReYNnyicsbkqWletNw+vHX/bvZ8=
+-----END CERTIFICATE-----
+mozilla/GeoTrust_Primary_Certification_Authority_-_G3.crt
+-----BEGIN CERTIFICATE-----
+MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCB
+mDELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsT
+MChjKSAyMDA4IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25s
+eTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv
+cml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIzNTk1OVowgZgxCzAJ
+BgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg
+MjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0
+BgNVBAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg
+LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz
++uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5jK/BGvESyiaHAKAxJcCGVn2TAppMSAmUm
+hsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdEc5IiaacDiGydY8hS2pgn
+5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3CIShwiP/W
+JmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exAL
+DmKudlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZC
+huOl1UcCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYw
+HQYDVR0OBBYEFMR5yo6hTgMdHNxr2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IB
+AQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9cr5HqQ6XErhK8WTTOd8lNNTB
+zU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbEAp7aDHdlDkQN
+kv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD
+AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUH
+SJsMC8tJP33st/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2G
+spki4cErx5z481+oghLrGREt
+-----END CERTIFICATE-----
+mozilla/AddTrust_Public_Services_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIEFTCCAv2gAwIBAgIBATANBgkqhkiG9w0BAQUFADBkMQswCQYDVQQGEwJTRTEU
+MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3
+b3JrMSAwHgYDVQQDExdBZGRUcnVzdCBQdWJsaWMgQ0EgUm9vdDAeFw0wMDA1MzAx
+MDQxNTBaFw0yMDA1MzAxMDQxNTBaMGQxCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtB
+ZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQIE5ldHdvcmsxIDAeBgNV
+BAMTF0FkZFRydXN0IFB1YmxpYyBDQSBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOC
+AQ8AMIIBCgKCAQEA6Rowj4OIFMEg2Dybjxt+A3S72mnTRqX4jsIMEZBRpS9mVEBV
+6tsfSlbunyNu9DnLoblv8n75XYcmYZ4c+OLspoH4IcUkzBEMP9smcnrHAZcHF/nX
+GCwwfQ56HmIexkvA/X1id9NEHif2P0tEs7c42TkfYNVRknMDtABp4/MUTu7R3AnP
+dzRGULD4EfL+OHn3Bzn+UZKXC1sIXzSGAa2Il+tmzV7R/9x98oTaunet3IAIx6eH
+1lWfl2royBFkuucZKT8Rs3iQhCBSWxHveNCD9tVIkNAwHM+A+WD+eeSI8t0A65RF
+62WUaUC6wNW0uLp9BBGo6zEFlpROWCGOn9Bg/QIDAQABo4HRMIHOMB0GA1UdDgQW
+BBSBPjfYkrAfd59ctKtzquf2NGAv+jALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/BAUw
+AwEB/zCBjgYDVR0jBIGGMIGDgBSBPjfYkrAfd59ctKtzquf2NGAv+qFopGYwZDEL
+MAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQLExRBZGRU
+cnVzdCBUVFAgTmV0d29yazEgMB4GA1UEAxMXQWRkVHJ1c3QgUHVibGljIENBIFJv
+b3SCAQEwDQYJKoZIhvcNAQEFBQADggEBAAP3FUr4JNojVhaTdt02KLmuG7jD8WS6
+IBh4lSknVwW8fCr0uVFV2ocC3g8WFzH4qnkuCRO7r7IgGRLlk/lL+YPoRNWyQSW/
+iHVv/xD8SlTQX/D67zZzfRs2RcYhbbQVuE7PnFylPVoAjgbjPGsye/Kf8Lb93/Ao
+GEjwxrzQvzSAlsJKsW2Ox5BF3i9nrEUEo3rcVZLJR2bYGozH7ZxOmuASu7VqTITh
+4SINhwBk/ox9Yjllpu9CtoAlEmEBqCQTcAARJl/6NVDFSMwGR+gn2HCNX2TmoUQm
+XiLsks3/QppEIW1cxeMiHV9HEufOX1362KqxMy3ZdvJOOjMMK7MtkAY=
+-----END CERTIFICATE-----
+mozilla/A-Trust-nQual-03.crt
+-----BEGIN CERTIFICATE-----
+MIIDzzCCAregAwIBAgIDAWweMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MDgxNzIyMDAw
+MFoXDTE1MDgxNzIyMDAwMFowgY0xCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxGTAXBgNVBAsMEEEtVHJ1c3QtblF1YWwtMDMxGTAXBgNVBAMM
+EEEtVHJ1c3QtblF1YWwtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
+AQCtPWFuA/OQO8BBC4SAzewqo51ru27CQoT3URThoKgtUaNR8t4j8DRE/5TrzAUj
+lUC5B3ilJfYKvUWG6Nm9wASOhURh73+nyfrBJcyFLGM/BWBzSQXgYHiVEEvc+RFZ
+znF/QJuKqiTfC0Li21a8StKlDJu3Qz7dg9MmEALP6iPESU7l0+m0iKsMrmKS1GWH
+2WrX9IWf5DMiJaXlyDO6w8dB3F/GaswADm0yqLaHNgBid5seHzTLkDx4iHQF63n1
+k3Flyp3HaxgtPVxO59X4PzF9j4fsCiIvI+n+u33J4PTs63zEsMMtYrWacdaxaujs
+2e3Vcuy+VwHOBVWf3tFgiBCzAgMBAAGjNjA0MA8GA1UdEwEB/wQFMAMBAf8wEQYD
+VR0OBAoECERqlWdVeRFPMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOC
+AQEAVdRU0VlIXLOThaq/Yy/kgM40ozRiPvbY7meIMQQDbwvUB/tOdQ/TLtPAF8fG
+KOwGDREkDg6lXb+MshOWcdzUzg4NCmgybLlBMRmrsQd7TZjTXLDR8KdCoLXEjq/+
+8T/0709GAHbrAvv5ndJAlseIOrifEXnzgGWovR/TeIGgUUw3tKZdJXDRZslo+S4R
+FGjxVJgIrCaSD96JntT6s3kr0qN51OyLrIdTaEJMUVF0HhsnLuP1Hyl0Te2v9+GS
+mYHovjrHF1D2t8b8m7CKa9aIA5GPBnc6hQLdmNVDeD/GMBWsm2vLV7eJUYs66MmE
+DNuxUCAKGkq6ahq97BvIxYSazQ==
+-----END CERTIFICATE-----
+mozilla/TDC_OCES_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIFGTCCBAGgAwIBAgIEPki9xDANBgkqhkiG9w0BAQUFADAxMQswCQYDVQQGEwJE
+SzEMMAoGA1UEChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTAeFw0wMzAyMTEw
+ODM5MzBaFw0zNzAyMTEwOTA5MzBaMDExCzAJBgNVBAYTAkRLMQwwCgYDVQQKEwNU
+REMxFDASBgNVBAMTC1REQyBPQ0VTIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEArGL2YSCyz8DGhdfjeebM7fI5kqSXLmSjhFuHnEz9pPPEXyG9VhDr
+2y5h7JNp46PMvZnDBfwGuMo2HP6QjklMxFaaL1a8z3sM8W9Hpg1DTeLpHTk0zY0s
+2RKY+ePhwUp8hjjEqcRhiNJerxomTdXkoCJHhNlktxmW/OwZ5LKXJk5KTMuPJItU
+GBxIYXvViGjaXbXqzRowwYCDdlCqT9HU3Tjw7xb04QxQBr/q+3pJoSgrHPb8FTKj
+dGqPqcNiKXEx5TukYBdedObaE+3pHx8b0bJoc8YQNHVGEBDjkAB2QMuLt0MJIf+r
+TpPGWOmlgtt3xDqZsXKVSQTwtyv6e1mO3QIDAQABo4ICNzCCAjMwDwYDVR0TAQH/
+BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwgewGA1UdIASB5DCB4TCB3gYIKoFQgSkB
+AQEwgdEwLwYIKwYBBQUHAgEWI2h0dHA6Ly93d3cuY2VydGlmaWthdC5kay9yZXBv
+c2l0b3J5MIGdBggrBgEFBQcCAjCBkDAKFgNUREMwAwIBARqBgUNlcnRpZmlrYXRl
+ciBmcmEgZGVubmUgQ0EgdWRzdGVkZXMgdW5kZXIgT0lEIDEuMi4yMDguMTY5LjEu
+MS4xLiBDZXJ0aWZpY2F0ZXMgZnJvbSB0aGlzIENBIGFyZSBpc3N1ZWQgdW5kZXIg
+T0lEIDEuMi4yMDguMTY5LjEuMS4xLjARBglghkgBhvhCAQEEBAMCAAcwgYEGA1Ud
+HwR6MHgwSKBGoESkQjBAMQswCQYDVQQGEwJESzEMMAoGA1UEChMDVERDMRQwEgYD
+VQQDEwtUREMgT0NFUyBDQTENMAsGA1UEAxMEQ1JMMTAsoCqgKIYmaHR0cDovL2Ny
+bC5vY2VzLmNlcnRpZmlrYXQuZGsvb2Nlcy5jcmwwKwYDVR0QBCQwIoAPMjAwMzAy
+MTEwODM5MzBagQ8yMDM3MDIxMTA5MDkzMFowHwYDVR0jBBgwFoAUYLWF7FZkfhIZ
+J2cdUBVLc647+RIwHQYDVR0OBBYEFGC1hexWZH4SGSdnHVAVS3OuO/kSMB0GCSqG
+SIb2fQdBAAQQMA4bCFY2LjA6NC4wAwIEkDANBgkqhkiG9w0BAQUFAAOCAQEACrom
+JkbTc6gJ82sLMJn9iuFXehHTuJTXCRBuo7E4A9G28kNBKWKnctj7fAXmMXAnVBhO
+inxO5dHKjHiIzxvTkIvmI/gLDjNDfZziChmPyQE+dF10yYscA+UYyAFMP8uXBV2Y
+caaYb7Z8vTd/vuGTJW1v8AqtFxjhA7wHKcitJuj4YfD9IQl+mo6paH1IYnK9AOoB
+mbgGglGBTvH1tJFUuSN6AJqfXY3gPGS5GhKSKseCRHI53OI8xthV9RVOyAUO28bQ
+YqbsFbS1AoLbrIyigfCbmTH1ICCoiGEKB5+U/NDXG8wuF/MEJ3Zn61SD/aSQfgY9
+BKNDLdr8C2LqL19iUw==
+-----END CERTIFICATE-----
+mozilla/Verisign_Class_2_Public_Primary_Certification_Authority_-_G3.crt
+-----BEGIN CERTIFICATE-----
+MIIEGTCCAwECEGFwy0mMX5hFKeewptlQW3owDQYJKoZIhvcNAQEFBQAwgcoxCzAJ
+BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVy
+aVNpZ24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24s
+IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNp
+Z24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0
+eSAtIEczMB4XDTk5MTAwMTAwMDAwMFoXDTM2MDcxNjIzNTk1OVowgcoxCzAJBgNV
+BAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNp
+Z24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24sIElu
+Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24g
+Q2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAt
+IEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArwoNwtUs22e5LeWU
+J92lvuCwTY+zYVY81nzD9M0+hsuiiOLh2KRpxbXiv8GmR1BeRjmL1Za6tW8UvxDO
+JxOeBUebMXoT2B/Z0wI3i60sR/COgQanDTAM6/c8DyAd3HJG7qUCyFvDyVZpTMUY
+wZF7C9UTAJu878NIPkZgIIUq1ZC2zYugzDLdt/1AVbJQHFauzI13TccgTacxdu9o
+koqQHgiBVrKtaaNS0MscxCM9H5n+TOgWY47GCI72MfbS+uV23bUckqNJzc0BzWjN
+qWm6o+sdDZykIKbBoMXRRkwXbdKsZj+WjOCE1Db/IlnF+RFgqF8EffIa9iVCYQ/E
+Srg+iQIDAQABMA0GCSqGSIb3DQEBBQUAA4IBAQA0JhU8wI1NQ0kdvekhktdmnLfe
+xbjQ5F1fdiLAJvmEOjr5jLX77GDx6M4EsMjdpwOPMPOY36TmpDHf0xwLRtxyID+u
+7gU8pDM/CzmscHhzS5kr3zDCVLCoO1Wh/hYozUK9dG6A2ydEp85EXdQbkJgNHkKU
+sQAsBNB0owIFImNjzYO1+8FtYmtpdf1dcEG59b98377BMnMiIYtYgXsVkXq642RI
+sH/7NiXaldDxJBQX3RiAa0YjOVT1jmIJBB2UkKab5iXiQkWquJCtvgiPqQtCGJTP
+cjnhsUPgKM+351psE2tJs//jGHyJizNdrDPXp/naOlXJWBD5qu9ats9LS98q
+-----END CERTIFICATE-----
+mozilla/SecureSign_RootCA11.crt
+-----BEGIN CERTIFICATE-----
+MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDEr
+MCkGA1UEChMiSmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoG
+A1UEAxMTU2VjdXJlU2lnbiBSb290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0
+MDgwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMSswKQYDVQQKEyJKYXBhbiBDZXJ0aWZp
+Y2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQDExNTZWN1cmVTaWduIFJvb3RD
+QTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA/XeqpRyQBTvLTJsz
+i1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1yfIw/XwFndBWW4wI8
+h9uuywGOwvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyKyiyhFTOV
+MdrAG/LuYpmGYz+/3ZMqg6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9
+UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rPO7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni
+8McDWc/V1uinMrPmmECGxc0nEovMe863ETxiYAcjPitAbpSACW22s293bzUIUPsC
+h8U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZXt94wDgYD
+VR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEB
+AKChOBZmLqdWHyGcBvod7bkixTgm2E5P7KN/ed5GIaGHd48HCJqypMWvDzKYC3xm
+KbabfSVSSUOrTC4rbnpwrxYO4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIhQ
+X5Ucv+2rIrVls4W6ng+4reV6G4pQOh29Dbx7VFALuUKvVaAYga1lme++5Jy/xIWr
+QbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01y8hSyn+B/tlr0/cR7SXf+Of5
+pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061lgeLKBObjBmN
+QSdJQO7e5iNEOdyhIta6A/I=
+-----END CERTIFICATE-----
+mozilla/ComSign_Secured_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDqzCCApOgAwIBAgIRAMcoRwmzuGxFjB36JPU2TukwDQYJKoZIhvcNAQEFBQAw
+PDEbMBkGA1UEAxMSQ29tU2lnbiBTZWN1cmVkIENBMRAwDgYDVQQKEwdDb21TaWdu
+MQswCQYDVQQGEwJJTDAeFw0wNDAzMjQxMTM3MjBaFw0yOTAzMTYxNTA0NTZaMDwx
+GzAZBgNVBAMTEkNvbVNpZ24gU2VjdXJlZCBDQTEQMA4GA1UEChMHQ29tU2lnbjEL
+MAkGA1UEBhMCSUwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGtWhf
+HZQVw6QIVS3joFd67+l0Kru5fFdJGhFeTymHDEjWaueP1H5XJLkGieQcPOqs49oh
+gHMhCu95mGwfCP+hUH3ymBvJVG8+pSjsIQQPRbsHPaHA+iqYHU4Gk/v1iDurX8sW
+v+bznkqH7Rnqwp9D5PGBpX8QTz7RSmKtUxvLg/8HZaWSLWapW7ha9B20IZFKF3ue
+Mv5WJDmyVIRD9YTC2LxBkMyd1mja6YJQqTtoz7VdApRgFrFD2UNd3V2Hbuq7s8lr
+9gOUCXDeFhF6K+h2j0kQmHe5Y1yLM5d19guMsqtb3nQgJT/j8xH5h2iGNXHDHYwt
+6+UarA9z1YJZQIDTAgMBAAGjgacwgaQwDAYDVR0TBAUwAwEB/zBEBgNVHR8EPTA7
+MDmgN6A1hjNodHRwOi8vZmVkaXIuY29tc2lnbi5jby5pbC9jcmwvQ29tU2lnblNl
+Y3VyZWRDQS5jcmwwDgYDVR0PAQH/BAQDAgGGMB8GA1UdIwQYMBaAFMFL7XC29z58
+ADsAj8c+DkWfHl3sMB0GA1UdDgQWBBTBS+1wtvc+fAA7AI/HPg5Fnx5d7DANBgkq
+hkiG9w0BAQUFAAOCAQEAFs/ukhNQq3sUnjO2QiBq1BW9Cav8cujvR3qQrFHBZE7p
+iL1DRYHjZiM/EoZNGeQFsOY3wo3aBijJD4mkU6l1P7CW+6tMM1X5eCZGbxs2mPtC
+dsGCuY7e+0X5YxtiOzkGynd6qDwJz2w2PQ8KRUtpFhpFfTMDZflScZAmlaxMDPWL
+kz/MdXSFmLr/YnpNH4n+rr2UAJm/EaXc4HnFFgt9AmEd6oX5AhVP51qJThRv4zdL
+hfXBPGHg/QVBspJ/wx2g0K5SZGBrGMYmnNj1ZOQ2GmKfig8+/21OGVZOIJFsnzQz
+OjRXUDpvgV4GxvU+fE6OK85lBi5d0ipTdF7Tbieejw==
+-----END CERTIFICATE-----
+mozilla/DigiCert_Global_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh
+MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
+d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD
+QTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT
+MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j
+b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG
+9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB
+CSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97
+nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt
+43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P
+T19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4
+gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO
+BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR
+TLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw
+DQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr
+hMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg
+06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF
+PnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls
+YSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk
+CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=
+-----END CERTIFICATE-----
+mozilla/Buypass_Class_3_CA_1.crt
+-----BEGIN CERTIFICATE-----
+MIIDUzCCAjugAwIBAgIBAjANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEd
+MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3Mg
+Q2xhc3MgMyBDQSAxMB4XDTA1MDUwOTE0MTMwM1oXDTE1MDUwOTE0MTMwM1owSzEL
+MAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MR0wGwYD
+VQQDDBRCdXlwYXNzIENsYXNzIDMgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP
+ADCCAQoCggEBAKSO13TZKWTeXx+HgJHqTjnmGcZEC4DVC69TB4sSveZn8AKxifZg
+isRbsELRwCGoy+Gb72RRtqfPFfV0gGgEkKBYouZ0plNTVUhjP5JW3SROjvi6K//z
+NIqeKNc0n6wv1g/xpC+9UrJJhW05NfBEMJNGJPO251P7vGGvqaMU+8IXF4Rs4HyI
++MkcVyzwPX6UvCWThOiaAJpFBUJXgPROztmuOfbIUxAMZTpHe2DC1vqRycZxbL2R
+hzyRhkmr8w+gbCZ2Xhysm3HljbybIR6c1jh+JIAVMYKWsUnTYjdbiAwKYjT+p0h+
+mbEwi5A3lRyoH6UsjfRVyNvdWQrCrXig9IsCAwEAAaNCMEAwDwYDVR0TAQH/BAUw
+AwEB/zAdBgNVHQ4EFgQUOBTmyPCppAP0Tj4io1vy1uCtQHQwDgYDVR0PAQH/BAQD
+AgEGMA0GCSqGSIb3DQEBBQUAA4IBAQABZ6OMySU9E2NdFm/soT4JXJEVKirZgCFP
+Bdy7pYmrEzMqnji3jG8CcmPHc3ceCQa6Oyh7pEfJYWsICCD8igWKH7y6xsL+z27s
+EzNxZy5p+qksP2bAEllNC1QCkoS72xLvg3BweMhT+t/Gxv/ciC8HwEmdMldg0/L2
+mSlf56oBzKwzqBwKu5HEA6BvtjT5htOzdlSY9EqBs1OdTUDs5XcTRa9bqh/YL0yC
+e/4qxFi7T/ye/QNlGioOw6UgFpRreaaiErS7GqQjel/wroQk5PMr+4okoyeYZdow
+dXb8GZHo2+ubPzK/QJcHJrrM85SFSnonk8+QQtS4Wxam58tAA915
+-----END CERTIFICATE-----
+mozilla/Comodo_Secure_Services_root.crt
+-----BEGIN CERTIFICATE-----
+MIIEPzCCAyegAwIBAgIBATANBgkqhkiG9w0BAQUFADB+MQswCQYDVQQGEwJHQjEb
+MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow
+GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEkMCIGA1UEAwwbU2VjdXJlIENlcnRp
+ZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVow
+fjELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G
+A1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxJDAiBgNV
+BAMMG1NlY3VyZSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEB
+BQADggEPADCCAQoCggEBAMBxM4KK0HDrc4eCQNUd5MvJDkKQ+d40uaG6EfQlhfPM
+cm3ye5drswfxdySRXyWP9nQ95IDC+DwN879A6vfIUtFyb+/Iq0G4bi4XKpVpDM3S
+HpR7LZQdqnXXs5jLrLxkU0C8j6ysNstcrbvd4JQX7NFc0L/vpZXJkMWwrPsbQ996
+CF23uPJAGysnnlDOXmWCiIxe004MeuoIkbY2qitC++rCoznl2yY4rYsK7hljxxwk
+3wN42ubqwUcaCwtGCd0C/N7Lh1/XMGNooa7cMqG6vv5Eq2i2pRcV/b3Vp6ea5EQz
+6YiO/O1R65NxTq0B50SOqy3LqP4BSUjwwN3HaNiS/j0CAwEAAaOBxzCBxDAdBgNV
+HQ4EFgQUPNiTiMLAggnMAZkGkyDpnnAJY08wDgYDVR0PAQH/BAQDAgEGMA8GA1Ud
+EwEB/wQFMAMBAf8wgYEGA1UdHwR6MHgwO6A5oDeGNWh0dHA6Ly9jcmwuY29tb2Rv
+Y2EuY29tL1NlY3VyZUNlcnRpZmljYXRlU2VydmljZXMuY3JsMDmgN6A1hjNodHRw
+Oi8vY3JsLmNvbW9kby5uZXQvU2VjdXJlQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmww
+DQYJKoZIhvcNAQEFBQADggEBAIcBbSMdflsXfcFhMs+P5/OKlFlm4J4oqF7Tt/Q0
+5qo5spcWxYJvMqTpjOev/e/C6LlLqqP05tqNZSH7uoDrJiiFGv45jN5bBAS0VPmj
+Z55B+glSzAVIqMk/IQQezkhr/IXownuvf7fM+F86/TXGDe+X3EyrEeFryzHRbPtI
+gKvcnDe4IRRLDXE97IMzbtFuMhbsmMcWi1mmNKsFVy2T96oTy9IT4rcuO81rUBcJ
+aD61JlfutuC23bkpgHl9j6PwpCikFcSF9CfUa7/lXORlAnZUtOM3ZiTTGWHIUhDl
+izeauan5Hb/qmZJhlv8BzaFfDbxxvA6sCx1HRR3B7Hzs/Sk=
+-----END CERTIFICATE-----
+mozilla/Microsec_e-Szigno_Root_CA_2009.crt
+-----BEGIN CERTIFICATE-----
+MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD
+VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0
+ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0G
+CSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTAeFw0wOTA2MTYxMTMwMThaFw0y
+OTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3Qx
+FjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3pp
+Z25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o
+dTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvP
+kd6mJviZpWNwrZuuyjNAfW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tc
+cbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG0IMZfcChEhyVbUr02MelTTMuhTlAdX4U
+fIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKApxn1ntxVUwOXewdI/5n7
+N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm1HxdrtbC
+xkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1
++rUCAwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G
+A1UdDgQWBBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPM
+Pcu1SCOhGnqmKrs0aDAbBgNVHREEFDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqG
+SIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0olZMEyL/azXm4Q5DwpL7v8u8h
+mLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfXI/OMn74dseGk
+ddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775
+tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c
+2Pm2G2JwCz02yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5t
+HMN1Rq41Bab2XD0h7lbwyYIiLXpUq3DDfSJlgnCW
+-----END CERTIFICATE-----
+mozilla/Go_Daddy_Root_Certificate_Authority_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx
+EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT
+EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp
+ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz
+NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH
+EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE
+AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw
+DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD
+E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH
+/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy
+DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh
+GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR
+tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA
+AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE
+FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX
+WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu
+9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr
+gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo
+2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO
+LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI
+4uJEvlz36hz1
+-----END CERTIFICATE-----
+mozilla/Certum_Trusted_Network_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBM
+MSIwIAYDVQQKExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5D
+ZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBU
+cnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIyMTIwNzM3WhcNMjkxMjMxMTIwNzM3
+WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBUZWNobm9sb2dpZXMg
+Uy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSIw
+IAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0B
+AQEFAAOCAQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rH
+UV+rpDKmYYe2bg+G0jACl/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LM
+TXPb865Px1bVWqeWifrzq2jUI4ZZJ88JJ7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVU
+BBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4fOQtf/WsX+sWn7Et0brM
+kUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0cvW0QM8x
+AcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNV
+HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNV
+HQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15y
+sHhE49wcrwn9I0j6vSrEuVUEtRCjjSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfL
+I9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1mS1FhIrlQgnXdAIv94nYmem8
+J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5ajZt3hrvJBW8qY
+VoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI
+03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw=
+-----END CERTIFICATE-----
+mozilla/TC_TrustCenter_Class_2_CA_II.crt
+-----BEGIN CERTIFICATE-----
+MIIEqjCCA5KgAwIBAgIOLmoAAQACH9dSISwRXDswDQYJKoZIhvcNAQEFBQAwdjEL
+MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNV
+BAsTGVRDIFRydXN0Q2VudGVyIENsYXNzIDIgQ0ExJTAjBgNVBAMTHFRDIFRydXN0
+Q2VudGVyIENsYXNzIDIgQ0EgSUkwHhcNMDYwMTEyMTQzODQzWhcNMjUxMjMxMjI1
+OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIgR21i
+SDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQTElMCMGA1UEAxMc
+VEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAKuAh5uO8MN8h9foJIIRszzdQ2Lu+MNF2ujhoF/RKrLqk2jf
+tMjWQ+nEdVl//OEd+DFwIxuInie5e/060smp6RQvkL4DUsFJzfb95AhmC1eKokKg
+uNV/aVyQMrKXDcpK3EY+AlWJU+MaWss2xgdW94zPEfRMuzBwBJWl9jmM/XOBCH2J
+XjIeIqkiRUuwZi4wzJ9l/fzLganx4Duvo4bRierERXlQXa7pIXSSTYtZgo+U4+lK
+8edJsBTj9WLL1XK9H7nSn6DNqPoByNkN39r8R52zyFTfSUrxIan+GE7uSNQZu+99
+5OKdy1u2bv/jzVrndIIFuoAlOMvkaZ6vQaoahPUCAwEAAaOCATQwggEwMA8GA1Ud
+EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTjq1RMgKHbVkO3
+kUrL84J6E1wIqzCB7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRy
+dXN0Y2VudGVyLmRlL2NybC92Mi90Y19jbGFzc18yX2NhX0lJLmNybIaBn2xkYXA6
+Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBUcnVzdENlbnRlciUyMENsYXNz
+JTIwMiUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21iSCxPVT1yb290
+Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u
+TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEAjNfffu4bgBCzg/XbEeprS6iS
+GNn3Bzn1LL4GdXpoUxUc6krtXvwjshOg0wn/9vYua0Fxec3ibf2uWWuFHbhOIprt
+ZjluS5TmVfwLG4t3wVMTZonZKNaL80VKY7f9ewthXbhtvsPcW3nS7Yblok2+XnR8
+au0WOB9/WIFaGusyiC2y8zl3gK9etmF1KdsjTYjKUCjLhdLTEKJZbtOTVAB6okaV
+hgWcqRmY5TFyDADiZ9lA4CQze28suVyrZZ0srHbqNZn1l7kPJOzHdiEoZa5X6AeI
+dUpWoNIFOqTmjZKILPPy4cHGYdtBxceb9w4aUUXCYWvcZCcXjFq32nQozZfkvQ==
+-----END CERTIFICATE-----
+mozilla/Chambers_of_Commerce_Root_-_2008.crt
+-----BEGIN CERTIFICATE-----
+MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
+VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0
+IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3
+MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xKTAnBgNVBAMTIENoYW1iZXJz
+IG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEyMjk1MFoXDTM4MDcz
+MTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBj
+dXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIw
+EAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEp
+MCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0G
+CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW9
+28sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKAXuFixrYp4YFs8r/lfTJq
+VKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorjh40G072Q
+DuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR
+5gN/ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfL
+ZEFHcpOrUMPrCXZkNNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05a
+Sd+pZgvMPMZ4fKecHePOjlO+Bd5gD2vlGts/4+EhySnB8esHnFIbAURRPHsl18Tl
+UlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331lubKgdaX8ZSD6e2wsWsSaR6s
++12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ0wlf2eOKNcx5
+Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj
+ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAx
+hduub+84Mxh2EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNV
+HQ4EFgQU+SSsD7K1+HnA+mCIG8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1
++HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpN
+YWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29t
+L2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVy
+ZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAt
+IDIwMDiCCQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRV
+HSAAMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20w
+DQYJKoZIhvcNAQEFBQADggIBAJASryI1wqM58C7e6bXpeHxIvj99RZJe6dqxGfwW
+PJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH3qLPaYRgM+gQDROpI9CF
+5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbURWpGqOt1
+glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaH
+FoI6M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2
+pSB7+R5KBWIBpih1YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MD
+xvbxrN8y8NmBGuScvfaAFPDRLLmF9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QG
+tjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcKzBIKinmwPQN/aUv0NCB9szTq
+jktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvGnrDQWzilm1De
+fhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg
+OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZ
+d0jQ
+-----END CERTIFICATE-----
+mozilla/S-TRUST_Authentication_and_Encryption_Root_CA_2005_PN.crt
+-----BEGIN CERTIFICATE-----
+MIIEezCCA2OgAwIBAgIQNxkY5lNUfBq1uMtZWts1tzANBgkqhkiG9w0BAQUFADCB
+rjELMAkGA1UEBhMCREUxIDAeBgNVBAgTF0JhZGVuLVd1ZXJ0dGVtYmVyZyAoQlcp
+MRIwEAYDVQQHEwlTdHV0dGdhcnQxKTAnBgNVBAoTIERldXRzY2hlciBTcGFya2Fz
+c2VuIFZlcmxhZyBHbWJIMT4wPAYDVQQDEzVTLVRSVVNUIEF1dGhlbnRpY2F0aW9u
+IGFuZCBFbmNyeXB0aW9uIFJvb3QgQ0EgMjAwNTpQTjAeFw0wNTA2MjIwMDAwMDBa
+Fw0zMDA2MjEyMzU5NTlaMIGuMQswCQYDVQQGEwJERTEgMB4GA1UECBMXQmFkZW4t
+V3VlcnR0ZW1iZXJnIChCVykxEjAQBgNVBAcTCVN0dXR0Z2FydDEpMCcGA1UEChMg
+RGV1dHNjaGVyIFNwYXJrYXNzZW4gVmVybGFnIEdtYkgxPjA8BgNVBAMTNVMtVFJV
+U1QgQXV0aGVudGljYXRpb24gYW5kIEVuY3J5cHRpb24gUm9vdCBDQSAyMDA1OlBO
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2bVKwdMz6tNGs9HiTNL1
+toPQb9UY6ZOvJ44TzbUlNlA0EmQpoVXhOmCTnijJ4/Ob4QSwI7+Vio5bG0F/WsPo
+TUzVJBY+h0jUJ67m91MduwwA7z5hca2/OnpYH5Q9XIHV1W/fuJvS9eXLg3KSwlOy
+ggLrra1fFi2SU3bxibYs9cEv4KdKb6AwajLrmnQDaHgTncovmwsdvs91DSaXm8f1
+XgqfeN+zvOyauu9VjxuapgdjKRdZYgkqeQd3peDRF2npW932kKvimAoA0SVtnteF
+hy+S8dF2g08LOlk3KC8zpxdQ1iALCvQm+Z845y2kuJuJja2tyWp9iRe79n+Ag3rm
+7QIDAQABo4GSMIGPMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEG
+MCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFTVFJvbmxpbmUxLTIwNDgtNTAdBgNV
+HQ4EFgQUD8oeXHngovMpttKFswtKtWXsa1IwHwYDVR0jBBgwFoAUD8oeXHngovMp
+ttKFswtKtWXsa1IwDQYJKoZIhvcNAQEFBQADggEBAK8B8O0ZPCjoTVy7pWMciDMD
+pwCHpB8gq9Yc4wYfl35UvbfRssnV2oDsF9eK9XvCAPbpEW+EoFolMeKJ+aQAPzFo
+LtU96G7m1R08P7K9n3frndOMusDXtk3sU5wPBG7qNWdX4wple5A64U8+wwCSersF
+iXOMy6ZNwPv2AtawB6MDwidAnwzkhYItr5pCHdDHjfhA7p0GVxzZotiAFP7hYy0y
+h9WUUpY6RsZxlj33mA6ykaqP2vROJAA5VeitF7nTNCtKqUDMFypVZUF0Qn71wK/I
+k63yGFs9iQzbRzkk+OBM8h+wPQrKBU6JIRrjKpms/H+h8Q8bHz2eBIPdltkdOpQ=
+-----END CERTIFICATE-----
+mozilla/Swisscom_Root_CA_2.crt
+-----BEGIN CERTIFICATE-----
+MIIF2TCCA8GgAwIBAgIQHp4o6Ejy5e/DfEoeWhhntjANBgkqhkiG9w0BAQsFADBk
+MQswCQYDVQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0
+YWwgQ2VydGlmaWNhdGUgU2VydmljZXMxGzAZBgNVBAMTElN3aXNzY29tIFJvb3Qg
+Q0EgMjAeFw0xMTA2MjQwODM4MTRaFw0zMTA2MjUwNzM4MTRaMGQxCzAJBgNVBAYT
+AmNoMREwDwYDVQQKEwhTd2lzc2NvbTElMCMGA1UECxMcRGlnaXRhbCBDZXJ0aWZp
+Y2F0ZSBTZXJ2aWNlczEbMBkGA1UEAxMSU3dpc3Njb20gUm9vdCBDQSAyMIICIjAN
+BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAlUJOhJ1R5tMJ6HJaI2nbeHCOFvEr
+jw0DzpPMLgAIe6szjPTpQOYXTKueuEcUMncy3SgM3hhLX3af+Dk7/E6J2HzFZ++r
+0rk0X2s682Q2zsKwzxNoysjL67XiPS4h3+os1OD5cJZM/2pYmLcX5BtS5X4HAB1f
+2uY+lQS3aYg5oUFgJWFLlTloYhyxCwWJwDaCFCE/rtuh/bxvHGCGtlOUSbkrRsVP
+ACu/obvLP+DHVxxX6NZp+MEkUp2IVd3Chy50I9AU/SpHWrumnf2U5NGKpV+GY3aF
+y6//SSj8gO1MedK75MDvAe5QQQg1I3ArqRa0jG6F6bYRzzHdUyYb3y1aSgJA/MTA
+tukxGggo5WDDH8SQjhBiYEQN7Aq+VRhxLKX0srwVYv8c474d2h5Xszx+zYIdkeNL
+6yxSNLCK/RJOlrDrcH+eOfdmQrGrrFLadkBXeyq96G4DsguAhYidDMfCd7Camlf0
+uPoTXGiTOmekl9AbmbeGMktg2M7v0Ax/lZ9vh0+Hio5fCHyqW/xavqGRn1V9TrAL
+acywlKinh/LTSlDcX3KwFnUey7QYYpqwpzmqm59m2I2mbJYV4+by+PGDYmy7Velh
+k6M99bFXi08jsJvllGov34zflVEpYKELKeRcVVi3qPyZ7iVNTA6z00yPhOgpD/0Q
+VAKFyPnlw4vP5w8CAwEAAaOBhjCBgzAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0hBBYw
+FDASBgdghXQBUwIBBgdghXQBUwIBMBIGA1UdEwEB/wQIMAYBAf8CAQcwHQYDVR0O
+BBYEFE0mICKJS9PVpAqhb97iEoHF8TwuMB8GA1UdIwQYMBaAFE0mICKJS9PVpAqh
+b97iEoHF8TwuMA0GCSqGSIb3DQEBCwUAA4ICAQAyCrKkG8t9voJXiblqf/P0wS4R
+fbgZPnm3qKhyN2abGu2sEzsOv2LwnN+ee6FTSA5BesogpxcbtnjsQJHzQq0Qw1zv
+/2BZf82Fo4s9SBwlAjxnffUy6S8w5X2lejjQ82YqZh6NM4OKb3xuqFp1mrjX2lhI
+REeoTPpMSQpKwhI3qEAMw8jh0FcNlzKVxzqfl9NX+Ave5XLzo9v/tdhZsnPdTSpx
+srpJ9csc1fV5yJmz/MFMdOO0vSk3FQQoHt5FRnDsr7p4DooqzgB53MBfGWcsa0vv
+aGgLQ+OswWIJ76bdZWGgr4RVSJFSHMYlkSrQwSIjYVmvRRGFHQEkNI/Ps/8XciAT
+woCqISxxOQ7Qj1zB09GOInJGTB2Wrk9xseEFKZZZ9LuedT3PDTcNYtsmjGOpI99n
+Bjx8Oto0QuFmtEYE3saWmA9LSHokMnWRn6z3aOkquVVlzl1h0ydw2Df+n7mvoC5W
+t6NlUe07qxS/TFED6F+KBZvuim6c779o+sjaC+NCydAXFJy3SuCvkychVSa1ZC+N
+8f+mQAWFBVzKBxlcCxMoTFh/wqXvRdpg065lYZ1Tg3TCrvJcwhbtkj6EPnNgiLx2
+9CzP0H1907he0ZESEOnN3col49XtmS++dYFLJPlFRpTJKSFTnCZFqhMX5OfNeOI5
+wSsSnqaeG8XmDtkx2Q==
+-----END CERTIFICATE-----
+mozilla/Secure_Global_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDvDCCAqSgAwIBAgIQB1YipOjUiolN9BPI8PjqpTANBgkqhkiG9w0BAQUFADBK
+MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x
+GTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjkx
+MjMxMTk1MjA2WjBKMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3Qg
+Q29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwggEiMA0GCSqG
+SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7YrGxVaQZx5RNoJLNP2MwhR/jxYDiJ
+iQPpvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW89sa
+/FHtaMbQbqR8JNGuQsiWUGMu4P51/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG5VacJ
+jnIFHovdRIWCQtBJwB1g8NEXLJXr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptvolRTnI
+HmX5k/Wq8VLcmZg9pYYaDDUz+kulBAYVHDGA76oYa8J719rO+TMg1fW9ajMtgQT7
+sFzUnKPiXB3jqUJ1XnvUd+85VLrJChgbEplJL4hL/VBi0XPnj3pDAgMBAAGjgZ0w
+gZowEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQF
+MAMBAf8wHQYDVR0OBBYEFK9EBMJBfkiD2045AuzshHrmzsmkMDQGA1UdHwQtMCsw
+KaAnoCWGI2h0dHA6Ly9jcmwuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGCSsG
+AQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQBjGghAfaReUw132HquHw0L
+URYD7xh8yOOvaliTFGCRsoTciE6+OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5X+nXO
+H0jOZvQ8QCaSmGwb7iRGDBezUqXbpZGRzzfTb+cnCDpOGR86p1hcF895P4vkp9Mm
+I50mD1hp/Ed+stCNi5O/KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/53CYNv6ZHdAbY
+iNE6KTCEztI5gGIbqMdXSbxqVVFnFUq+NQfk1XWYN3kwFNspnWzFacxHVaIw98xc
+f8LDmBxrThaA63p4ZUWiABqvDA1VZDRIuJK58bRQKfJPIx/abKwfROHdI3hRW8cW
+-----END CERTIFICATE-----
+mozilla/UTN_USERFirst_Hardware_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEdDCCA1ygAwIBAgIQRL4Mi1AAJLQR0zYq/mUK/TANBgkqhkiG9w0BAQUFADCB
+lzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug
+Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho
+dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3Qt
+SGFyZHdhcmUwHhcNOTkwNzA5MTgxMDQyWhcNMTkwNzA5MTgxOTIyWjCBlzELMAkG
+A1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEe
+MBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8v
+d3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3QtSGFyZHdh
+cmUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCx98M4P7Sof885glFn
+0G2f0v9Y8+efK+wNiVSZuTiZFvfgIXlIwrthdBKWHTxqctU8EGc6Oe0rE81m65UJ
+M6Rsl7HoxuzBdXmcRl6Nq9Bq/bkqVRcQVLMZ8Jr28bFdtqdt++BxF2uiiPsA3/4a
+MXcMmgF6sTLjKwEHOG7DpV4jvEWbe1DByTCP2+UretNb+zNAHqDVmBe8i4fDidNd
+oI6yqqr2jmmIBsX6iSHzCJ1pLgkzmykNRg+MzEk0sGlRvfkGzWitZky8PqxhvQqI
+DsjfPe58BEydCl5rkdbux+0ojatNh4lz0G6k0B4WixThdkQDf2Os5M1JnMWS9Ksy
+oUhbAgMBAAGjgbkwgbYwCwYDVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAMBAf8wHQYD
+VR0OBBYEFKFyXyYbKJhDlV0HN9WFlp1L0sNFMEQGA1UdHwQ9MDswOaA3oDWGM2h0
+dHA6Ly9jcmwudXNlcnRydXN0LmNvbS9VVE4tVVNFUkZpcnN0LUhhcmR3YXJlLmNy
+bDAxBgNVHSUEKjAoBggrBgEFBQcDAQYIKwYBBQUHAwUGCCsGAQUFBwMGBggrBgEF
+BQcDBzANBgkqhkiG9w0BAQUFAAOCAQEARxkP3nTGmZev/K0oXnWO6y1n7k57K9cM
+//bey1WiCuFMVGWTYGufEpytXoMs61quwOQt9ABjHbjAbPLPSbtNk28Gpgoiskli
+CE7/yMgUsogWXecB5BKV5UU0s4tpvc+0hY91UZ59Ojg6FEgSxvunOxqNDYJAB+gE
+CJChicsZUN/KHAG8HQQZexB2lzvukJDKxA4fFm517zP4029bHpbj4HR3dHuKom4t
+3XbWOTCC8KucUvIqx69JXn7HaOWCgchqJ/kniCrVWFCVH/A7HFe7fRQ5YiuayZSS
+KqMiDP+JJn1fIytH1xUdqWqeUQ0qUZ6B+dQ7XnASfxAynB67nfhmqA==
+-----END CERTIFICATE-----
+mozilla/E-Guven_Kok_Elektronik_Sertifika_Hizmet_Saglayicisi.crt
+-----BEGIN CERTIFICATE-----
+MIIDtjCCAp6gAwIBAgIQRJmNPMADJ72cdpW56tustTANBgkqhkiG9w0BAQUFADB1
+MQswCQYDVQQGEwJUUjEoMCYGA1UEChMfRWxla3Ryb25payBCaWxnaSBHdXZlbmxp
+Z2kgQS5TLjE8MDoGA1UEAxMzZS1HdXZlbiBLb2sgRWxla3Ryb25payBTZXJ0aWZp
+a2EgSGl6bWV0IFNhZ2xheWljaXNpMB4XDTA3MDEwNDExMzI0OFoXDTE3MDEwNDEx
+MzI0OFowdTELMAkGA1UEBhMCVFIxKDAmBgNVBAoTH0VsZWt0cm9uaWsgQmlsZ2kg
+R3V2ZW5saWdpIEEuUy4xPDA6BgNVBAMTM2UtR3V2ZW4gS29rIEVsZWt0cm9uaWsg
+U2VydGlmaWthIEhpem1ldCBTYWdsYXlpY2lzaTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAMMSIJ6wXgBljU5Gu4Bc6SwGl9XzcslwuedLZYDBS75+PNdU
+MZTe1RK6UxYC6lhj71vY8+0qGqpxSKPcEC1fX+tcS5yWCEIlKBHMilpiAVDV6wlT
+L/jDj/6z/P2douNffb7tC+Bg62nsM+3YjfsSSYMAyYuXjDtzKjKzEve5TfL0TW3H
+5tYmNwjy2f1rXKPlSFxYvEK+A1qBuhw1DADT9SN+cTAIJjjcJRFHLfO6IxClv7wC
+90Nex/6wN1CZew+TzuZDLMN+DfIcQ2Zgy2ExR4ejT669VmxMvLz4Bcpk9Ok0oSy1
+c+HCPujIyTQlCFzz7abHlJ+tiEMl1+E5YP6sOVkCAwEAAaNCMEAwDgYDVR0PAQH/
+BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ/uRLOU1fqRTy7ZVZoE
+VtstxNulMA0GCSqGSIb3DQEBBQUAA4IBAQB/X7lTW2M9dTLn+sR0GstG30ZpHFLP
+qk/CaOv/gKlR6D1id4k9CnU58W5dF4dvaAXBlGzZXd/aslnLpRCKysw5zZ/rTt5S
+/wzw9JKp8mxTq5vSR6AfdPebmvEvFZ96ZDAYBzwqD2fK/A+JYZ1lpTzlvBNbCNvj
+/+27BrtqBrF6T2XGgv0enIu1De5Iu7i9qgi0+6N8y5/NkHZchpZ4Vwpm+Vganf2X
+KWDeEaaQHBkc7gGWIjQ0LpH5t8Qn0Xvmv/uARFoW5evg1Ao4vOSR49XrXMGs3xtq
+fJ7lddK2l4fbzIcrQzqECK+rPNv3PGYxhrCdU3nt+CPeQuMtgvEP5fqX
+-----END CERTIFICATE-----
+mozilla/Camerfirma_Global_Chambersign_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIExTCCA62gAwIBAgIBADANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJFVTEn
+MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL
+ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4GA1UEAxMXR2xvYmFsIENo
+YW1iZXJzaWduIFJvb3QwHhcNMDMwOTMwMTYxNDE4WhcNMzcwOTMwMTYxNDE4WjB9
+MQswCQYDVQQGEwJFVTEnMCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgy
+NzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4G
+A1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwggEgMA0GCSqGSIb3DQEBAQUA
+A4IBDQAwggEIAoIBAQCicKLQn0KuWxfH2H3PFIP8T8mhtxOviteePgQKkotgVvq0
+Mi+ITaFgCPS3CU6gSS9J1tPfnZdan5QEcOw/Wdm3zGaLmFIoCQLfxS+EjXqXd7/s
+QJ0lcqu1PzKY+7e3/HKE5TWH+VX6ox8Oby4o3Wmg2UIQxvi1RMLQQ3/bvOSiPGpV
+eAp3qdjqGTK3L/5cPxvusZjsyq16aUXjlg9V9ubtdepl6DJWk0aJqCWKZQbua795
+B9Dxt6/tLE2Su8CoX6dnfQTyFQhwrJLWfQTSM/tMtgsL+xrJxI0DqX5c8lCrEqWh
+z0hQpe/SyBoT+rB/sYIcd2oPX9wLlY/vQ37mRQklAgEDo4IBUDCCAUwwEgYDVR0T
+AQH/BAgwBgEB/wIBDDA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8vY3JsLmNoYW1i
+ZXJzaWduLm9yZy9jaGFtYmVyc2lnbnJvb3QuY3JsMB0GA1UdDgQWBBRDnDafsJ4w
+TcbOX60Qq+UDpfqpFDAOBgNVHQ8BAf8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgAH
+MCoGA1UdEQQjMCGBH2NoYW1iZXJzaWducm9vdEBjaGFtYmVyc2lnbi5vcmcwKgYD
+VR0SBCMwIYEfY2hhbWJlcnNpZ25yb290QGNoYW1iZXJzaWduLm9yZzBbBgNVHSAE
+VDBSMFAGCysGAQQBgYcuCgEBMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly9jcHMuY2hh
+bWJlcnNpZ24ub3JnL2Nwcy9jaGFtYmVyc2lnbnJvb3QuaHRtbDANBgkqhkiG9w0B
+AQUFAAOCAQEAPDtwkfkEVCeR4e3t/mh/YV3lQWVPMvEYBZRqHN4fcNs+ezICNLUM
+bKGKfKX0j//U2K0X1S0E0T9YgOKBWYi+wONGkyT+kL0mojAt6JcmVzWJdJYY9hXi
+ryQZVgICsroPFOrGimbBhkVVi76SvpykBMdJPJ7oKXqJ1/6v/2j1pReQvayZzKWG
+VwlnRtvWFsJG8eSpUPWP0ZIV018+xgBJOm5YstHRJw0lyDL4IBHNfTIzSJRUTN3c
+ecQwn+uOuFW114hcxWokPbLTBQNRxgfvzBRydD1ucs4YKIxKoHflCStFREest2d/
+AYoFWpO+ocH/+OcOZ6RHSXZddZAa9SaP8A==
+-----END CERTIFICATE-----
+mozilla/NetLock_Arany_=Class_Gold=_Főtanúsítvány.crt
+-----BEGIN CERTIFICATE-----
+MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQG
+EwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3
+MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNl
+cnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBBcmFueSAoQ2xhc3MgR29sZCkgRsWR
+dGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgxMjA2MTUwODIxWjCB
+pzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxOZXRM
+b2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlm
+aWNhdGlvbiBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNz
+IEdvbGQpIEbFkXRhbsO6c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEAxCRec75LbRTDofTjl5Bu0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrT
+lF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw/HpYzY6b7cNGbIRwXdrz
+AZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAkH3B5r9s5
+VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRG
+ILdwfzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2
+BJtr+UBdADTHLpl1neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAG
+AQH/AgEEMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2M
+U9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwWqZw8UQCgwBEIBaeZ5m8BiFRh
+bvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTtaYtOUZcTh5m2C
++C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC
+bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2F
+uLjbvrW5KfnaNwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2
+XjG4Kvte9nHfRCaexOYNkbQudZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E=
+-----END CERTIFICATE-----
+mozilla/Verisign_Class_3_Public_Primary_Certification_Authority_-_G3.crt
+-----BEGIN CERTIFICATE-----
+MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQsw
+CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl
+cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu
+LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT
+aWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
+dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD
+VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT
+aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ
+bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu
+IENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg
+LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMu6nFL8eB8aHm8b
+N3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1EUGO+i2t
+KmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGu
+kxUccLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBm
+CC+Vk7+qRy+oRpfwEuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJ
+Xwzw3sJ2zq/3avL6QaaiMxTJ5Xpj055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWu
+imi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAERSWwauSCPc/L8my/uRan2Te
+2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5fj267Cz3qWhMe
+DGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC
+/Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565p
+F4ErWjfJXir0xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGt
+TxzhT5yvDwyd93gN2PQ1VoDat20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ==
+-----END CERTIFICATE-----
+mozilla/Security_Communication_RootCA2.crt
+-----BEGIN CERTIFICATE-----
+MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDEl
+MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMe
+U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoX
+DTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRy
+dXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3VyaXR5IENvbW11bmlj
+YXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANAV
+OVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGr
+zbl+dp+++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVM
+VAX3NuRFg3sUZdbcDE3R3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQ
+hNBqyjoGADdH5H5XTz+L62e4iKrFvlNVspHEfbmwhRkGeC7bYRr6hfVKkaHnFtWO
+ojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1KEOtOghY6rCcMU/Gt1SSw
+awNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8QIH4D5cs
+OPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3
+DQEBCwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpF
+coJxDjrSzG+ntKEju/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXc
+okgfGT+Ok+vx+hfuzU7jBBJV1uXk3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8
+t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6qtnRGEmyR7jTV7JqR50S+kDFy
+1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29mvVXIwAHIRc/
+SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03
+-----END CERTIFICATE-----
+mozilla/thawte_Primary_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCB
+qTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf
+Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw
+MDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNV
+BAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3MDAwMDAwWhcNMzYw
+NzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5j
+LjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYG
+A1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl
+IG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqG
+SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsoPD7gFnUnMekz52hWXMJEEUMDSxuaPFs
+W0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ1CRfBsDMRJSUjQJib+ta
+3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGcq/gcfomk
+6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6
+Sk/KaAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94J
+NqR32HuHUETVPm4pafs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBA
+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XP
+r87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUFAAOCAQEAeRHAS7ORtvzw6WfU
+DW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeEuzLlQRHAd9mz
+YJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX
+xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2
+/qxAeeWsEG89jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/
+LHbTY5xZ3Y+m4Q6gLkH3LpVHz7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7
+jVaMaA==
+-----END CERTIFICATE-----
+mozilla/OISTE_WISeKey_Global_Root_GA_CA.crt
+-----BEGIN CERTIFICATE-----
+MIID8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHSKFTfmjANBgkqhkiG9w0BAQUFADCB
+ijELMAkGA1UEBhMCQ0gxEDAOBgNVBAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNvcHly
+aWdodCAoYykgMjAwNTEiMCAGA1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNl
+ZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9iYWwgUm9vdCBHQSBDQTAeFw0w
+NTEyMTExNjAzNDRaFw0zNzEyMTExNjA5NTFaMIGKMQswCQYDVQQGEwJDSDEQMA4G
+A1UEChMHV0lTZUtleTEbMBkGA1UECxMSQ29weXJpZ2h0IChjKSAyMDA1MSIwIAYD
+VQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBX
+SVNlS2V5IEdsb2JhbCBSb290IEdBIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEAy0+zAJs9Nt350UlqaxBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jyBxR
+VVuuk+g3/ytr6dTqvirdqFEr12bDYVxgAsj1znJ7O7jyTmUIms2kahnBAbtzptf2
+w93NvKSLtZlhuAGio9RN1AU9ka34tAhxZK9w8RxrfvbDd50kc3vkDIzh2TbhmYsF
+mQvtRTEJysIA2/dyoJaqlYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ/yxViJGg
+4E8HsChWjBgbl0SOid3gF27nKu+POQoxhILYQBRJLnpB5Kf+42TMwVlxSywhp1t9
+4B3RLoGbw9ho972WG6xwsRYUC9tguSYBBQIDAQABo1EwTzALBgNVHQ8EBAMCAYYw
+DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3JQmthG+IbJphpQw
+EAYJKwYBBAGCNxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBAEuh/wuHbrP5wUOx
+SPMowB0uyQlB+pQAHKSkq0lPjz0e701vvbyk9vImMMkQyh2I+3QZH4VFvbBsUfk2
+ftv1TDI6QU9bR8/oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8A3HR4+vg1YFkCExh8
+vPtNsCBtQ7tgMHpnM1zFmdH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA6b7wP4piFXa
+hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZi
+Fj4A4xylNoEYokxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ
+/L7fCg0=
+-----END CERTIFICATE-----
+mozilla/AC_Raíz_Certicámara_S.A..crt
+-----BEGIN CERTIFICATE-----
+MIIGZjCCBE6gAwIBAgIPB35Sk3vgFeNX8GmMy+wMMA0GCSqGSIb3DQEBBQUAMHsx
+CzAJBgNVBAYTAkNPMUcwRQYDVQQKDD5Tb2NpZWRhZCBDYW1lcmFsIGRlIENlcnRp
+ZmljYWNpw7NuIERpZ2l0YWwgLSBDZXJ0aWPDoW1hcmEgUy5BLjEjMCEGA1UEAwwa
+QUMgUmHDrXogQ2VydGljw6FtYXJhIFMuQS4wHhcNMDYxMTI3MjA0NjI5WhcNMzAw
+NDAyMjE0MjAyWjB7MQswCQYDVQQGEwJDTzFHMEUGA1UECgw+U29jaWVkYWQgQ2Ft
+ZXJhbCBkZSBDZXJ0aWZpY2FjacOzbiBEaWdpdGFsIC0gQ2VydGljw6FtYXJhIFMu
+QS4xIzAhBgNVBAMMGkFDIFJhw616IENlcnRpY8OhbWFyYSBTLkEuMIICIjANBgkq
+hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAq2uJo1PMSCMI+8PPUZYILrgIem08kBeG
+qentLhM0R7LQcNzJPNCNyu5LF6vQhbCnIwTLqKL85XXbQMpiiY9QngE9JlsYhBzL
+fDe3fezTf3MZsGqy2IiKLUV0qPezuMDU2s0iiXRNWhU5cxh0T7XrmafBHoi0wpOQ
+Y5fzp6cSsgkiBzPZkc0OnB8OIMfuuzONj8LSWKdf/WU34ojC2I+GdV75LaeHM/J4
+Ny+LvB2GNzmxlPLYvEqcgxhaBvzz1NS6jBUJJfD5to0EfhcSM2tXSExP2yYe68yQ
+54v5aHxwD6Mq0Do43zeX4lvegGHTgNiRg0JaTASJaBE8rF9ogEHMYELODVoqDA+b
+MMCm8Ibbq0nXl21Ii/kDwFJnmxL3wvIumGVC2daa49AZMQyth9VXAnow6IYm+48j
+ilSH5L887uvDdUhfHjlvgWJsxS3EF1QZtzeNnDeRyPYL1epjb4OsOMLzP96a++Ej
+YfDIJss2yKHzMI+ko6Kh3VOz3vCaMh+DkXkwwakfU5tTohVTP92dsxA7SH2JD/zt
+A/X7JWR1DhcZDY8AFmd5ekD8LVkH2ZD6mq093ICK5lw1omdMEWux+IBkAC1vImHF
+rEsm5VoQgpukg3s0956JkSCXjrdCx2bD0Omk1vUgjcTDlaxECp1bczwmPS9KvqfJ
+pxAe+59QafMCAwEAAaOB5jCB4zAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
+AwIBBjAdBgNVHQ4EFgQU0QnQ6dfOeXRU+Tows/RtLAMDG2gwgaAGA1UdIASBmDCB
+lTCBkgYEVR0gADCBiTArBggrBgEFBQcCARYfaHR0cDovL3d3dy5jZXJ0aWNhbWFy
+YS5jb20vZHBjLzBaBggrBgEFBQcCAjBOGkxMaW1pdGFjaW9uZXMgZGUgZ2FyYW50
+7WFzIGRlIGVzdGUgY2VydGlmaWNhZG8gc2UgcHVlZGVuIGVuY29udHJhciBlbiBs
+YSBEUEMuMA0GCSqGSIb3DQEBBQUAA4ICAQBclLW4RZFNjmEfAygPU3zmpFmps4p6
+xbD/CHwso3EcIRNnoZUSQDWDg4902zNc8El2CoFS3UnUmjIz75uny3XlesuXEpBc
+unvFm9+7OSPI/5jOCk0iAUgHforA1SBClETvv3eiiWdIG0ADBaGJ7M9i4z0ldma/
+Jre7Ir5v/zlXdLp6yQGVwZVR6Kss+LGGIOk/yzVb0hfpKv6DExdA7ohiZVvVO2Dp
+ezy4ydV/NgIlqmjCMRW3MGXrfx1IebHPOeJCgBbT9ZMj/EyXyVo3bHwi2ErN0o42
+gzmRkBDI8ck1fj+404HGIGQatlDCIaR43NAvO2STdPCWkPHv+wlaNECW8DYSwaN0
+jJN+Qd53i+yG2dIPPy3RzECiiWZIHiCznCNZc6lEc7wkeZBWN7PGKX6jD/EpOe9+
+XCgycDWs2rjIdWb8m0w5R44bb5tNAlQiM+9hup4phO9OSzNHdpdqy35f/RWmnkJD
+W2ZaiogN9xa5P1FlK2Zqi9E4UqLWRhH6/JocdJ6PlwsCT2TG9WjTSy3/pDceiz+/
+RL5hRqGEPQgnTIEgd4kI6mdAXmwIUV80WoyWaM3X94nCHNMyAK9Sy9NgWyo6R35r
+MDOhYil/SrnhLecUIw4OGEfhefwVVdCx/CVxY3UzHCMrr1zZ7Ud3YA47Dx7SwNxk
+BYn8eNZcLCZDqQ==
+-----END CERTIFICATE-----
+mozilla/SecureTrust_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDuDCCAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBgkqhkiG9w0BAQUFADBI
+MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x
+FzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTA2MTEwNzE5MzExOFoXDTI5MTIz
+MTE5NDA1NVowSDELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENv
+cnBvcmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTCCASIwDQYJKoZIhvcN
+AQEBBQADggEPADCCAQoCggEBAKukgeWVzfX2FI7CT8rU4niVWJxB4Q2ZQCQXOZEz
+Zum+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6pkjGnx29vo6pQT64lO0pGtSO
+0gMdA+9tDWccV9cGrcrI9f4Or2YlSASWC12juhbDCE/RRvgUXPLIXgGZbf2IzIao
+wW8xQmxSPmjL8xk037uHGFaAJsTQ3MBv396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj
+7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b01k/unK8RCSc43Oz969XL0Imnal0ugBS
+8kvNU3xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C4oFVmHursCAwEAAaOBnTCBmjAT
+BgkrBgEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB
+/zAdBgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApoCeg
+JYYjaHR0cDovL2NybC5zZWN1cmV0cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYBBAGC
+NxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBADDtT0rhWDpSclu1pqNlGKa7UTt3
+6Z3q059c4EVlew3KW+JwULKUBRSuSceNQQcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/
+3XpvXdMc9P+IBWlCqQVxyLesJugutIxq/3HcuLHfmbx8IVQr5Fiiu1cprp6poxkm
+D5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4TJUXpAYmHrZkUjZfYGfZnMUFdAvnZyPS
+CPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5vR
+3ItHuuG51WLQoqD0ZwV4KWMabwTW+MZMo5qxN7SN5ShLHZ4swrhovO0C7jE=
+-----END CERTIFICATE-----
+mozilla/Autoridad_de_Certificacion_Firmaprofesional_CIF_A62634068.crt
+-----BEGIN CERTIFICATE-----
+MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UE
+BhMCRVMxQjBABgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1h
+cHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEy
+MzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIwQAYDVQQDDDlBdXRvcmlkYWQgZGUg
+Q2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBBNjI2MzQwNjgwggIi
+MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDDUtd9
+thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQM
+cas9UX4PB99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefG
+L9ItWY16Ck6WaVICqjaY7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15i
+NA9wBj4gGFrO93IbJWyTdBSTo3OxDqqHECNZXyAFGUftaI6SEspd/NYrspI8IM/h
+X68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyIplD9amML9ZMWGxmPsu2b
+m8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctXMbScyJCy
+Z/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirja
+EbsXLZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/T
+KI8xWVvTyQKmtFLKbpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF
+6NkBiDkal4ZkQdU7hwxu+g/GvUgUvzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVh
+OSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYD
+VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNHDhpkLzCBpgYD
+VR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp
+cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBv
+ACAAZABlACAAbABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBl
+AGwAbwBuAGEAIAAwADgAMAAxADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF
+661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx51tkljYyGOylMnfX40S2wBEqgLk9
+am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qkR71kMrv2JYSiJ0L1
+ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaPT481
+PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS
+3a/DTg4fJl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5k
+SeTy36LssUzAKh3ntLFlosS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF
+3dvd6qJ2gHN99ZwExEWN57kci57q13XRcrHedUTnQn3iV2t93Jm8PYMo6oCTjcVM
+ZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoRsaS8I8nkvof/uZS2+F0g
+StRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTDKCOM/icz
+Q0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQB
+jLMi6Et8Vcad+qMUu2WFbm5PEn4KPJ2V
+-----END CERTIFICATE-----
+mozilla/GeoTrust_Universal_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEW
+MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVy
+c2FsIENBMB4XDTA0MDMwNDA1MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UE
+BhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xHjAcBgNVBAMTFUdlb1RydXN0
+IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKYV
+VaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9tJPi8
+cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTT
+QjOgNB0eRXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFh
+F7em6fgemdtzbvQKoiFs7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2v
+c7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d8Lsrlh/eezJS/R27tQahsiFepdaVaH/w
+mZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7VqnJNk22CDtucvc+081xd
+VHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3CgaRr0BHdCX
+teGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZ
+f9hBZ3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfRe
+Bi9Fi1jUIxaS5BZuKGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+
+nhutxx9z3SxPGWX9f5NAEC7S8O08ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB
+/wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0XG0D08DYj3rWMB8GA1UdIwQY
+MBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG
+9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc
+aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fX
+IwjhmF7DWgh2qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzyn
+ANXH/KttgCJwpQzgXQQpAvvLoJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0z
+uzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsKxr2EoyNB3tZ3b4XUhRxQ4K5RirqN
+Pnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxFKyDuSN/n3QmOGKja
+QI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2DFKW
+koRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9
+ER/frslKxfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQt
+DF4JbAiXfKM9fJP/P6EUp8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/Sfuvm
+bJxPgWp6ZKy7PtXny3YuxadIwVyQD8vIP/rmMuGNG2+k5o7Y+SlIis5z/iw=
+-----END CERTIFICATE-----
+mozilla/D-TRUST_Root_Class_3_CA_2_2009.crt
+-----BEGIN CERTIFICATE-----
+MIIEMzCCAxugAwIBAgIDCYPzMA0GCSqGSIb3DQEBCwUAME0xCzAJBgNVBAYTAkRF
+MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdCBD
+bGFzcyAzIENBIDIgMjAwOTAeFw0wOTExMDUwODM1NThaFw0yOTExMDUwODM1NTha
+ME0xCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMM
+HkQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgMjAwOTCCASIwDQYJKoZIhvcNAQEB
+BQADggEPADCCAQoCggEBANOySs96R+91myP6Oi/WUEWJNTrGa9v+2wBoqOADER03
+UAifTUpolDWzU9GUY6cgVq/eUXjsKj3zSEhQPgrfRlWLJ23DEE0NkVJD2IfgXU42
+tSHKXzlABF9bfsyjxiupQB7ZNoTWSPOSHjRGICTBpFGOShrvUD9pXRl/RcPHAY9R
+ySPocq60vFYJfxLLHLGvKZAKyVXMD9O0Gu1HNVpK7ZxzBCHQqr0ME7UAyiZsxGsM
+lFqVlNpQmvH/pStmMaTJOKDfHR+4CS7zp+hnUquVH+BGPtikw8paxTGA6Eian5Rp
+/hnd2HN8gcqW3o7tszIFZYQ05ub9VxC1X3a/L7AQDcUCAwEAAaOCARowggEWMA8G
+A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFP3aFMSfMN4hvR5COfyrYyNJ4PGEMA4G
+A1UdDwEB/wQEAwIBBjCB0wYDVR0fBIHLMIHIMIGAoH6gfIZ6bGRhcDovL2RpcmVj
+dG9yeS5kLXRydXN0Lm5ldC9DTj1ELVRSVVNUJTIwUm9vdCUyMENsYXNzJTIwMyUy
+MENBJTIwMiUyMDIwMDksTz1ELVRydXN0JTIwR21iSCxDPURFP2NlcnRpZmljYXRl
+cmV2b2NhdGlvbmxpc3QwQ6BBoD+GPWh0dHA6Ly93d3cuZC10cnVzdC5uZXQvY3Js
+L2QtdHJ1c3Rfcm9vdF9jbGFzc18zX2NhXzJfMjAwOS5jcmwwDQYJKoZIhvcNAQEL
+BQADggEBAH+X2zDI36ScfSF6gHDOFBJpiBSVYEQBrLLpME+bUMJm2H6NMLVwMeni
+acfzcNsgFYbQDfC+rAF1hM5+n02/t2A7nPPKHeJeaNijnZflQGDSNiH+0LS4F9p0
+o3/U37CYAqxva2ssJSRyoWXuJVrl5jLn8t+rSfrzkGkj2wTZ51xY/GXUl77M/C4K
+zCUqNQT4YJEVdT1B/yMfGchs64JTBKbkTCJNjYy6zltz7GRUUG3RnFX7acM2w4y8
+PIWmawomDeCTmGCufsYkl4phX5GOZpIJhzbNi5stPvZR1FDUWSi9g/LMKHtThm3Y
+Johw1+qRzT65ysCQblrGXnRl11z+o+I=
+-----END CERTIFICATE-----
+mozilla/Visa_eCommerce_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIDojCCAoqgAwIBAgIQE4Y1TR0/BvLB+WUF1ZAcYjANBgkqhkiG9w0BAQUFADBr
+MQswCQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRl
+cm5hdGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNv
+bW1lcmNlIFJvb3QwHhcNMDIwNjI2MDIxODM2WhcNMjIwNjI0MDAxNjEyWjBrMQsw
+CQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRlcm5h
+dGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNvbW1l
+cmNlIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvV95WHm6h
+2mCxlCfLF9sHP4CFT8icttD0b0/Pmdjh28JIXDqsOTPHH2qLJj0rNfVIsZHBAk4E
+lpF7sDPwsRROEW+1QK8bRaVK7362rPKgH1g/EkZgPI2h4H3PVz4zHvtH8aoVlwdV
+ZqW1LS7YgFmypw23RuwhY/81q6UCzyr0TP579ZRdhE2o8mCP2w4lPJ9zcc+U30rq
+299yOIzzlr3xF7zSujtFWsan9sYXiwGd/BmoKoMWuDpI/k4+oKsGGelT84ATB+0t
+vz8KPFUgOSwsAGl0lUq8ILKpeeUYiZGo3BxN77t+Nwtd/jmliFKMAGzsGHxBvfaL
+dXe6YJ2E5/4tAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD
+AgEGMB0GA1UdDgQWBBQVOIMPPyw/cDMezUb+B4wg4NfDtzANBgkqhkiG9w0BAQUF
+AAOCAQEAX/FBfXxcCLkr4NWSR/pnXKUTwwMhmytMiUbPWU3J/qVAtmPN3XEolWcR
+zCSs00Rsca4BIGsDoo8Ytyk6feUWYFN4PMCvFYP3j1IzJL1kk5fui/fbGKhtcbP3
+LBfQdCVp9/5rPJS+TUtBjE7ic9DjkCJzQ83z7+pzzkWKsKZJ/0x9nXGIxHYdkFsd
+7v3M9+79YKWxehZx0RbQfBI8bGmX265fOZpwLwU8GUYEmSA20GBuYQa7FkKMcPcw
+++DbZqMAAb3mLNqRX6BGi01qnD093QVG/na/oAo85ADmJ7f/hC3euiInlhBx6yLt
+398znM/jra6O1I7mT1GvFpLgXPYHDw==
+-----END CERTIFICATE-----
+mozilla/TÜBİTAK_UEKAE_Kök_Sertifika_Hizmet_Sağlayıcısı_-_Sürüm_3.crt
+-----BEGIN CERTIFICATE-----
+MIIFFzCCA/+gAwIBAgIBETANBgkqhkiG9w0BAQUFADCCASsxCzAJBgNVBAYTAlRS
+MRgwFgYDVQQHDA9HZWJ6ZSAtIEtvY2FlbGkxRzBFBgNVBAoMPlTDvHJraXllIEJp
+bGltc2VsIHZlIFRla25vbG9qaWsgQXJhxZ90xLFybWEgS3VydW11IC0gVMOcQsSw
+VEFLMUgwRgYDVQQLDD9VbHVzYWwgRWxla3Ryb25payB2ZSBLcmlwdG9sb2ppIEFy
+YcWfdMSxcm1hIEVuc3RpdMO8c8O8IC0gVUVLQUUxIzAhBgNVBAsMGkthbXUgU2Vy
+dGlmaWthc3lvbiBNZXJrZXppMUowSAYDVQQDDEFUw5xCxLBUQUsgVUVLQUUgS8O2
+ayBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSAtIFPDvHLDvG0gMzAe
+Fw0wNzA4MjQxMTM3MDdaFw0xNzA4MjExMTM3MDdaMIIBKzELMAkGA1UEBhMCVFIx
+GDAWBgNVBAcMD0dlYnplIC0gS29jYWVsaTFHMEUGA1UECgw+VMO8cmtpeWUgQmls
+aW1zZWwgdmUgVGVrbm9sb2ppayBBcmHFn3TEsXJtYSBLdXJ1bXUgLSBUw5xCxLBU
+QUsxSDBGBgNVBAsMP1VsdXNhbCBFbGVrdHJvbmlrIHZlIEtyaXB0b2xvamkgQXJh
+xZ90xLFybWEgRW5zdGl0w7xzw7wgLSBVRUtBRTEjMCEGA1UECwwaS2FtdSBTZXJ0
+aWZpa2FzeW9uIE1lcmtlemkxSjBIBgNVBAMMQVTDnELEsFRBSyBVRUtBRSBLw7Zr
+IFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIC0gU8O8csO8bSAzMIIB
+IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAim1L/xCIOsP2fpTo6iBkcK4h
+gb46ezzb8R1Sf1n68yJMlaCQvEhOEav7t7WNeoMojCZG2E6VQIdhn8WebYGHV2yK
+O7Rm6sxA/OOqbLLLAdsyv9Lrhc+hDVXDWzhXcLh1xnnRFDDtG1hba+818qEhTsXO
+fJlfbLm4IpNQp81McGq+agV/E5wrHur+R84EpW+sky58K5+eeROR6Oqeyjh1jmKw
+lZMq5d/pXpduIF9fhHpEORlAHLpVK/swsoHvhOPc7Jg4OQOFCKlUAwUp8MmPi+oL
+hmUZEdPpCSPeaJMDyTYcIW7OjGbxmTDY17PDHfiBLqi9ggtm/oLL4eAagsNAgQID
+AQABo0IwQDAdBgNVHQ4EFgQUvYiHyY/2pAoLquvF/pEjnatKijIwDgYDVR0PAQH/
+BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAB18+kmP
+NOm3JpIWmgV050vQbTlswyb2zrgxvMTfvCr4N5EY3ATIZJkrGG2AA1nJrvhY0D7t
+wyOfaTyGOBye79oneNGEN3GKPEs5z35FBtYt2IpNeBLWrcLTy9LQQfMmNkqblWwM
+7uXRQydmwYj3erMgbOqwaSvHIOgMA8RBBZniP+Rr+KCGgceExh/VS4ESshYhLBOh
+gLJeDEoTniDYYkCrkOpkSi+sDQESeUWoL4cZaMjihccwsnX5OD+ywJO0a+IDRM5n
+oN+J1q2MdqMTw5RhK2vZbMEHCiIHhWyFJEapvj+LeISCfiQMnf2BN+MlqO02TpUs
+yZyQ2uypQjyttgI=
+-----END CERTIFICATE-----
+mozilla/AddTrust_External_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEU
+MBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFs
+IFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290
+MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEwNDgzOFowbzELMAkGA1UEBhMCU0Ux
+FDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRUcnVzdCBFeHRlcm5h
+bCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0EgUm9v
+dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvt
+H7xsD821+iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9
+uMq/NzgtHj6RQa1wVsfwTz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzX
+mk6vBbOmcZSccbNQYArHE504B4YCqOmoaSYYkKtMsE8jqzpPhNjfzp/haW+710LX
+a0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy2xSoRcRdKn23tNbE7qzN
+E0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv77+ldU9U0
+WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYD
+VR0PBAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0
+Jvf6xCZU7wO94CTLVBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRU
+cnVzdCBBQjEmMCQGA1UECxMdQWRkVHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsx
+IjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENBIFJvb3SCAQEwDQYJKoZIhvcN
+AQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZlj7DYd7usQWxH
+YINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5
+6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvC
+Nr4TDea9Y355e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEX
+c4g/VhsxOBi0cQ+azcgOno4uG+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5a
+mnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ=
+-----END CERTIFICATE-----
+mozilla/Comodo_Trusted_Services_root.crt
+-----BEGIN CERTIFICATE-----
+MIIEQzCCAyugAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJHQjEb
+MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow
+GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDElMCMGA1UEAwwcVHJ1c3RlZCBDZXJ0
+aWZpY2F0ZSBTZXJ2aWNlczAeFw0wNDAxMDEwMDAwMDBaFw0yODEyMzEyMzU5NTla
+MH8xCzAJBgNVBAYTAkdCMRswGQYDVQQIDBJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO
+BgNVBAcMB1NhbGZvcmQxGjAYBgNVBAoMEUNvbW9kbyBDQSBMaW1pdGVkMSUwIwYD
+VQQDDBxUcnVzdGVkIENlcnRpZmljYXRlIFNlcnZpY2VzMIIBIjANBgkqhkiG9w0B
+AQEFAAOCAQ8AMIIBCgKCAQEA33FvNlhTWvI2VFeAxHQIIO0Yfyod5jWaHiWsnOWW
+fnJSoBVC21ndZHoa0Lh73TkVvFVIxO06AOoxEbrycXQaZ7jPM8yoMa+j49d/vzMt
+TGo87IvDktJTdyR0nAducPy9C1t2ul/y/9c3S0pgePfw+spwtOpZqqPOSC+pw7IL
+fhdyFgymBwwbOM/JYrc/oJOlh0Hyt3BAd9i+FHzjqMB6juljatEPmsbS9Is6FARW
+1O24zG71++IsWL1/T2sr92AkWCTOJu80kTrV44HQsvAEAtdbtz6SrGsSivnkBbA7
+kUlcsutT6vifR4buv5XAwAaf0lteERv0xwQ1KdJVXOTt6wIDAQABo4HJMIHGMB0G
+A1UdDgQWBBTFe1i97doladL3WRaoszLAeydb9DAOBgNVHQ8BAf8EBAMCAQYwDwYD
+VR0TAQH/BAUwAwEB/zCBgwYDVR0fBHwwejA8oDqgOIY2aHR0cDovL2NybC5jb21v
+ZG9jYS5jb20vVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMuY3JsMDqgOKA2hjRo
+dHRwOi8vY3JsLmNvbW9kby5uZXQvVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMu
+Y3JsMA0GCSqGSIb3DQEBBQUAA4IBAQDIk4E7ibSvuIQSTI3S8NtwuleGFTQQuS9/
+HrCoiWChisJ3DFBKmwCL2Iv0QeLQg4pKHBQGsKNoBXAxMKdTmw7pSqBYaWcOrp32
+pSxBvzwGa+RZzG0Q8ZZvH9/0BAKkn0U+yNj6NkZEUD+Cl5EfKNsYEYwq5GWDVxIS
+jBc/lDb+XbDABHcTuPQV1T84zJQ6VdCsmPW6AF/ghhmBeC8owH7TzEIK9a5QoNE+
+xqFx7D+gIIxmOom0jtTYsU0lR+4viMi14QVFwL4Ucd56/Y57fU0IlqUSc/Atyjcn
+dBInTMu2l+nZrghtWjlA3QVHdWpaIbOjGM9O9y5Xt5hwXsjEeLBi
+-----END CERTIFICATE-----
+mozilla/RSA_Security_2048_v3.crt
+-----BEGIN CERTIFICATE-----
+MIIDYTCCAkmgAwIBAgIQCgEBAQAAAnwAAAAKAAAAAjANBgkqhkiG9w0BAQUFADA6
+MRkwFwYDVQQKExBSU0EgU2VjdXJpdHkgSW5jMR0wGwYDVQQLExRSU0EgU2VjdXJp
+dHkgMjA0OCBWMzAeFw0wMTAyMjIyMDM5MjNaFw0yNjAyMjIyMDM5MjNaMDoxGTAX
+BgNVBAoTEFJTQSBTZWN1cml0eSBJbmMxHTAbBgNVBAsTFFJTQSBTZWN1cml0eSAy
+MDQ4IFYzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt49VcdKA3Xtp
+eafwGFAyPGJn9gqVB93mG/Oe2dJBVGutn3y+Gc37RqtBaB4Y6lXIL5F4iSj7Jylg
+/9+PjDvJSZu1pJTOAeo+tWN7fyb9Gd3AIb2E0S1PRsNO3Ng3OTsor8udGuorryGl
+wSMiuLgbWhOHV4PR8CDn6E8jQrAApX2J6elhc5SYcSa8LWrg903w8bYqODGBDSnh
+AMFRD0xS+ARaqn1y07iHKrtjEAMqs6FPDVpeRrc9DvV07Jmf+T0kgYim3WBU6JU2
+PcYJk5qjEoAAVZkZR73QpXzDuvsf9/UP+Ky5tfQ3mBMY3oVbtwyCO4dvlTlYMNpu
+AWgXIszACwIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB
+BjAfBgNVHSMEGDAWgBQHw1EwpKrpRa41JPr/JCwz0LGdjDAdBgNVHQ4EFgQUB8NR
+MKSq6UWuNST6/yQsM9CxnYwwDQYJKoZIhvcNAQEFBQADggEBAF8+hnZuuDU8TjYc
+HnmYv/3VEhF5Ug7uMYm83X/50cYVIeiKAVQNOvtUudZj1LGqlk2iQk3UUx+LEN5/
+Zb5gEydxiKRz44Rj0aRV4VCT5hsOedBnvEbIvz8XDZXmxpBp3ue0L96VfdASPz0+
+f00/FGj1EVDVwfSQpQgdMWD/YIwjVAqv/qFuxdF6Kmh4zx6CCiC0H63lhbJqaHVO
+rSU3lIW+vaHU6rcMSzyd6BIA8F+sDeGscGNz9395nzIlQnQFgCi/vcEkllgVsRch
+6YlL2weIZ/QVrXA+L02FO8K32/6YaCOJ4XQP3vTFhGMpG8zLB8kApKnXwiJPZ9d3
+7CAFYd4=
+-----END CERTIFICATE-----
+mozilla/DST_Root_CA_X3.crt
+-----BEGIN CERTIFICATE-----
+MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/
+MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
+DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow
+PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD
+Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
+AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O
+rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq
+OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b
+xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw
+7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD
+aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
+HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG
+SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69
+ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr
+AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz
+R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5
+JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
+Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
+-----END CERTIFICATE-----
+mozilla/Verisign_Class_4_Public_Primary_Certification_Authority_-_G3.crt
+-----BEGIN CERTIFICATE-----
+MIIEGjCCAwICEQDsoKeLbnVqAc/EfMwvlF7XMA0GCSqGSIb3DQEBBQUAMIHKMQsw
+CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl
+cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu
+LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT
+aWduIENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
+dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD
+VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT
+aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ
+bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu
+IENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg
+LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK3LpRFpxlmr8Y+1
+GQ9Wzsy1HyDkniYlS+BzZYlZ3tCD5PUPtbut8XzoIfzk6AzufEUiGXaStBO3IFsJ
++mGuqPKljYXCKtbeZjbSmwL0qJJgfJxptI8kHtCGUvYynEFYHiK9zUVilQhu0Gbd
+U6LM8BDcVHOLBKFGMzNcF0C5nk3T875Vg+ixiY5afJqWIpA7iCXy0lOIAgwLePLm
+NxdLMEYH5IBtptiWLugs+BGzOA1mppvqySNb247i8xOOGlktqgLw7KSHZtzBP/XY
+ufTsgsbSPZUd5cBPhMnZo0QoBmrXRazwa2rvTl/4EYIeOGM0ZlDUPpNz+jDDZq3/
+ky2X7wMCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAj/ola09b5KROJ1WrIhVZPMq1
+CtRK26vdoV9TxaBXOcLORyu+OshWv8LZJxA6sQU8wHcxuzrTBXttmhwwjIDLk5Mq
+g6sFUYICABFna/OIYUdfA5PVWw3g8dShMjWFsjrbsIKr0csKvE+MW8VLADsfKoKm
+fjaF3H48ZwC15DtS4KjrXRX5xm3wrR0OhbepmnMUWluPQSjA1egtTaRezarZ7c7c
+2NU8Qh0XwRJdRTjDOPP8hS6DRkiy1yBfkjaP53kPmF6Z6PDQpLv1U70qzlmwr25/
+bLvSHgCwIe34QWKCudiyxLtGUPMxxY8BqHTr9Xgn2uf3ZkPznoM+IKrDNWCRzg==
+-----END CERTIFICATE-----
+mozilla/Global_Chambersign_Root_-_2008.crt
+-----BEGIN CERTIFICATE-----
+MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYD
+VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0
+IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3
+MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD
+aGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMxNDBaFw0zODA3MzEx
+MjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3Vy
+cmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAG
+A1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAl
+BgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZI
+hvcNAQEBBQADggIPADCCAgoCggIBAMDfVtPkOpt2RbQT2//BthmLN0EYlVJH6xed
+KYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXfXjaOcNFccUMd2drvXNL7
+G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0ZJJ0YPP2
+zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4
+ddPB/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyG
+HoiMvvKRhI9lNNgATH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2
+Id3UwD2ln58fQ1DJu7xsepeY7s2MH/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3V
+yJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfeOx2YItaswTXbo6Al/3K1dh3e
+beksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSFHTynyQbehP9r
+6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh
+wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsog
+zCtLkykPAgMBAAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQW
+BBS5CcqcHtvTbDprru1U8VuTBjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDpr
+ru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UEBhMCRVUxQzBBBgNVBAcTOk1hZHJp
+ZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJmaXJtYS5jb20vYWRk
+cmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJmaXJt
+YSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiC
+CQDJzdPp1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCow
+KAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZI
+hvcNAQEFBQADggIBAICIf3DekijZBZRG/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZ
+UohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6ReAJ3spED8IXDneRRXoz
+X1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/sdZ7LoR/x
+fxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVz
+a2Mg9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yyd
+Yhz2rXzdpjEetrHHfoUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMd
+SqlapskD7+3056huirRXhOukP9DuqqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9O
+AP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETrP3iZ8ntxPjzxmKfFGBI/5rso
+M0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVqc5iJWzouE4ge
+v8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z
+09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B
+-----END CERTIFICATE-----
+mozilla/Buypass_Class_2_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd
+MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg
+Q2xhc3MgMiBSb290IENBMB4XDTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1ow
+TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw
+HgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB
+BQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1g1Lr
+6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPV
+L4O2fuPn9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC91
+1K2GScuVr1QGbNgGE41b/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHx
+MlAQTn/0hpPshNOOvEu/XAFOBz3cFIqUCqTqc/sLUegTBxj6DvEr0VQVfTzh97QZ
+QmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeffawrbD02TTqigzXsu8lkB
+arcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgIzRFo1clr
+Us3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLi
+FRhnBkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRS
+P/TizPJhk9H9Z2vXUq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN
+9SG9dKpN6nIDSdvHXx1iY8f93ZHsM+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxP
+AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMmAd+BikoL1Rpzz
+uvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAU18h
+9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s
+A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3t
+OluwlN5E40EIosHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo
++fsicdl9sz1Gv7SEr5AcD48Saq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7
+KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYdDnkM/crqJIByw5c/8nerQyIKx+u2
+DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWDLfJ6v9r9jv6ly0Us
+H8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0oyLQ
+I+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK7
+5t98biGCwWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h
+3PFaTWwyI0PurKju7koSCTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPz
+Y11aWOIv4x3kqdbQCtCev9eBCfHJxyYNrJgWVqA=
+-----END CERTIFICATE-----
+mozilla/America_Online_Root_Certification_Authority_2.crt
+-----BEGIN CERTIFICATE-----
+MIIFpDCCA4ygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEc
+MBoGA1UEChMTQW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBP
+bmxpbmUgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAyMB4XDTAyMDUyODA2
+MDAwMFoXDTM3MDkyOTE0MDgwMFowYzELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0Ft
+ZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2EgT25saW5lIFJvb3Qg
+Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMjCCAiIwDQYJKoZIhvcNAQEBBQADggIP
+ADCCAgoCggIBAMxBRR3pPU0Q9oyxQcngXssNt79Hc9PwVU3dxgz6sWYFas14tNwC
+206B89enfHG8dWOgXeMHDEjsJcQDIPT/DjsS/5uN4cbVG7RtIuOx238hZK+GvFci
+KtZHgVdEglZTvYYUAQv8f3SkWq7xuhG1m1hagLQ3eAkzfDJHA1zEpYNI9FdWboE2
+JxhP7JsowtS013wMPgwr38oE18aO6lhOqKSlGBxsRZijQdEt0sdtjRnxrXm3gT+9
+BoInLRBYBbV4Bbkv2wxrkJB+FFk4u5QkE+XRnRTf04JNRvCAOVIyD+OEsnpD8l7e
+Xz8d3eOyG6ChKiMDbi4BFYdcpnV1x5dhvt6G3NRI270qv0pV2uh9UPu0gBe4lL8B
+PeraunzgWGcXuVjgiIZGZ2ydEEdYMtA1fHkqkKJaEBEjNa0vzORKW6fIJ/KD3l67
+Xnfn6KVuY8INXWHQjNJsWiEOyiijzirplcdIz5ZvHZIlyMbGwcEMBawmxNJ10uEq
+Z8A9W6Wa6897GqidFEXlD6CaZd4vKL3Ob5Rmg0gp2OpljK+T2WSfVVcmv2/LNzGZ
+o2C7HK2JNDJiuEMhBnIMoVxtRsX6Kc8w3onccVvdtjc+31D1uAclJuW8tf48ArO3
++L5DwYcRlJ4jbBeKuIonDFRH8KmzwICMoCfrHRnjB453cMor9H124HhnAgMBAAGj
+YzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFE1FwWg4u3OpaaEg5+31IqEj
+FNeeMB8GA1UdIwQYMBaAFE1FwWg4u3OpaaEg5+31IqEjFNeeMA4GA1UdDwEB/wQE
+AwIBhjANBgkqhkiG9w0BAQUFAAOCAgEAZ2sGuV9FOypLM7PmG2tZTiLMubekJcmn
+xPBUlgtk87FYT15R/LKXeydlwuXK5w0MJXti4/qftIe3RUavg6WXSIylvfEWK5t2
+LHo1YGwRgJfMqZJS5ivmae2p+DYtLHe/YUjRYwu5W1LtGLBDQiKmsXeu3mnFzccc
+obGlHBD7GL4acN3Bkku+KVqdPzW+5X1R+FXgJXUjhx5c3LqdsKyzadsXg8n33gy8
+CNyRnqjQ1xU3c6U1uPx+xURABsPr+CKAXEfOAuMRn0T//ZoyzH1kUQ7rVyZ2OuMe
+IjzCpjbdGe+n/BLzJsBZMYVMnNjP36TMzCmT/5RtdlwTCJfy7aULTd3oyWgOZtMA
+DjMSW7yV5TKQqLPGbIOtd+6Lfn6xqavT4fG2wLHqiMDn05DpKJKUe2h7lyoKZy2F
+AjgQ5ANh1NolNscIWC2hp1GvMApJ9aZphwctREZ2jirlmjvXGKL8nDgQzMY70rUX
+Om/9riW99XJZZLF0KjhfGEzfz3EEWjbUvy+ZnOjZurGV5gJLIaFb1cFPj65pbVPb
+AZO1XB4Y3WRayhgoPmMEEf0cjQAPuDffZ4qdZqkCapH/E8ovXYO8h5Ns3CRRFgQl
+Zvqz2cK6Kb6aSDiCmfS/O0oxGfm/jiEzFMpPVF/7zvuPcX/9XhmgD0uRuMRUvAaw
+RY8mkaKO/qk=
+-----END CERTIFICATE-----
+mozilla/CA_Disig_Root_R1.crt
+-----BEGIN CERTIFICATE-----
+MIIFaTCCA1GgAwIBAgIJAMMDmu5QkG4oMA0GCSqGSIb3DQEBBQUAMFIxCzAJBgNV
+BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu
+MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIxMB4XDTEyMDcxOTA5MDY1NloXDTQy
+MDcxOTA5MDY1NlowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx
+EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjEw
+ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCqw3j33Jijp1pedxiy3QRk
+D2P9m5YJgNXoqqXinCaUOuiZc4yd39ffg/N4T0Dhf9Kn0uXKE5Pn7cZ3Xza1lK/o
+OI7bm+V8u8yN63Vz4STN5qctGS7Y1oprFOsIYgrY3LMATcMjfF9DCCMyEtztDK3A
+fQ+lekLZWnDZv6fXARz2m6uOt0qGeKAeVjGu74IKgEH3G8muqzIm1Cxr7X1r5OJe
+IgpFy4QxTaz+29FHuvlglzmxZcfe+5nkCiKxLU3lSCZpq+Kq8/v8kiky6bM+TR8n
+oc2OuRf7JT7JbvN32g0S9l3HuzYQ1VTW8+DiR0jm3hTaYVKvJrT1cU/J19IG32PK
+/yHoWQbgCNWEFVP3Q+V8xaCJmGtzxmjOZd69fwX3se72V6FglcXM6pM6vpmumwKj
+rckWtc7dXpl4fho5frLABaTAgqWjR56M6ly2vGfb5ipN0gTco65F97yLnByn1tUD
+3AjLLhbKXEAz6GfDLuemROoRRRw1ZS0eRWEkG4IupZ0zXWX4Qfkuy5Q/H6MMMSRE
+7cderVC6xkGbrPAXZcD4XW9boAo0PO7X6oifmPmvTiT6l7Jkdtqr9O3jw2Dv1fkC
+yC2fg69naQanMVXVz0tv/wQFx1isXxYb5dKj6zHbHzMVTdDypVP1y+E9Tmgt2BLd
+qvLmTZtJ5cUoobqwWsagtQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
+DwEB/wQEAwIBBjAdBgNVHQ4EFgQUiQq0OJMa5qvum5EY+fU8PjXQ04IwDQYJKoZI
+hvcNAQEFBQADggIBADKL9p1Kyb4U5YysOMo6CdQbzoaz3evUuii+Eq5FLAR0rBNR
+xVgYZk2C2tXck8An4b58n1KeElb21Zyp9HWc+jcSjxyT7Ff+Bw+r1RL3D65hXlaA
+SfX8MPWbTx9BLxyE04nH4toCdu0Jz2zBuByDHBb6lM19oMgY0sidbvW9adRtPTXo
+HqJPYNcHKfyyo6SdbhWSVhlMCrDpfNIZTUJG7L399ldb3Zh+pE3McgODWF3vkzpB
+emOqfDqo9ayk0d2iLbYq/J8BjuIQscTK5GfbVSUZP/3oNn6z4eGBrxEWi1CXYBmC
+AMBrTXO40RMHPuq2MU/wQppt4hF05ZSsjYSVPCGvxdpHyN85YmLLW1AL14FABZyb
+7bq2ix4Eb5YgOe2kfSnbSM6C3NQCjR0EMVrHS/BsYVLXtFHCgWzN4funodKSds+x
+DzdYpPJScWc/DIh4gInByLUfkmO+p3qKViwaqKactV2zY9ATIKHrkWzQjX2v3wvk
+F7mGnjixlAxYjOBVqjtjbZqJYLhkKpLGN/R+Q0O3c+gB53+XD9fyexn9GtePyfqF
+a3qdnom2piiZk4hA9z7NUaPK6u95RyG1/jLix8NRb76AdPCkwzryT+lf3xkK8jsT
+Q6wxpLPn6/wY1gGp8yqPNg7rtLG8t0zJa7+h89n07eLw4+1knj0vllJPgFOL
+-----END CERTIFICATE-----
+mozilla/TC_TrustCenter_Class_3_CA_II.crt
+-----BEGIN CERTIFICATE-----
+MIIEqjCCA5KgAwIBAgIOSkcAAQAC5aBd1j8AUb8wDQYJKoZIhvcNAQEFBQAwdjEL
+MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNV
+BAsTGVRDIFRydXN0Q2VudGVyIENsYXNzIDMgQ0ExJTAjBgNVBAMTHFRDIFRydXN0
+Q2VudGVyIENsYXNzIDMgQ0EgSUkwHhcNMDYwMTEyMTQ0MTU3WhcNMjUxMjMxMjI1
+OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIgR21i
+SDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQTElMCMGA1UEAxMc
+VEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBALTgu1G7OVyLBMVMeRwjhjEQY0NVJz/GRcekPewJDRoeIMJW
+Ht4bNwcwIi9v8Qbxq63WyKthoy9DxLCyLfzDlml7forkzMA5EpBCYMnMNWju2l+Q
+Vl/NHE1bWEnrDgFPZPosPIlY2C8u4rBo6SI7dYnWRBpl8huXJh0obazovVkdKyT2
+1oQDZogkAHhg8fir/gKya/si+zXmFtGt9i4S5Po1auUZuV3bOx4a+9P/FRQI2Alq
+ukWdFHlgfa9Aigdzs5OW03Q0jTo3Kd5c7PXuLjHCINy+8U9/I1LZW+Jk2ZyqBwi1
+Rb3R0DHBq1SfqdLDYmAD8bs5SpJKPQq5ncWg/jcCAwEAAaOCATQwggEwMA8GA1Ud
+EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTUovyfs8PYA9NX
+XAek0CSnwPIA1DCB7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRy
+dXN0Y2VudGVyLmRlL2NybC92Mi90Y19jbGFzc18zX2NhX0lJLmNybIaBn2xkYXA6
+Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBUcnVzdENlbnRlciUyMENsYXNz
+JTIwMyUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21iSCxPVT1yb290
+Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u
+TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEANmDkcPcGIEPZIxpC8vijsrlN
+irTzwppVMXzEO2eatN9NDoqTSheLG43KieHPOh6sHfGcMrSOWXaiQYUlN6AT0PV8
+TtXqluJucsG7Kv5sbviRmEb8yRtXW+rIGjs/sFGYPAfaLFkB2otE6OF0/ado3VS6
+g0bsyEa1+K+XwDsJHI/OcpY9M1ZwvJbL2NV9IJqDnxrcOfHFcqMRA/07QlIp2+gB
+95tejNaNhk4Z+rwcvsUhpYeeeC422wlxo3I0+GzjBgnyXlal092Y+tTmBvTwtiBj
+S+opvaqCZh77gaqnN60TGOaSw4HBM7uIHqHn4rS9MWwOUT1v+5ZWgOI2F9Hc5A==
+-----END CERTIFICATE-----
+mozilla/TDC_Internet_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEKzCCAxOgAwIBAgIEOsylTDANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJE
+SzEVMBMGA1UEChMMVERDIEludGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQg
+Um9vdCBDQTAeFw0wMTA0MDUxNjMzMTdaFw0yMTA0MDUxNzAzMTdaMEMxCzAJBgNV
+BAYTAkRLMRUwEwYDVQQKEwxUREMgSW50ZXJuZXQxHTAbBgNVBAsTFFREQyBJbnRl
+cm5ldCBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxLhA
+vJHVYx/XmaCLDEAedLdInUaMArLgJF/wGROnN4NrXceO+YQwzho7+vvOi20jxsNu
+Zp+Jpd/gQlBn+h9sHvTQBda/ytZO5GhgbEaqHF1j4QeGDmUApy6mcca8uYGoOn0a
+0vnRrEvLznWv3Hv6gXPU/Lq9QYjUdLP5Xjg6PEOo0pVOd20TDJ2PeAG3WiAfAzc1
+4izbSysseLlJ28TQx5yc5IogCSEWVmb/Bexb4/DPqyQkXsN/cHoSxNK1EKC2IeGN
+eGlVRGn1ypYcNIUXJXfi9i8nmHj9eQY6otZaQ8H/7AQ77hPv01ha/5Lr7K7a8jcD
+R0G2l8ktCkEiu7vmpwIDAQABo4IBJTCCASEwEQYJYIZIAYb4QgEBBAQDAgAHMGUG
+A1UdHwReMFwwWqBYoFakVDBSMQswCQYDVQQGEwJESzEVMBMGA1UEChMMVERDIElu
+dGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQgUm9vdCBDQTENMAsGA1UEAxME
+Q1JMMTArBgNVHRAEJDAigA8yMDAxMDQwNTE2MzMxN1qBDzIwMjEwNDA1MTcwMzE3
+WjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUbGQBx/2FbazI2p5QCIUItTxWqFAw
+HQYDVR0OBBYEFGxkAcf9hW2syNqeUAiFCLU8VqhQMAwGA1UdEwQFMAMBAf8wHQYJ
+KoZIhvZ9B0EABBAwDhsIVjUuMDo0LjADAgSQMA0GCSqGSIb3DQEBBQUAA4IBAQBO
+Q8zR3R0QGwZ/t6T609lN+yOfI1Rb5osvBCiLtSdtiaHsmGnc540mgwV5dOy0uaOX
+wTUA/RXaOYE6lTGQ3pfphqiZdwzlWqCE/xIWrG64jcN7ksKsLtB9KOy282A4aW8+
+2ARVPp7MVdK6/rtHBNcK2RYKNCn1WBPVT8+PVkuzHu7TmHnaCB4Mb7j4Fifvwm89
+9qNLPg7kbWzbO0ESm70NRyN/PErQr8Cv9u8btRXE64PECV90i9kR+8JWsTz4cMo0
+jUNAE4z9mQNUecYu6oah9jrUCbz0vGbMPVjQV0kK7iXiQe4T+Zs4NNEA9X7nlB38
+aQNiuJkFBT1reBK9sG9l
+-----END CERTIFICATE-----
+mozilla/Network_Solutions_Certificate_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIID5jCCAs6gAwIBAgIQV8szb8JcFuZHFhfjkDFo4DANBgkqhkiG9w0BAQUFADBi
+MQswCQYDVQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMu
+MTAwLgYDVQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3Jp
+dHkwHhcNMDYxMjAxMDAwMDAwWhcNMjkxMjMxMjM1OTU5WjBiMQswCQYDVQQGEwJV
+UzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMuMTAwLgYDVQQDEydO
+ZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0GCSqG
+SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkvH6SMG3G2I4rC7xGzuAnlt7e+foS0zwz
+c7MEL7xxjOWftiJgPl9dzgn/ggwbmlFQGiaJ3dVhXRncEg8tCqJDXRfQNJIg6nPP
+OCwGJgl6cvf6UDL4wpPTaaIjzkGxzOTVHzbRijr4jGPiFFlp7Q3Tf2vouAPlT2rl
+mGNpSAW+Lv8ztumXWWn4Zxmuk2GWRBXTcrA/vGp97Eh/jcOrqnErU2lBUzS1sLnF
+BgrEsEX1QV1uiUV7PTsmjHTC5dLRfbIR1PtYMiKagMnc/Qzpf14Dl847ABSHJ3A4
+qY5usyd2mFHgBeMhqxrVhSI8KbWaFsWAqPS7azCPL0YCorEMIuDTAgMBAAGjgZcw
+gZQwHQYDVR0OBBYEFCEwyfsA106Y2oeqKtCnLrFAMadMMA4GA1UdDwEB/wQEAwIB
+BjAPBgNVHRMBAf8EBTADAQH/MFIGA1UdHwRLMEkwR6BFoEOGQWh0dHA6Ly9jcmwu
+bmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zQ2VydGlmaWNhdGVBdXRob3Jp
+dHkuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQC7rkvnt1frf6ott3NHhWrB5KUd5Oc8
+6fRZZXe1eltajSU24HqXLjjAV2CDmAaDn7l2em5Q4LqILPxFzBiwmZVRDuwduIj/
+h1AcgsLj4DKAv6ALR8jDMe+ZZzKATxcheQxpXN5eNK4CtSbqUN9/GGUsyfJj4akH
+/nxxH2szJGoeBfcFaMBqEssuXmHLrijTfsK0ZpEmXzwuJF/LWA/rKOyvEZbz3Htv
+wKeI8lN3s2Berq4o2jUsbzRF0ybh3uxbTydrFny9RAQYgrOJeRcQcT16ohZO9QHN
+pGxlaKFJdlxDydi8NmdspZS11My5vWo1ViHe2MPr+8ukYEywVaCge1ey
+-----END CERTIFICATE-----
+mozilla/Buypass_Class_3_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd
+MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg
+Q2xhc3MgMyBSb290IENBMB4XDTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFow
+TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw
+HgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB
+BQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRHsJ8Y
+ZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3E
+N3coTRiR5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9
+tznDDgFHmV0ST9tD+leh7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX
+0DJq1l1sDPGzbjniazEuOQAnFN44wOwZZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c
+/3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH2xc519woe2v1n/MuwU8X
+KhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV/afmiSTY
+zIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvS
+O1UQRwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D
+34xFMFbG02SrZvPAXpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgP
+K9Dx2hzLabjKSWJtyNBjYt1gD1iqj6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3
+AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFEe4zf/lb+74suwv
+Tg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAACAj
+QTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV
+cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXS
+IGrs/CIBKM+GuIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2
+HJLw5QY33KbmkJs4j1xrG0aGQ0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsa
+O5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8ZORK15FTAaggiG6cX0S5y2CBNOxv
+033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2KSb12tjE8nVhz36u
+dmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz6MkE
+kbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg41
+3OEMXbugUZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvD
+u79leNKGef9JOxqDDPDeeOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq
+4/g7u9xN12TyUb7mqqta6THuBrxzvxNiCp/HuZc=
+-----END CERTIFICATE-----
+mozilla/UTN_DATACorp_SGC_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEXjCCA0agAwIBAgIQRL4Mi1AAIbQR0ypoBqmtaTANBgkqhkiG9w0BAQUFADCB
+kzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug
+Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho
+dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xGzAZBgNVBAMTElVUTiAtIERBVEFDb3Jw
+IFNHQzAeFw05OTA2MjQxODU3MjFaFw0xOTA2MjQxOTA2MzBaMIGTMQswCQYDVQQG
+EwJVUzELMAkGA1UECBMCVVQxFzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYD
+VQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cu
+dXNlcnRydXN0LmNvbTEbMBkGA1UEAxMSVVROIC0gREFUQUNvcnAgU0dDMIIBIjAN
+BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3+5YEKIrblXEjr8uRgnn4AgPLit6
+E5Qbvfa2gI5lBZMAHryv4g+OGQ0SR+ysraP6LnD43m77VkIVni5c7yPeIbkFdicZ
+D0/Ww5y0vpQZY/KmEQrrU0icvvIpOxboGqBMpsn0GFlowHDyUwDAXlCCpVZvNvlK
+4ESGoE1O1kduSUrLZ9emxAW5jh70/P/N5zbgnAVssjMiFdC04MwXwLLA9P4yPykq
+lXvY8qdOD1R8oQ2AswkDwf9c3V6aPryuvEeKaq5xyh+xKrhfQgUL7EYw0XILyulW
+bfXv33i+Ybqypa4ETLyorGkVl73v67SMvzX41MPRKA5cOp9wGDMgd8SirwIDAQAB
+o4GrMIGoMAsGA1UdDwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRT
+MtGzz3/64PGgXYVOktKeRR20TzA9BgNVHR8ENjA0MDKgMKAuhixodHRwOi8vY3Js
+LnVzZXJ0cnVzdC5jb20vVVROLURBVEFDb3JwU0dDLmNybDAqBgNVHSUEIzAhBggr
+BgEFBQcDAQYKKwYBBAGCNwoDAwYJYIZIAYb4QgQBMA0GCSqGSIb3DQEBBQUAA4IB
+AQAnNZcAiosovcYzMB4p/OL31ZjUQLtgyr+rFywJNn9Q+kHcrpY6CiM+iVnJowft
+Gzet/Hy+UUla3joKVAgWRcKZsYfNjGjgaQPpxE6YsjuMFrMOoAyYUJuTqXAJyCyj
+j98C5OBxOvG0I3KgqgHf35g+FFCgMSa9KOlaMCZ1+XtgHI3zzVAmbQQnmt/VDUVH
+KWss5nbZqSl9Mt3JNjy9rjXxEZ4du5A/EkdOjtd+D2JzHVImOBwYSf0wdJrE5SIv
+2MCN7ZF6TACPcn9d2t0bi0Vr591pl6jFVkwPDPafepE39peC4N1xaf92P2BNPM/3
+mfnGV/TJVTl4uix5yaaIK/QI
+-----END CERTIFICATE-----
+mozilla/NetLock_Notary_=Class_A=_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIGfTCCBWWgAwIBAgICAQMwDQYJKoZIhvcNAQEEBQAwga8xCzAJBgNVBAYTAkhV
+MRAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMe
+TmV0TG9jayBIYWxvemF0Yml6dG9uc2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0
+dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9jayBLb3pqZWd5em9pIChDbGFzcyBB
+KSBUYW51c2l0dmFueWtpYWRvMB4XDTk5MDIyNDIzMTQ0N1oXDTE5MDIxOTIzMTQ0
+N1owga8xCzAJBgNVBAYTAkhVMRAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDVQQHEwhC
+dWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9uc2FnaSBLZnQu
+MRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9jayBL
+b3pqZWd5em9pIChDbGFzcyBBKSBUYW51c2l0dmFueWtpYWRvMIIBIjANBgkqhkiG
+9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvHSMD7tM9DceqQWC2ObhbHDqeLVu0ThEDaiD
+zl3S1tWBxdRL51uUcCbbO51qTGL3cfNk1mE7PetzozfZz+qMkjvN9wfcZnSX9EUi
+3fRc4L9t875lM+QVOr/bmJBVOMTtplVjC7B4BPTjbsE/jvxReB+SnoPC/tmwqcm8
+WgD/qaiYdPv2LD4VOQ22BFWoDpggQrOxJa1+mm9dU7GrDPzr4PN6s6iz/0b2Y6LY
+Oph7tqyF/7AlT3Rj5xMHpQqPBffAZG9+pyeAlt7ULoZgx2srXnN7F+eRP2QM2Esi
+NCubMvJIH5+hCoR64sKtlz2O1cH5VqNQ6ca0+pii7pXmKgOM3wIDAQABo4ICnzCC
+ApswDgYDVR0PAQH/BAQDAgAGMBIGA1UdEwEB/wQIMAYBAf8CAQQwEQYJYIZIAYb4
+QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1GSUdZRUxFTSEgRXplbiB0
+YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFub3MgU3pvbGdhbHRhdGFz
+aSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBhbGFwamFuIGtlc3p1bHQu
+IEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExvY2sgS2Z0LiB0ZXJtZWtm
+ZWxlbG9zc2VnLWJpenRvc2l0YXNhIHZlZGkuIEEgZGlnaXRhbGlzIGFsYWlyYXMg
+ZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYXogZWxvaXJ0IGVsbGVub3J6ZXNpIGVs
+amFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJhc2EgbWVndGFsYWxoYXRv
+IGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGphbiBhIGh0dHBzOi8vd3d3
+Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJoZXRvIGF6IGVsbGVub3J6
+ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBPUlRBTlQhIFRoZSBpc3N1
+YW5jZSBhbmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGlzIHN1YmplY3Qg
+dG8gdGhlIE5ldExvY2sgQ1BTIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5uZXRs
+b2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBjcHNAbmV0bG9jay5uZXQuMA0G
+CSqGSIb3DQEBBAUAA4IBAQBIJEb3ulZv+sgoA0BO5TE5ayZrU3/b39/zcT0mwBQO
+xmd7I6gMc90Bu8bKbjc5VdXHjFYgDigKDtIqpLBJUsY4B/6+CgmM0ZjPytoUMaFP
+0jn8DxEsQ8Pdq5PHVT5HfBgaANzze9jyf1JsIPQLX2lS9O74silg6+NJMSEN1rUQ
+QeJBCWziGppWS3cC9qCbmieH6FUpccKQn0V4GuEVZD3QDtigdp+uxdAu6tYPVuxk
+f1qbFFgBJ34TUMdrKuZoPL9coAob4Q566eKAw+np9v1sEZ7Q5SgnK1QyQhSCdeZK
+8CtmdWOMovsEPoMOmzbwGOQmIMOM8CgHrTwXZoi1/baI
+-----END CERTIFICATE-----
+mozilla/Microsec_e-Szigno_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIHqDCCBpCgAwIBAgIRAMy4579OKRr9otxmpRwsDxEwDQYJKoZIhvcNAQEFBQAw
+cjELMAkGA1UEBhMCSFUxETAPBgNVBAcTCEJ1ZGFwZXN0MRYwFAYDVQQKEw1NaWNy
+b3NlYyBMdGQuMRQwEgYDVQQLEwtlLVN6aWdubyBDQTEiMCAGA1UEAxMZTWljcm9z
+ZWMgZS1Temlnbm8gUm9vdCBDQTAeFw0wNTA0MDYxMjI4NDRaFw0xNzA0MDYxMjI4
+NDRaMHIxCzAJBgNVBAYTAkhVMREwDwYDVQQHEwhCdWRhcGVzdDEWMBQGA1UEChMN
+TWljcm9zZWMgTHRkLjEUMBIGA1UECxMLZS1Temlnbm8gQ0ExIjAgBgNVBAMTGU1p
+Y3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQDtyADVgXvNOABHzNuEwSFpLHSQDCHZU4ftPkNEU6+r+ICbPHiN1I2u
+uO/TEdyB5s87lozWbxXGd36hL+BfkrYn13aaHUM86tnsL+4582pnS4uCzyL4ZVX+
+LMsvfUh6PXX5qqAnu3jCBspRwn5mS6/NoqdNAoI/gqyFxuEPkEeZlApxcpMqyabA
+vjxWTHOSJ/FrtfX9/DAFYJLG65Z+AZHCabEeHXtTRbjcQR/Ji3HWVBTji1R4P770
+Yjtb9aPs1ZJ04nQw7wHb4dSrmZsqa/i9phyGI0Jf7Enemotb9HI6QMVJPqW+jqpx
+62z69Rrkav17fVVA71hu5tnVvCSrwe+3AgMBAAGjggQ3MIIEMzBnBggrBgEFBQcB
+AQRbMFkwKAYIKwYBBQUHMAGGHGh0dHBzOi8vcmNhLmUtc3ppZ25vLmh1L29jc3Aw
+LQYIKwYBBQUHMAKGIWh0dHA6Ly93d3cuZS1zemlnbm8uaHUvUm9vdENBLmNydDAP
+BgNVHRMBAf8EBTADAQH/MIIBcwYDVR0gBIIBajCCAWYwggFiBgwrBgEEAYGoGAIB
+AQEwggFQMCgGCCsGAQUFBwIBFhxodHRwOi8vd3d3LmUtc3ppZ25vLmh1L1NaU1ov
+MIIBIgYIKwYBBQUHAgIwggEUHoIBEABBACAAdABhAG4A+gBzAO0AdAB2AOEAbgB5
+ACAA6QByAHQAZQBsAG0AZQB6AOkAcwDpAGgAZQB6ACAA6QBzACAAZQBsAGYAbwBn
+AGEAZADhAHMA4QBoAG8AegAgAGEAIABTAHoAbwBsAGcA4QBsAHQAYQB0APMAIABT
+AHoAbwBsAGcA4QBsAHQAYQB0AOEAcwBpACAAUwB6AGEAYgDhAGwAeQB6AGEAdABh
+ACAAcwB6AGUAcgBpAG4AdAAgAGsAZQBsAGwAIABlAGwAagDhAHIAbgBpADoAIABo
+AHQAdABwADoALwAvAHcAdwB3AC4AZQAtAHMAegBpAGcAbgBvAC4AaAB1AC8AUwBa
+AFMAWgAvMIHIBgNVHR8EgcAwgb0wgbqggbeggbSGIWh0dHA6Ly93d3cuZS1zemln
+bm8uaHUvUm9vdENBLmNybIaBjmxkYXA6Ly9sZGFwLmUtc3ppZ25vLmh1L0NOPU1p
+Y3Jvc2VjJTIwZS1Temlnbm8lMjBSb290JTIwQ0EsT1U9ZS1Temlnbm8lMjBDQSxP
+PU1pY3Jvc2VjJTIwTHRkLixMPUJ1ZGFwZXN0LEM9SFU/Y2VydGlmaWNhdGVSZXZv
+Y2F0aW9uTGlzdDtiaW5hcnkwDgYDVR0PAQH/BAQDAgEGMIGWBgNVHREEgY4wgYuB
+EGluZm9AZS1zemlnbm8uaHWkdzB1MSMwIQYDVQQDDBpNaWNyb3NlYyBlLVN6aWdu
+w7MgUm9vdCBDQTEWMBQGA1UECwwNZS1TemlnbsOzIEhTWjEWMBQGA1UEChMNTWlj
+cm9zZWMgS2Z0LjERMA8GA1UEBxMIQnVkYXBlc3QxCzAJBgNVBAYTAkhVMIGsBgNV
+HSMEgaQwgaGAFMegSXUWYYTbMUuE0vE3QJDvTtz3oXakdDByMQswCQYDVQQGEwJI
+VTERMA8GA1UEBxMIQnVkYXBlc3QxFjAUBgNVBAoTDU1pY3Jvc2VjIEx0ZC4xFDAS
+BgNVBAsTC2UtU3ppZ25vIENBMSIwIAYDVQQDExlNaWNyb3NlYyBlLVN6aWdubyBS
+b290IENBghEAzLjnv04pGv2i3GalHCwPETAdBgNVHQ4EFgQUx6BJdRZhhNsxS4TS
+8TdAkO9O3PcwDQYJKoZIhvcNAQEFBQADggEBANMTnGZjWS7KXHAM/IO8VbH0jgds
+ZifOwTsgqRy7RlRw7lrMoHfqaEQn6/Ip3Xep1fvj1KcExJW4C+FEaGAHQzAxQmHl
+7tnlJNUb3+FKG6qfx1/4ehHqE5MAyopYse7tDk2016g2JnzgOsHVV4Lxdbb9iV/a
+86g4nzUGCM4ilb7N1fy+W955a9x6qWVmvrElWl/tftOsRm1M9DKHtCAE4Gx4sHfR
+hUZLphK3dehKyVZs15KrnfVJONJPU+NVkBHbmJbGSfI+9J8b4PeI3CVimUTYc78/
+MPMMNz7UwiiAc7EBt51alhQBS6kRnSlqLtBdgcDPsiBDxwPgN05dCtxZICU=
+-----END CERTIFICATE-----
+mozilla/AffirmTrust_Premium.crt
+-----BEGIN CERTIFICATE-----
+MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UE
+BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVz
+dCBQcmVtaXVtMB4XDTEwMDEyOTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkG
+A1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1U
+cnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxBLf
+qV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtnBKAQ
+JG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ
++jjeRFcV5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrS
+s8PhaJyJ+HoAVt70VZVs+7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5
+HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmdGPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d7
+70O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5Rp9EixAqnOEhss/n/fauG
+V+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NIS+LI+H+S
+qHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S
+5u046uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4Ia
+C1nEWTJ3s7xgaVY5/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TX
+OwF0lkLgAOIua+rF7nKsu7/+6qqo+Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYE
+FJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/
+BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByvMiPIs0laUZx2
+KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg
+Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B
+8OWycvpEgjNC6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQ
+MKSOyARiqcTtNd56l+0OOF6SL5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc
+0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK+4w1IX2COPKpVJEZNZOUbWo6xbLQ
+u4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmVBtWVyuEklut89pMF
+u+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFgIxpH
+YoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8
+GKa1qF60g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaO
+RtGdFNrHF+QFlozEJLUbzxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6e
+KeC2uAloGRwYQw==
+-----END CERTIFICATE-----
+mozilla/Certplus_Class_2_Primary_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEFBQAw
+PTELMAkGA1UEBhMCRlIxETAPBgNVBAoTCENlcnRwbHVzMRswGQYDVQQDExJDbGFz
+cyAyIFByaW1hcnkgQ0EwHhcNOTkwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9
+MQswCQYDVQQGEwJGUjERMA8GA1UEChMIQ2VydHBsdXMxGzAZBgNVBAMTEkNsYXNz
+IDIgUHJpbWFyeSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANxQ
+ltAS+DXSCHh6tlJw/W/uz7kRy1134ezpfgSN1sxvc0NXYKwzCkTsA18cgCSR5aiR
+VhKC9+Ar9NuuYS6JEI1rbLqzAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQyL
+kcAbmXuZVg2v7tK8R1fjeUl7NIknJITesezpWE7+Tt9avkGtrAjFGA7v0lPubNCd
+EgETjdyAYveVqUSISnFOYFWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L3yas
+H7WLO7dDWWuwJKZtkIvEcupdM5i3y95ee++U8Rs+yskhwcWYAqqi9lt3m/V+llU0
+HGdpwPFC40es/CgcZlUCAwEAAaOBjDCBiTAPBgNVHRMECDAGAQH/AgEKMAsGA1Ud
+DwQEAwIBBjAdBgNVHQ4EFgQU43Mt38sOKAze3bOkynm4jrvoMIkwEQYJYIZIAYb4
+QgEBBAQDAgEGMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3cuY2VydHBsdXMu
+Y29tL0NSTC9jbGFzczIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+IRBnL39R/
+AN9WM2K191EBkOvDP9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3n5QRIqWh8
+yfFC82x/xXp8HVGIutIKPidd3i1RTtMTZGnkLuPT55sJmabglZvOGtd/vjzOUrMR
+FcEPF80Du5wlFbqidon8BvEY0JNLDnyCt6X09l/+7UCmnYR0ObncHoUW2ikbhiMA
+ybuJfm6AiB4vFLQDJKgybwOaRywwvlbGp0ICcBvqQNi6BQNwB6SW//1IMwrh3KWB
+kJtN3X3n57LNXMhqlfil9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY1Rbpsda2ENW7
+l7+ijrRU
+-----END CERTIFICATE-----
+mozilla/Entrust.net_Premium_2048_Secure_Server_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChML
+RW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBp
+bmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5
+IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1c3QubmV0IENlcnRp
+ZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQxNzUwNTFaFw0yOTA3
+MjQxNDE1MTJaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3d3d3
+LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxp
+YWIuKTElMCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEG
+A1UEAxMqRW50cnVzdC5uZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgp
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArU1LqRKGsuqjIAcVFmQq
+K0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOLGp18EzoOH1u3Hs/lJBQe
+sYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSrhRSGlVuX
+MlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVT
+XTzWnLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/
+HoZdenoVve8AjhUiVBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH
+4QIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNV
+HQ4EFgQUVeSB0RGAvtiJuQijMfmhJAkWuXAwDQYJKoZIhvcNAQEFBQADggEBADub
+j1abMOdTmXx6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcnPyT/4xmf3IDExo
+U8aAghOY+rat2l098c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csHsm7mhpElesYT6Yf
+zX1XEC+bBAlahLVu2B064dae0Wx5XnkcFMXj0EyTO2U87d89vqbllRrDtRnDvV5b
+u/8j72gZyxKTJ1wDLW8w0B62GqzeWvfRqqgnpv55gcR5mTNXuhKwqeBCbJPKVt7+
+bYQLCIt+jerXmCHG8+c8eS9enNFMFY3h7CI3zJpDC5fcgJCNs2ebb0gIFVbPv/Er
+fF6adulZkMV8gzURZVE=
+-----END CERTIFICATE-----
+mozilla/Sonera_Class_1_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDIDCCAgigAwIBAgIBJDANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEP
+MA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MxIENBMB4XDTAx
+MDQwNjEwNDkxM1oXDTIxMDQwNjEwNDkxM1owOTELMAkGA1UEBhMCRkkxDzANBgNV
+BAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMSBDQTCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBALWJHytPZwp5/8Ue+H887dF+2rDNbS82rDTG
+29lkFwhjMDMiikzujrsPDUJVyZ0upe/3p4zDq7mXy47vPxVnqIJyY1MPQYx9EJUk
+oVqlBvqSV536pQHydekfvFYmUk54GWVYVQNYwBSujHxVX3BbdyMGNpfzJLWaRpXk
+3w0LBUXl0fIdgrvGE+D+qnr9aTCU89JFhfzyMlsy3uhsXR/LpCJ0sICOXZT3BgBL
+qdReLjVQCfOAl/QMF6452F/NM8EcyonCIvdFEu1eEpOdY6uCLrnrQkFEy0oaAIIN
+nvmLVz5MxxftLItyM19yejhW1ebZrgUaHXVFsculJRwSVzb9IjcCAwEAAaMzMDEw
+DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIR+IMi/ZTiFIwCwYDVR0PBAQDAgEG
+MA0GCSqGSIb3DQEBBQUAA4IBAQCLGrLJXWG04bkruVPRsoWdd44W7hE928Jj2VuX
+ZfsSZ9gqXLar5V7DtxYvyOirHYr9qxp81V9jz9yw3Xe5qObSIjiHBxTZ/75Wtf0H
+DjxVyhbMp6Z3N/vbXB9OWQaHowND9Rart4S9Tu+fMTfwRvFAttEMpWT4Y14h21VO
+TzF2nBBhjrZTOqMRvq9tfB69ri3iDGnHhVNoomG6xT60eVR4ngrHAr5i0RGCS2Uv
+kVrCqIexVmiUefkl98HVrhq4uz2PqYo4Ffdz0Fpg0YCw8NzVUM1O7pJIae2yIx4w
+zMiUyLb1O4Z/P6Yun/Y+LLWSlj7fLJOK/4GMDw9ZIRlXvVWa
+-----END CERTIFICATE-----
+mozilla/Starfield_Class_2_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzEl
+MCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMp
+U3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQw
+NjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBoMQswCQYDVQQGEwJVUzElMCMGA1UE
+ChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZp
+ZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqGSIb3
+DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf
+8MOh2tTYbitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN
++lq2cwQlZut3f+dZxkqZJRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0
+X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVmepsZGD3/cVE8MC5fvj13c7JdBmzDI1aa
+K4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSNF4Azbl5KXZnJHoe0nRrA
+1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HFMIHCMB0G
+A1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fR
+zt0fhvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0
+YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBD
+bGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8w
+DQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGsafPzWdqbAYcaT1epoXkJKtv3
+L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLMPUxA2IGvd56D
+eruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl
+xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynp
+VSJYACPq4xJDKVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEY
+WQPJIrSPnNVeKtelttQKbfi3QBFGmh95DmK/D5fs4C8fF5Q=
+-----END CERTIFICATE-----
+mozilla/SwissSign_Gold_CA_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIIFujCCA6KgAwIBAgIJALtAHEP1Xk+wMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV
+BAYTAkNIMRUwEwYDVQQKEwxTd2lzc1NpZ24gQUcxHzAdBgNVBAMTFlN3aXNzU2ln
+biBHb2xkIENBIC0gRzIwHhcNMDYxMDI1MDgzMDM1WhcNMzYxMDI1MDgzMDM1WjBF
+MQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dpc3NTaWduIEFHMR8wHQYDVQQDExZT
+d2lzc1NpZ24gR29sZCBDQSAtIEcyMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC
+CgKCAgEAr+TufoskDhJuqVAtFkQ7kpJcyrhdhJJCEyq8ZVeCQD5XJM1QiyUqt2/8
+76LQwB8CJEoTlo8jE+YoWACjR8cGp4QjK7u9lit/VcyLwVcfDmJlD909Vopz2q5+
+bbqBHH5CjCA12UNNhPqE21Is8w4ndwtrvxEvcnifLtg+5hg3Wipy+dpikJKVyh+c
+6bM8K8vzARO/Ws/BtQpgvd21mWRTuKCWs2/iJneRjOBiEAKfNA+k1ZIzUd6+jbqE
+emA8atufK+ze3gE/bk3lUIbLtK/tREDFylqM2tIrfKjuvqblCqoOpd8FUrdVxyJd
+MmqXl2MT28nbeTZ7hTpKxVKJ+STnnXepgv9VHKVxaSvRAiTysybUa9oEVeXBCsdt
+MDeQKuSeFDNeFhdVxVu1yzSJkvGdJo+hB9TGsnhQ2wwMC3wLjEHXuendjIj3o02y
+MszYF9rNt85mndT9Xv+9lz4pded+p2JYryU0pUHHPbwNUMoDAw8IWh+Vc3hiv69y
+FGkOpeUDDniOJihC8AcLYiAQZzlG+qkDzAQ4embvIIO1jEpWjpEA/I5cgt6IoMPi
+aG59je883WX0XaxR7ySArqpWl2/5rX3aYT+YdzylkbYcjCbaZaIJbcHiVOO5ykxM
+gI93e2CaHt+28kgeDrpOVG2Y4OGiGqJ3UM/EY5LsRxmd6+ZrzsECAwEAAaOBrDCB
+qTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUWyV7
+lqRlUX64OfPAeGZe6Drn8O4wHwYDVR0jBBgwFoAUWyV7lqRlUX64OfPAeGZe6Drn
+8O4wRgYDVR0gBD8wPTA7BglghXQBWQECAQEwLjAsBggrBgEFBQcCARYgaHR0cDov
+L3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIBACe6
+45R88a7A3hfm5djV9VSwg/S7zV4Fe0+fdWavPOhWfvxyeDgD2StiGwC5+OlgzczO
+UYrHUDFu4Up+GC9pWbY9ZIEr44OE5iKHjn3g7gKZYbge9LgriBIWhMIxkziWMaa5
+O1M/wySTVltpkuzFwbs4AOPsF6m43Md8AYOfMke6UiI0HTJ6CVanfCU2qT1L2sCC
+bwq7EsiHSycR+R4tx5M/nttfJmtS2S6K8RTGRI0Vqbe/vd6mGu6uLftIdxf+u+yv
+GPUqUfA5hJeVbG4bwyvEdGB5JbAKJ9/fXtI5z0V9QkvfsywexcZdylU6oJxpmo/a
+77KwPJ+HbBIrZXAVUjEaJM9vMSNQH4xPjyPDdEFjHFWoFN0+4FFQz/EbMFYOkrCC
+hdiDyyJkvC24JdVUorgG6q2SpCSgwYa1ShNqR88uC1aVVMvOmttqtKay20EIhid3
+92qgQmwLOM7XdVAyksLfKzAiSNDVQTglXaTpXZ/GlHXQRf0wl0OPkKsKx4ZzYEpp
+Ld6leNcG2mqeSz53OiATIgHQv2ieY2BrNU0LbbqhPcCT4H8js1WtciVORvnSFu+w
+ZMEBnunKoGqYDs/YYPIvSbjkQuE4NRb0yG5P94FW6LqjviOvrv1vA+ACOzB2+htt
+Qc8Bsem4yWb02ybzOqR08kkkW8mw0FfB+j564ZfJ
+-----END CERTIFICATE-----
+mozilla/China_Internet_Network_Information_Center_EV_Certificates_Root.crt
+-----BEGIN CERTIFICATE-----
+MIID9zCCAt+gAwIBAgIESJ8AATANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMC
+Q04xMjAwBgNVBAoMKUNoaW5hIEludGVybmV0IE5ldHdvcmsgSW5mb3JtYXRpb24g
+Q2VudGVyMUcwRQYDVQQDDD5DaGluYSBJbnRlcm5ldCBOZXR3b3JrIEluZm9ybWF0
+aW9uIENlbnRlciBFViBDZXJ0aWZpY2F0ZXMgUm9vdDAeFw0xMDA4MzEwNzExMjVa
+Fw0zMDA4MzEwNzExMjVaMIGKMQswCQYDVQQGEwJDTjEyMDAGA1UECgwpQ2hpbmEg
+SW50ZXJuZXQgTmV0d29yayBJbmZvcm1hdGlvbiBDZW50ZXIxRzBFBgNVBAMMPkNo
+aW5hIEludGVybmV0IE5ldHdvcmsgSW5mb3JtYXRpb24gQ2VudGVyIEVWIENlcnRp
+ZmljYXRlcyBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAm35z
+7r07eKpkQ0H1UN+U8i6yjUqORlTSIRLIOTJCBumD1Z9S7eVnAztUwYyZmczpwA//
+DdmEEbK40ctb3B75aDFk4Zv6dOtouSCV98YPjUesWgbdYavi7NifFy2cyjw1l1Vx
+zUOFsUcW9SxTgHbP0wBkvUCZ3czY28Sf1hNfQYOL+Q2HklY0bBoQCxfVWhyXWIQ8
+hBouXJE0bhlffxdpxWXvayHG1VA6v2G5BY3vbzQ6sm8UY78WO5upKv23KzhmBsUs
+4qpnHkWnjQRmQvaPK++IIGmPMowUc9orhpFjIpryp9vOiYurXccUwVswah+xt54u
+gQEC7c+WXmPbqOY4twIDAQABo2MwYTAfBgNVHSMEGDAWgBR8cks5x8DbYqVPm6oY
+NJKiyoOCWTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4E
+FgQUfHJLOcfA22KlT5uqGDSSosqDglkwDQYJKoZIhvcNAQEFBQADggEBACrDx0M3
+j92tpLIM7twUbY8opJhJywyA6vPtI2Z1fcXTIWd50XPFtQO3WKwMVC/GVhMPMdoG
+52U7HW8228gd+f2ABsqjPWYWqJ1MFn3AlUa1UeTiH9fqBk1jjZaM7+czV0I664zB
+echNdn3e9rG3geCg+aF4RhcaVpjwTj2rHO3sOdwHSPdj/gauwqRcalsyiMXHM4Ws
+ZkJHwlgkmeHlPuV1LI5D1l08eB6olYIpUNHRFrrvwb562bTYzB5MRuF3sTGrvSrI
+zo9uoV1/A3U05K2JRVRevq4opbs/eHnrc7MKDf2+yfdWrPa37S+bISnHOLaVxATy
+wy39FCqQmbkHzJ8=
+-----END CERTIFICATE-----
+mozilla/Certum_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYTAlBM
+MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD
+QTAeFw0wMjA2MTExMDQ2MzlaFw0yNzA2MTExMDQ2MzlaMD4xCzAJBgNVBAYTAlBM
+MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD
+QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6xwS7TT3zNJc4YPk/E
+jG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQnFdvkrOYCJ5JdLkKWo
+ePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82KxujZlakE403Daaj4GI
+ULdtlkIJ89eVgw1BS7Bqa/j8D35in2fE7SZfECYPCE/wpFcozo+47UX2bu4lXapu
+Ob7kky/ZR6By6/qmW6/KUz/iDsaWVhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUg
+AKpoC6EahQGcxEZjgoi2IrHu/qpGWX7PNSzVttpd90gzFFS269lvzs2I1qsb2pY7
+HVkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEA
+uI3O7+cUus/usESSbLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+GXYkHAQa
+TOs9qmdvLdTN/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTg
+xSvgGrZgFCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1q
+CjqTE5s7FCMTY5w/0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5x
+O/fIR/RpbxXyEV6DHpx8Uq79AtoSqFlnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZQs
+6GAqm4VKQPNriiTsBhYscw==
+-----END CERTIFICATE-----
+mozilla/CA_Disig_Root_R2.crt
+-----BEGIN CERTIFICATE-----
+MIIFaTCCA1GgAwIBAgIJAJK4iNuwisFjMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNV
+BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu
+MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIyMB4XDTEyMDcxOTA5MTUzMFoXDTQy
+MDcxOTA5MTUzMFowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx
+EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjIw
+ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCio8QACdaFXS1tFPbCw3Oe
+NcJxVX6B+6tGUODBfEl45qt5WDza/3wcn9iXAng+a0EE6UG9vgMsRfYvZNSrXaNH
+PWSb6WiaxswbP7q+sos0Ai6YVRn8jG+qX9pMzk0DIaPY0jSTVpbLTAwAFjxfGs3I
+x2ymrdMxp7zo5eFm1tL7A7RBZckQrg4FY8aAamkw/dLukO8NJ9+flXP04SXabBbe
+QTg06ov80egEFGEtQX6sx3dOy1FU+16SGBsEWmjGycT6txOgmLcRK7fWV8x8nhfR
+yyX+hk4kLlYMeE2eARKmK6cBZW58Yh2EhN/qwGu1pSqVg8NTEQxzHQuyRpDRQjrO
+QG6Vrf/GlK1ul4SOfW+eioANSW1z4nuSHsPzwfPrLgVv2RvPN3YEyLRa5Beny912
+H9AZdugsBbPWnDTYltxhh5EF5EQIM8HauQhl1K6yNg3ruji6DOWbnuuNZt2Zz9aJ
+QfYEkoopKW1rOhzndX0CcQ7zwOe9yxndnWCywmZgtrEE7snmhrmaZkCo5xHtgUUD
+i/ZnWejBBhG93c+AAk9lQHhcR1DIm+YfgXvkRKhbhZri3lrVx/k6RGZL5DJUfORs
+nLMOPReisjQS1n6yqEm70XooQL6iFh/f5DcfEXP7kAplQ6INfPgGAVUzfbANuPT1
+rqVCV3w2EYx7XsQDnYx5nQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
+DwEB/wQEAwIBBjAdBgNVHQ4EFgQUtZn4r7CU9eMg1gqtzk5WpC5uQu0wDQYJKoZI
+hvcNAQELBQADggIBACYGXnDnZTPIgm7ZnBc6G3pmsgH2eDtpXi/q/075KMOYKmFM
+tCQSin1tERT3nLXK5ryeJ45MGcipvXrA1zYObYVybqjGom32+nNjf7xueQgcnYqf
+GopTpti72TVVsRHFqQOzVju5hJMiXn7B9hJSi+osZ7z+Nkz1uM/Rs0mSO9MpDpkb
+lvdhuDvEK7Z4bLQjb/D907JedR+Zlais9trhxTF7+9FGs9K8Z7RiVLoJ92Owk6Ka
++elSLotgEqv89WBW7xBci8QaQtyDW2QOy7W81k/BfDxujRNt+3vrMNDcTa/F1bal
+TFtxyegxvug4BkihGuLq0t4SOVga/4AOgnXmt8kHbA7v/zjxmHHEt38OFdAlab0i
+nSvtBfZGR6ztwPDUO+Ls7pZbkBNOHlY667DvlruWIxG68kOGdGSVyCh13x01utI3
+gzhTODY7z2zp+WsO0PsE6E9312UBeIYMej4hYvF/Y3EMyZ9E26gnonW+boE+18Dr
+G5gPcFw0sorMwIUY6256s/daoQe/qUKS82Ail+QUoQebTnbAjn39pCXHR+3/H3Os
+zMOl6W8KjptlwlCFtaOgUxLMVYdh84GuEEZhvUQhuMI9dM9+JDX6HAcOmz0iyu8x
+L4ysEr3vQCj8KWefshNPZiTEUxnpHikV7+ZtsH8tZ/3zbBt1RqPlShfppNcL
+-----END CERTIFICATE-----
+mozilla/TWCA_Root_Certification_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzES
+MBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFU
+V0NBIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMz
+WhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJVEFJV0FO
+LUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlm
+aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
+AQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFE
+AcK0HMMxQhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HH
+K3XLfJ+utdGdIzdjp9xCoi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeX
+RfwZVzsrb+RH9JlF/h3x+JejiB03HFyP4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/z
+rX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1ry+UPizgN7gr8/g+YnzAx
+3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
+HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkq
+hkiG9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeC
+MErJk/9q56YAf4lCmtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdls
+XebQ79NqZp4VKIV66IIArB6nCWlWQtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62D
+lhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVYT0bf+215WfKEIlKuD8z7fDvn
+aspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocnyYh0igzyXxfkZ
+YiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw==
+-----END CERTIFICATE-----
+mozilla/thawte_Primary_Root_CA_-_G3.crt
+-----BEGIN CERTIFICATE-----
+MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCB
+rjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf
+Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw
+MDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNV
+BAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0wODA0MDIwMDAwMDBa
+Fw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhhd3Rl
+LCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9u
+MTgwNgYDVQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXpl
+ZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEcz
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsr8nLPvb2FvdeHsbnndm
+gcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2AtP0LMqmsywCPLLEHd5N/8
+YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC+BsUa0Lf
+b1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS9
+9irY7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2S
+zhkGcuYMXDhpxwTWvGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUk
+OQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV
+HQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJKoZIhvcNAQELBQADggEBABpA
+2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweKA3rD6z8KLFIW
+oCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu
+t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7c
+KUGRIjxpp7sC8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fM
+m7v/OeZWYdMKp8RcTGB7BXcmer/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZu
+MdRAGmI0Nj81Aa6sY6A=
+-----END CERTIFICATE-----
+mozilla/AddTrust_Low-Value_Services_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIEGDCCAwCgAwIBAgIBATANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQGEwJTRTEU
+MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3
+b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3QwHhcNMDAwNTMw
+MTAzODMxWhcNMjAwNTMwMTAzODMxWjBlMQswCQYDVQQGEwJTRTEUMBIGA1UEChML
+QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYD
+VQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUA
+A4IBDwAwggEKAoIBAQCWltQhSWDia+hBBwzexODcEyPNwTXH+9ZOEQpnXvUGW2ul
+CDtbKRY654eyNAbFvAWlA3yCyykQruGIgb3WntP+LVbBFc7jJp0VLhD7Bo8wBN6n
+tGO0/7Gcrjyvd7ZWxbWroulpOj0OM3kyP3CCkplhbY0wCI9xP6ZIVxn4JdxLZlyl
+dI+Yrsj5wAYi56xz36Uu+1LcsRVlIPo1Zmne3yzxbrww2ywkEtvrNTVokMsAsJch
+PXQhI2U0K7t4WaPW4XY5mqRJjox0r26kmqPZm9I4XJuiGMx1I4S+6+JNM3GOGvDC
++Mcdoq0Dlyz4zyXG9rgkMbFjXZJ/Y/AlyVMuH79NAgMBAAGjgdIwgc8wHQYDVR0O
+BBYEFJWxtPCUtr3H2tERCSG+wa9J/RB7MAsGA1UdDwQEAwIBBjAPBgNVHRMBAf8E
+BTADAQH/MIGPBgNVHSMEgYcwgYSAFJWxtPCUtr3H2tERCSG+wa9J/RB7oWmkZzBl
+MQswCQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFk
+ZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENB
+IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBACxtZBsfzQ3duQH6lmM0MkhHma6X
+7f1yFqZzR1r0693p9db7RcwpiURdv0Y5PejuvE1Uhh4dbOMXJ0PhiVYrqW9yTkkz
+43J8KiOavD7/KCrto/8cI7pDVwlnTUtiBi34/2ydYB7YHEt9tTEv2dB8Xfjea4MY
+eDdXL+gzB2ffHsdrKpV2ro9Xo/D0UrSpUwjP4E/TelOL/bscVjby/rK25Xa71SJl
+pz/+0WatC7xrmYbvP33zGDLKe8bjq2RGlfgmadlVg3sslgf/WSxEo8bl6ancoWOA
+WiFeIc9TVPC6b4nbqKqVz4vjccweGyBECMB6tkD9xOQ14R0WHNC8K47Wcdk=
+-----END CERTIFICATE-----
+mozilla/Starfield_Root_Certificate_Authority_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMx
+EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT
+HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVs
+ZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAw
+MFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6
+b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQgVGVj
+aG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZp
+Y2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
+ggEBAL3twQP89o/8ArFvW59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMg
+nLRJdzIpVv257IzdIvpy3Cdhl+72WoTsbhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1
+HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNkN3mSwOxGXn/hbVNMYq/N
+Hwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7NfZTD4p7dN
+dloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0
+HZbUJtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO
+BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0G
+CSqGSIb3DQEBCwUAA4IBAQARWfolTwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjU
+sHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx4mcujJUDJi5DnUox9g61DLu3
+4jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUwF5okxBDgBPfg
+8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K
+pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1
+mMpYjn0q7pBZc2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0
+-----END CERTIFICATE-----
+mozilla/IGC_A.crt
+-----BEGIN CERTIFICATE-----
+MIIEAjCCAuqgAwIBAgIFORFFEJQwDQYJKoZIhvcNAQEFBQAwgYUxCzAJBgNVBAYT
+AkZSMQ8wDQYDVQQIEwZGcmFuY2UxDjAMBgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQ
+TS9TR0ROMQ4wDAYDVQQLEwVEQ1NTSTEOMAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG
+9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2LmZyMB4XDTAyMTIxMzE0MjkyM1oXDTIw
+MTAxNzE0MjkyMlowgYUxCzAJBgNVBAYTAkZSMQ8wDQYDVQQIEwZGcmFuY2UxDjAM
+BgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQTS9TR0ROMQ4wDAYDVQQLEwVEQ1NTSTEO
+MAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2
+LmZyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsh/R0GLFMzvABIaI
+s9z4iPf930Pfeo2aSVz2TqrMHLmh6yeJ8kbpO0px1R2OLc/mratjUMdUC24SyZA2
+xtgv2pGqaMVy/hcKshd+ebUyiHDKcMCWSo7kVc0dJ5S/znIq7Fz5cyD+vfcuiWe4
+u0dzEvfRNWk68gq5rv9GQkaiv6GFGvm/5P9JhfejcIYyHF2fYPepraX/z9E0+X1b
+F8bc1g4oa8Ld8fUzaJ1O/Id8NhLWo4DoQw1VYZTqZDdH6nfK0LJYBcNdfrGoRpAx
+Vs5wKpayMLh35nnAvSk7/ZR3TL0gzUEl4C7HG7vupARB0l2tEmqKm0f7yd1GQOGd
+PDPQtQIDAQABo3cwdTAPBgNVHRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBRjAVBgNV
+HSAEDjAMMAoGCCqBegF5AQEBMB0GA1UdDgQWBBSjBS8YYFDCiQrdKyFP/45OqDAx
+NjAfBgNVHSMEGDAWgBSjBS8YYFDCiQrdKyFP/45OqDAxNjANBgkqhkiG9w0BAQUF
+AAOCAQEABdwm2Pp3FURo/C9mOnTgXeQp/wYHE4RKq89toB9RlPhJy3Q2FLwV3duJ
+L92PoF189RLrn544pEfMs5bZvpwlqwN+Mw+VgQ39FuCIvjfwbF3QMZsyK10XZZOY
+YLxuj7GoPB7ZHPOpJkL5ZB3C55L29B5aqhlSXa/oovdgoPaN8In1buAKBQGVyYsg
+Crpa/JosPL3Dt8ldeCUFP1YUmwza+zpI/pdpXsoQhvdOlgQITeywvl3cO45Pwf2a
+NjSaTFR+FwNIlQgRHAdvhQh+XU3Endv7rs6y0bO4g2wdsrN58dhwmX7wEwLOXt1R
+0982gaEbeC9xs/FZTEYYKKuF0mBWWg==
+-----END CERTIFICATE-----
+mozilla/Comodo_AAA_Services_root.crt
+-----BEGIN CERTIFICATE-----
+MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEb
+MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow
+GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmlj
+YXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVowezEL
+MAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE
+BwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNVBAMM
+GEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP
+ADCCAQoCggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQua
+BtDFcCLNSS1UY8y2bmhGC1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe
+3M/vg4aijJRPn2jymJBGhCfHdr/jzDUsi14HZGWCwEiwqJH5YZ92IFCokcdmtet4
+YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszWY19zjNoFmag4qMsXeDZR
+rOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjHYpy+g8cm
+ez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQU
+oBEKIz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF
+MAMBAf8wewYDVR0fBHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20v
+QUFBQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29t
+b2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2VzLmNybDANBgkqhkiG9w0BAQUF
+AAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm7l3sAg9g1o1Q
+GE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz
+Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2
+G9w84FoVxp7Z8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsi
+l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3
+smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg==
+-----END CERTIFICATE-----
+mozilla/DigiCert_High_Assurance_EV_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBs
+MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
+d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j
+ZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAwMFoXDTMxMTExMDAwMDAwMFowbDEL
+MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3
+LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFuY2Ug
+RVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm
++9S75S0tMqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTW
+PNt0OKRKzE0lgvdKpVMSOO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEM
+xChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFB
+Ik5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQNAQTXKFx01p8VdteZOE3
+hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUeh10aUAsg
+EsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQF
+MAMBAf8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaA
+FLE+w2kD+L9HAdSYJhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3Nec
+nzyIZgYIVyHbIUf4KmeqvxgydkAQV8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6z
+eM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFpmyPInngiK3BD41VHMWEZ71jF
+hS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkKmNEVX58Svnw2
+Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe
+vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep
++OkuE6N36B9K
+-----END CERTIFICATE-----
+mozilla/PSCProcert.crt
+-----BEGIN CERTIFICATE-----
+MIIJhjCCB26gAwIBAgIBCzANBgkqhkiG9w0BAQsFADCCAR4xPjA8BgNVBAMTNUF1
+dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIFJhaXogZGVsIEVzdGFkbyBWZW5lem9s
+YW5vMQswCQYDVQQGEwJWRTEQMA4GA1UEBxMHQ2FyYWNhczEZMBcGA1UECBMQRGlz
+dHJpdG8gQ2FwaXRhbDE2MDQGA1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0
+aWZpY2FjaW9uIEVsZWN0cm9uaWNhMUMwQQYDVQQLEzpTdXBlcmludGVuZGVuY2lh
+IGRlIFNlcnZpY2lvcyBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9uaWNhMSUwIwYJ
+KoZIhvcNAQkBFhZhY3JhaXpAc3VzY2VydGUuZ29iLnZlMB4XDTEwMTIyODE2NTEw
+MFoXDTIwMTIyNTIzNTk1OVowgdExJjAkBgkqhkiG9w0BCQEWF2NvbnRhY3RvQHBy
+b2NlcnQubmV0LnZlMQ8wDQYDVQQHEwZDaGFjYW8xEDAOBgNVBAgTB01pcmFuZGEx
+KjAoBgNVBAsTIVByb3ZlZWRvciBkZSBDZXJ0aWZpY2Fkb3MgUFJPQ0VSVDE2MDQG
+A1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9u
+aWNhMQswCQYDVQQGEwJWRTETMBEGA1UEAxMKUFNDUHJvY2VydDCCAiIwDQYJKoZI
+hvcNAQEBBQADggIPADCCAgoCggIBANW39KOUM6FGqVVhSQ2oh3NekS1wwQYalNo9
+7BVCwfWMrmoX8Yqt/ICV6oNEolt6Vc5Pp6XVurgfoCfAUFM+jbnADrgV3NZs+J74
+BCXfgI8Qhd19L3uA3VcAZCP4bsm+lU/hdezgfl6VzbHvvnpC2Mks0+saGiKLt38G
+ieU89RLAu9MLmV+QfI4tL3czkkohRqipCKzx9hEC2ZUWno0vluYC3XXCFCpa1sl9
+JcLB/KpnheLsvtF8PPqv1W7/U0HU9TI4seJfxPmOEO8GqQKJ/+MMbpfg353bIdD0
+PghpbNjU5Db4g7ayNo+c7zo3Fn2/omnXO1ty0K+qP1xmk6wKImG20qCZyFSTXai2
+0b1dCl53lKItwIKOvMoDKjSuc/HUtQy9vmebVOvh+qBa7Dh+PsHMosdEMXXqP+UH
+0quhJZb25uSgXTcYOWEAM11G1ADEtMo88aKjPvM6/2kwLkDd9p+cJsmWN63nOaK/
+6mnbVSKVUyqUtd+tFjiBdWbjxywbk5yqjKPK2Ww8F22c3HxT4CAnQzb5EuE8XL1m
+v6JpIzi4mWCZDlZTOpx+FIywBm/xhnaQr/2v/pDGj59/i5IjnOcVdo/Vi5QTcmn7
+K2FjiO/mpF7moxdqWEfLcU8UC17IAggmosvpr2uKGcfLFFb14dq12fy/czja+eev
+bqQ34gcnAgMBAAGjggMXMIIDEzASBgNVHRMBAf8ECDAGAQH/AgEBMDcGA1UdEgQw
+MC6CD3N1c2NlcnRlLmdvYi52ZaAbBgVghl4CAqASDBBSSUYtRy0yMDAwNDAzNi0w
+MB0GA1UdDgQWBBRBDxk4qpl/Qguk1yeYVKIXTC1RVDCCAVAGA1UdIwSCAUcwggFD
+gBStuyIdxuDSAaj9dlBSk+2YwU2u06GCASakggEiMIIBHjE+MDwGA1UEAxM1QXV0
+b3JpZGFkIGRlIENlcnRpZmljYWNpb24gUmFpeiBkZWwgRXN0YWRvIFZlbmV6b2xh
+bm8xCzAJBgNVBAYTAlZFMRAwDgYDVQQHEwdDYXJhY2FzMRkwFwYDVQQIExBEaXN0
+cml0byBDYXBpdGFsMTYwNAYDVQQKEy1TaXN0ZW1hIE5hY2lvbmFsIGRlIENlcnRp
+ZmljYWNpb24gRWxlY3Ryb25pY2ExQzBBBgNVBAsTOlN1cGVyaW50ZW5kZW5jaWEg
+ZGUgU2VydmljaW9zIGRlIENlcnRpZmljYWNpb24gRWxlY3Ryb25pY2ExJTAjBgkq
+hkiG9w0BCQEWFmFjcmFpekBzdXNjZXJ0ZS5nb2IudmWCAQowDgYDVR0PAQH/BAQD
+AgEGME0GA1UdEQRGMESCDnByb2NlcnQubmV0LnZloBUGBWCGXgIBoAwMClBTQy0w
+MDAwMDKgGwYFYIZeAgKgEgwQUklGLUotMzE2MzUzNzMtNzB2BgNVHR8EbzBtMEag
+RKBChkBodHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9sY3IvQ0VSVElGSUNBRE8t
+UkFJWi1TSEEzODRDUkxERVIuY3JsMCOgIaAfhh1sZGFwOi8vYWNyYWl6LnN1c2Nl
+cnRlLmdvYi52ZTA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9v
+Y3NwLnN1c2NlcnRlLmdvYi52ZTBBBgNVHSAEOjA4MDYGBmCGXgMBAjAsMCoGCCsG
+AQUFBwIBFh5odHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9kcGMwDQYJKoZIhvcN
+AQELBQADggIBACtZ6yKZu4SqT96QxtGGcSOeSwORR3C7wJJg7ODU523G0+1ng3dS
+1fLld6c2suNUvtm7CpsR72H0xpkzmfWvADmNg7+mvTV+LFwxNG9s2/NkAZiqlCxB
+3RWGymspThbASfzXg0gTB1GEMVKIu4YXx2sviiCtxQuPcD4quxtxj7mkoP3Yldmv
+Wb8lK5jpY5MvYB7Eqvh39YtsL+1+LrVPQA3uvFd359m21D+VJzog1eWuq2w1n8Gh
+HVnchIHuTQfiSLaeS5UtQbHh6N5+LwUeaO6/u5BlOsju6rEYNxxik6SgMexxbJHm
+pHmJWhSnFFAFTKQAVzAswbVhltw+HoSvOULP5dAssSS830DD7X9jSr3hTxJkhpXz
+sOfIt+FTvZLm8wyWuevo5pLtp4EJFAv8lXrPj9Y0TzYS3F7RNHXGRoAvlQSMx4bE
+qCaJqD8Zm4G7UaRKhqsLEQ+xrmNTbSjq3TNWOByyrYDT13K9mmyZY+gAu0F2Bbdb
+mRiKw7gSXFbPVgx96OLP7bx0R/vu0xdOIk9W/1DzLuY5poLWccret9W6aAjtmcz9
+opLLabid+Qqkpj5PkygqYWwHJgD/ll9ohri4zspV4KuxPX+Y1zMOWj3YeMLEYC/H
+YvBhkdI4sPaeVdtAgAUSM84dkpvRabP/v/GSCmE1P93+hvS84Bpxs2Km
+-----END CERTIFICATE-----
+mozilla/Certinomis_-_Autorité_Racine.crt
+-----BEGIN CERTIFICATE-----
+MIIFnDCCA4SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJGUjET
+MBEGA1UEChMKQ2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxJjAk
+BgNVBAMMHUNlcnRpbm9taXMgLSBBdXRvcml0w6kgUmFjaW5lMB4XDTA4MDkxNzA4
+Mjg1OVoXDTI4MDkxNzA4Mjg1OVowYzELMAkGA1UEBhMCRlIxEzARBgNVBAoTCkNl
+cnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMSYwJAYDVQQDDB1DZXJ0
+aW5vbWlzIC0gQXV0b3JpdMOpIFJhY2luZTCCAiIwDQYJKoZIhvcNAQEBBQADggIP
+ADCCAgoCggIBAJ2Fn4bT46/HsmtuM+Cet0I0VZ35gb5j2CN2DpdUzZlMGvE5x4jY
+F1AMnmHawE5V3udauHpOd4cN5bjr+p5eex7Ezyh0x5P1FMYiKAT5kcOrJ3NqDi5N
+8y4oH3DfVS9O7cdxbwlyLu3VMpfQ8Vh30WC8Tl7bmoT2R2FFK/ZQpn9qcSdIhDWe
+rP5pqZ56XjUl+rSnSTV3lqc2W+HN3yNw2F1MpQiD8aYkOBOo7C+ooWfHpi2GR+6K
+/OybDnT0K0kCe5B1jPyZOQE51kqJ5Z52qz6WKDgmi92NjMD2AR5vpTESOH2VwnHu
+7XSu5DaiQ3XV8QCb4uTXzEIDS3h65X27uK4uIJPT5GHfceF2Z5c/tt9qc1pkIuVC
+28+BA5PY9OMQ4HL2AHCs8MF6DwV/zzRpRbWT5BnbUhYjBYkOjUjkJW+zeL9i9Qf6
+lSTClrLooyPCXQP8w9PlfMl1I9f09bze5N/NgL+RiH2nE7Q5uiy6vdFrzPOlKO1E
+nn1So2+WLhl+HPNbxxaOu2B9d2ZHVIIAEWBsMsGoOBvrbpgT1u449fCfDu/+MYHB
+0iSVL1N6aaLwD4ZFjliCK0wi1F6g530mJ0jfJUaNSih8hp75mxpZuWW/Bd22Ql09
+5gBIgl4g9xGC3srYn+Y3RyYe63j3YcNBZFgCQfna4NH4+ej9Uji29YnfAgMBAAGj
+WzBZMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBQN
+jLZh2kS40RR9w759XkjwzspqsDAXBgNVHSAEEDAOMAwGCiqBegFWAgIAAQEwDQYJ
+KoZIhvcNAQEFBQADggIBACQ+YAZ+He86PtvqrxyaLAEL9MW12Ukx9F1BjYkMTv9s
+ov3/4gbIOZ/xWqndIlgVqIrTseYyCYIDbNc/CMf4uboAbbnW/FIyXaR/pDGUu7ZM
+OH8oMDX/nyNTt7buFHAAQCvaR6s0fl6nVjBhK4tDrP22iCj1a7Y+YEq6QpA0Z43q
+619FVDsXrIvkxmUP7tCMXWY5zjKn2BCXwH40nJ+U8/aGH88bc62UeYdocMMzpXDn
+2NU4lG9jeeu/Cg4I58UvD0KgKxRA/yHgBcUn4YQRE7rWhh1BCxMjidPJC+iKunqj
+o3M3NYB9Ergzd0A4wPpeMNLytqOx1qKVl4GbUu1pTP+A5FPbVFsDbVRfsbjvJL1v
+nxHDx2TCDyhihWZeGnuyt++uNckZM6i4J9szVb9o4XVIRFb7zdNIu0eJOqxp9YDG
+5ERQL1TEqkPFMTFYvZbF6nVsmnWxTfj3l/+WFvKXTej28xH5On2KOG4Ey+HTRRWq
+pdEdnV1j6CTmNhTih60bWfVEm/vXd3wfAXBioSAaosUaKPQhA+4u2cGA6rnZgtZb
+dsLLO7XSAPCjDuGtbkD326C00EauFddEwk01+dIL8hf2rGbVJLJP0RyZwG71fet0
+BLj5TXcJ17TPBzAJ8bgAVtkXFhYKK4bfjwEZGuW7gmP/vgt2Fl43N+bYdJeimUV5
+-----END CERTIFICATE-----
+mozilla/Security_Communication_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEY
+MBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21t
+dW5pY2F0aW9uIFJvb3RDQTEwHhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5
+WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYD
+VQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw8yl8
+9f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJ
+DKaVv0uMDPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9
+Ms+k2Y7CI9eNqPPYJayX5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/N
+QV3Is00qVUarH9oe4kA92819uZKAnDfdDJZkndwi92SL32HeFZRSFaB9UslLqCHJ
+xrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2JChzAgMBAAGjPzA9MB0G
+A1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYwDwYDVR0T
+AQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vG
+kl3g0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfr
+Uj94nK9NrvjVT8+amCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5
+Bw+SUEmK3TGXX8npN6o7WWWXlDLJs58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJU
+JRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ6rBK+1YWc26sTfcioU+tHXot
+RSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAiFL39vmwLAw==
+-----END CERTIFICATE-----
+mozilla/Izenpe.com.crt
+-----BEGIN CERTIFICATE-----
+MIIF8TCCA9mgAwIBAgIQALC3WhZIX7/hy/WL1xnmfTANBgkqhkiG9w0BAQsFADA4
+MQswCQYDVQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6
+ZW5wZS5jb20wHhcNMDcxMjEzMTMwODI4WhcNMzcxMjEzMDgyNzI1WjA4MQswCQYD
+VQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6ZW5wZS5j
+b20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ03rKDx6sp4boFmVq
+scIbRTJxldn+EFvMr+eleQGPicPK8lVx93e+d5TzcqQsRNiekpsUOqHnJJAKClaO
+xdgmlOHZSOEtPtoKct2jmRXagaKH9HtuJneJWK3W6wyyQXpzbm3benhB6QiIEn6H
+LmYRY2xU+zydcsC8Lv/Ct90NduM61/e0aL6i9eOBbsFGb12N4E3GVFWJGjMxCrFX
+uaOKmMPsOzTFlUFpfnXCPCDFYbpRR6AgkJOhkEvzTnyFRVSa0QUmQbC1TR0zvsQD
+yCV8wXDbO/QJLVQnSKwv4cSsPsjLkkxTOTcj7NMB+eAJRE1NZMDhDVqHIrytG6P+
+JrUV86f8hBnp7KGItERphIPzidF0BqnMC9bC3ieFUCbKF7jJeodWLBoBHmy+E60Q
+rLUk9TiRodZL2vG70t5HtfG8gfZZa88ZU+mNFctKy6lvROUbQc/hhqfK0GqfvEyN
+BjNaooXlkDWgYlwWTvDjovoDGrQscbNYLN57C9saD+veIR8GdwYDsMnvmfzAuU8L
+hij+0rnq49qlw0dpEuDb8PYZi+17cNcC1u2HGCgsBCRMd+RIihrGO5rUD8r6ddIB
+QFqNeb+Lz0vPqhbBleStTIo+F5HUsWLlguWABKQDfo2/2n+iD5dPDNMN+9fR5XJ+
+HMh3/1uaD7euBUbl8agW7EekFwIDAQABo4H2MIHzMIGwBgNVHREEgagwgaWBD2lu
+Zm9AaXplbnBlLmNvbaSBkTCBjjFHMEUGA1UECgw+SVpFTlBFIFMuQS4gLSBDSUYg
+QTAxMzM3MjYwLVJNZXJjLlZpdG9yaWEtR2FzdGVpeiBUMTA1NSBGNjIgUzgxQzBB
+BgNVBAkMOkF2ZGEgZGVsIE1lZGl0ZXJyYW5lbyBFdG9yYmlkZWEgMTQgLSAwMTAx
+MCBWaXRvcmlhLUdhc3RlaXowDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC
+AQYwHQYDVR0OBBYEFB0cZQ6o8iV7tJHP5LGx5r1VdGwFMA0GCSqGSIb3DQEBCwUA
+A4ICAQB4pgwWSp9MiDrAyw6lFn2fuUhfGI8NYjb2zRlrrKvV9pF9rnHzP7MOeIWb
+laQnIUdCSnxIOvVFfLMMjlF4rJUT3sb9fbgakEyrkgPH7UIBzg/YsfqikuFgba56
+awmqxinuaElnMIAkejEWOVt+8Rwu3WwJrfIxwYJOubv5vr8qhT/AQKM6WfxZSzwo
+JNu0FXWuDYi6LnPAvViH5ULy617uHjAimcs30cQhbIHsvm0m5hzkQiCeR7Csg1lw
+LDXWrzY0tM07+DKo7+N4ifuNRSzanLh+QBxh5z6ikixL8s36mLYp//Pye6kfLqCT
+VyvehQP5aTfLnnhqBbTFMXiJ7HqnheG5ezzevh55hM6fcA5ZwjUukCox2eRFekGk
+LhObNA5me0mrZJfQRsN5nXJQY6aYWwa9SG3YOYNw6DXwBdGqvOPbyALqfP2C2sJb
+UjWumDqtujWTI6cfSN01RpiyEGjkpTHCClguGYEQyVB1/OpaFs4R1+7vUIgtYf8/
+QnMFlEPVjjxOAToZpR9GTnfQXeWBIiGH/pR9hNiTrdZoQ0iy2+tzJOeRf1SktoA+
+naM8THLCV8Sg1Mw4J87VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE38P1ZWrOZyGls
+QyYBNWNgVYkDOnXYukrZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw==
+-----END CERTIFICATE-----
+mozilla/AddTrust_Qualified_Certificates_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIEHjCCAwagAwIBAgIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJTRTEU
+MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3
+b3JrMSMwIQYDVQQDExpBZGRUcnVzdCBRdWFsaWZpZWQgQ0EgUm9vdDAeFw0wMDA1
+MzAxMDQ0NTBaFw0yMDA1MzAxMDQ0NTBaMGcxCzAJBgNVBAYTAlNFMRQwEgYDVQQK
+EwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQIE5ldHdvcmsxIzAh
+BgNVBAMTGkFkZFRydXN0IFF1YWxpZmllZCBDQSBSb290MIIBIjANBgkqhkiG9w0B
+AQEFAAOCAQ8AMIIBCgKCAQEA5B6a/twJWoekn0e+EV+vhDTbYjx5eLfpMLXsDBwq
+xBb/4Oxx64r1EW7tTw2R0hIYLUkVAcKkIhPHEWT/IhKauY5cLwjPcWqzZwFZ8V1G
+87B4pfYOQnrjfxvM0PC3KP0q6p6zsLkEqv32x7SxuCqg+1jxGaBvcCV+PmlKfw8i
+2O+tCBGaKZnhqkRFmhJePp1tUvznoD1oL/BLcHwTOK28FSXx1s6rosAx1i+f4P8U
+WfyEk9mHfExUE+uf0S0R+Bg6Ot4l2ffTQO2kBhLEO+GRwVY18BTcZTYJbqukB8c1
+0cIDMzZbdSZtQvESa0NvS3GU+jQd7RNuyoB/mC9suWXY6QIDAQABo4HUMIHRMB0G
+A1UdDgQWBBQ5lYtii1zJ1IC6WA+XPxUIQ8yYpzALBgNVHQ8EBAMCAQYwDwYDVR0T
+AQH/BAUwAwEB/zCBkQYDVR0jBIGJMIGGgBQ5lYtii1zJ1IC6WA+XPxUIQ8yYp6Fr
+pGkwZzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQL
+ExRBZGRUcnVzdCBUVFAgTmV0d29yazEjMCEGA1UEAxMaQWRkVHJ1c3QgUXVhbGlm
+aWVkIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBABmrder4i2VhlRO6aQTv
+hsoToMeqT2QbPxj2qC0sVY8FtzDqQmodwCVRLae/DLPt7wh/bDxGGuoYQ992zPlm
+hpwsaPXpF/gxsxjE1kh9I0xowX67ARRvxdlu3rsEQmr49lx95dr6h+sNNVJn0J6X
+dgWTP5XHAeZpVTh/EGGZyeNfpso+gmNIquIISD6q8rKFYqa0p9m9N5xotS1WfbC3
+P6CxB9bpT9zeRXEwMn8bLgn5v1Kh7sKAPgZcLlVAwRv1cEWw3F369nJad9Jjzc9Y
+iQBCYz95OdBEsIJuQRno3eDBiFrRHnGTHyQwdOUeqN48Jzd/g66ed8/wMLH/S5no
+xqE=
+-----END CERTIFICATE-----
+mozilla/NetLock_Qualified_=Class_QA=_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIG0TCCBbmgAwIBAgIBezANBgkqhkiG9w0BAQUFADCByTELMAkGA1UEBhMCSFUx
+ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0
+b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMUIwQAYDVQQD
+EzlOZXRMb2NrIE1pbm9zaXRldHQgS296amVneXpvaSAoQ2xhc3MgUUEpIFRhbnVz
+aXR2YW55a2lhZG8xHjAcBgkqhkiG9w0BCQEWD2luZm9AbmV0bG9jay5odTAeFw0w
+MzAzMzAwMTQ3MTFaFw0yMjEyMTUwMTQ3MTFaMIHJMQswCQYDVQQGEwJIVTERMA8G
+A1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNh
+Z2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxQjBABgNVBAMTOU5l
+dExvY2sgTWlub3NpdGV0dCBLb3pqZWd5em9pIChDbGFzcyBRQSkgVGFudXNpdHZh
+bnlraWFkbzEeMBwGCSqGSIb3DQEJARYPaW5mb0BuZXRsb2NrLmh1MIIBIjANBgkq
+hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx1Ilstg91IRVCacbvWy5FPSKAtt2/Goq
+eKvld/Bu4IwjZ9ulZJm53QE+b+8tmjwi8F3JV6BVQX/yQ15YglMxZc4e8ia6AFQe
+r7C8HORSjKAyr7c3sVNnaHRnUPYtLmTeriZ539+Zhqurf4XsoPuAzPS4DB6TRWO5
+3Lhbm+1bOdRfYrCnjnxmOCyqsQhjF2d9zL2z8cM/z1A57dEZgxXbhxInlrfa6uWd
+vLrqOU+L73Sa58XQ0uqGURzk/mQIKAR5BevKxXEOC++r6uwSEaEYBTJp0QwsGj0l
+mT+1fMptsK6ZmfoIYOcZwvK9UdPM0wKswREMgM6r3JSda6M5UzrWhQIDAMV9o4IC
+wDCCArwwEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNVHQ8BAf8EBAMCAQYwggJ1Bglg
+hkgBhvhCAQ0EggJmFoICYkZJR1lFTEVNISBFemVuIHRhbnVzaXR2YW55IGEgTmV0
+TG9jayBLZnQuIE1pbm9zaXRldHQgU3pvbGdhbHRhdGFzaSBTemFiYWx5emF0YWJh
+biBsZWlydCBlbGphcmFzb2sgYWxhcGphbiBrZXN6dWx0LiBBIG1pbm9zaXRldHQg
+ZWxla3Ryb25pa3VzIGFsYWlyYXMgam9naGF0YXMgZXJ2ZW55ZXN1bGVzZW5laywg
+dmFsYW1pbnQgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYSBNaW5vc2l0ZXR0IFN6
+b2xnYWx0YXRhc2kgU3phYmFseXphdGJhbiwgYXogQWx0YWxhbm9zIFN6ZXJ6b2Rl
+c2kgRmVsdGV0ZWxla2JlbiBlbG9pcnQgZWxsZW5vcnplc2kgZWxqYXJhcyBtZWd0
+ZXRlbGUuIEEgZG9rdW1lbnR1bW9rIG1lZ3RhbGFsaGF0b2sgYSBodHRwczovL3d3
+dy5uZXRsb2NrLmh1L2RvY3MvIGNpbWVuIHZhZ3kga2VyaGV0b2sgYXogaW5mb0Bu
+ZXRsb2NrLm5ldCBlLW1haWwgY2ltZW4uIFdBUk5JTkchIFRoZSBpc3N1YW5jZSBh
+bmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGFyZSBzdWJqZWN0IHRvIHRo
+ZSBOZXRMb2NrIFF1YWxpZmllZCBDUFMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3
+Lm5ldGxvY2suaHUvZG9jcy8gb3IgYnkgZS1tYWlsIGF0IGluZm9AbmV0bG9jay5u
+ZXQwHQYDVR0OBBYEFAlqYhaSsFq7VQ7LdTI6MuWyIckoMA0GCSqGSIb3DQEBBQUA
+A4IBAQCRalCc23iBmz+LQuM7/KbD7kPgz/PigDVJRXYC4uMvBcXxKufAQTPGtpvQ
+MznNwNuhrWw3AkxYQTvyl5LGSKjN5Yo5iWH5Upfpvfb5lHTocQ68d4bDBsxafEp+
+NFAwLvt/MpqNPfMgW/hqyobzMUwsWYACff44yTB1HLdV47yfuqhthCgFdbOLDcCR
+VCHnpgu0mfVRQdzNo0ci2ccBgcTcR08m6h/t280NmPSjnLRzMkqWmf68f8glWPhY
+83ZmiVSkpj7EUFy6iRiCdUgh0k8T6GB+B3bbELVR5qq5aKrN9p2QdRLqOBrKROi3
+macqaJVmlaut74nLYKkGEsaUR+ko
+-----END CERTIFICATE-----
+mozilla/COMODO_ECC_Certification_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTEL
+MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE
+BxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMT
+IkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwMzA2MDAw
+MDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdy
+ZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09N
+T0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlv
+biBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSR
+FtSrYpn1PlILBs5BAH+X4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0J
+cfRK9ChQtP6IHG4/bC8vCVlbpVsLM5niwz2J+Wos77LTBumjQjBAMB0GA1UdDgQW
+BBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/
+BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VGFAkK+qDm
+fQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdv
+GDeAU/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY=
+-----END CERTIFICATE-----
+mozilla/SwissSign_Platinum_CA_-_G2.crt
+-----BEGIN CERTIFICATE-----
+MIIFwTCCA6mgAwIBAgIITrIAZwwDXU8wDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UE
+BhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEjMCEGA1UEAxMaU3dpc3NTaWdu
+IFBsYXRpbnVtIENBIC0gRzIwHhcNMDYxMDI1MDgzNjAwWhcNMzYxMDI1MDgzNjAw
+WjBJMQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dpc3NTaWduIEFHMSMwIQYDVQQD
+ExpTd2lzc1NpZ24gUGxhdGludW0gQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQAD
+ggIPADCCAgoCggIBAMrfogLi2vj8Bxax3mCq3pZcZB/HL37PZ/pEQtZ2Y5Wu669y
+IIpFR4ZieIbWIDkm9K6j/SPnpZy1IiEZtzeTIsBQnIJ71NUERFzLtMKfkr4k2Htn
+IuJpX+UFeNSH2XFwMyVTtIc7KZAoNppVRDBopIOXfw0enHb/FZ1glwCNioUD7IC+
+6ixuEFGSzH7VozPY1kneWCqv9hbrS3uQMpe5up1Y8fhXSQQeol0GcN1x2/ndi5ob
+jM89o03Oy3z2u5yg+gnOI2Ky6Q0f4nIoj5+saCB9bzuohTEJfwvH6GXp43gOCWcw
+izSC+13gzJ2BbWLuCB4ELE6b7P6pT1/9aXjvCR+htL/68++QHkwFix7qepF6w9fl
++zC8bBsQWJj3Gl/QKTIDE0ZNYWqFTFJ0LwYfexHihJfGmfNtf9dng34TaNhxKFrY
+zt3oEBSa/m0jh26OWnA81Y0JAKeqvLAxN23IhBQeW71FYyBrS3SMvds6DsHPWhaP
+pZjydomyExI7C3d3rLvlPClKknLKYRorXkzig3R3+jVIeoVNjZpTxN94ypeRSCtF
+KwH3HBqi7Ri6Cr2D+m+8jVeTO9TUps4e8aCxzqv9KyiaTxvXw3LbpMS/XUz13XuW
+ae5ogObnmLo2t/5u7Su9IPhlGdpVCX4l3P5hYnL5fhgC72O00Puv5TtjjGePAgMB
+AAGjgawwgakwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O
+BBYEFFCvzAeHFUdvOMW0ZdHelarp35zMMB8GA1UdIwQYMBaAFFCvzAeHFUdvOMW0
+ZdHelarp35zMMEYGA1UdIAQ/MD0wOwYJYIV0AVkBAQEBMC4wLAYIKwYBBQUHAgEW
+IGh0dHA6Ly9yZXBvc2l0b3J5LnN3aXNzc2lnbi5jb20vMA0GCSqGSIb3DQEBBQUA
+A4ICAQAIhab1Fgz8RBrBY+D5VUYI/HAcQiiWjrfFwUF1TglxeeVtlspLpYhg0DB0
+uMoI3LQwnkAHFmtllXcBrqS3NQuB2nEVqXQXOHtYyvkv+8Bldo1bAbl93oI9ZLi+
+FHSjClTTLJUYFzX1UWs/j6KWYTl4a0vlpqD4U99REJNi54Av4tHgvI42Rncz7Lj7
+jposiU0xEQ8mngS7twSNC/K5/FqdOxa3L8iYq/6KUFkuozv8KV2LwUvJ4ooTHbG/
+u0IdUt1O2BReEMYxB+9xJ/cbOQncguqLs5WGXv312l0xpuAxtpTmREl0xRbl9x8D
+YSjFyMsSoEJL+WuICI20MhjzdZ/EfwBPBZWcoxcCw7NTm6ogOSkrZvqdr16zktK1
+puEa+S1BaYEUtLS17Yk9zvupnTVCRLEcFHOBzyoBNZox1S2PbYTfgE1X4z/FhHXa
+icYwu+uPyyIIoK6q8QNsOktNCaUOcsZWayFCTiMlFGiudgp8DAdwZPmaL/YFOSbG
+DI8Zf0NebvRbFS/bYV3mZy8/CJT5YLSYMdp08YSTcU1f+2BY0fvEwW2JorsgH51x
+kcsymxM9Pn2SUjWskpSi0xjCfMfqr3YFFt1nJ8J+HAciIfNAChs0B0QTwoRqjt8Z
+Wr9/6x3iGjjRXK9HkmuAtTClyY3YqzGBH9/CZjfTk6mFhnll0g==
+-----END CERTIFICATE-----
+mozilla/TC_TrustCenter_Universal_CA_I.crt
+-----BEGIN CERTIFICATE-----
+MIID3TCCAsWgAwIBAgIOHaIAAQAC7LdggHiNtgYwDQYJKoZIhvcNAQEFBQAweTEL
+MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxJDAiBgNV
+BAsTG1RDIFRydXN0Q2VudGVyIFVuaXZlcnNhbCBDQTEmMCQGA1UEAxMdVEMgVHJ1
+c3RDZW50ZXIgVW5pdmVyc2FsIENBIEkwHhcNMDYwMzIyMTU1NDI4WhcNMjUxMjMx
+MjI1OTU5WjB5MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIg
+R21iSDEkMCIGA1UECxMbVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBMSYwJAYD
+VQQDEx1UQyBUcnVzdENlbnRlciBVbml2ZXJzYWwgQ0EgSTCCASIwDQYJKoZIhvcN
+AQEBBQADggEPADCCAQoCggEBAKR3I5ZEr5D0MacQ9CaHnPM42Q9e3s9B6DGtxnSR
+JJZ4Hgmgm5qVSkr1YnwCqMqs+1oEdjneX/H5s7/zA1hV0qq34wQi0fiU2iIIAI3T
+fCZdzHd55yx4Oagmcw6iXSVphU9VDprvxrlE4Vc93x9UIuVvZaozhDrzznq+VZeu
+jRIPFDPiUHDDSYcTvFHe15gSWu86gzOSBnWLknwSaHtwag+1m7Z3W0hZneTvWq3z
+wZ7U10VOylY0Ibw+F1tvdwxIAUMpsN0/lm7mlaoMwCC2/T42J5zjXM9OgdwZu5GQ
+fezmlwQek8wiSdeXhrYTCjxDI3d+8NzmzSQfO4ObNDqDNOMCAwEAAaNjMGEwHwYD
+VR0jBBgwFoAUkqR1LKSevoFE63n8isWVpesQdXMwDwYDVR0TAQH/BAUwAwEB/zAO
+BgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFJKkdSyknr6BROt5/IrFlaXrEHVzMA0G
+CSqGSIb3DQEBBQUAA4IBAQAo0uCG1eb4e/CX3CJrO5UUVg8RMKWaTzqwOuAGy2X1
+7caXJ/4l8lfmXpWMPmRgFVp/Lw0BxbFg/UU1z/CyvwbZ71q+s2IhtNerNXxTPqYn
+8aEt2hojnczd7Dwtnic0XQ/CNnm8yUpiLe1r2X1BQ3y2qsrtYbE3ghUJGooWMNjs
+ydZHcnhLEEYUjl8Or+zHL6sQ17bxbuyGssLoDZJz3KL0Dzq/YSMQiZxIQG5wALPT
+ujdEWBF6AmqI8Dc08BnprNRlc/ZpjGSUOnmFKbAWKwyCPwacx/0QK54PLLae4xW/
+2TYcuiUaUj0a7CIMHOCkoj3w6DnPgcB77V0fb8XQC9eY
+-----END CERTIFICATE-----
+mozilla/Deutsche_Telekom_Root_CA_2.crt
 -----BEGIN CERTIFICATE-----
 MIIDnzCCAoegAwIBAgIBJjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJERTEc
 MBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2Vj
@@ -2575,3 +3380,486 @@ IzpXl/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo4nI8rZ7/gFnkm0W09juwzTkZmDLl
 xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU
 Cm26OWMohpLzGITY+9HPBVZkVw==
 -----END CERTIFICATE-----
+mozilla/ComSign_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDkzCCAnugAwIBAgIQFBOWgxRVjOp7Y+X8NId3RDANBgkqhkiG9w0BAQUFADA0
+MRMwEQYDVQQDEwpDb21TaWduIENBMRAwDgYDVQQKEwdDb21TaWduMQswCQYDVQQG
+EwJJTDAeFw0wNDAzMjQxMTMyMThaFw0yOTAzMTkxNTAyMThaMDQxEzARBgNVBAMT
+CkNvbVNpZ24gQ0ExEDAOBgNVBAoTB0NvbVNpZ24xCzAJBgNVBAYTAklMMIIBIjAN
+BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8ORUaSvTx49qROR+WCf4C9DklBKK
+8Rs4OC8fMZwG1Cyn3gsqrhqg455qv588x26i+YtkbDqthVVRVKU4VbirgwTyP2Q2
+98CNQ0NqZtH3FyrV7zb6MBBC11PN+fozc0yz6YQgitZBJzXkOPqUm7h65HkfM/sb
+2CEJKHxNGGleZIp6GZPKfuzzcuc3B1hZKKxC+cX/zT/npfo4sdAMx9lSGlPWgcxC
+ejVb7Us6eva1jsz/D3zkYDaHL63woSV9/9JLEYhwVKZBqGdTUkJe5DSe5L6j7Kpi
+Xd3DTKaCQeQzC6zJMw9kglcq/QytNuEMrkvF7zuZ2SOzW120V+x0cAwqTwIDAQAB
+o4GgMIGdMAwGA1UdEwQFMAMBAf8wPQYDVR0fBDYwNDAyoDCgLoYsaHR0cDovL2Zl
+ZGlyLmNvbXNpZ24uY28uaWwvY3JsL0NvbVNpZ25DQS5jcmwwDgYDVR0PAQH/BAQD
+AgGGMB8GA1UdIwQYMBaAFEsBmz5WGmU2dst7l6qSBe4y5ygxMB0GA1UdDgQWBBRL
+AZs+VhplNnbLe5eqkgXuMucoMTANBgkqhkiG9w0BAQUFAAOCAQEA0Nmlfv4pYEWd
+foPPbrxHbvUanlR2QnG0PFg/LUAlQvaBnPGJEMgOqnhPOAlXsDzACPw1jvFIUY0M
+cXS6hMTXcpuEfDhOZAYnKuGntewImbQKDdSFc8gS4TXt8QUxHXOZDOuWyt3T5oWq
+8Ir7dcHyCTxlZWTzTNity4hp8+SDtwy9F1qWF8pb/627HOkthIDYIb6FUtnUdLlp
+hbpN7Sgy6/lhSuTENh4Z3G+EER+V9YMoGKgzkkMn3V0TBEVPh9VGzT2ouvDzuFYk
+Res3x+F2T3I5GN9+dHLHcy056mDmrRGiVod7w2ia/viMcKjfZTL0pECMocJEAw6U
+AGegcQCCSA==
+-----END CERTIFICATE-----
+mozilla/Staat_der_Nederlanden_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIDujCCAqKgAwIBAgIEAJiWijANBgkqhkiG9w0BAQUFADBVMQswCQYDVQQGEwJO
+TDEeMBwGA1UEChMVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSYwJAYDVQQDEx1TdGFh
+dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQTAeFw0wMjEyMTcwOTIzNDlaFw0xNTEy
+MTYwOTE1MzhaMFUxCzAJBgNVBAYTAk5MMR4wHAYDVQQKExVTdGFhdCBkZXIgTmVk
+ZXJsYW5kZW4xJjAkBgNVBAMTHVN0YWF0IGRlciBOZWRlcmxhbmRlbiBSb290IENB
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmNK1URF6gaYUmHFtvszn
+ExvWJw56s2oYHLZhWtVhCb/ekBPHZ+7d89rFDBKeNVU+LCeIQGv33N0iYfXCxw71
+9tV2U02PjLwYdjeFnejKScfST5gTCaI+Ioicf9byEGW07l8Y1Rfj+MX94p2i71MO
+hXeiD+EwR+4A5zN9RGcaC1Hoi6CeUJhoNFIfLm0B8mBF8jHrqTFoKbt6QZ7GGX+U
+tFE5A3+y3qcym7RHjm+0Sq7lr7HcsBthvJly3uSJt3omXdozSVtSnA71iq3DuD3o
+BmrC1SoLbHuEvVYFy4ZlkuxEK7COudxwC0barbxjiDn622r+I/q85Ej0ZytqERAh
+SQIDAQABo4GRMIGOMAwGA1UdEwQFMAMBAf8wTwYDVR0gBEgwRjBEBgRVHSAAMDww
+OgYIKwYBBQUHAgEWLmh0dHA6Ly93d3cucGtpb3ZlcmhlaWQubmwvcG9saWNpZXMv
+cm9vdC1wb2xpY3kwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSofeu8Y6R0E3QA
+7Jbg0zTBLL9s+DANBgkqhkiG9w0BAQUFAAOCAQEABYSHVXQ2YcG70dTGFagTtJ+k
+/rvuFbQvBgwp8qiSpGEN/KtcCFtREytNwiphyPgJWPwtArI5fZlmgb9uXJVFIGzm
+eafR2Bwp/MIgJ1HI8XxdNGdphREwxgDS1/PTfLbwMVcoEoJz6TMvplW0C5GUR5z6
+u3pCMuiufi3IvKwUv9kP2Vv8wfl6leF9fpb8cbDCTMjfRTTJzg3ynGQI0DvDKcWy
+7ZAEwbEpkcUwb8GpcjPM/l0WFywRaed+/sWDCN+83CI6LiBpIzlWYGeQiy52OfsR
+iJf2fL1LuCAWZwWN4jvBcj+UlTfHXbme2JOhF4//DGYVwSR8MnwDHTuhWEUykw==
+-----END CERTIFICATE-----
+mozilla/Root_CA_Generalitat_Valenciana.crt
+-----BEGIN CERTIFICATE-----
+MIIGizCCBXOgAwIBAgIEO0XlaDANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJF
+UzEfMB0GA1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJ
+R1ZBMScwJQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwHhcN
+MDEwNzA2MTYyMjQ3WhcNMjEwNzAxMTUyMjQ3WjBoMQswCQYDVQQGEwJFUzEfMB0G
+A1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJR1ZBMScw
+JQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwggEiMA0GCSqG
+SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGKqtXETcvIorKA3Qdyu0togu8M1JAJke+
+WmmmO3I2F0zo37i7L3bhQEZ0ZQKQUgi0/6iMweDHiVYQOTPvaLRfX9ptI6GJXiKj
+SgbwJ/BXufjpTjJ3Cj9BZPPrZe52/lSqfR0grvPXdMIKX/UIKFIIzFVd0g/bmoGl
+u6GzwZTNVOAydTGRGmKy3nXiz0+J2ZGQD0EbtFpKd71ng+CT516nDOeB0/RSrFOy
+A8dEJvt55cs0YFAQexvba9dHq198aMpunUEDEO5rmXteJajCq+TA81yc477OMUxk
+Hl6AovWDfgzWyoxVjr7gvkkHD6MkQXpYHYTqWBLI4bft75PelAgxAgMBAAGjggM7
+MIIDNzAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3NwLnBr
+aS5ndmEuZXMwEgYDVR0TAQH/BAgwBgEB/wIBAjCCAjQGA1UdIASCAiswggInMIIC
+IwYKKwYBBAG/VQIBADCCAhMwggHoBggrBgEFBQcCAjCCAdoeggHWAEEAdQB0AG8A
+cgBpAGQAYQBkACAAZABlACAAQwBlAHIAdABpAGYAaQBjAGEAYwBpAPMAbgAgAFIA
+YQDtAHoAIABkAGUAIABsAGEAIABHAGUAbgBlAHIAYQBsAGkAdABhAHQAIABWAGEA
+bABlAG4AYwBpAGEAbgBhAC4ADQAKAEwAYQAgAEQAZQBjAGwAYQByAGEAYwBpAPMA
+bgAgAGQAZQAgAFAAcgDhAGMAdABpAGMAYQBzACAAZABlACAAQwBlAHIAdABpAGYA
+aQBjAGEAYwBpAPMAbgAgAHEAdQBlACAAcgBpAGcAZQAgAGUAbAAgAGYAdQBuAGMA
+aQBvAG4AYQBtAGkAZQBuAHQAbwAgAGQAZQAgAGwAYQAgAHAAcgBlAHMAZQBuAHQA
+ZQAgAEEAdQB0AG8AcgBpAGQAYQBkACAAZABlACAAQwBlAHIAdABpAGYAaQBjAGEA
+YwBpAPMAbgAgAHMAZQAgAGUAbgBjAHUAZQBuAHQAcgBhACAAZQBuACAAbABhACAA
+ZABpAHIAZQBjAGMAaQDzAG4AIAB3AGUAYgAgAGgAdAB0AHAAOgAvAC8AdwB3AHcA
+LgBwAGsAaQAuAGcAdgBhAC4AZQBzAC8AYwBwAHMwJQYIKwYBBQUHAgEWGWh0dHA6
+Ly93d3cucGtpLmd2YS5lcy9jcHMwHQYDVR0OBBYEFHs100DSHHgZZu90ECjcPk+y
+eAT8MIGVBgNVHSMEgY0wgYqAFHs100DSHHgZZu90ECjcPk+yeAT8oWykajBoMQsw
+CQYDVQQGEwJFUzEfMB0GA1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0G
+A1UECxMGUEtJR1ZBMScwJQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVu
+Y2lhbmGCBDtF5WgwDQYJKoZIhvcNAQEFBQADggEBACRhTvW1yEICKrNcda3Fbcrn
+lD+laJWIwVTAEGmiEi8YPyVQqHxK6sYJ2fR1xkDar1CdPaUWu20xxsdzCkj+IHLt
+b8zog2EWRpABlUt9jppSCS/2bxzkoXHPjCpaF3ODR00PNvsETUlR4hTJZGH71BTg
+9J63NI8KJr2XXPR5OkowGcytT6CYirQxlyric21+eLj4iIlPsSKRZEv1UN4D2+XF
+ducTZnV+ZfsBn5OHiJ35Rld8TWCvmHMTI6QgkYH60GFmuH3Rr9ZvHmw96RH9qfmC
+IoaZM3Fa6hlXPZHNqcCjbgcTpsnt+GijnsNacgmHKNHEc8RzGF9QdRYxn7fofMM=
+-----END CERTIFICATE-----
+mozilla/EBG_Elektronik_Sertifika_Hizmet_Sağlayıcısı.crt
+-----BEGIN CERTIFICATE-----
+MIIF5zCCA8+gAwIBAgIITK9zQhyOdAIwDQYJKoZIhvcNAQEFBQAwgYAxODA2BgNV
+BAMML0VCRyBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx
+c8SxMTcwNQYDVQQKDC5FQkcgQmlsacWfaW0gVGVrbm9sb2ppbGVyaSB2ZSBIaXpt
+ZXRsZXJpIEEuxZ4uMQswCQYDVQQGEwJUUjAeFw0wNjA4MTcwMDIxMDlaFw0xNjA4
+MTQwMDMxMDlaMIGAMTgwNgYDVQQDDC9FQkcgRWxla3Ryb25payBTZXJ0aWZpa2Eg
+SGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTE3MDUGA1UECgwuRUJHIEJpbGnFn2ltIFRl
+a25vbG9qaWxlcmkgdmUgSGl6bWV0bGVyaSBBLsWeLjELMAkGA1UEBhMCVFIwggIi
+MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDuoIRh0DpqZhAy2DE4f6en5f2h
+4fuXd7hxlugTlkaDT7byX3JWbhNgpQGR4lvFzVcfd2NR/y8927k/qqk153nQ9dAk
+tiHq6yOU/im/+4mRDGSaBUorzAzu8T2bgmmkTPiab+ci2hC6X5L8GCcKqKpE+i4s
+tPtGmggDg3KriORqcsnlZR9uKg+ds+g75AxuetpX/dfreYteIAbTdgtsApWjluTL
+dlHRKJ2hGvxEok3MenaoDT2/F08iiFD9rrbskFBKW5+VQarKD7JK/oCZTqNGFav4
+c0JqwmZ2sQomFd2TkuzbqV9UIlKRcF0T6kjsbgNs2d1s/OsNA/+mgxKb8amTD8Um
+TDGyY5lhcucqZJnSuOl14nypqZoaqsNW2xCaPINStnuWt6yHd6i58mcLlEOzrz5z
++kI2sSXFCjEmN1ZnuqMLfdb3ic1nobc6HmZP9qBVFCVMLDMNpkGMvQQxahByCp0O
+Lna9XvNRiYuoP1Vzv9s6xiQFlpJIqkuNKgPlV5EQ9GooFW5Hd4RcUXSfGenmHmMW
+OeMRFeNYGkS9y8RsZteEBt8w9DeiQyJ50hBs37vmExH8nYQKE3vwO9D8owrXieqW
+fo1IhR5kX9tUoqzVegJ5a9KK8GfaZXINFHDk6Y54jzJ0fFfy1tb0Nokb+Clsi7n2
+l9GkLqq+CxnCRelwXQIDAJ3Zo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB
+/wQEAwIBBjAdBgNVHQ4EFgQU587GT/wWZ5b6SqMHwQSny2re2kcwHwYDVR0jBBgw
+FoAU587GT/wWZ5b6SqMHwQSny2re2kcwDQYJKoZIhvcNAQEFBQADggIBAJuYml2+
+8ygjdsZs93/mQJ7ANtyVDR2tFcU22NU57/IeIl6zgrRdu0waypIN30ckHrMk2pGI
+6YNw3ZPX6bqz3xZaPt7gyPvT/Wwp+BVGoGgmzJNSroIBk5DKd8pNSe/iWtkqvTDO
+TLKBtjDOWU/aWR1qeqRFsIImgYZ29fUQALjuswnoT4cCB64kXPBfrAowzIpAoHME
+wfuJJPaaHFy3PApnNgUIMbOv2AFoKuB4j3TeuFGkjGwgPaL7s9QJ/XvCgKqTbCmY
+Iai7FvOpEl90tYeY8pUm3zTvilORiF0alKM/fCL414i6poyWqD1SNGKfAB5UVUJn
+xk1Gj7sURT0KlhaOEKGXmdXTMIXM3rRyt7yKPBgpaP3ccQfuJDlq+u2lrDgv+R4Q
+DgZxGhBM/nV+/x5XOULK1+EVoVZVWRvRo68R2E7DpSvvkL/A7IITW43WciyTTo9q
+Kd+FPNMN4KIYEsxVL0e3p5sC/kH2iExt2qkBR4NkJ2IQgtYSe14DHzSpyZH+r11t
+hie3I6p1GMog57AP14kOpmciY/SDQSsGS7tY1dHXt7kQY9iJSrSq3RZj9W6+YKH4
+7ejWkE8axsWgKdOnIaj1Wjz3x0miIZpKlVIglnKaZsv30oZDfCK+lvm9AahH3eU7
+QPl1K5srRmSGjR70j/sHd9DqSaIcjVIUpgqT
+-----END CERTIFICATE-----
+mozilla/Wells_Fargo_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIID5TCCAs2gAwIBAgIEOeSXnjANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UEBhMC
+VVMxFDASBgNVBAoTC1dlbGxzIEZhcmdvMSwwKgYDVQQLEyNXZWxscyBGYXJnbyBD
+ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEvMC0GA1UEAxMmV2VsbHMgRmFyZ28gUm9v
+dCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDAxMDExMTY0MTI4WhcNMjEwMTE0
+MTY0MTI4WjCBgjELMAkGA1UEBhMCVVMxFDASBgNVBAoTC1dlbGxzIEZhcmdvMSww
+KgYDVQQLEyNXZWxscyBGYXJnbyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEvMC0G
+A1UEAxMmV2VsbHMgRmFyZ28gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEi
+MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDVqDM7Jvk0/82bfuUER84A4n13
+5zHCLielTWi5MbqNQ1mXx3Oqfz1cQJ4F5aHiidlMuD+b+Qy0yGIZLEWukR5zcUHE
+SxP9cMIlrCL1dQu3U+SlK93OvRw6esP3E48mVJwWa2uv+9iWsWCaSOAlIiR5NM4O
+JgALTqv9i86C1y8IcGjBqAr5dE8Hq6T54oN+J3N0Prj5OEL8pahbSCOz6+MlsoCu
+ltQKnMJ4msZoGK43YjdeUXWoWGPAUe5AeH6orxqg4bB4nVCMe+ez/I4jsNtlAHCE
+AQgAFG5Uhpq6zPk3EPbg3oQtnaSFN9OH4xXQwReQfhkhahKpdv0SAulPIV4XAgMB
+AAGjYTBfMA8GA1UdEwEB/wQFMAMBAf8wTAYDVR0gBEUwQzBBBgtghkgBhvt7hwcB
+CzAyMDAGCCsGAQUFBwIBFiRodHRwOi8vd3d3LndlbGxzZmFyZ28uY29tL2NlcnRw
+b2xpY3kwDQYJKoZIhvcNAQEFBQADggEBANIn3ZwKdyu7IvICtUpKkfnRLb7kuxpo
+7w6kAOnu5+/u9vnldKTC2FJYxHT7zmu1Oyl5GFrvm+0fazbuSCUlFLZWohDo7qd/
+0D+j0MNdJu4HzMPBJCGHHt8qElNvQRbn7a6U+oxy+hNH8Dx+rn0ROhPs7fpvcmR7
+nX1/Jv16+yWt6j4pf0zjAFcysLPp7VMX2YuyFA4w6OXVE8Zkr8QA1dhYJPz1j+zx
+x32l2w8n0cbyQIjmH/ZhqPRCyLk306m+LFZ4wnKbWV01QIroTmMatukgalHizqSQ
+33ZwmVxwQ023tqcZZE6St8WRPH9IFmV7Fv3L/PvZ1dZPIWU7Sn9Ho/s=
+-----END CERTIFICATE-----
+mozilla/Hongkong_Post_Root_CA_1.crt
+-----BEGIN CERTIFICATE-----
+MIIDMDCCAhigAwIBAgICA+gwDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCSEsx
+FjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3Qg
+Um9vdCBDQSAxMB4XDTAzMDUxNTA1MTMxNFoXDTIzMDUxNTA0NTIyOVowRzELMAkG
+A1UEBhMCSEsxFjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdr
+b25nIFBvc3QgUm9vdCBDQSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
+AQEArP84tulmAknjorThkPlAj3n54r15/gK97iSSHSL22oVyaf7XPwnU3ZG1ApzQ
+jVrhVcNQhrkpJsLj2aDxaQMoIIBFIi1WpztUlVYiWR8o3x8gPW2iNr4joLFutbEn
+PzlTCeqrauh0ssJlXI6/fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAaPIpjh
+ZY4bXSNmO7ilMlHIhqqhqZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8EThFk9
+nnV0ttgCXjqQesBCNnLsak3c78QA3xMYV18meMjWCnl3v/evt3a5pQuEF10Q6m/h
+q5URX208o1xNg1vysxmKgIsLhwIDAQABoyYwJDASBgNVHRMBAf8ECDAGAQH/AgED
+MA4GA1UdDwEB/wQEAwIBxjANBgkqhkiG9w0BAQUFAAOCAQEADkbVPK7ih9legYsC
+mEEIjEy82tvuJxuC52pF7BaLT4Wg87JwvVqWuspube5Gi27nKi6Wsxkz67SfqLI3
+7piol7Yutmcn1KZJ/RyTZXaeQi/cImyaT/JaFTmxcdcrUehtHJjA2Sr0oYJ71clB
+oiMBdDhViw+5LmeiIAQ32pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9IBehEPCKdJs
+EhTkYY2sEJCehFC78JZvRZ+K88psT/oROhUVRsPNH4NbLUES7VBnQRM9IauUiqpO
+fMGx+6fWtScvl6tu4B3i0RwsH0Ti/L6RoZz71ilTc4afU9hDDl3WY4JxHYB0yvbi
+AmvZWg==
+-----END CERTIFICATE-----
+mozilla/GlobalSign_Root_CA_-_R2.crt
+-----BEGIN CERTIFICATE-----
+MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4G
+A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNp
+Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1
+MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMjETMBEG
+A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6ErPL
+v4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8
+eoLrvozps6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklq
+tTleiDTsvHgMCJiEbKjNS7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzd
+C9XZzPnqJworc5HGnRusyMvo4KD0L5CLTfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pa
+zq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6CygPCm48CAwEAAaOBnDCB
+mTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUm+IH
+V2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5n
+bG9iYWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG
+3lm0mi3f3BmGLjANBgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4Gs
+J0/WwbgcQ3izDJr86iw8bmEbTUsp9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO
+291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu01yiPqFbQfXf5WRDLenVOavS
+ot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG79G+dwfCMNYxd
+AfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7
+TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg==
+-----END CERTIFICATE-----
+mozilla/Firmaprofesional_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIEVzCCAz+gAwIBAgIBATANBgkqhkiG9w0BAQUFADCBnTELMAkGA1UEBhMCRVMx
+IjAgBgNVBAcTGUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMTOUF1
+dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2
+MjYzNDA2ODEmMCQGCSqGSIb3DQEJARYXY2FAZmlybWFwcm9mZXNpb25hbC5jb20w
+HhcNMDExMDI0MjIwMDAwWhcNMTMxMDI0MjIwMDAwWjCBnTELMAkGA1UEBhMCRVMx
+IjAgBgNVBAcTGUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMTOUF1
+dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2
+MjYzNDA2ODEmMCQGCSqGSIb3DQEJARYXY2FAZmlybWFwcm9mZXNpb25hbC5jb20w
+ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDnIwNvbyOlXnjOlSztlB5u
+Cp4Bx+ow0Syd3Tfom5h5VtP8c9/Qit5Vj1H5WuretXDE7aTt/6MNbg9kUDGvASdY
+rv5sp0ovFy3Tc9UTHI9ZpTQsHVQERc1ouKDAA6XPhUJHlShbz++AbOCQl4oBPB3z
+hxAwJkh91/zpnZFx/0GaqUC1N5wpIE8fUuOgfRNtVLcK3ulqTgesrBlf3H5idPay
+BQC6haD9HThuy1q7hryUZzM1gywfI834yJFxzJeL764P3CkDG8A563DtwW4O2GcL
+iam8NeTvtjS0pbbELaW+0MOUJEjb35bTALVmGotmBQ/dPz/LP6pemkr4tErvlTcb
+AgMBAAGjgZ8wgZwwKgYDVR0RBCMwIYYfaHR0cDovL3d3dy5maXJtYXByb2Zlc2lv
+bmFsLmNvbTASBgNVHRMBAf8ECDAGAQH/AgEBMCsGA1UdEAQkMCKADzIwMDExMDI0
+MjIwMDAwWoEPMjAxMzEwMjQyMjAwMDBaMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4E
+FgQUMwugZtHq2s7eYpMEKFK1FH84aLcwDQYJKoZIhvcNAQEFBQADggEBAEdz/o0n
+VPD11HecJ3lXV7cVVuzH2Fi3AQL0M+2TUIiefEaxvT8Ub/GzR0iLjJcG1+p+o1wq
+u00vR+L4OQbJnC4xGgN49Lw4xiKLMzHwFgQEffl25EvXwOaD7FnMP97/T2u3Z36m
+hoEyIwOdyPdfwUpgpZKpsaSgYMN4h7Mi8yrrW6ntBas3D7Hi05V2Y1Z0jFhyGzfl
+ZKG+TQyTmAyX9odtsz/ny4Cm7YjHX1BiAuiZdBbQ5rQ58SfLyEDW44YQqSMSkuBp
+QWOnryULwMWSyx6Yo1q6xTMPoJcB3X/ge9YGVM+h4k0460tQtcsm9MracEpqoeJ5
+quGnM/b9Sh/22WA=
+-----END CERTIFICATE-----
+mozilla/T-TeleSec_GlobalRoot_Class_3.crt
+-----BEGIN CERTIFICATE-----
+MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx
+KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd
+BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl
+YyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgxMDAxMTAyOTU2WhcNMzMxMDAxMjM1
+OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy
+aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50
+ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0G
+CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN
+8ELg63iIVl6bmlQdTQyK9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/
+RLyTPWGrTs0NvvAgJ1gORH8EGoel15YUNpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4
+hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZFiP0Zf3WHHx+xGwpzJFu5
+ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W0eDrXltM
+EnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGj
+QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1
+A/d2O2GCahKqGFPrAyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOy
+WL6ukK2YJ5f+AbGwUgC4TeQbIXQbfsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ
+1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzTucpH9sry9uetuUg/vBa3wW30
+6gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7hP0HHRwA11fXT
+91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml
+e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4p
+TpPDpFQUWw==
+-----END CERTIFICATE-----
+mozilla/VeriSign_Class_3_Public_Primary_Certification_Authority_-_G5.crt
+-----BEGIN CERTIFICATE-----
+MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCB
+yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL
+ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJp
+U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxW
+ZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0
+aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCByjEL
+MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW
+ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2ln
+biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp
+U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y
+aXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvJAgIKXo1
+nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKzj/i5Vbex
+t0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIz
+SdhDY2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQG
+BO+QueQA5N06tRn/Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+
+rCpSx4/VBEnkjWNHiDxpg8v+R70rfk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/
+NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8E
+BAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEwHzAH
+BgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy
+aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKv
+MzEzMA0GCSqGSIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzE
+p6B4Eq1iDkVwZMXnl2YtmAl+X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y
+5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKEKQsTb47bDN0lAtukixlE0kF6BWlK
+WE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiCKm0oHw0LxOXnGiYZ
+4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vEZV8N
+hnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq
+-----END CERTIFICATE-----
+mozilla/ApplicationCA_-_Japanese_Government.crt
+-----BEGIN CERTIFICATE-----
+MIIDoDCCAoigAwIBAgIBMTANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJKUDEc
+MBoGA1UEChMTSmFwYW5lc2UgR292ZXJubWVudDEWMBQGA1UECxMNQXBwbGljYXRp
+b25DQTAeFw0wNzEyMTIxNTAwMDBaFw0xNzEyMTIxNTAwMDBaMEMxCzAJBgNVBAYT
+AkpQMRwwGgYDVQQKExNKYXBhbmVzZSBHb3Zlcm5tZW50MRYwFAYDVQQLEw1BcHBs
+aWNhdGlvbkNBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp23gdE6H
+j6UG3mii24aZS2QNcfAKBZuOquHMLtJqO8F6tJdhjYq+xpqcBrSGUeQ3DnR4fl+K
+f5Sk10cI/VBaVuRorChzoHvpfxiSQE8tnfWuREhzNgaeZCw7NCPbXCbkcXmP1G55
+IrmTwcrNwVbtiGrXoDkhBFcsovW8R0FPXjQilbUfKW1eSvNNcr5BViCH/OlQR9cw
+FO5cjFW6WY2H/CPek9AEjP3vbb3QesmlOmpyM8ZKDQUXKi17safY1vC+9D/qDiht
+QWEjdnjDuGWk81quzMKq2edY3rZ+nYVunyoKb58DKTCXKB28t89UKU5RMfkntigm
+/qJj5kEW8DOYRwIDAQABo4GeMIGbMB0GA1UdDgQWBBRUWssmP3HMlEYNllPqa0jQ
+k/5CdTAOBgNVHQ8BAf8EBAMCAQYwWQYDVR0RBFIwUKROMEwxCzAJBgNVBAYTAkpQ
+MRgwFgYDVQQKDA/ml6XmnKzlm73mlL/lupwxIzAhBgNVBAsMGuOCouODl+ODquOC
+seODvOOCt+ODp+ODs0NBMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
+ggEBADlqRHZ3ODrso2dGD/mLBqj7apAxzn7s2tGJfHrrLgy9mTLnsCTWw//1sogJ
+hyzjVOGjprIIC8CFqMjSnHH2HZ9g/DgzE+Ge3Atf2hZQKXsvcJEPmbo0NI2VdMV+
+eKlmXb3KIXdCEKxmJj3ekav9FfBv7WxfEPjzFvYDio+nEhEMy/0/ecGc/WLuo89U
+DNErXxc+4z6/wCs+CZv+iKZ+tJIX/COUgb1up8WMwusRRdv4QcmWdupwX3kSa+Sj
+B1oF7ydJzyGfikwJcGapJsErEU4z0g781mzSDjJkaP+tBXhfAx2o45CsJOAPQKdL
+rosot4LKGAfmt1t06SAZf7IbiVQ=
+-----END CERTIFICATE-----
+mozilla/Actalis_Authentication_Root_CA.crt
+-----BEGIN CERTIFICATE-----
+MIIFuzCCA6OgAwIBAgIIVwoRl0LE48wwDQYJKoZIhvcNAQELBQAwazELMAkGA1UE
+BhMCSVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8w
+MzM1ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290
+IENBMB4XDTExMDkyMjExMjIwMloXDTMwMDkyMjExMjIwMlowazELMAkGA1UEBhMC
+SVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8wMzM1
+ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290IENB
+MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8bEpSmkLO/lGMWwUKNv
+UTufClrJwkg4CsIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkCkpAW1V8IbInX
+4ay8IMKx4INRimlNAJZaby/ARH6jDuSRzVju3PvHHkVH3Se5CAGfpiEd9UEtL0z9
+KK3giq0itFZljoZUj5NDKd45RnijMCO6zfB9E1fAXdKDa0hMxKufgFpbOr3JpyI/
+gCczWw63igxdBzcIy2zSekciRDXFzMwujt0q7bd9Zg1fYVEiVRvjRuPjPdA1Yprb
+rxTIW6HMiRvhMCb8oJsfgadHHwTrozmSBp+Z07/T6k9QnBn+locePGX2oxgkg4YQ
+51Q+qDp2JE+BIcXjDwL4k5RHILv+1A7TaLndxHqEguNTVHnd25zS8gebLra8Pu2F
+be8lEfKXGkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeICrHuS0E4UT1lF9gxe
+KF+w6D9Fz8+vm2/7hNN3WpVvrJSEnu68wEqPSpP4RCHiMUVhUE4Q2OM1fEwZtN4F
+v6MGn8i1zeQf1xcGDXqVdFUNaBr8EBtiZJ1t4JWgw5QHVw0U5r0F+7if5t+L4sbn
+fpb2U8WANFAoWPASUHEXMLrmeGO89LKtmyuy/uE5jF66CyCU3nuDuP/jVo23Eek7
+jPKxwV2dpAtMK9myGPW1n0sCAwEAAaNjMGEwHQYDVR0OBBYEFFLYiDrIn3hm7Ynz
+ezhwlMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUUtiIOsifeGbt
+ifN7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQAL
+e3KHwGCmSUyIWOYdiPcUZEim2FgKDk8TNd81HdTtBjHIgT5q1d07GjLukD0R0i70
+jsNjLiNmsGe+b7bAEzlgqqI0JZN1Ut6nna0Oh4lScWoWPBkdg/iaKWW+9D+a2fDz
+WochcYBNy+A4mz+7+uAwTc+G02UQGRjRlwKxK3JCaKygvU5a2hi/a5iB0P2avl4V
+SM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQHEhb2rykOLpn7VU+Xlff1ANATIGk0k9j
+pwlCCRT8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJlh0wcBzIm2Tlf05fbsq4/aC4yyX
+X04fkZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9qdCa6HCPSXrW5b0KDtst842/6+Ok
+fcvHlXHo2qN8xcL4dJIEG4aspCJTQLas/kx2z/uUMsA1n3Y/buWQbqCmJqK4LL7R
+K4X9p2jIugErsWx0Hbhzlefut8cl8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel0btU
+ZCzJJ7VLkn5l/9Mt4blOvH+kQSGQQXemOR/qnuOf0GZvBeyqdn6/axag67XH/JJU
+LysRJyU3eExRarDzzFhdFPFqSBX/wge2sY0PjlxQRrM9vwGYT7JZVEc+NHt4bVaT
+LnPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+2ydDKXhlg==
+-----END CERTIFICATE-----
+mozilla/COMODO_Certification_Authority.crt
+-----BEGIN CERTIFICATE-----
+MIIEHTCCAwWgAwIBAgIQToEtioJl4AsC7j41AkblPTANBgkqhkiG9w0BAQUFADCB
+gTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G
+A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxJzAlBgNV
+BAMTHkNPTU9ETyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEyMDEwMDAw
+MDBaFw0yOTEyMzEyMzU5NTlaMIGBMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
+YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFDT01P
+RE8gQ0EgTGltaXRlZDEnMCUGA1UEAxMeQ09NT0RPIENlcnRpZmljYXRpb24gQXV0
+aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0ECLi3LjkRv3
+UcEbVASY06m/weaKXTuH+7uIzg3jLz8GlvCiKVCZrts7oVewdFFxze1CkU1B/qnI
+2GqGd0S7WWaXUF601CxwRM/aN5VCaTwwxHGzUvAhTaHYujl8HJ6jJJ3ygxaYqhZ8
+Q5sVW7euNJH+1GImGEaaP+vB+fGQV+useg2L23IwambV4EajcNxo2f8ESIl33rXp
++2dtQem8Ob0y2WIC8bGoPW43nOIv4tOiJovGuFVDiOEjPqXSJDlqR6sA1KGzqSX+
+DT+nHbrTUcELpNqsOO9VUCQFZUaTNE8tja3G1CEZ0o7KBWFxB3NH5YoZEr0ETc5O
+nKVIrLsm9wIDAQABo4GOMIGLMB0GA1UdDgQWBBQLWOWLxkwVN6RAqTCpIb5HNlpW
+/zAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zBJBgNVHR8EQjBAMD6g
+PKA6hjhodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01PRE9DZXJ0aWZpY2F0aW9u
+QXV0aG9yaXR5LmNybDANBgkqhkiG9w0BAQUFAAOCAQEAPpiem/Yb6dc5t3iuHXIY
+SdOH5EOC6z/JqvWote9VfCFSZfnVDeFs9D6Mk3ORLgLETgdxb8CPOGEIqB6BCsAv
+IC9Bi5HcSEW88cbeunZrM8gALTFGTO3nnc+IlP8zwFboJIYmuNg4ON8qa90SzMc/
+RxdMosIGlgnW2/4/PEZB31jiVg88O8EckzXZOFKs7sjsLjBOlDW0JB9LeGna8gI4
+zJVSk/BwJVmcIGfE7vmLV2H0knZ9P4SNVbfo5azV8fUZVqZa+5Acr5Pr5RzUZ5dd
+BA6+C4OmF4O5MBKgxTMVBbkN+8cFduPYSo38NBejxiEovjBFMR7HeL5YYTisO+IB
+ZQ==
+-----END CERTIFICATE-----
+mozilla/Verisign_Class_1_Public_Primary_Certification_Authority_-_G3.crt
+-----BEGIN CERTIFICATE-----
+MIIEGjCCAwICEQCLW3VWhFSFCwDPrzhIzrGkMA0GCSqGSIb3DQEBBQUAMIHKMQsw
+CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl
+cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu
+LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT
+aWduIENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
+dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD
+VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT
+aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ
+bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu
+IENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg
+LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN2E1Lm0+afY8wR4
+nN493GwTFtl63SRRZsDHJlkNrAYIwpTRMx/wgzUfbhvI3qpuFU5UJ+/EbRrsC+MO
+8ESlV8dAWB6jRx9x7GD2bZTIGDnt/kIYVt/kTEkQeE4BdjVjEjbdZrwBBDajVWjV
+ojYJrKshJlQGrT/KFOCsyq0GHZXi+J3x4GD/wn91K0zM2v6HmSHquv4+VNfSWXjb
+PG7PoBMAGrgnoeS+Z5bKoMWznN3JdZ7rMJpfo83ZrngZPyPpXNspva1VyBtUjGP2
+6KbqxzcSXKMpHgLZ2x87tNcPVkeBFQRKr4Mn0cVYiMHd9qqnoxjaaKptEVHhv2Vr
+n5Z20T0CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAq2aN17O6x5q25lXQBfGfMY1a
+qtmqRiYPce2lrVNWYgFHKkTp/j90CxObufRNG7LRX7K20ohcs5/Ny9Sn2WCVhDr4
+wTcdYcrnsMXlkdpUpqwxga6X3s0IrLjAl4B/bnKk52kTlWUfxJM8/XmPBNQ+T+r3
+ns7NZ3xPZQL/kYVUc8f/NveGLezQXk//EZ9yBta4GvFMDSZl4kSAHsef493oCtrs
+pSCAaWihT37ha88HQfqDjrw43bAuEbFrskLMmrz5SCJ5ShkPshw+IHTZasO+8ih4
+E1Z5T21Q6huwtVexN2ZYI/PcD98Kh8TvhgXVOBRgmaNL3gaWcSzy27YfpO8/7g==
+-----END CERTIFICATE-----
+mozilla/CNNIC_ROOT.crt
+-----BEGIN CERTIFICATE-----
+MIIDVTCCAj2gAwIBAgIESTMAATANBgkqhkiG9w0BAQUFADAyMQswCQYDVQQGEwJD
+TjEOMAwGA1UEChMFQ05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1QwHhcNMDcwNDE2
+MDcwOTE0WhcNMjcwNDE2MDcwOTE0WjAyMQswCQYDVQQGEwJDTjEOMAwGA1UEChMF
+Q05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1QwggEiMA0GCSqGSIb3DQEBAQUAA4IB
+DwAwggEKAoIBAQDTNfc/c3et6FtzF8LRb+1VvG7q6KR5smzDo+/hn7E7SIX1mlwh
+IhAsxYLO2uOabjfhhyzcuQxauohV3/2q2x8x6gHx3zkBwRP9SFIhxFXf2tizVHa6
+dLG3fdfA6PZZxU3Iva0fFNrfWEQlMhkqx35+jq44sDB7R3IJMfAw28Mbdim7aXZO
+V/kbZKKTVrdvmW7bCgScEeOAH8tjlBAKqeFkgjH5jCftppkA9nCTGPihNIaj3XrC
+GHn2emU1z5DrvTOTn1OrczvmmzQgLx3vqR1jGqCA2wMv+SYahtKNu6m+UjqHZ0gN
+v7Sg2Ca+I19zN38m5pIEo3/PIKe38zrKy5nLAgMBAAGjczBxMBEGCWCGSAGG+EIB
+AQQEAwIABzAfBgNVHSMEGDAWgBRl8jGtKvf33VKWCscCwQ7vptU7ETAPBgNVHRMB
+Af8EBTADAQH/MAsGA1UdDwQEAwIB/jAdBgNVHQ4EFgQUZfIxrSr3991SlgrHAsEO
+76bVOxEwDQYJKoZIhvcNAQEFBQADggEBAEs17szkrr/Dbq2flTtLP1se31cpolnK
+OOK5Gv+e5m4y3R6u6jW39ZORTtpC4cMXYFDy0VwmuYK36m3knITnA3kXr5g9lNvH
+ugDnuL8BV8F3RTIMO/G0HAiw/VGgod2aHRM2mm23xzy54cXZF/qD1T0VoDy7Hgvi
+yJA/qIYM/PmLXoXLT1tLYhFHxUV8BS9BsZ4QaRuZluBVeftOhpm4lNqGOGqTo+fL
+buXf6iFViZx9fX+Y9QCJ7uOEwFyWtcVG6kbghVW2G8kS1sHNzYDzAgE8yGnLRUhj
+2JTQ7IUOO04RZfSCjKY9ri4ilAnIXOo8gV0WKgOXFlUJ24pBgp5mmxE=
+-----END CERTIFICATE-----
+mozilla/AffirmTrust_Premium_ECC.crt
+-----BEGIN CERTIFICATE-----
+MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMC
+VVMxFDASBgNVBAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQ
+cmVtaXVtIEVDQzAeFw0xMDAxMjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJ
+BgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1UcnVzdDEgMB4GA1UEAwwXQWZmaXJt
+VHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQNMF4bFZ0D
+0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQN8O9
+ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0G
+A1UdDgQWBBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4G
+A1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/Vs
+aobgxCd05DhT1wV/GzTjxi+zygk8N53X57hG8f2h4nECMEJZh0PUUd+60wkyWs6I
+flc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKMeQ==
+-----END CERTIFICATE-----
+mozilla/Buypass_Class_2_CA_1.crt
+-----BEGIN CERTIFICATE-----
+MIIDUzCCAjugAwIBAgIBATANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEd
+MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3Mg
+Q2xhc3MgMiBDQSAxMB4XDTA2MTAxMzEwMjUwOVoXDTE2MTAxMzEwMjUwOVowSzEL
+MAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MR0wGwYD
+VQQDDBRCdXlwYXNzIENsYXNzIDIgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP
+ADCCAQoCggEBAIs8B0XY9t/mx8q6jUPFR42wWsE425KEHK8T1A9vNkYgxC7McXA0
+ojTTNy7Y3Tp3L8DrKehc0rWpkTSHIln+zNvnma+WwajHQN2lFYxuyHyXA8vmIPLX
+l18xoS830r7uvqmtqEyeIWZDO6i88wmjONVZJMHCR3axiFyCO7srpgTXjAePzdVB
+HfCuuCkslFJgNJQ72uA40Z0zPhX0kzLFANq1KWYOOngPIVJfAuWSeyXTkh4vFZ2B
+5J2O6O+JzhRMVB0cgRJNcKi+EAUXfh/RuFdV7c27UsKwHnjCTTZoy1YmwVLBvXb3
+WNVyfh9EdrsAiR0WnVE1703CVu9r4Iw7DekCAwEAAaNCMEAwDwYDVR0TAQH/BAUw
+AwEB/zAdBgNVHQ4EFgQUP42aWYv8e3uco684sDntkHGA1sgwDgYDVR0PAQH/BAQD
+AgEGMA0GCSqGSIb3DQEBBQUAA4IBAQAVGn4TirnoB6NLJzKyQJHyIdFkhb5jatLP
+gcIV1Xp+DCmsNx4cfHZSldq1fyOhKXdlyTKdqC5Wq2B2zha0jX94wNWZUYN/Xtm+
+DKhQ7SLHrQVMdvvt7h5HZPb3J31cKA9FxVxiXqaakZG3Uxcu3K1gnZZkOb1naLKu
+BctN518fV4bVIJwo+28TOPX2EZL2fZleHwzoq0QkKXJAPTZSr4xYkHPB7GEseaHs
+h7U/2k3ZIQAw3pDaDtMaSKk+hQsUi4y8QZ5q9w5wwDX3OaJdZtB7WZ+oRxKaJyOk
+LY4ng5IgodcVf/EuGO70SH8vf/GhGLWhC5SgYiAynB321O+/TIho
+-----END CERTIFICATE-----
+mozilla/Certigna.crt
+-----BEGIN CERTIFICATE-----
+MIIDqDCCApCgAwIBAgIJAP7c4wEPyUj/MA0GCSqGSIb3DQEBBQUAMDQxCzAJBgNV
+BAYTAkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hMB4X
+DTA3MDYyOTE1MTMwNVoXDTI3MDYyOTE1MTMwNVowNDELMAkGA1UEBhMCRlIxEjAQ
+BgNVBAoMCURoaW15b3RpczERMA8GA1UEAwwIQ2VydGlnbmEwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQDIaPHJ1tazNHUmgh7stL7qXOEm7RFHYeGifBZ4
+QCHkYJ5ayGPhxLGWkv8YbWkj4Sti993iNi+RB7lIzw7sebYs5zRLcAglozyHGxny
+gQcPOJAZ0xH+hrTy0V4eHpbNgGzOOzGTtvKg0KmVEn2lmsxryIRWijOp5yIVUxbw
+zBfsV1/pogqYCd7jX5xv3EjjhQsVWqa6n6xI4wmy9/Qy3l40vhx4XUJbzg4ij02Q
+130yGLMLLGq/jj8UEYkgDncUtT2UCIf3JR7VsmAA7G8qKCVuKj4YYxclPz5EIBb2
+JsglrgVKtOdjLPOMFlN+XPsRGgjBRmKfIrjxwo1p3Po6WAbfAgMBAAGjgbwwgbkw
+DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUGu3+QTmQtCRZvgHyUtVF9lo53BEw
+ZAYDVR0jBF0wW4AUGu3+QTmQtCRZvgHyUtVF9lo53BGhOKQ2MDQxCzAJBgNVBAYT
+AkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hggkA/tzj
+AQ/JSP8wDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzANBgkqhkiG
+9w0BAQUFAAOCAQEAhQMeknH2Qq/ho2Ge6/PAD/Kl1NqV5ta+aDY9fm4fTIrv0Q8h
+bV6lUmPOEvjvKtpv6zf+EwLHyzs+ImvaYS5/1HI93TDhHkxAGYwP15zRgzB7mFnc
+fca5DClMoTOi62c6ZYTTluLtdkVwj7Ur3vkj1kluPBS1xp81HlDQwY9qcEQCYsuu
+HWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY1gkIl2PlwS6w
+t0QmwCbAr1UwnjvVNioZBPRcHv/PLLf/0P2HQBHVESO7SMAhqaQoLf0V+LBOK/Qw
+WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg==
+-----END CERTIFICATE-----
+mozilla/Camerfirma_Chambers_of_Commerce_Root.crt
+-----BEGIN CERTIFICATE-----
+MIIEvTCCA6WgAwIBAgIBADANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJFVTEn
+MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL
+ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEiMCAGA1UEAxMZQ2hhbWJlcnMg
+b2YgQ29tbWVyY2UgUm9vdDAeFw0wMzA5MzAxNjEzNDNaFw0zNzA5MzAxNjEzNDRa
+MH8xCzAJBgNVBAYTAkVVMScwJQYDVQQKEx5BQyBDYW1lcmZpcm1hIFNBIENJRiBB
+ODI3NDMyODcxIzAhBgNVBAsTGmh0dHA6Ly93d3cuY2hhbWJlcnNpZ24ub3JnMSIw
+IAYDVQQDExlDaGFtYmVycyBvZiBDb21tZXJjZSBSb290MIIBIDANBgkqhkiG9w0B
+AQEFAAOCAQ0AMIIBCAKCAQEAtzZV5aVdGDDg2olUkfzIx1L4L1DZ77F1c2VHfRtb
+unXF/KGIJPov7coISjlUxFF6tdpg6jg8gbLL8bvZkSM/SAFwdakFKq0fcfPJVD0d
+BmpAPrMMhe5cG3nCYsS4No41XQEMIwRHNaqbYE6gZj3LJgqcQKH0XZi/caulAGgq
+7YN6D6IUtdQis4CwPAxaUWktWBiP7Zme8a7ileb2R6jWDA+wWFjbw2Y3npuRVDM3
+0pQcakjJyfKl2qUMI/cjDpwyVV5xnIQFUZot/eZOKjRa3spAN2cMVCFVd9oKDMyX
+roDclDZK9D7ONhMeU+SsTjoF7Nuucpw4i9A5O4kKPnf+dQIBA6OCAUQwggFAMBIG
+A1UdEwEB/wQIMAYBAf8CAQwwPAYDVR0fBDUwMzAxoC+gLYYraHR0cDovL2NybC5j
+aGFtYmVyc2lnbi5vcmcvY2hhbWJlcnNyb290LmNybDAdBgNVHQ4EFgQU45T1sU3p
+26EpW1eLTXYGduHRooowDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIA
+BzAnBgNVHREEIDAegRxjaGFtYmVyc3Jvb3RAY2hhbWJlcnNpZ24ub3JnMCcGA1Ud
+EgQgMB6BHGNoYW1iZXJzcm9vdEBjaGFtYmVyc2lnbi5vcmcwWAYDVR0gBFEwTzBN
+BgsrBgEEAYGHLgoDATA+MDwGCCsGAQUFBwIBFjBodHRwOi8vY3BzLmNoYW1iZXJz
+aWduLm9yZy9jcHMvY2hhbWJlcnNyb290Lmh0bWwwDQYJKoZIhvcNAQEFBQADggEB
+AAxBl8IahsAifJ/7kPMa0QOx7xP5IV8EnNrJpY0nbJaHkb5BkAFyk+cefV/2icZd
+p0AJPaxJRUXcLo0waLIJuvvDL8y6C98/d3tGfToSJI6WjzwFCm/SlCgdbQzALogi
+1djPHRPH8EjX1wWnz8dHnjs8NMiAT9QUu/wNUPf6s+xCX6ndbcj0dc97wXImsQEc
+XCz9ek60AcUFV7nnPKoF2YjpB0ZBzu9Bga5Y34OirsrXdx/nADydb47kMgkdTXg0
+eDQ8lJsm7U9xxhl6vSAiSFr+S30Dt+dYvsYyTnQeaN2oaFuzPu5ifdmA6Ap1erfu
+tGWaIZDgqtCYvDi1czyL+Nw=
+-----END CERTIFICATE-----
diff --git a/data/other/dh4096.pem b/data/other/dh4096.pem
new file mode 100644
index 000000000..90ef68283
--- /dev/null
+++ b/data/other/dh4096.pem
@@ -0,0 +1,21 @@
+-----BEGIN DH PARAMETERS-----
+MIICCAKCAgEA///////////JD9qiIWjCNMTGYouA3BzRKQJOCIpnzHQCC76mOxOb
+IlFKCHmONATd75UZs806QxswKwpt8l8UN0/hNW1tUcJF5IW1dmJefsb0TELppjft
+awv/XLb0Brft7jhr+1qJn6WunyQRfEsf5kkoZlHs5Fs9wgB8uKFjvwWY2kg2HFXT
+mmkWP6j9JM9fg2VdI9yjrZYcYvNWIIVSu57VKQdwlpZtZww1Tkq8mATxdGwIyhgh
+fDKQXkYuNs474553LBgOhgObJ4Oi7Aeij7XFXfBvTFLJ3ivL9pVYFxg5lUl86pVq
+5RXSJhiY+gUQFXKOWoqqxC2tMxcNBFB6M6hVIavfHLpk7PuFBFjb7wqK6nFXXQYM
+fbOXD4Wm4eTHq/WujNsJM9cejJTgSiVhnc7j0iYa0u5r8S/6BtmKCGTYdgJzPshq
+ZFIfKxgXeyAMu+EXV3phXWx3CYjAutlG4gjiT6B05asxQ9tb/OD9EI5LgtEgqSEI
+ARpyPBKnh+bXiHGaEL26WyaZwycYavTiPBqUaDS2FQvaJYPpyirUTOjbu8LbBN6O
++S6O/BQfvsqmKHxZR05rwF2ZspZPoJDDoiM7oYZRW+ftH2EpcM7i16+4G912IXBI
+HNAGkSfVsFqpk7TqmI2P3cGG/7fckKbAj030Nck0BjGZ//////////8CAQI=
+-----END DH PARAMETERS-----
+
+"4096-bit MODP Group" from RFC3526, Section 5.
+
+The prime is: 2^4096 - 2^4032 - 1 + 2^64 * { [2^3966 pi] + 240904 }
+
+RFC3526 specifies a generator of 2.
+
+The generation of the group is described in RFC 2412.
diff --git a/gajim.nsi b/gajim.nsi
index 8bef329f9..fa050c518 100644
--- a/gajim.nsi
+++ b/gajim.nsi
@@ -182,8 +182,10 @@ Section "Gajim" SecGajim
 	File "bin\library.zip"
 	File "bin\pangocairo.pyd"
 	File "bin\pango.pyd"
+	File "bin\pycurl.pyd"
 	File "bin\pyexpat.pyd"
 	File "bin\python27.dll"
+	File "bin\pythoncom27.dll"
 	File "bin\pywintypes27.dll"
 	File "bin\OpenSSL.rand.pyd"
 	File "bin\select.pyd"
@@ -194,8 +196,10 @@ Section "Gajim" SecGajim
 	File "bin\win32api.pyd"
 	File "bin\win32file.pyd"
 	File "bin\win32pipe.pyd"
+	File "bin\win32ui.pyd"
 	File "bin\winsound.pyd"
     File "msvcr90.dll"
+	File /r "bin\win32com"
 
 	WriteRegStr HKCU "Software\Gajim" "" $INSTDIR
 	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Gajim" "DisplayName" "Gajim"
@@ -530,6 +534,7 @@ Section "Uninstall"
 	RMDir /r "$INSTDIR\bin\gtk\lib"
 	RMDir /r "$INSTDIR\bin\gtk\share"
 	RMDir "$INSTDIR\bin\gtk"
+	RMDir "$INSTDIR\bin\win32com"
 	Delete "$INSTDIR\bin\_bsddb.pyd"
 	Delete "$INSTDIR\bin\_ctypes.pyd"
 	Delete "$INSTDIR\bin\_hashlib.pyd"
@@ -558,8 +563,10 @@ Section "Uninstall"
 	Delete "$INSTDIR\bin\OpenSSL.SSL.pyd"
 	Delete "$INSTDIR\bin\pango.pyd"
 	Delete "$INSTDIR\bin\pangocairo.pyd"
+	Delete "$INSTDIR\bin\pycurl.pyd"
 	Delete "$INSTDIR\bin\pyexpat.pyd"
 	Delete "$INSTDIR\bin\python27.dll"
+	Delete "$INSTDIR\bin\pythoncom27.dll"
 	Delete "$INSTDIR\bin\pywintypes27.dll"
 	Delete "$INSTDIR\bin\select.pyd"
 	Delete "$INSTDIR\bin\sqlite3.dll"
@@ -568,6 +575,7 @@ Section "Uninstall"
 	Delete "$INSTDIR\bin\win32api.pyd"
 	Delete "$INSTDIR\bin\win32file.pyd"
 	Delete "$INSTDIR\bin\win32pipe.pyd"
+	Delete "$INSTDIR\bin\win32ui.pyd"
 	Delete "$INSTDIR\bin\winsound.pyd"
 	Delete "$INSTDIR\bin\msvcr90.dll"
 	RMDir /r "$INSTDIR\bin"
diff --git a/icons/hicolor/16x16/status/gajim-muc_separator.png b/icons/hicolor/16x16/status/gajim-muc_separator.png
deleted file mode 100644
index f54797c8e..000000000
Binary files a/icons/hicolor/16x16/status/gajim-muc_separator.png and /dev/null differ
diff --git a/launch.sh b/launch.sh
index 69c923d7b..ad7265660 100755
--- a/launch.sh
+++ b/launch.sh
@@ -1,6 +1,6 @@
 #!/bin/sh
 if [ ! $PYTHON ]; then
-       PYTHON="python";
+       PYTHON="python3";
 fi
 cd "$(dirname $0)/src"
 exec $PYTHON -OOt gajim.py "$@"
diff --git a/plugins/acronyms_expander/__init__.py b/plugins/acronyms_expander/__init__.py
index 25280942c..6b85dc735 100644
--- a/plugins/acronyms_expander/__init__.py
+++ b/plugins/acronyms_expander/__init__.py
@@ -1 +1 @@
-from acronyms_expander import AcronymsExpanderPlugin
+from .acronyms_expander import AcronymsExpanderPlugin
diff --git a/plugins/acronyms_expander/acronyms.py b/plugins/acronyms_expander/acronyms
similarity index 100%
rename from plugins/acronyms_expander/acronyms.py
rename to plugins/acronyms_expander/acronyms
diff --git a/plugins/acronyms_expander/acronyms_expander.py b/plugins/acronyms_expander/acronyms_expander.py
index 153b37849..834cc4f9a 100644
--- a/plugins/acronyms_expander/acronyms_expander.py
+++ b/plugins/acronyms_expander/acronyms_expander.py
@@ -26,8 +26,8 @@ Acronyms expander plugin.
 
 import sys
 
-import gtk
-import gobject
+from gi.repository import Gtk
+from gi.repository import GObject
 
 from plugins import GajimPlugin
 from plugins.helpers import log, log_calls
@@ -62,7 +62,7 @@ class AcronymsExpanderPlugin(GajimPlugin):
 
     @log_calls('AcronymsExpanderPlugin')
     def get_own_acronyms_list(self):
-        data_file = self.local_file_path('acronyms.py')
+        data_file = self.local_file_path('acronyms')
         data = open(data_file, 'r')
         acronyms = eval(data.read())
         data.close()
@@ -76,7 +76,7 @@ class AcronymsExpanderPlugin(GajimPlugin):
         #assert isinstance(tb,gtk.TextBuffer)
         ACRONYMS = self.config['ACRONYMS']
         INVOKER = self.config['INVOKER']
-        t = tb.get_text(tb.get_start_iter(), tb.get_end_iter())
+        t = tb.get_text(tb.get_start_iter(), tb.get_end_iter(), True)
         #log.debug('%s %d'%(t, len(t)))
         if t and t[-1] == INVOKER:
             #log.debug('changing msg text')
@@ -87,7 +87,7 @@ class AcronymsExpanderPlugin(GajimPlugin):
                 #log.debug('head: %s'%(head))
                 t = ''.join((base, sep, head, INVOKER))
                 #log.debug("setting text: '%s'"%(t))
-                gobject.idle_add(tb.set_text, t)
+                GObject.idle_add(tb.set_text, t)
 
     @log_calls('AcronymsExpanderPlugin')
     def connect_with_chat_control_base(self, chat_control):
diff --git a/plugins/dbus_plugin/plugin.py b/plugins/dbus_plugin/plugin.py
index 43f3840e8..a3dcae62e 100644
--- a/plugins/dbus_plugin/plugin.py
+++ b/plugins/dbus_plugin/plugin.py
@@ -407,7 +407,7 @@ if dbus_support.supported:
                     return DBUS_DICT_SV()
                 jid = self._get_real_jid(jid)
 
-                cached_vcard = gajim.connections.values()[0].get_cached_vcard(jid)
+                cached_vcard = list(gajim.connections.values())[0].get_cached_vcard(jid)
                 if cached_vcard:
                     return get_dbus_struct(cached_vcard)
 
@@ -428,7 +428,7 @@ if dbus_support.supported:
             def account_info(self, account):
                 '''show info on account: resource, jid, nick, prio, message'''
                 result = DBUS_DICT_SS()
-                if gajim.connections.has_key(account):
+                if account in gajim.connections:
                     # account is valid
                     con = gajim.connections[account]
                     index = con.connected
@@ -508,7 +508,7 @@ if dbus_support.supported:
             def prefs_store(self):
                 try:
                     gajim.interface.save_config()
-                except Exception, e:
+                except Exception:
                     return DBUS_BOOLEAN(False)
                 return DBUS_BOOLEAN(True)
 
diff --git a/po/he.po b/po/he.po
index 35213b1a0..ec9daa729 100644
--- a/po/he.po
+++ b/po/he.po
@@ -1,15 +1,14 @@
 # Hebrew translations for gajim
-# Copyright (C) Copyright © 2003-2013 Gajim Team
+# Copyright (C) Copyright © 2003-2012 Gajim Team
 # This file is distributed under the same license as the gajim package.
-# Darlan , 2012 - 2013.
-# Isratine Citizen , 2012 - 2013.
+# Darlan , 2012.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: gajim 0.15\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-08-30 14:12+0300\n"
-"PO-Revision-Date: 2013-08-30 14:13+0200\n"
+"POT-Creation-Date: 2012-11-15 14:27+0400\n"
+"PO-Revision-Date: 2012-12-09 10:07+0200\n"
 "Last-Translator: Isratine Citizen \n"
 "Language-Team: Rahut\n"
 "Language: he\n"
@@ -22,7 +21,7 @@ msgstr ""
 #: ../data/gui/account_context_menu.ui.h:1
 #: ../data/gui/zeroconf_context_menu.ui.h:1
 msgid "_Status"
-msgstr "_מצב חיבור"
+msgstr "_מצב־חיבור"
 
 #: ../data/gui/account_context_menu.ui.h:2
 msgid "_Personal Events"
@@ -30,7 +29,7 @@ msgstr "_אירועים אישיים"
 
 #: ../data/gui/account_context_menu.ui.h:3 ../data/gui/roster_window.ui.h:3
 msgid "_Start Chat..."
-msgstr "התחלת _שיחה..."
+msgstr "התחל _שיחה..."
 
 # הצטרפות אך/ל
 # שיחה מרובת משתתפים
@@ -42,7 +41,7 @@ msgstr "שיחת _קבוצה..."
 
 #: ../data/gui/account_context_menu.ui.h:5
 msgid "_Add Contact..."
-msgstr "הוספת _איש קשר..."
+msgstr "הוסף _איש קשר..."
 
 # איתור
 #: ../data/gui/account_context_menu.ui.h:6 ../data/gui/roster_window.ui.h:7
@@ -51,7 +50,7 @@ msgstr "מצא _שירותים"
 
 #: ../data/gui/account_context_menu.ui.h:7
 msgid "_Execute Command..."
-msgstr "הרצת _פקודה..."
+msgstr "הרץ _פקודה..."
 
 #: ../data/gui/account_context_menu.ui.h:8
 msgid "_Open Gmail Inbox"
@@ -73,17 +72,22 @@ msgstr ""
 "יש צורך בחשבון בכדי להתחבר\n"
 "אל רשת התקשורת Jabber."
 
+# בו אני רוצה לעשות
 #: ../data/gui/account_creation_wizard_window.ui.h:4
 msgid "I already have an account I want to _use"
-msgstr "כבר קיים ברשותי _חשבון אשר ברצוני לעשות בו שימוש"
+msgstr "כבר קיים ברשותי _חשבון שברצוני לעשות שימוש בו"
 
+# I want to _register a new account
+# אני רוצה _לרשום חשבון חדש
+# I want to _register for a new account
+# אני רוצה _להירשם לחשבון חדש
 #: ../data/gui/account_creation_wizard_window.ui.h:5
 msgid "I want to _register for a new account"
 msgstr "ברצוני ל_רשום חשבון חדש"
 
 #: ../data/gui/account_creation_wizard_window.ui.h:6
 msgid "Please choose one of the options below: "
-msgstr "אנא בחר באחת מתוך האפשרויות מטה: "
+msgstr "נא לבחור באחת מן האפשרויות מטה: "
 
 # credentials
 #: ../data/gui/account_creation_wizard_window.ui.h:7
@@ -102,6 +106,11 @@ msgid "Save pass_word"
 msgstr "שמו_ר סיסמה"
 
 # BUG: a dot at the end
+# From: Clipman
+# If checked, this option allows to store one image inside the history
+# במידה והמשבצת/והאפשרות מסומנת
+# במידה ומשבצת/ואפשרות זו מסומנת
+# בבוחרך באפשרות זו, Wicd
 #: ../data/gui/account_creation_wizard_window.ui.h:10
 #: ../data/gui/accounts_window.ui.h:21
 msgid "If checked, Gajim will remember the password for this account"
@@ -110,7 +119,7 @@ msgstr "במידה ואפשרות זו מסומנת, Gajim יזכור את הס
 #: ../data/gui/account_creation_wizard_window.ui.h:11
 #: ../data/gui/accounts_window.ui.h:23
 msgid "_Jabber ID:"
-msgstr "מזהה _Jabber:"
+msgstr "_JID:"
 
 #: ../data/gui/account_creation_wizard_window.ui.h:12
 msgid "Anon_ymous authentication"
@@ -118,7 +127,7 @@ msgstr "אימות _אלמוני"
 
 #: ../data/gui/account_creation_wizard_window.ui.h:13
 msgid "Please select a server "
-msgstr "אנא בחר שרת "
+msgstr "נא לבחור שרת "
 
 #: ../data/gui/account_creation_wizard_window.ui.h:14
 #: ../data/gui/manage_bookmarks_window.ui.h:3
@@ -132,7 +141,7 @@ msgstr "_פרוקסי:"
 # BUG: _underline
 #: ../data/gui/account_creation_wizard_window.ui.h:16
 msgid "Manage..."
-msgstr "  ניהול...  "
+msgstr "  נהל...  "
 
 # BUG: _underline
 #: ../data/gui/account_creation_wizard_window.ui.h:17
@@ -152,6 +161,8 @@ msgstr "_פורט:"
 msgid "_Advanced"
 msgstr "_מתקדם"
 
+# הוספת אישור זה לרשימת האישורים המהימנים.\n
+# טביעת אצבע (מסוג) SHA1 של האישור:\n
 #: ../data/gui/account_creation_wizard_window.ui.h:21
 msgid ""
 "Add this certificate to the list of trusted certificates.\n"
@@ -168,11 +179,12 @@ msgid ""
 msgstr ""
 "מתחבר כעת אל שרת \n"
 "\n"
-"אנא המתן..."
+"נא להמתין..."
 
+# מיידית לאחר ש
 #: ../data/gui/account_creation_wizard_window.ui.h:27
 msgid "Connect when I press Finish"
-msgstr "התחבר כאשר אני אלחץ על סיים"
+msgstr "התחבר מיידית כאשר אני אלחץ על סיום"
 
 #: ../data/gui/account_creation_wizard_window.ui.h:28
 msgid "Set my profile when I connect"
@@ -180,17 +192,30 @@ msgstr "הגדר את הדיוקן שלי בעת התחברותי"
 
 #: ../data/gui/account_creation_wizard_window.ui.h:29
 msgid "_Finish"
-msgstr "_סיים"
+msgstr "_סיום"
 
 #: ../data/gui/account_creation_wizard_window.ui.h:30
-#: ../data/gui/accounts_window.ui.h:1 ../data/gui/change_mood_dialog.ui.h:1
-#: ../src/config.py:1253 ../src/config.py:1267 ../src/config.py:1272
-#: ../src/config.py:1320 ../src/config.py:1423 ../src/config.py:1742
-#: ../src/config.py:1747 ../src/config.py:2339 ../src/config.py:2420
-#: ../src/config.py:2435 ../src/config.py:3716 ../src/config.py:3791
-#: ../src/dialogs.py:315 ../src/dialogs.py:317 ../src/dialogs.py:523
-#: ../src/dialogs.py:536 ../src/roster_window.py:3147
-#: ../src/roster_window.py:3153 ../src/roster_window.py:3158
+#: ../data/gui/accounts_window.ui.h:1
+#: ../data/gui/change_mood_dialog.ui.h:1
+#: ../src/config.py:1254
+#: ../src/config.py:1268
+#: ../src/config.py:1273
+#: ../src/config.py:1321
+#: ../src/config.py:1424
+#: ../src/config.py:1739
+#: ../src/config.py:1744
+#: ../src/config.py:2320
+#: ../src/config.py:2399
+#: ../src/config.py:2412
+#: ../src/config.py:3698
+#: ../src/config.py:3773
+#: ../src/dialogs.py:313
+#: ../src/dialogs.py:315
+#: ../src/dialogs.py:521
+#: ../src/dialogs.py:534
+#: ../src/roster_window.py:3214
+#: ../src/roster_window.py:3220
+#: ../src/roster_window.py:3225
 msgid "None"
 msgstr "ללא"
 
@@ -199,19 +224,22 @@ msgid "Accounts"
 msgstr "חשבונות"
 
 #. Change label for accept_button to action name instead of 'OK'.
-#: ../data/gui/accounts_window.ui.h:3 ../src/dialogs.py:3524
-#: ../src/dialogs.py:3570
+#: ../data/gui/accounts_window.ui.h:3
+#: ../src/dialogs.py:3426
+#: ../src/dialogs.py:3472
 msgid "Add"
-msgstr "הוסף"
+msgstr "הוספה"
 
 #. Change label for accept_button to action name instead of 'OK'.
-#: ../data/gui/accounts_window.ui.h:4 ../src/dialogs.py:3528
-#: ../src/dialogs.py:3625
+#: ../data/gui/accounts_window.ui.h:4
+#: ../src/dialogs.py:3430
+#: ../src/dialogs.py:3527
 msgid "Delete"
-msgstr "מחק"
+msgstr "מחיקה"
 
 #. Rename
-#: ../data/gui/accounts_window.ui.h:5 ../src/roster_window.py:5792
+#: ../data/gui/accounts_window.ui.h:5
+#: ../src/roster_window.py:5844
 msgid "Re_name"
 msgstr "_שנה שם"
 
@@ -220,9 +248,10 @@ msgstr "_שנה שם"
 msgid "_Enable"
 msgstr "א_פשר"
 
+# אימות אלמוני
 #: ../data/gui/accounts_window.ui.h:7
 msgid "Anonymous authentication"
-msgstr "אימות אלמוני"
+msgstr "התאמתות אלמונית"
 
 #: ../data/gui/accounts_window.ui.h:8
 msgid ""
@@ -260,6 +289,7 @@ msgstr "לחץ בכדי לבקש הרשאות עבור כל אנשי קשר של
 msgid "Chan_ge Password"
 msgstr "ש_נה סיסמה"
 
+# Omitted: Click to
 #: ../data/gui/accounts_window.ui.h:13
 msgid "Click to change account's password"
 msgstr "שנה סיסמת חשבון"
@@ -272,22 +302,17 @@ msgstr "פעולות הנהלת מערכת"
 # BUG: from a jabber "the"
 # שני לקוחות ומעלה
 #: ../data/gui/accounts_window.ui.h:15
-msgid ""
-"Priority is used in Jabber to determine who gets the events from the jabber "
-"server when two or more clients are connected using the same account; The "
-"client with the highest priority gets the events"
-msgstr ""
-"עדיפת משמשת את Jabber כדי לקבוע מי מקבל את האירועים מתוך שרת jabber כאשר שני "
-"לקוחות או יותר מחוברים באמצעות אותו החשבון; הלקוח בעל העדיפות הגבוהה ביותר "
-"יקבל את האירועים"
+msgid "Priority is used in Jabber to determine who gets the events from the jabber server when two or more clients are connected using the same account; The client with the highest priority gets the events"
+msgstr "עדיפת משמשת אצל Jabber כדי לקבוע מי מקבל את האירועים מן שרת jabber כאשר שני לקוחות או יותר מחוברים באמצעות אותו החשבון; הלקוח בעל העדיפות הגבוהה ביותר יקבל את האירועים"
 
 #: ../data/gui/accounts_window.ui.h:16
 msgid "A_djust to status"
-msgstr "_התאם אל מצב חיבור"
+msgstr "_התאם למצב־חיבור"
 
+# תשונה
 #: ../data/gui/accounts_window.ui.h:17
 msgid "Priority will change automatically according to your status."
-msgstr "העדיפות תשתנה אוטומטית בהתאם אל מצב החיבור שלך."
+msgstr "העדיפות תשתנה אוטומטית בהתאם למצב־חיבורך."
 
 #: ../data/gui/accounts_window.ui.h:18
 msgid "Priori_ty:"
@@ -318,12 +343,13 @@ msgstr "תעודת לקוח"
 msgid "Account"
 msgstr "חשבון"
 
+# אתחול
 #: ../data/gui/accounts_window.ui.h:29
 msgid "C_onnect on Gajim startup"
 msgstr "התחבר בעת ה_פעלת Gajim"
 
 # BUG: a dot at the end
-# כאשר משוגר
+# כאשר ישוגר
 #: ../data/gui/accounts_window.ui.h:30
 msgid ""
 "If checked, Gajim, when launched, will automatically connect to jabber using "
@@ -333,17 +359,20 @@ msgstr ""
 "חשבון זה"
 
 # BUG: _underline
+# במידה והחיבור
 #: ../data/gui/accounts_window.ui.h:31
 msgid "Auto-reconnect when connection is lost"
 msgstr "התחבר אוטומטית כאשר החיבור אובד"
 
+# יו_מני שיחות
 #: ../data/gui/accounts_window.ui.h:32
 msgid "Save conversation _logs for all contacts"
 msgstr "שמור רשו_מות שיחה עבור כל אנשי קשר"
 
+# כוללני
 #: ../data/gui/accounts_window.ui.h:33
 msgid "Synch_ronize account status with global status"
-msgstr "סנכרן מצב חשבון עם מצב חיבור _גלובלי"
+msgstr "סנכרן מצב חשבון עם מצב־חיבור _גלובלי"
 
 # BUG: a dot at the end
 # תיבת אפשרויות
@@ -352,37 +381,32 @@ msgstr "סנכרן מצב חשבון עם מצב חיבור _גלובלי"
 # תיבת קומבינה (קומבינציה)
 # תיבת שיח
 #: ../data/gui/accounts_window.ui.h:34
-msgid ""
-"If checked, any change to the global status (handled by the combobox at the "
-"bottom of the roster window) will change the status of this account "
-"accordingly"
-msgstr ""
-"במידה ואפשרות זו מסומנת, כל שינוי אל מצב החיבור הגלובלי (מטופל על ידי תיבת "
-"הבחירה שמצויה בתחתית חלון הרשימה) ישנה את המצב של חשבון זה בהתאמה"
+msgid "If checked, any change to the global status (handled by the combobox at the bottom of the roster window) will change the status of this account accordingly"
+msgstr "במידה ואפשרות זו מסומנת, כל שינוי אל מצב־החיבור הגלובלי (מטופל על ידי תיבת־הבחירה שמצויה בתחתית חלון הרשימה) ישנה את המצב של חשבון זה בהתאמה"
 
 # BUG: _underline
 #: ../data/gui/accounts_window.ui.h:35
 msgid "Use file transfer proxies"
 msgstr "השתמש במתווכי העברת קובץ"
 
+# שיהיו סיכויים גדולים יותר להעברת קובץ לעבוד
 #: ../data/gui/accounts_window.ui.h:36
-msgid ""
-"If checked, Gajim will also broadcast some more IPs except from just your "
-"IP, so file transfer has higher chances of working."
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim ישדר, בנוסף לכתובת פרוטוקול המרשתת (IP; "
-"Internet Protocol) שלך, מספר כתובות IP נוספות, כך שלפעולת העברת קובץ יהיו "
-"סיכויים גדולים יותר לעבוד."
+msgid "If checked, Gajim will also broadcast some more IPs except from just your IP, so file transfer has higher chances of working."
+msgstr "במידה ואפשרות זו מסומנת, Gajim ישדר, בנוסף לכתובת פרוטוקול המרשתת (IP) שלך, מספר כתובות IP נוספות, כך שלהעברת קובץ יהיו סיכויים גדולים יותר לעבוד."
 
-# (קבוצה כללית)
+# אכן, זוהי קבוצה כללית.  נא לא להפוך זאת באופן שרירותי ל"רישום" כללי או לכל מילה אחר שלא קשורה אל התוכנית
 #. FIXME: Ugly workaround.
 #. FIXME: Ugly workaround.
 #. Maybe we haven't been in any group (defaults to General)
 #. General group cannot be changed
-#: ../data/gui/accounts_window.ui.h:37 ../data/gui/preferences_window.ui.h:41
-#: ../src/common/contacts.py:135 ../src/dialogs.py:115 ../src/dialogs.py:127
-#: ../src/roster_window.py:3089 ../src/roster_window.py:4215
-#: ../src/roster_window.py:5842
+#: ../data/gui/accounts_window.ui.h:37
+#: ../data/gui/preferences_window.ui.h:46
+#: ../src/common/contacts.py:135
+#: ../src/dialogs.py:113
+#: ../src/dialogs.py:125
+#: ../src/roster_window.py:3156
+#: ../src/roster_window.py:4284
+#: ../src/roster_window.py:5894
 msgid "General"
 msgstr "כללית"
 
@@ -390,9 +414,10 @@ msgstr "כללית"
 msgid "_use HTTP__PROXY environment variable"
 msgstr "השתמש במשת_ני סביבת HTTP__PROXY"
 
-#: ../data/gui/accounts_window.ui.h:39 ../data/gui/preferences_window.ui.h:134
+#: ../data/gui/accounts_window.ui.h:39
+#: ../data/gui/preferences_window.ui.h:137
 msgid "_Manage..."
-msgstr "  ניהו_ל...  "
+msgstr "  נה_ל...  "
 
 #: ../data/gui/accounts_window.ui.h:40
 msgid "Proxy "
@@ -400,7 +425,7 @@ msgstr "פרוקסי "
 
 #: ../data/gui/accounts_window.ui.h:41
 msgid "_Warn before using an insecure connection"
-msgstr "ה_זהר אותי טרם שימוש בחיבור לא מאובטח"
+msgstr "ה_זהר אותי לפני שימוש בחיבור לא מאובטח"
 
 #: ../data/gui/accounts_window.ui.h:42
 msgid ""
@@ -410,6 +435,7 @@ msgstr ""
 "סמן את אפשרות זו כדי ש־Gajim ישאל אותך טרם שליחת סיסמתך על פני חיבור לא "
 "מאובטח."
 
+# חבילות נתונים מסוג
 #: ../data/gui/accounts_window.ui.h:43
 msgid "Send _keep-alive packets"
 msgstr "ש_לח חבילות keep-alive"
@@ -423,6 +449,7 @@ msgstr ""
 "במידה ואפשרות זו מסומנת, Gajim ישלח חבילות keep-alive כדי למנוע פקיעת זמן של "
 "חיבור (connection timeout) המביאה לידי ניתוק"
 
+# התאמה של שם
 #: ../data/gui/accounts_window.ui.h:45
 msgid "Use cust_om hostname/port"
 msgstr "השתמש בשם מארח\\פורט מו_תאמים"
@@ -436,7 +463,8 @@ msgstr "שם מ_ארח: "
 msgid "_Port: "
 msgstr "_פורט: "
 
-#: ../data/gui/accounts_window.ui.h:48 ../data/gui/preferences_window.ui.h:138
+#: ../data/gui/accounts_window.ui.h:48
+#: ../data/gui/preferences_window.ui.h:141
 msgid "Miscellaneous "
 msgstr "שונות "
 
@@ -444,8 +472,9 @@ msgstr "שונות "
 msgid "Connection"
 msgstr "חיבור"
 
-#: ../data/gui/accounts_window.ui.h:50 ../src/config.py:1840
-#: ../src/config.py:2436
+#: ../data/gui/accounts_window.ui.h:50
+#: ../src/config.py:1835
+#: ../src/config.py:2413
 msgid "No key selected"
 msgstr "לא נבחר מפתח"
 
@@ -460,16 +489,16 @@ msgstr "השתמש בסוכן G_PG"
 # BUG: a dot at the end
 #: ../data/gui/accounts_window.ui.h:53
 msgid "If checked, Gajim will get the password from a GPG agent like seahorse"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יאחזר את הסיסמה מתוך סוכן GPG כגון seahorse"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יאחזר את הסיסמה מן סוכן GPG כגון seahorse"
 
+# OpenPGP
 #: ../data/gui/accounts_window.ui.h:54
 msgid "OpenPGP "
-msgstr "OpenPGP "
+msgstr "OpenPGP "
 
 #: ../data/gui/accounts_window.ui.h:55
 msgid "_Edit Personal Information..."
-msgstr "_עריכת מידע אישי..."
+msgstr "_ערוך מידע אישי..."
 
 #: ../data/gui/accounts_window.ui.h:56
 msgid "Information about you, as stored in the server"
@@ -489,7 +518,7 @@ msgstr "התחבר בעת ה_פעלת Gajim"
 
 #: ../data/gui/accounts_window.ui.h:60
 msgid "Synchroni_ze account status with global status"
-msgstr "סנכרן מצב חשבון עם מצב חיבור _גלובלי"
+msgstr "סנכרן מצב חשבון עם מצב־חיבור _גלובלי"
 
 #: ../data/gui/accounts_window.ui.h:61
 msgid "Use cust_om port:"
@@ -502,9 +531,8 @@ msgid ""
 "setup you can select another one here.\n"
 "You might consider to change possible firewall settings."
 msgstr ""
-"במידה והפורט המשתמט שמצוי בשימוש עבור הודעות נכנסות איננו מתאים עבור התקנתך "
-"באפשרותך לבחור פורט אחר כאן.\n"
-"ייתכן כי יהיה ברצונך לשקול לשנות הגדרות חומת אש אפשריות."
+"במידה והפורט המשתמט שמצוי בשימוש עבור הודעות נכנסות איננו מתאים עבור התקנתך ביכולתך לבחור פורטאחר כאן.\n"
+"ייתכן שיהיה ברצונך לשקול לשנות הגדרות חומת־אש אפשריות."
 
 #: ../data/gui/accounts_window.ui.h:64
 #: ../data/gui/zeroconf_information_window.ui.h:10
@@ -516,20 +544,25 @@ msgstr "שם פרטי:"
 msgid "Last Name:"
 msgstr "שם משפחה:"
 
+# ״
+# "
+# דוא\"ל:
+# דוא״ל:
 #: ../data/gui/accounts_window.ui.h:66
 #: ../data/gui/zeroconf_information_window.ui.h:8
 msgid "E-Mail:"
 msgstr "דוא״ל:"
 
 #: ../data/gui/accounts_window.ui.h:67
-#: ../data/gui/zeroconf_information_window.ui.h:7 ../src/config.py:1867
-#: ../src/dialogs.py:841
+#: ../data/gui/zeroconf_information_window.ui.h:7
+#: ../src/config.py:1862
+#: ../src/dialogs.py:839
 msgid "Jabber ID:"
-msgstr "מזהה Jabber:"
+msgstr "JID:"
 
 #: ../data/gui/accounts_window.ui.h:68
 msgid "Mer_ge accounts"
-msgstr "מזג _חשבונות"
+msgstr "מיזוג _חשבונות"
 
 #: ../data/gui/add_new_contact_window.ui.h:1
 msgid "Add New Contact"
@@ -543,9 +576,10 @@ msgstr "_חשבון:"
 msgid "_Protocol:"
 msgstr "_פרוטוקול:"
 
+# זהות
 #: ../data/gui/add_new_contact_window.ui.h:4
 msgid "_User ID:"
-msgstr "מזהה _משתמש:"
+msgstr "ID _משתמש:"
 
 #: ../data/gui/add_new_contact_window.ui.h:5
 #: ../data/gui/manage_bookmarks_window.ui.h:5
@@ -574,10 +608,10 @@ msgid ""
 "protocol. Click on register button to\n"
 "proceed."
 msgstr ""
-"עליך להירשם באמצעות מוביל זה\n"
-"כדי שתהיה באפשרותך להוסיף איש\n"
-"קשר מתוך פרוטוקול זה. הקלק על\n"
-"לחצן רישום כדי להמשיך."
+"נרשמת באמצעות מוביל זה\n"
+"כדי שתהיה ביכולתך להוסיף איש קשר\n"
+"מפרוטוקול זה. נא להקיש על לחצן\n"
+"הרשמה כדי להמשיך."
 
 #: ../data/gui/add_new_contact_window.ui.h:13
 msgid "_Register"
@@ -590,20 +624,22 @@ msgid ""
 "to add a contact from this protocol."
 msgstr ""
 "עליך להתחבר אל מוביל בכדי שתעמוד לרשותך\n"
-"האפשרות להוסיף איש קשר מתוך פרוטוקול זה."
+"היכולת להוסיף איש קשר מן פרוטוקול זה."
 
-#: ../data/gui/add_new_contact_window.ui.h:16 ../src/common/helpers.py:1366
+#: ../data/gui/add_new_contact_window.ui.h:16
+#: ../src/common/helpers.py:1363
 msgid "I would like to add you to my contact list."
 msgstr "ברצוני להוסיפך אל רשימת הקשר שלי."
 
 #. displaying the window
-#: ../data/gui/adhoc_commands_window.ui.h:1 ../src/adhoc_commands.py:104
+#: ../data/gui/adhoc_commands_window.ui.h:1
+#: ../src/adhoc_commands.py:102
 msgid "Ad-hoc Commands - Gajim"
 msgstr "פקודות ייעודיות (Ad-hoc) - Gajim"
 
 #: ../data/gui/adhoc_commands_window.ui.h:2
 msgid "Please wait while retrieving command list..."
-msgstr "אנא המתן בעת אחזרת רשימת פקודה..."
+msgstr "נא להמתין בעת אחזרת רשימת פקודות..."
 
 #: ../data/gui/adhoc_commands_window.ui.h:3
 msgid "Choose command to execute: "
@@ -613,13 +649,14 @@ msgstr "בחר פקודה להרצה: "
 msgid "Check once more"
 msgstr "בדוק פעם נוספת"
 
+# "Please wait while the command is sending..." has been turned to "Please wait while the command is being sent..."
 #: ../data/gui/adhoc_commands_window.ui.h:5
-msgid "Please wait while the command is being sent..."
-msgstr "אנא המתן בזמן שהפקודה נשלחת..."
+msgid "Please wait while the command is sending..."
+msgstr "נא להמתין בזמן שהפקודה נשלחת..."
 
 #: ../data/gui/adhoc_commands_window.ui.h:6
 msgid "Please wait..."
-msgstr "אנא המתן..."
+msgstr "נא להמתין..."
 
 # BUG: commands or command
 #: ../data/gui/adhoc_commands_window.ui.h:7
@@ -628,7 +665,7 @@ msgstr "ישות jabber זו לא חושפת שום פקודה."
 
 #: ../data/gui/adhoc_commands_window.ui.h:8
 msgid "An error has occurred: "
-msgstr "אירעה שגיאה: "
+msgstr "ארעה שגיאה: "
 
 #: ../data/gui/adhoc_commands_window.ui.h:9
 msgid "Error description..."
@@ -636,7 +673,7 @@ msgstr "תיאור שגיאה..."
 
 #: ../data/gui/adhoc_commands_window.ui.h:10
 msgid "F_inish"
-msgstr "_סיים"
+msgstr "_סיום"
 
 #: ../data/gui/advanced_configuration_window.ui.h:1
 msgid "Advanced Configuration Editor"
@@ -651,6 +688,7 @@ msgstr "סינון:"
 msgid "Description "
 msgstr "תיאור "
 
+# יש צורך לאתחל
 #: ../data/gui/advanced_configuration_window.ui.h:4
 msgid "NOTE:  You should restart Gajim for some settings to take effect"
 msgstr "הערה:  עליך לאתחל את Gajim כדי שהגדרות מסוימות ייכנסו לתוקף"
@@ -663,13 +701,15 @@ msgstr "_אפס אל ברירת מחדל"
 msgid "Show _XML Console"
 msgstr "הצג _מסוף XML"
 
+# management of archives
+# נא למצוא תרגום מוצלח יותר
 #: ../data/gui/advanced_menuitem_menu.ui.h:2
 msgid "Edit Archi_ving Preferences"
 msgstr "ערוך העדפות _ארכיונאות"
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:3
 msgid "Edit _Privacy Lists..."
-msgstr "עריכת _רשימות פרטיות..."
+msgstr "ערוך _רשימות פרטיות..."
 
 # Administration
 #: ../data/gui/advanced_menuitem_menu.ui.h:4
@@ -678,7 +718,7 @@ msgstr "ה_נהלה"
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:5
 msgid "_Send Server Message..."
-msgstr "_שליחת הודעת שרת..."
+msgstr "_שלח הודעת שרת..."
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:6
 msgid "Sends a message to users currently connected to this server"
@@ -690,7 +730,7 @@ msgstr "הגדרת הודעת היום (Message of the Day)"
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:8
 msgid "Set MOTD..."
-msgstr "הגדרת MOTD..."
+msgstr "הגדר MOTD..."
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:9
 msgid "Updates Message of the Day"
@@ -698,12 +738,13 @@ msgstr "עדכון הודעת היום (Message of the Day)"
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:10
 msgid "Update MOTD..."
-msgstr "עדכון MOTD..."
+msgstr "עדכן MOTD..."
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:11
 msgid "Delete MOTD"
 msgstr "מחק MOTD"
 
+# הודעה יומית
 #: ../data/gui/advanced_menuitem_menu.ui.h:12
 msgid "Deletes Message of the Day"
 msgstr "מחיקת הודעת היום (Message of the Day)"
@@ -726,6 +767,7 @@ msgstr "העדף"
 msgid "Concede"
 msgstr "וותר"
 
+# אסירה
 #: ../data/gui/archiving_preferences_window.ui.h:5
 msgid "Forbid"
 msgstr "אסור"
@@ -777,10 +819,12 @@ msgstr "אנשי קשר חסומים"
 
 #: ../data/gui/blocked_contacts_window.ui.h:2
 #: ../data/gui/contact_context_menu.ui.h:20
-#: ../data/gui/gc_occupants_menu.ui.h:14 ../src/roster_window.py:5811
-#: ../src/roster_window.py:5938 ../src/roster_window.py:6071
+#: ../data/gui/gc_occupants_menu.ui.h:14
+#: ../src/roster_window.py:5863
+#: ../src/roster_window.py:5990
+#: ../src/roster_window.py:6123
 msgid "_Unblock"
-msgstr "_בטל חסימה"
+msgstr "_ביטול חסימה"
 
 #: ../data/gui/change_activity_dialog.ui.h:1
 msgid "Set Activity"
@@ -810,14 +854,14 @@ msgstr "שנה סיסמה"
 msgid "Enter new password:"
 msgstr "הזן סיסמה חדשה:"
 
+# לשם
 #: ../data/gui/change_password_dialog.ui.h:3
 msgid "Enter it again for confirmation:"
-msgstr "הזן את הסיסמה, פעם נוספת, לשם אימות:"
+msgstr "הזן את הסיסמה, פעם נוספת, לאימות:"
 
-# ערוך מראש
 #: ../data/gui/change_status_message_dialog.ui.h:1
 msgid "Save as Preset..."
-msgstr "שמירה כמצב מותאם..."
+msgstr "שמירה כמצב ערוך מראש..."
 
 #: ../data/gui/change_status_message_dialog.ui.h:2
 msgid "Mood:"
@@ -827,17 +871,19 @@ msgstr "מצב רוח:"
 msgid "Activity:"
 msgstr "פעילות:"
 
+# מוכנות מראש
 #: ../data/gui/change_status_message_dialog.ui.h:4
 msgid "Preset messages:"
-msgstr "הודעות מותאמות:"
+msgstr "הודעות שמורות:"
 
 #: ../data/gui/change_status_message_dialog.ui.h:5
 msgid "Type your new status message "
 msgstr "הקלד הודעת מצב חדשה "
 
+# Changed: Location to Destination
 #: ../data/gui/chat_context_menu.ui.h:1
 msgid "_Copy Link Location"
-msgstr "ה_עתק כתובת מיקום"
+msgstr "ה_עתק כתובת יעד"
 
 #: ../data/gui/chat_context_menu.ui.h:2
 msgid "_Open Link in Browser"
@@ -864,88 +910,116 @@ msgstr "הצטרף אל שיחת _קבוצה"
 #: ../data/gui/chat_context_menu.ui.h:7
 #: ../data/gui/contact_context_menu.ui.h:24
 msgid "_Add to Roster..."
-msgstr "הו_ספה אל רשימה..."
+msgstr "הו_סף אל הרשימה..."
 
 #: ../data/gui/chat_control.ui.h:1 ../data/gui/groupchat_control.ui.h:1
 msgid "Show a list of emoticons (Alt+M)"
 msgstr "הצגת רשימת רגשונים (Alt+M)"
 
 #: ../data/gui/chat_control.ui.h:2
-msgid "Add this contact to roster (Ctrl+D)"
-msgstr "הוספת איש קשר זה לרשימה (Ctrl+D)"
+#: ../data/gui/groupchat_control.ui.h:2
+msgid "Show a list of formattings"
+msgstr "הצגת רשימת עיצובים"
 
 #: ../data/gui/chat_control.ui.h:3
+msgid "Add this contact to roster (Ctrl+D)"
+msgstr "הוספת איש קשר זה אל הרשימה (Ctrl+D)"
+
+#. change tooltip text for audio and video buttons if python-farstream is
+#. not installed
+#: ../data/gui/chat_control.ui.h:4
+#: ../src/chat_control.py:1724
+#: ../src/command_system/implementation/standard.py:214
+msgid "Toggle audio session"
+msgstr "הפעלת סשן שמע"
+
+#: ../data/gui/chat_control.ui.h:5
+#: ../src/chat_control.py:1725
+#: ../src/command_system/implementation/standard.py:224
+msgid "Toggle video session"
+msgstr "הפעלת סשן וידאו"
+
+#: ../data/gui/chat_control.ui.h:6
 msgid "Invite contacts to the conversation (Ctrl+G)"
 msgstr "הזמנת אנשי קשר אל הדיון (Ctrl+G)"
 
-#: ../data/gui/chat_control.ui.h:4
-msgid "View contact information (Ctrl+I)"
-msgstr "צפייה במידע איש קשר (Ctrl+I)"
+#: ../data/gui/chat_control.ui.h:7
+msgid "Show the contact's profile (Ctrl+I)"
+msgstr "הצגת דיוקן איש קשר (Ctrl+I)"
 
-#: ../data/gui/chat_control.ui.h:5 ../data/gui/groupchat_control.ui.h:6
+#: ../data/gui/chat_control.ui.h:8
+#: ../data/gui/groupchat_control.ui.h:6
 msgid "Browse the chat history (Ctrl+H)"
 msgstr "עיון בהיסטוריית השיחה (Ctrl+H)"
 
-#: ../data/gui/chat_control.ui.h:6 ../data/gui/groupchat_control.ui.h:7
-msgid "Show advanced functions (Alt+D)"
-msgstr "הצגת פקדים מתקדמים (Alt+D)"
+# תפקודיות
+#: ../data/gui/chat_control.ui.h:9
+#: ../data/gui/groupchat_control.ui.h:7
+msgid "Show a menu of advanced functions (Alt+D)"
+msgstr "הצגת תפריט פקדים מתקדמים (Alt+D)"
 
-#: ../data/gui/chat_control.ui.h:7
+#: ../data/gui/chat_control.ui.h:10
 msgid "#"
 msgstr ""
 
-#: ../data/gui/chat_control.ui.h:8 ../data/gui/groupchat_control.ui.h:8
-#: ../data/gui/single_message_window.ui.h:6
-msgid "Send message"
-msgstr "שליחת הודעה"
-
 #. Make sure the character after "_" is not M/m (conflicts with Alt+M that is supposed to show the Emoticon Selector)
-#: ../data/gui/chat_control.ui.h:10 ../data/gui/groupchat_control.ui.h:10
-#: ../data/gui/xml_console_window.ui.h:15 ../src/filetransfers_window.py:322
+#: ../data/gui/chat_control.ui.h:12
+#: ../data/gui/groupchat_control.ui.h:9
+#: ../data/gui/xml_console_window.ui.h:15
+#: ../src/filetransfers_window.py:322
 msgid "_Send"
 msgstr "_שלח"
 
-#: ../data/gui/chat_control.ui.h:11
+#: ../data/gui/chat_control.ui.h:13
 msgid "1"
 msgstr ""
 
-#: ../data/gui/chat_control.ui.h:12
-msgid "2"
-msgstr ""
-
-#: ../data/gui/chat_control.ui.h:13
-msgid "3"
-msgstr ""
-
 #: ../data/gui/chat_control.ui.h:14
-msgid "4"
-msgstr ""
+#, fuzzy
+msgid "2"
+msgstr "2 (דהו)"
 
 #: ../data/gui/chat_control.ui.h:15
-msgid "5"
-msgstr ""
+#, fuzzy
+msgid "3"
+msgstr "3 (אבג)"
 
 #: ../data/gui/chat_control.ui.h:16
-msgid "6"
-msgstr ""
+#, fuzzy
+msgid "4"
+msgstr "4 (מנ)"
 
 #: ../data/gui/chat_control.ui.h:17
-msgid "7"
-msgstr ""
+#, fuzzy
+msgid "5"
+msgstr "5 (יכל)"
 
 #: ../data/gui/chat_control.ui.h:18
-msgid "8"
-msgstr ""
+#, fuzzy
+msgid "6"
+msgstr "6 (זחט)"
 
 #: ../data/gui/chat_control.ui.h:19
-msgid "9"
-msgstr ""
+#, fuzzy
+msgid "7"
+msgstr "7 (רשת)"
 
 #: ../data/gui/chat_control.ui.h:20
+#, fuzzy
+msgid "8"
+msgstr "8 (צק)"
+
+#: ../data/gui/chat_control.ui.h:21
+#, fuzzy
+msgid "9"
+msgstr "9 (סעפ)"
+
+#: ../data/gui/chat_control.ui.h:22
 msgid "*"
 msgstr ""
 
-#: ../data/gui/chat_control.ui.h:21 ../data/gui/single_message_window.ui.h:3
+#: ../data/gui/chat_control.ui.h:23
+#: ../data/gui/single_message_window.ui.h:3
 msgid "0"
 msgstr ""
 
@@ -979,17 +1053,18 @@ msgstr "התחל _שיחה"
 
 #: ../data/gui/contact_context_menu.ui.h:2 ../data/gui/roster_window.ui.h:4
 msgid "Send Single _Message..."
-msgstr "שליחת הודעה _בודדת..."
+msgstr "שלח הודעה _בודדת..."
 
 #: ../data/gui/contact_context_menu.ui.h:3
 msgid "Send _File..."
-msgstr "שליחת _קובץ..."
+msgstr "שלח _קובץ..."
 
 #. Invite to
 #. Invite to Groupchat
 #: ../data/gui/contact_context_menu.ui.h:4
-#: ../data/gui/gc_occupants_menu.ui.h:11 ../src/roster_window.py:5747
-#: ../src/roster_window.py:5906
+#: ../data/gui/gc_occupants_menu.ui.h:11
+#: ../src/roster_window.py:5799
+#: ../src/roster_window.py:5958
 msgid "In_vite to"
 msgstr "ה_זמן אל"
 
@@ -999,21 +1074,25 @@ msgstr "הזמן _אנשי קשר"
 
 #: ../data/gui/contact_context_menu.ui.h:6
 msgid "Toggle Open_PGP Encryption"
-msgstr "הפעל הצפנת Open_PGP"
+msgstr "הפעלת הצפנת Open_PGP"
 
 # BUG: No _underline
+# I need another word for Toggle
+# [ x ] Activate
+# קצה אל קצה
 #: ../data/gui/contact_context_menu.ui.h:7
 msgid "Toggle End to End Encryption"
-msgstr "הפעל הצפנת קצה אל קצה"
+msgstr "הפעלת הצפנת E2E"
 
-#: ../data/gui/contact_context_menu.ui.h:8 ../src/roster_window.py:5757
-#: ../src/roster_window.py:5995
+#: ../data/gui/contact_context_menu.ui.h:8
+#: ../src/roster_window.py:5809
+#: ../src/roster_window.py:6047
 msgid "Send Cus_tom Status"
-msgstr "שלח מצב חיבור מו_תאם"
+msgstr "שלח מצב־חיבור מו_תאם"
 
 #: ../data/gui/contact_context_menu.ui.h:9
 msgid "E_xecute Command..."
-msgstr "הרצת _פקודה..."
+msgstr "הרץ _פקודה..."
 
 #: ../data/gui/contact_context_menu.ui.h:10
 msgid "M_anage Contact"
@@ -1021,49 +1100,55 @@ msgstr "_נהל איש קשר"
 
 #: ../data/gui/contact_context_menu.ui.h:11
 msgid "_Rename..."
-msgstr "_שינוי שם..."
+msgstr "_שנה שם..."
 
 #: ../data/gui/contact_context_menu.ui.h:12
 msgid "Edit _Groups..."
-msgstr "עריכת _קבוצות..."
+msgstr "ערוך _קבוצות..."
 
 #: ../data/gui/contact_context_menu.ui.h:13
 msgid "Assign Open_PGP Key..."
-msgstr "הקצאת מפתח Open_PGP..."
+msgstr "הקצה מפתח Open_PGP..."
 
 #: ../data/gui/contact_context_menu.ui.h:14
 msgid "Set Custom _Avatar..."
-msgstr "הגדרת _אווטאר מותאם..."
+msgstr "הגדר _אווטאר מותאם..."
 
 #: ../data/gui/contact_context_menu.ui.h:15
 msgid "Add Special _Notification..."
-msgstr "הוספת ה_תראה מיוחדת..."
+msgstr "הוסף ה_תראה מיוחדת..."
 
 #: ../data/gui/contact_context_menu.ui.h:16
 msgid "_Subscription"
 msgstr "ה_רשמה"
 
+# Changed to: Allow this contact to view my status
+# לאיש קשר זה
 #: ../data/gui/contact_context_menu.ui.h:17
-msgid "_Allow contact to see my status"
-msgstr "הת_ר לאיש קשר לראות את המצב שלי"
+msgid "_Allow him/her to see my status"
+msgstr "_התר לאיש קשר זה לראות את מצב־חיבורי"
 
+# לראות
+# שלה/שלו
 #: ../data/gui/contact_context_menu.ui.h:18
-msgid "A_sk to see contact status"
-msgstr "_בקש להציג מצב איש קשר"
+msgid "A_sk to see his/her status"
+msgstr "_בקש להציג את מצב־החיבור של איש קשר זה"
 
 #: ../data/gui/contact_context_menu.ui.h:19
-msgid "_Forbid contact to see my status"
-msgstr "_מנע מאיש קשר מלראות את המצב שלי"
+msgid "_Forbid him/her to see my status"
+msgstr "_מנע מאיש קשר זה מלראות את מצב־חיבורי"
 
 #: ../data/gui/contact_context_menu.ui.h:21
-#: ../data/gui/gc_occupants_menu.ui.h:13 ../src/roster_window.py:5819
-#: ../src/roster_window.py:5944 ../src/roster_window.py:6074
+#: ../data/gui/gc_occupants_menu.ui.h:13
+#: ../src/roster_window.py:5871
+#: ../src/roster_window.py:5996
+#: ../src/roster_window.py:6126
 msgid "_Block"
 msgstr "_חסום"
 
 #: ../data/gui/contact_context_menu.ui.h:22
 msgid "_Unignore"
-msgstr "_בטל התעלמות"
+msgstr "_אי־התעלמות"
 
 #: ../data/gui/contact_context_menu.ui.h:23
 msgid "_Ignore"
@@ -1075,8 +1160,9 @@ msgstr "הס_ר"
 
 #: ../data/gui/contact_context_menu.ui.h:26
 #: ../data/gui/gc_control_popup_menu.ui.h:9
-#: ../data/gui/gc_occupants_menu.ui.h:15 ../data/gui/roster_window.ui.h:19
-#: ../src/roster_window.py:6145
+#: ../data/gui/gc_occupants_menu.ui.h:15
+#: ../data/gui/roster_window.ui.h:19
+#: ../src/roster_window.py:6197
 msgid "_History"
 msgstr "_היסטוריה"
 
@@ -1084,14 +1170,16 @@ msgstr "_היסטוריה"
 msgid "Room Configuration"
 msgstr "תצורת חדר"
 
+# טופס
 #: ../data/gui/data_form_window.ui.h:2
 msgid "Fill in the form."
-msgstr "מלא את הטופס."
+msgstr "נא למלא את התבנית."
 
 #: ../data/gui/edit_groups_dialog.ui.h:1
 msgid "Edit Groups"
 msgstr "עריכת קבוצות"
 
+# סשן E
 #: ../data/gui/esession_info_window.ui.h:1
 msgid "(ESession  info)"
 msgstr "(מידע ESession )"
@@ -1106,7 +1194,7 @@ msgstr "תכונות"
 
 #: ../data/gui/features_window.ui.h:2
 msgid "List of possible features in Gajim: "
-msgstr "רשימה של תכונות אפשריות בתוך Gajim: "
+msgstr "רשימה של תכונות אפשריות אצל Gajim: "
 
 #: ../data/gui/filetransfers.ui.h:1
 msgid "File Transfers"
@@ -1135,19 +1223,15 @@ msgstr "הצג התראה מוקפצת כאשר העברת קובץ הושלמה
 
 #: ../data/gui/filetransfers.ui.h:7
 msgid "Removes completed, cancelled and failed file transfers from the list"
-msgstr "הסרת העברות קבצים שלמות, מבוטלות וכושלות מתוך הרשימה"
+msgstr "הסרת העברות קבצים שלמות, מבוטלות וכושלות מן הרשימה"
 
 #: ../data/gui/filetransfers.ui.h:8
 msgid "Remove file transfer from the list."
-msgstr "הסר העברת קובץ מתוך הרשימה."
+msgstr "הסר העברת קובץ מן הרשימה."
 
 #: ../data/gui/filetransfers.ui.h:9
-msgid ""
-"This action removes single file transfer from the list. If the transfer is "
-"active, it is first stopped and then removed"
-msgstr ""
-"פעולה זו מסירה העברת קובץ בודדת מתוך הרשימה. במידה וההעברה פעילה, היא תיעצר "
-"תחילה ולאחר מכן היא תוסר"
+msgid "This action removes single file transfer from the list. If the transfer is active, it is first stopped and then removed"
+msgstr "פעולה זו מסירה העברת קובץ בודדת מן הרשימה. במידה וההעברה פעילה, ראשית היא תיעצר ולאחר מכן היא תוסר"
 
 #: ../data/gui/filetransfers.ui.h:10
 msgid "Clean _up"
@@ -1157,8 +1241,9 @@ msgstr "_נקה"
 msgid "_Pause"
 msgstr "ה_שהה"
 
+# Changed to: Cancels the selected file transfer and removes incomplete files (notice the letter s for plural in the second "file")
 #: ../data/gui/filetransfers.ui.h:12
-msgid "Cancels the selected file transfer and removes incomplete files"
+msgid "Cancels the selected file transfer and removes incomplete file"
 msgstr "ביטול העברת הקובץ הנבחר והסרת קבצים לא שלמים"
 
 #: ../data/gui/filetransfers.ui.h:13
@@ -1169,6 +1254,7 @@ msgstr "ביטול העברת קובץ"
 msgid "Cancels the selected file transfer"
 msgstr "ביטול העברת קובץ הנבחרת"
 
+# Hide window
 #: ../data/gui/filetransfers.ui.h:15
 msgid "Hides the window"
 msgstr "הסתרת החלון"
@@ -1177,10 +1263,11 @@ msgstr "הסתרת החלון"
 msgid "_Continue"
 msgstr "ה_משך"
 
-#: ../data/gui/filetransfers.ui.h:17 ../src/chat_control.py:3351
+#: ../data/gui/filetransfers.ui.h:17
+#: ../src/chat_control.py:3256
 #: ../src/filetransfers_window.py:213
 msgid "_Open Containing Folder"
-msgstr "_פתח תיקיה מכילה"
+msgstr "_פתיחת תיקיה מכילה"
 
 #: ../data/gui/gajim_themes_window.ui.h:1
 msgid "Account row"
@@ -1218,17 +1305,19 @@ msgstr "_גופן תמליל:"
 msgid "Font style:"
 msgstr "סגנון גופן:"
 
-#: ../data/gui/gajim_themes_window.ui.h:10 ../src/chat_control.py:1045
+#: ../data/gui/gajim_themes_window.ui.h:10
+#: ../src/chat_control.py:1049
 msgid "Bold"
-msgstr "מובלט"
+msgstr "מודגש"
 
-#: ../data/gui/gajim_themes_window.ui.h:11 ../src/chat_control.py:1046
+#: ../data/gui/gajim_themes_window.ui.h:11
+#: ../src/chat_control.py:1050
 msgid "Italic"
 msgstr "נטוי"
 
 #: ../data/gui/gajim_themes_window.ui.h:12
 msgid "Paused"
-msgstr "השהיה"
+msgstr "הופסקה"
 
 #: ../data/gui/gajim_themes_window.ui.h:13
 msgid "Composing"
@@ -1241,11 +1330,12 @@ msgstr "לא פעיל"
 # Chat-state?
 #: ../data/gui/gajim_themes_window.ui.h:15
 msgid "Chatstate Tab Colors "
-msgstr "צבעי כרטיסייה מצב שיחה "
+msgstr "צבעי לשונית מצב שיחה "
 
+# נעזב
 #: ../data/gui/gajim_themes_window.ui.h:16
 msgid "Gone"
-msgstr "נטישה"
+msgstr "עזוב"
 
 #: ../data/gui/gajim_themes_window.ui.h:17
 msgid ""
@@ -1265,7 +1355,7 @@ msgstr ""
 
 #: ../data/gui/gc_control_popup_menu.ui.h:1
 msgid "Change _Nickname..."
-msgstr "שינוי שם _כינוי..."
+msgstr "שנה שם _כינוי..."
 
 #: ../data/gui/gc_control_popup_menu.ui.h:2
 msgid "_Manage Room"
@@ -1273,11 +1363,11 @@ msgstr "נהל _חדר"
 
 #: ../data/gui/gc_control_popup_menu.ui.h:3
 msgid "Change _Subject..."
-msgstr "שינוי _נושא..."
+msgstr "שנה _נושא..."
 
 #: ../data/gui/gc_control_popup_menu.ui.h:4
 msgid "Configure _Room..."
-msgstr "ה_גדרת חדר..."
+msgstr "ה_גדר חדר..."
 
 #: ../data/gui/gc_control_popup_menu.ui.h:5
 msgid "_Destroy Room"
@@ -1287,11 +1377,16 @@ msgstr "ה_חרב חדר"
 msgid "_Minimize on close"
 msgstr "_מזער בעת סגירה"
 
+# שליחת בקשה ל
+# השמעת קולי
+# השמעתי
+# להתבטא
 #: ../data/gui/gc_control_popup_menu.ui.h:7
 msgid "_Request Voice"
-msgstr "_בקש ביטוי"
+msgstr "_בקש/י שקולך ישמע"
 
-#: ../data/gui/gc_control_popup_menu.ui.h:8 ../src/disco.py:1843
+#: ../data/gui/gc_control_popup_menu.ui.h:8
+#: ../src/disco.py:1799
 msgid "_Bookmark"
 msgstr "_סמן"
 
@@ -1303,13 +1398,16 @@ msgstr "_שלח הודעה פרטית"
 msgid "Send _File"
 msgstr "שלח _קובץ"
 
+# Other word for Occupant (please)
+# FOUND! Attendee
 #: ../data/gui/gc_occupants_menu.ui.h:3
 msgid "Occupant Actions"
 msgstr "פעולות נוכח"
 
+# _קול
 #: ../data/gui/gc_occupants_menu.ui.h:4
 msgid "_Voice"
-msgstr "ה_שמע"
+msgstr "ה_שמעה"
 
 #: ../data/gui/gc_occupants_menu.ui.h:5
 msgid "Mo_derator"
@@ -1329,28 +1427,26 @@ msgstr "_בעלים"
 
 #: ../data/gui/gc_occupants_menu.ui.h:9
 msgid "_Kick"
-msgstr "ב_עט"
+msgstr "ב_עיטה"
 
+# א_סירה
 #: ../data/gui/gc_occupants_menu.ui.h:10
 msgid "_Ban"
-msgstr "א_סור"
+msgstr "ח_סימה"
 
 #: ../data/gui/gc_occupants_menu.ui.h:12
 msgid "_Add to Roster"
-msgstr "הו_סף אל רשימה"
-
-#: ../data/gui/groupchat_control.ui.h:2 ../src/chat_control.py:1723
-msgid "Show a list of formattings"
-msgstr "הצגת רשימת עיצובים"
+msgstr "הו_ספה אל הרשימה"
 
 #: ../data/gui/groupchat_control.ui.h:3
 msgid "Change your nickname (Ctrl+N)"
-msgstr "שינוי שם כינוי (Ctrl+N)"
+msgstr "שינוי שם כינוייך (Ctrl+N)"
 
 #: ../data/gui/groupchat_control.ui.h:4
 msgid "Change the room's subject (Alt+T)"
 msgstr "שינוי הנושא של חדר זה (Alt+T)"
 
+# הוספת חדר זה אל הסימניות
 #: ../data/gui/groupchat_control.ui.h:5
 msgid "Bookmark this room (Ctrl+B)"
 msgstr "סימון חדר זה (Ctrl+B)"
@@ -1378,7 +1474,6 @@ msgid "Welcome to Gajim History Logs Manager ברוך בואך אל מנהל רשומות ההיסטוריה של Gajim WARNING: \n"
@@ -1400,16 +1494,15 @@ msgid ""
 "Generally avoid deletions with contacts you currently chat with."
 msgstr ""
 "אזהרה: \n"
-"אם בכוונתך לבצע מחיקה בקנה מידה גדול, אנא ודא כי Gajim אינו מורץ. באופן כללי "
-"מוטב להימנע ממחיקות עם אנשי קשר אשר משוחחים עמך כעת."
+"אם בכוונתך לבצע מחיקה בקנה מידה גדול, נא לוודא שהיישום Gajim אינו מורץ. באופן כללי מוטב להימנע ממחיקות עם אנשי קשר שמשוחחים עמך כעת."
 
 #: ../data/gui/history_manager.ui.h:8
 msgid "_Search Database"
-msgstr "_חפש בתוך מסד נתונים"
+msgstr "_חיפוש במסד נתונים"
 
 #: ../data/gui/history_manager.ui.h:9
 msgid "Export"
-msgstr "יצא"
+msgstr "יצוא"
 
 #: ../data/gui/history_window.ui.h:1
 msgid "Enter JID or Contact name"
@@ -1423,7 +1516,8 @@ msgstr "היסטוריות שיחת קבוצה"
 msgid "All Chat Histories"
 msgstr "כל היסטוריות שיחה"
 
-#: ../data/gui/history_window.ui.h:4 ../src/history_window.py:326
+#: ../data/gui/history_window.ui.h:4
+#: ../src/history_window.py:324
 msgid "Conversation History"
 msgstr "היסטוריית שיחה"
 
@@ -1431,29 +1525,27 @@ msgstr "היסטוריית שיחה"
 msgid "Search:"
 msgstr "חיפוש:"
 
-# יום _נבחר
 #: ../data/gui/history_window.ui.h:6
 msgid "_In date search"
-msgstr "חפש בתוך _תאריך"
+msgstr "חיפוש _בתאריך"
 
 #: ../data/gui/history_window.ui.h:7
-msgid "Searching only in the selected day "
-msgstr "חיפוש בתוך היום הנבחר בלבד"
+msgid "searching only in the selected day "
+msgstr "חיפוש ביום הנבחר בלבד"
 
 #: ../data/gui/history_window.ui.h:8
 #: ../data/gui/zeroconf_information_window.ui.h:5
 msgid "_Log conversation history"
 msgstr "_רשום היסטוריית שיחה"
 
-#: ../data/gui/history_window.ui.h:9
-msgid "_Show status changes"
-msgstr "הצג _הודעות מצב"
-
+# פג, נפקע
 #: ../data/gui/item_archiving_preferences_window.ui.h:1
+#, fuzzy
 msgid "expire"
-msgstr "פוקעת"
+msgstr "פגה"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:2
+#, fuzzy
 msgid "save"
 msgstr "שמור"
 
@@ -1463,55 +1555,74 @@ msgstr ""
 
 # gajim-remote
 #: ../data/gui/item_archiving_preferences_window.ui.h:4
-#: ../src/gajim-remote.py:230
+#: ../src/gajim-remote.py:229
 msgid "jid"
 msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:5
+#, fuzzy
 msgid "body"
 msgstr "גוף"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:6
+#, fuzzy
 msgid "false"
-msgstr "שווא"
+msgstr "false"
 
+# gajim-remote
 #: ../data/gui/item_archiving_preferences_window.ui.h:7
+#: ../src/gajim-remote.py:110
+#: ../src/gajim-remote.py:133
+#: ../src/gajim-remote.py:144
+#: ../src/gajim-remote.py:158
+#: ../src/gajim-remote.py:169
+#: ../src/gajim-remote.py:282
+#, fuzzy
 msgid "message"
 msgstr "הודעה"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:8
+#, fuzzy
 msgid "stream"
 msgstr "זרם"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:9
+#, fuzzy
 msgid "approve"
 msgstr "אשר"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:10
+#, fuzzy
 msgid "concede"
 msgstr "וותר"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:11
+#, fuzzy
 msgid "forbid"
 msgstr "אסור"
 
 # להימנע
 # conflict?
 #: ../data/gui/item_archiving_preferences_window.ui.h:12
+#, fuzzy
 msgid "oppose"
 msgstr "התנגד"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:13
+#, fuzzy
 msgid "prefer"
 msgstr "העדף"
 
+# נדרש
 #: ../data/gui/item_archiving_preferences_window.ui.h:14
+#, fuzzy
 msgid "require"
 msgstr "דרוש"
 
-#: ../data/gui/join_groupchat_window.ui.h:1 ../src/dialogs.py:2416
+#: ../data/gui/join_groupchat_window.ui.h:1
+#: ../src/dialogs.py:2372
 msgid "Join Group Chat"
-msgstr "הצטרף אל שיחת קבוצה"
+msgstr "הצטרפות אל שיחת קבוצה"
 
 #: ../data/gui/join_groupchat_window.ui.h:2
 msgid "Room:"
@@ -1532,15 +1643,18 @@ msgstr "אחרונים:"
 msgid "Password:"
 msgstr "סיסמה:"
 
+# כאשר אני מתחבר
 #: ../data/gui/join_groupchat_window.ui.h:6
 msgid "Join this room _automatically when I connect"
 msgstr "הצטרף אל חדר זה באופן _אוטומטי בעת התחברותי"
 
+# Translated to: Create a bookmark for this room
 #: ../data/gui/join_groupchat_window.ui.h:8
 msgid "_Bookmark this room"
 msgstr "_סמן את חדר זה"
 
-#: ../data/gui/join_groupchat_window.ui.h:9 ../src/config.py:1857
+#: ../data/gui/join_groupchat_window.ui.h:9
+#: ../src/config.py:1852
 msgid "Server:"
 msgstr "שרת:"
 
@@ -1548,8 +1662,10 @@ msgstr "שרת:"
 msgid "Bro_wse Rooms"
 msgstr "_עיון ברשימת חדרים"
 
-#: ../data/gui/join_groupchat_window.ui.h:11 ../src/chat_control.py:3386
-#: ../src/disco.py:1396 ../src/disco.py:1847
+#: ../data/gui/join_groupchat_window.ui.h:11
+#: ../src/chat_control.py:3291
+#: ../src/disco.py:1360
+#: ../src/disco.py:1803
 msgid "_Join"
 msgstr "_כנס"
 
@@ -1572,7 +1688,7 @@ msgstr "ה_דפס מצב:"
 
 #: ../data/gui/manage_bookmarks_window.ui.h:8
 msgid "A_uto join"
-msgstr "ה_צטרף אוטומטית"
+msgstr "ה_צטרפות אוטומטית"
 
 # BUG: a dot at the end
 # אתחול
@@ -1606,7 +1722,7 @@ msgstr ""
 
 #: ../data/gui/manage_proxies_window.ui.h:4
 msgid "Manage Proxy Profiles"
-msgstr "ניהול דיוקני Proxy"
+msgstr "ניהול דיוקני פרוקסי"
 
 #: ../data/gui/manage_proxies_window.ui.h:5
 msgid "_Type:"
@@ -1622,16 +1738,16 @@ msgstr "מאפיינים "
 
 #: ../data/gui/manage_proxies_window.ui.h:8
 msgid "Use HTTP prox_y"
-msgstr "השתמש בציר _HTTP"
+msgstr "השתמש במתווך _HTTP"
 
 # כתובת _BOSH:
 #: ../data/gui/manage_proxies_window.ui.h:9
 msgid "_BOSH URL:"
-msgstr "_BOSH URL:"
+msgstr "_BOSH URL:"
 
 #: ../data/gui/manage_proxies_window.ui.h:10
 msgid "Use proxy auth_entication"
-msgstr "השתמש באימות _ציר"
+msgstr "השתמש באימות מ_תווך"
 
 #: ../data/gui/manage_proxies_window.ui.h:11
 msgid "_Username:"
@@ -1643,26 +1759,22 @@ msgstr "ס_יסמה:"
 
 #: ../data/gui/manage_proxies_window.ui.h:13
 msgid "Proxy _Host:"
-msgstr "מ_ארח ציר:"
+msgstr "מ_ארח מתווך:"
 
 #: ../data/gui/manage_proxies_window.ui.h:14
 msgid "Proxy _Port:"
-msgstr "פו_רט ציר:"
+msgstr "פו_רט מתווך:"
 
 #: ../data/gui/manage_proxies_window.ui.h:15
 msgid "Settings "
 msgstr "הגדרות "
 
-#: ../data/gui/manage_sounds_window.ui.h:1
-msgid "Manage sounds"
-msgstr "ניהול צלילים"
-
 # צירוף־מעבר
 # משפט/צירוף
 # אישור/מעבר/מפתח
 #: ../data/gui/passphrase_dialog.ui.h:1
 msgid "Passphrase"
-msgstr "מימרת סיסמה"
+msgstr "מימרת־סיסמה"
 
 #: ../data/gui/plugins_window.ui.h:1
 msgid "Plugins"
@@ -1670,8 +1782,9 @@ msgstr "תוספות"
 
 #: ../data/gui/plugins_window.ui.h:2
 msgid "Install from zip"
-msgstr "התקן מתוך ארכיון zip"
+msgstr "התקנה מתוך ארכיון zip"
 
+# ריק מתוכן
 #: ../data/gui/plugins_window.ui.h:3
 msgid "<empty>"
 msgstr "<ריק>"
@@ -1701,6 +1814,7 @@ msgstr "כתובת עמוד בית"
 msgid "Description:"
 msgstr "תיאור:"
 
+# אי־התקנה
 #: ../data/gui/plugins_window.ui.h:10
 msgid "Uninstall"
 msgstr "הסרה"
@@ -1723,7 +1837,7 @@ msgstr ""
 
 #: ../data/gui/popup_notification_window.ui.h:1
 msgid "Event Type"
-msgstr "טיפוס אירוע"
+msgstr "סוג אירוע"
 
 #: ../data/gui/popup_notification_window.ui.h:2
 msgid "Event desc"
@@ -1731,12 +1845,13 @@ msgstr "תיאור אירוע"
 
 #: ../data/gui/preferences_window.ui.h:1
 msgid "Use default applications"
-msgstr "השתמש ביישומים משתמטים"
+msgstr "שימוש ביישומים משתמטים"
 
 #: ../data/gui/preferences_window.ui.h:2
 msgid "Custom"
 msgstr "מותאם"
 
+# In any/every chat state
 #: ../data/gui/preferences_window.ui.h:3
 msgid "All chat states"
 msgstr "בכל מצב שיחה"
@@ -1745,8 +1860,10 @@ msgstr "בכל מצב שיחה"
 msgid "Composing only"
 msgstr "הלחנה בלבד"
 
-#: ../data/gui/preferences_window.ui.h:5 ../src/config.py:164
-#: ../src/config.py:677
+# (ההעדפה) מנוטרלת
+#: ../data/gui/preferences_window.ui.h:5
+#: ../src/config.py:173
+#: ../src/config.py:689
 msgid "Disabled"
 msgstr "מנוטרלת"
 
@@ -1762,6 +1879,7 @@ msgstr "רק כאשר קיימים אירועים ממתינים"
 msgid "Always"
 msgstr "תמיד"
 
+# הקפץ זאת
 #: ../data/gui/preferences_window.ui.h:9
 msgid "Pop it up"
 msgstr "הצג התראה מוקפצת"
@@ -1786,6 +1904,7 @@ msgstr "רשימה מנותקת עם שיחה יחידה"
 msgid "Single window for everything"
 msgstr "חלון בודד עבור כל החלונות"
 
+# ניתוק רשימה
 #: ../data/gui/preferences_window.ui.h:15
 msgid "Detached roster with chat grouped by account"
 msgstr "רשימה מנותקת עם שיחות מאוגדות לפי חשבון"
@@ -1809,12 +1928,8 @@ msgstr "הצג _אווטארים של אנשי קשר ברשימה"
 
 # BUG: a dot at the end
 #: ../data/gui/preferences_window.ui.h:20
-msgid ""
-"If checked, Gajim will display avatars of contacts in roster window and in "
-"group chats"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יציג אווטארים של אנשי קשר בחלון הרשימה ובתוך "
-"שיחות קבוצה"
+msgid "If checked, Gajim will display avatars of contacts in roster window and in group chats"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יציג אווטארים של אנשי קשר בחלון הרשימה ובשיחות קבוצה"
 
 #: ../data/gui/preferences_window.ui.h:21
 msgid "Display status _messages of contacts in roster"
@@ -1823,16 +1938,13 @@ msgstr "הצג הו_דעות מצב של אנשי קשר ברשימה"
 # BUG: a dot at the end
 # BUG: under [the] contact - remove "the"
 #: ../data/gui/preferences_window.ui.h:22
-msgid ""
-"If checked, Gajim will display status messages of contacts under the contact "
-"name in roster window and in group chats"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יציג את הודעות המצב של אנשי קשר תחת שם איש "
-"קשר בתוך חלון הרשימה וגם בתוך שיחות קבוצה"
+msgid "If checked, Gajim will display status messages of contacts under the contact name in roster window and in group chats"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יציג את הודעות המצב של אנשי קשר תחת שם איש קשר בחלון הרשימה ובשיחות קבוצה"
 
+# מ_צבי הרוח
 #: ../data/gui/preferences_window.ui.h:23
-msgid "Display e_xtra information of contacts in roster (mood, activity, ...)"
-msgstr "הצג _מידע נוסף של אנשי קשר ברשימה (מצב רוח, פעילות, ...)"
+msgid "Display m_ood of contacts in roster"
+msgstr "הצג מצ_בי רוח של אנשי קשר ברשימה"
 
 # BUG: a dot at the end
 #: ../data/gui/preferences_window.ui.h:24
@@ -1841,245 +1953,248 @@ msgid ""
 msgstr ""
 "במידה ואפשרות זו מסומנת, Gajim יציג את מצבי הרוח של אנשי קשר בחלון הרשימה"
 
+# Changed "activity" with "activities"
+# שברשימה
 #: ../data/gui/preferences_window.ui.h:25
-msgid "Sort contacts by status"
-msgstr "מיין אנשי קשר לפי מצב חיבור"
+msgid "Display _activity of contacts in roster"
+msgstr "הצג _פעילויות של אנשי קשר ברשימה"
 
+# BUG: a dot at the end
 #: ../data/gui/preferences_window.ui.h:26
-msgid "in _roster"
-msgstr "בתוך _רשימה"
+msgid "If checked, Gajim will display the activity of contacts in the roster window"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יציג את הפעילויות של אנשי קשר בחלון הרשימה"
 
+# נעימות, לחן, מנגינה
 #: ../data/gui/preferences_window.ui.h:27
-msgid "in _group chats"
-msgstr "בתוך _שיחות קבוצה"
+msgid "Display _tunes of contacts in roster"
+msgstr "הצג לח_נים של אנשי קשר ברשימה"
 
+# BUG: a dot at the end
 #: ../data/gui/preferences_window.ui.h:28
-msgid "Roster Appearance "
-msgstr "הופעת רשימה "
+msgid "If checked, Gajim will display the tunes of contacts in the roster window"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יציג את הלחנים של אנשי קשר בחלון הרשימה"
 
+# Changed "location" with "locations"
 #: ../data/gui/preferences_window.ui.h:29
+msgid "Display _location of contacts in roster"
+msgstr "הצג _מיקומים של אנשי קשר ברשימה"
+
+# BUG: a dot at the end
+#: ../data/gui/preferences_window.ui.h:30
+msgid "If checked, Gajim will display the location of contacts in the roster window"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יציג את המיקומים של אנשי קשר בחלון הרשימה"
+
+# מיון
+#: ../data/gui/preferences_window.ui.h:31
+msgid "Sort contacts by status"
+msgstr "סדר אנשי קשר לפי מצב־חיבור"
+
+#: ../data/gui/preferences_window.ui.h:32
+msgid "in _roster"
+msgstr "ב_רשימה"
+
+#: ../data/gui/preferences_window.ui.h:33
+msgid "in _group chats"
+msgstr "ב_שיחות קבוצה"
+
+# Roster Display 
+#: ../data/gui/preferences_window.ui.h:34
+msgid "Roster Appearance "
+msgstr "מראה רשימה "
+
+#: ../data/gui/preferences_window.ui.h:35
 msgid "_Window behavior:"
 msgstr "התנהגות _חלונות:"
 
 # תרשימיים, נייחים
-#: ../data/gui/preferences_window.ui.h:30
-msgid ""
-"If not disabled, Gajim will replace ascii smilies like ':)' with equivalent "
-"animated or static graphical emoticons"
-msgstr ""
-"במידה ואפשרות זו לא מנוטרלת, Gajim יחליף סמיילים אשר מורכבים מתווי ascii "
-"כגון ':)' עם רגשונים ציוריים תואמים (מונפשים או סטטיים)"
+#: ../data/gui/preferences_window.ui.h:36
+msgid "If not disabled, Gajim will replace ascii smilies like ':)' with equivalent animated or static graphical emoticons"
+msgstr "במידה ואפשרות זו לא מנוטרלת, Gajim יחליף סמיילים המורכבים מתווי ascii כגון ':)' עם רגשונים ציוריים תואמים (מונפשים או סטטיים)"
 
-#: ../data/gui/preferences_window.ui.h:31
+#: ../data/gui/preferences_window.ui.h:37
 msgid "_Emoticons:"
 msgstr "_רגשונים:"
 
-#: ../data/gui/preferences_window.ui.h:32
+# דחוסים, מקוצרים
+#: ../data/gui/preferences_window.ui.h:38
 msgid "Ma_ke message windows compact"
 msgstr "השתמש בחלונות שיחה צ_פופים"
 
-#: ../data/gui/preferences_window.ui.h:33
+#: ../data/gui/preferences_window.ui.h:39
 msgid "Hide all buttons in chat windows"
 msgstr "הסתרת כל הלחצנים בחלונות שיחה"
 
-#: ../data/gui/preferences_window.ui.h:34
+# עם עיצובים
+# עם תבנית טקסט עשירה
+#: ../data/gui/preferences_window.ui.h:40
 msgid "_Ignore rich content in incoming messages"
 msgstr "הת_עלם מן תוכן עשיר בהודעות נכנסות"
 
 # הודעות מסוימות עשויות להכיל
-#: ../data/gui/preferences_window.ui.h:35
-msgid ""
-"Some messages may include rich content (formatting, colors etc). If checked, "
-"Gajim will just display the raw message text."
-msgstr ""
-"ייתכן כי הודעות מסוימות יכילו תוכן עשיר (עיצוב, צבעים וכו׳). במידה ואפשרות "
-"זו מסומנת, Gajim יציג רק את התמליל הגולמי אשר מצוי בהודעה."
+#: ../data/gui/preferences_window.ui.h:41
+msgid "Some messages may include rich content (formatting, colors etc). If checked, Gajim will just display the raw message text."
+msgstr "ייתכן שהודעות מסוימות יכילו תוכן עשיר (עיצוב, צבעים וכו׳). במידה ואפשרות זו מסומנת, Gajim יציג רק את התמליל הגולמי שבהודעה."
 
-#: ../data/gui/preferences_window.ui.h:36
+#: ../data/gui/preferences_window.ui.h:42
 msgid "_Highlight misspelled words"
 msgstr "הדגש שגיאות _כתיב"
 
-#: ../data/gui/preferences_window.ui.h:37
-msgid ""
-"If checked, Gajim will highlight spelling errors in input fields of chat "
-"windows. If no language is explicitly set via right click on the input "
-"field, the default language will be used for this contact or group chat."
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יבליט שגיאות כתיב בשדות קלט של חלונות שיחה. "
-"במידה ולא צוינה במפורש באמצעות מקש ימני על שדה הקלט, השפה המשתמטת תהיה "
-"בשימוש עבור איש קשר זה או שיחת קבוצה."
+# הוגדרה
+#: ../data/gui/preferences_window.ui.h:43
+msgid "If checked, Gajim will highlight spelling errors in input fields of chat windows. If no language is explicitly set via right click on the input field, the default language will be used for this contact or group chat."
+msgstr "במידה ואפשרות זו מסומנת, Gajim יבליט שגיאות כתיב בשדות קלט של חלונות שיחה. במידה ולא צוינה במפורש באמצעות מקש ימני על שדה הקלט, השפה המשתמטת תהיה בשימוש עבור איש קשר זה או שיחת קבוצה."
 
-#: ../data/gui/preferences_window.ui.h:38
+#: ../data/gui/preferences_window.ui.h:44
 msgid "_Show roster on startup:"
 msgstr "ה_צג רשימה בעת הפעלה:"
 
-#: ../data/gui/preferences_window.ui.h:39
-msgid "Show icon when your messages are received"
-msgstr "הצג צלמית כאשר הודעותיך מתקבלות"
-
-#: ../data/gui/preferences_window.ui.h:40
+#: ../data/gui/preferences_window.ui.h:45
 msgid "Chat Appearance "
-msgstr "הופעת שיחה "
+msgstr "מראה שיחה "
 
-#: ../data/gui/preferences_window.ui.h:42
+#: ../data/gui/preferences_window.ui.h:47
 msgid "When new event is received:"
 msgstr "כאשר אירוע חדש מתקבל:"
 
-#: ../data/gui/preferences_window.ui.h:43
+#: ../data/gui/preferences_window.ui.h:48
 msgid "Notify me about contacts that sign _in"
-msgstr "הודע לי אודות אנשי קשר אשר מת_חברים"
+msgstr "הודע לי אודות אנשי קשר שמת_חברים"
 
-#: ../data/gui/preferences_window.ui.h:44
+#: ../data/gui/preferences_window.ui.h:49
 msgid "Notify me about contacts that sign _out"
-msgstr "הודע לי אודות אנשי קשר אשר מת_נתקים"
+msgstr "הודע לי אודות אנשי קשר שמת_נתקים"
 
-#: ../data/gui/preferences_window.ui.h:45
-msgid ""
-"Gajim will notify you via a popup window in the bottom right of the screen "
-"about contacts that just signed out"
-msgstr ""
-"Gajim יידע אותך באמצעות חלון מוקפץ בצד הימני התחתון של המסך, אודות אנשי קשר "
-"אשר התנתקו זה עתה"
+# signed out
+# יידעך
+# שהתנתקו זה עתה
+#: ../data/gui/preferences_window.ui.h:50
+msgid "Gajim will notify you via a popup window in the bottom right of the screen about contacts that just signed out"
+msgstr "Gajim יידע אותך באמצעות חלון מוקפץ בצד הימני התחתון של המסך, אודות אנשי קשר שזה עתה התנתקו"
 
-#: ../data/gui/preferences_window.ui.h:46
+#: ../data/gui/preferences_window.ui.h:51
 msgid "Allow popup/notifications when I'm _away/na/busy/invisible"
 msgstr "התר התראות מוקפצות כאשר אני במצב נעדר/_לא זמין/עסוק/בלתי נראה"
 
-#: ../data/gui/preferences_window.ui.h:47
+# הודע לי
+#: ../data/gui/preferences_window.ui.h:52
 msgid "Notify on new _GMail email"
-msgstr "הודע על _דוא״ל GMail חדש"
+msgstr "הודע אודות _דוא״ל GMail"
 
 # BUG: a dot at the end
 # דרך
-#: ../data/gui/preferences_window.ui.h:48
-msgid ""
-"If checked, Gajim will show a notification when a new e-mail is received via "
-"GMail"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יציג התראה כאשר דוא״ל חדש מתקבל דרך GMail"
+#: ../data/gui/preferences_window.ui.h:53
+msgid "If checked, Gajim will show a notification when a new e-mail is received via GMail"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יציג התראה כאשר דוא״ל חדש מתקבל באמצעות GMail"
 
-#: ../data/gui/preferences_window.ui.h:49
+# Does extra means special?
+#: ../data/gui/preferences_window.ui.h:54
 msgid "Display _extra email details"
 msgstr "הצג _פרטי דוא״ל נוספים"
 
 # BUG: a dot at the end
-#: ../data/gui/preferences_window.ui.h:50
-msgid ""
-"If checked, Gajim will also include information about the sender of new "
-"emails"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יכיל גם מידע אודות הממען של ההודעות "
-"האלקטרוניות החדשות."
+# BUG: of the new emails > of new emails
+#: ../data/gui/preferences_window.ui.h:55
+msgid "If checked, Gajim will also include information about the sender of the new emails"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יכיל גם מידע אודות הממען של ההודאות האלקטרוניות החדשות."
 
-#: ../data/gui/preferences_window.ui.h:51
+#: ../data/gui/preferences_window.ui.h:56
 msgid "GMail Options "
 msgstr "אפשרויות GMail "
 
-#: ../data/gui/preferences_window.ui.h:52
+#: ../data/gui/preferences_window.ui.h:57
 msgid "Show notification area icon:"
 msgstr "הצג צלמית אזור התראה:"
 
-#: ../data/gui/preferences_window.ui.h:53
+#: ../data/gui/preferences_window.ui.h:58
 msgid "Visual Notifications "
 msgstr "התראות חזותיות "
 
-#: ../data/gui/preferences_window.ui.h:54
+#: ../data/gui/preferences_window.ui.h:59
 msgid "Play _sounds"
 msgstr "נגן _צלילים"
 
-#: ../data/gui/preferences_window.ui.h:55
+# Manage sound events
+# ניהול _אירועי צליל...
+#: ../data/gui/preferences_window.ui.h:60
 msgid "Ma_nage..."
-msgstr "  ניהו_ל...  "
+msgstr "  נה_ל...  "
 
 # בהיותי
-#: ../data/gui/preferences_window.ui.h:56
+#: ../data/gui/preferences_window.ui.h:61
 msgid "Allow sound when I'm _busy"
 msgstr "התר צלילים כאשר אני במצב _עסוק"
 
-#: ../data/gui/preferences_window.ui.h:57
+#: ../data/gui/preferences_window.ui.h:62
 msgid "Sounds "
 msgstr "צלילים "
 
-#: ../data/gui/preferences_window.ui.h:58
+#: ../data/gui/preferences_window.ui.h:63
 msgid "Notifications"
 msgstr "התראות"
 
-#: ../data/gui/preferences_window.ui.h:59
-msgid ""
-"Gajim can send and receive meta-information related to a conversation you "
-"may have with a contact. Here you can specify which chatstates you want to "
-"display in chat windows."
-msgstr ""
-"ביכולתו של Gajim לשלוח ולקבל מידע-מוצמד (meta-information) הקשור אל דיון אשר "
-"עשוי להיות לך עם איש קשר. כאן נתונה לך האפשרות לציין אילו מצבי שיחה ברצונך "
-"להציג בחלון שיחה."
+#: ../data/gui/preferences_window.ui.h:64
+msgid "Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to display in chat windows."
+msgstr "ביכולתו של Gajim לשלוח ולקבל מידע-מוצמד (meta-information) הקשור אל דיון שעשוי להיות לך עם איש קשר. כאן נתונה לך היכולת לציין אילו מצבי שיחה ברצונך להציג בחלון שיחה."
 
-#: ../data/gui/preferences_window.ui.h:60
+#: ../data/gui/preferences_window.ui.h:65
 msgid "_Display chat state notifications:"
 msgstr "ה_צג התראות מצב שיחה:"
 
-#: ../data/gui/preferences_window.ui.h:61
-msgid ""
-"Gajim can send and receive meta-information related to a conversation you "
-"may have with a contact. Here you can specify which chatstates you want to "
-"send to the other party."
-msgstr ""
-"ביכולתו של Gajim לשלוח ולקבל מידע-מוצמד (meta-information) הקשור אל דיון אשר "
-"עשוי להיות לך עם איש קשר. כאן נתונה לך האפשרות לציין אילו מצבי שיחה ברצונך "
-"לשלוח אל הקצה האחר."
+# אל הקצה האחר
+#: ../data/gui/preferences_window.ui.h:66
+msgid "Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to send to the other party."
+msgstr "ביכולתו של Gajim לשלוח ולקבל מידע-מוצמד (meta-information) הקשור אל דיון שעשוי להיות לך עם איש קשר. כאן נתונה לך היכולת לציין אילו מצבי שיחה ברצונך לשלוח אל הצד האחר."
 
-#: ../data/gui/preferences_window.ui.h:62
+#: ../data/gui/preferences_window.ui.h:67
 msgid "_Send chat state notifications:"
 msgstr "_שלח התראות מצב שיחה:"
 
-#: ../data/gui/preferences_window.ui.h:63
+#: ../data/gui/preferences_window.ui.h:68
 msgid "Chat state notifications "
 msgstr "התראות מצב שיחה "
 
-#: ../data/gui/preferences_window.ui.h:64
+#: ../data/gui/preferences_window.ui.h:69
 msgid "Personal Events"
 msgstr "אירועים אישיים"
 
-#: ../data/gui/preferences_window.ui.h:65
+#: ../data/gui/preferences_window.ui.h:70
 msgid "_Away after:"
 msgstr "נ_עדר כעבור:"
 
-#: ../data/gui/preferences_window.ui.h:66
-msgid ""
-"If checked, Gajim will change status to Away when the computer is unused."
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim ישנה מצב אל נעדר כאשר המחשב לא מצוי בשימוש."
+#: ../data/gui/preferences_window.ui.h:71
+msgid "If checked, Gajim will change status to Away when the computer is unused."
+msgstr "במידה ואפשרות זו מסומנת, Gajim ישנה מצב אל נעדר כאשר המחשב לא מצוי בשימוש."
 
-#: ../data/gui/preferences_window.ui.h:67
+#: ../data/gui/preferences_window.ui.h:72
 msgid "_Not available after:"
 msgstr "לא _זמין כעבור:"
 
 # BUG: a dot at the end
-#: ../data/gui/preferences_window.ui.h:68
-msgid ""
-"If checked, Gajim will change status to Not Available when the computer has "
-"not been used even longer"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim ישנה מצב אל לא זמין כאשר המחשב לא מצוי בשימוש "
-"לזמן ממושך עוד יותר."
+# אפילו לזמן ממושך יותר
+# אפילו לזמן ממושך עוד יותר
+#: ../data/gui/preferences_window.ui.h:73
+msgid "If checked, Gajim will change status to Not Available when the computer has not been used even longer"
+msgstr "במידה ואפשרות זו מסומנת, Gajim ישנה מצב אל לא זמין כאשר המחשב לא מצוי בשימוש לזמן ממושך עוד יותר."
 
-#: ../data/gui/preferences_window.ui.h:69
+#: ../data/gui/preferences_window.ui.h:74
 msgid "minutes"
 msgstr "דקות"
 
-#: ../data/gui/preferences_window.ui.h:70
+# על ידי
+# היה ושדה זה
+# זמן התפוגה שמצוין בערך
+#: ../data/gui/preferences_window.ui.h:75
 msgid ""
 "The auto away status message. If empty, Gajim will not change the current "
 "status message\n"
 "$S will be replaced by previous status message\n"
 "$T will be replaced by auto-away timeout"
 msgstr ""
-"הודעת מצב נעדרות אוטומטית. אם שדה זה ריק, Gajim לא ישנה את הודעת המצב "
-"הנוכחית\n"
+"הודעת מצב הנעדרות האוטומטית. במידה ושדה זה ריק, Gajim לא ישנה את הודעת המצב הנוכחית\n"
 "התווים $S יוחלפו בהודעת מצב קודמת\n"
-"התווים $T יוחלפו על פי זמן תפוגה אשר מצוין עבור auto-away"
+"התווים $T יוחלפו על פי זמן תפוגה של auto-away"
 
-#: ../data/gui/preferences_window.ui.h:73
+#: ../data/gui/preferences_window.ui.h:78
 msgid ""
 "The auto not available status message. If empty, Gajim will not change the "
 "current status message\n"
@@ -2091,297 +2206,277 @@ msgstr ""
 "התווים $S יוחלפו בהודעת מצב קודמת\n"
 "התווים $T יוחלפו על פי זמן תפוגה של auto-not-available"
 
-#: ../data/gui/preferences_window.ui.h:76
+#: ../data/gui/preferences_window.ui.h:81
 msgid "Auto Status "
-msgstr "מצב חיבור אוטומטי "
+msgstr "מצב־חיבור אוטומטי "
 
 # Sign in
 # Sign out
-#: ../data/gui/preferences_window.ui.h:77
+#: ../data/gui/preferences_window.ui.h:82
 msgid "Ask status message when I:"
-msgstr "שאל אותי עבור הודעת מצב חיבור בעת:"
+msgstr "שאל אותי עבור הודעת מצב־חיבור בעת:"
 
-#: ../data/gui/preferences_window.ui.h:78
+#: ../data/gui/preferences_window.ui.h:83
 msgid "Sign _in"
 msgstr "התח_ברות"
 
-#: ../data/gui/preferences_window.ui.h:79
+#: ../data/gui/preferences_window.ui.h:84
 msgid "Sign _out"
 msgstr "הת_נתקות"
 
-#: ../data/gui/preferences_window.ui.h:80
-msgid ""
-"If enabled, Gajim will not ask for a status message. The specified default "
-"message will be used instead."
-msgstr ""
-"במידה ואפשרות זו מופעלת, Gajim לא ישאל עבור הודעת מצב. ההודעה המשתמטת אשר "
-"תצוין תהיה זו שתיכנס לתוקף במקום."
+# שתיכנס לתוקף
+#: ../data/gui/preferences_window.ui.h:85
+msgid "If enabled, Gajim will not ask for a status message. The specified default message will be used instead."
+msgstr "במידה ואפשרות זו מופעלת, Gajim לא ישאל עבור הודעת מצב. ההודעה המשתמטת שתצוין תהיה זו שתיכנס לשימוש במקום."
 
-#: ../data/gui/preferences_window.ui.h:81
+#: ../data/gui/preferences_window.ui.h:86
 msgid "Status Messages "
 msgstr "הודעות מצב "
 
-#: ../data/gui/preferences_window.ui.h:82
+# שמורות
+#: ../data/gui/preferences_window.ui.h:87
 msgid "Preset Status Messages "
-msgstr "הודעות מצב מותאמות "
+msgstr "הודעות מצב ערוכות מראש "
 
-#: ../data/gui/preferences_window.ui.h:83 ../src/config.py:398
+#: ../data/gui/preferences_window.ui.h:88
+#: ../src/config.py:403
 msgid "Status"
-msgstr "מצב חיבור"
+msgstr "מצב־חיבור"
 
-#: ../data/gui/preferences_window.ui.h:84
+#: ../data/gui/preferences_window.ui.h:89
 msgid "Use system _default"
-msgstr "השתמש בברירת מ_חדל מערכת"
+msgstr "השתמש בברירת מ_חדל של מערכת"
 
-#: ../data/gui/preferences_window.ui.h:85
+#: ../data/gui/preferences_window.ui.h:90
 msgid "Chat message:"
 msgstr "הודעת שיחה:"
 
-#: ../data/gui/preferences_window.ui.h:86
+#: ../data/gui/preferences_window.ui.h:91
 msgid "Font "
 msgstr "גופן "
 
-#: ../data/gui/preferences_window.ui.h:87
+#: ../data/gui/preferences_window.ui.h:92
 msgid "Use _transports icons"
 msgstr "השתמש בצלמיות של מו_בילים"
 
-#: ../data/gui/preferences_window.ui.h:88
-msgid ""
-"If checked, Gajim will use protocol-specific status icons. (e.g. A contact "
-"from MSN will have the equivalent msn icon for status online, away, busy, "
-"etc...)"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יעשה שימוש בצלמיות מצב אשר אופייניות לכל "
-"פרוטוקול בהתאמה (למשל: עבור איש קשר אשר מצוי אצל MSN תהיה צלמית מצב msn "
-"שקילה עבור מצב מקוון, נעדר, עסוק, וכו׳)"
+# BUG: e.g.
+# BUG: A dot > see >> . (see below)
+#: ../data/gui/preferences_window.ui.h:93
+msgid "If checked, Gajim will use protocol-specific status icons. (eg. A contact from MSN will have the equivalent msn icon for status online, away, busy, etc...)"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יעשה שימוש בצלמיות מצב שאופייניות לכל פרוטוקול בהתאמה (למשל: עבור איש קשר המצוי אצל MSN תהיה צלמית מצב msn שקילה עבור מצב מקוון, נעדר, עסוק, וכו׳)"
 
-#: ../data/gui/preferences_window.ui.h:89
+# סדרת _צלמיות מצב:
+#: ../data/gui/preferences_window.ui.h:94
 msgid "Status _iconset:"
 msgstr "_צלמיות:"
 
-#: ../data/gui/preferences_window.ui.h:90
+#: ../data/gui/preferences_window.ui.h:95
 msgid "Configure color and font of the interface"
 msgstr "עיצוב גופן וצבע של הממשק"
 
-#: ../data/gui/preferences_window.ui.h:91
+#: ../data/gui/preferences_window.ui.h:96
 msgid "T_heme:"
 msgstr "מו_טיב:"
 
-#: ../data/gui/preferences_window.ui.h:92
+# ערכאות נושא
+#: ../data/gui/preferences_window.ui.h:97
 msgid "Themes "
-msgstr "ערכאות נושא "
+msgstr "מוטיבים "
 
-#: ../data/gui/preferences_window.ui.h:93
+#: ../data/gui/preferences_window.ui.h:98
 msgid "Contact's nickname:"
 msgstr "שם כינוי של איש קשר:"
 
-#: ../data/gui/preferences_window.ui.h:94
+#: ../data/gui/preferences_window.ui.h:99
 msgid "Your nickname:"
-msgstr "שם כינוי:"
+msgstr "שם כינוייך:"
 
-#: ../data/gui/preferences_window.ui.h:95
+#: ../data/gui/preferences_window.ui.h:100
 msgid "_Status message:"
 msgstr "הודעת _מצב:"
 
-#: ../data/gui/preferences_window.ui.h:96
+#: ../data/gui/preferences_window.ui.h:101
 msgid "_URL highlight:"
 msgstr "הבלטת _URL:"
 
+# איפוס אל צבעי ברירת המחדל
 # צבעים משתמטים
-#: ../data/gui/preferences_window.ui.h:97
+#: ../data/gui/preferences_window.ui.h:102
 msgid "_Reset to Default Colors"
-msgstr "_אפס צבעים אל ברירת מחדל"
+msgstr "_איפוס צבעים"
 
-#: ../data/gui/preferences_window.ui.h:98
+#: ../data/gui/preferences_window.ui.h:103
 msgid "Contact's message:"
 msgstr "הודעת איש קשר:"
 
-#: ../data/gui/preferences_window.ui.h:99
+#: ../data/gui/preferences_window.ui.h:104
 msgid "Your message:"
 msgstr "הודעתך:"
 
-#: ../data/gui/preferences_window.ui.h:100
-msgid "Group chat highlight:"
-msgstr "הבלטת שיחת קבוצה:"
-
-#: ../data/gui/preferences_window.ui.h:101
+#: ../data/gui/preferences_window.ui.h:105
 msgid "Chat Line Colors "
 msgstr "צבעי שורות שיחה "
 
-#: ../data/gui/preferences_window.ui.h:102
+#: ../data/gui/preferences_window.ui.h:106
 msgid "Style"
 msgstr "סגנון"
 
-# התקן
-#: ../data/gui/preferences_window.ui.h:103
+#: ../data/gui/preferences_window.ui.h:107
 msgid "Audio input device"
-msgstr "מכשיר קלט שמע"
+msgstr "תקן קלט שמע"
 
-#: ../data/gui/preferences_window.ui.h:104
+#: ../data/gui/preferences_window.ui.h:108
 msgid "Audio output device"
-msgstr "מכשיר פלט שמע"
+msgstr "תקן פלט שמע"
 
-#: ../data/gui/preferences_window.ui.h:105
+#: ../data/gui/preferences_window.ui.h:109
 msgid "Audio "
 msgstr "שמע "
 
-#: ../data/gui/preferences_window.ui.h:106
+#: ../data/gui/preferences_window.ui.h:110
 msgid "Video input device"
-msgstr "מכשיר קלט וידאו"
+msgstr "תקן קלט וידאו"
 
-#: ../data/gui/preferences_window.ui.h:107
+#: ../data/gui/preferences_window.ui.h:111
 msgid "Video output device"
-msgstr "מכשיר פלט וידאו"
+msgstr "תקן פלט וידאו"
 
-#: ../data/gui/preferences_window.ui.h:108
+#: ../data/gui/preferences_window.ui.h:112
 msgid "Video framerate"
 msgstr "תדר וידאו"
 
-#: ../data/gui/preferences_window.ui.h:109
+#: ../data/gui/preferences_window.ui.h:113
 msgid "Video size"
 msgstr "גודל וידאו"
 
-#: ../data/gui/preferences_window.ui.h:110
-msgid "View own video source"
-msgstr "הצג מקור וידאו עצמי"
-
-#: ../data/gui/preferences_window.ui.h:111
+#: ../data/gui/preferences_window.ui.h:114
 msgid "Video "
 msgstr "וידאו "
 
-#: ../data/gui/preferences_window.ui.h:112
+#: ../data/gui/preferences_window.ui.h:115
 msgid "STUN server:"
 msgstr "שרת STUN:"
 
-#: ../data/gui/preferences_window.ui.h:113
+#: ../data/gui/preferences_window.ui.h:116
 msgid "(example: stunserver.org) "
 msgstr "(דוגמא: stunserver.org) "
 
-#: ../data/gui/preferences_window.ui.h:114
+#: ../data/gui/preferences_window.ui.h:117
 msgid ""
 "STUN server hostname. If none given, Gajim will try\n"
 "to discover one from server."
 msgstr ""
 "שם מארח של שרת STUN. במידה ולא ניתן, Gajim ינסה\n"
-"למצוא אחד מתוך שרת."
+"למצוא אחד מן שרת נתון."
 
-#: ../data/gui/preferences_window.ui.h:116
+#: ../data/gui/preferences_window.ui.h:119
 msgid "Connection "
 msgstr "חיבור "
 
-#: ../data/gui/preferences_window.ui.h:117 ../src/features_window.py:102
+#: ../data/gui/preferences_window.ui.h:120
+#: ../src/features_window.py:102
 msgid "Audio / Video"
 msgstr "שמע \\ וידאו"
 
-#: ../data/gui/preferences_window.ui.h:118
+#: ../data/gui/preferences_window.ui.h:121
 msgid "_File manager:"
 msgstr "מנהל _קבצים:"
 
-#: ../data/gui/preferences_window.ui.h:119
+#: ../data/gui/preferences_window.ui.h:122
 msgid "_Mail client:"
 msgstr "לקוח _דואר:"
 
-#: ../data/gui/preferences_window.ui.h:120
+#: ../data/gui/preferences_window.ui.h:123
 msgid "_Browser:"
 msgstr "דפדפן:"
 
 #. a header for custom browser/client/file manager. so translate sth like: Custom Settings
-#: ../data/gui/preferences_window.ui.h:122
+#: ../data/gui/preferences_window.ui.h:125
 msgid "Custom "
 msgstr "התאמה אישית "
 
-#: ../data/gui/preferences_window.ui.h:123
+#: ../data/gui/preferences_window.ui.h:126
 msgid "Applications "
 msgstr "יישומים "
 
-#: ../data/gui/preferences_window.ui.h:124
+#: ../data/gui/preferences_window.ui.h:127
 msgid "_Ignore events from contacts not in the roster"
-msgstr "הת_עלם מן אירועים מאת אנשי קשר אשר לא נוכחים ברשימה"
+msgstr "הת_עלם מן אירועים מאת אנשי קשר שלא נוכחים ברשימה"
 
 # BUG: a dot at the end
-#: ../data/gui/preferences_window.ui.h:125
-msgid ""
-"If checked, Gajim will ignore incoming events from unauthorized contacts. "
-"Use with caution, because it blocks all messages from any contact that is "
-"not in the roster"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יתעלם מן אירועים נכנסים מאת אנשי קשר לא "
-"מורשים. יש לעשות שימוש זהיר באפשרות זו, משום שזו חוסמת את כל ההודעות מכל איש "
-"קשר אשר לא מצוי ברשימה"
+#: ../data/gui/preferences_window.ui.h:128
+msgid "If checked, Gajim will ignore incoming events from unauthorized contacts. Use with caution, because it blocks all messages from any contact that is not in the roster"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יתעלם מן אירועים נכנסים מאת אנשי קשר לא מורשים. יש לעשות שימוש זהיר באפשרות זו, משום שזו חוסמת את כל ההודעות מכל איש קשר שלא מצוי ברשימה"
 
-#: ../data/gui/preferences_window.ui.h:126
+#: ../data/gui/preferences_window.ui.h:129
 msgid "Allow client / _OS information to be sent"
 msgstr "התר שליחת _מידע לקוח \\ מערכת הפעלה"
 
 # BUG: a dot at the end
 # BUG: add Client too
-#: ../data/gui/preferences_window.ui.h:127
-msgid ""
-"If checked, Gajim will allow others to detect the operation system you are "
-"using"
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יתיר לאחרים לאתר את מערכת ההפעלה אשר מצויה "
-"תחת שימושך"
+#: ../data/gui/preferences_window.ui.h:130
+msgid "If checked, Gajim will allow others to detect the operation system you are using"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יתיר לאחרים לאתר את סוג הלקוח ואת סוג מערכת ההפעלה שבשימושך"
 
-#: ../data/gui/preferences_window.ui.h:128
+#: ../data/gui/preferences_window.ui.h:131
 msgid "Allow local system time information to be sent"
 msgstr "התר שליחת _זמן מערכת מקומי"
 
 # BUG: a dot at the end
-#: ../data/gui/preferences_window.ui.h:129
+#: ../data/gui/preferences_window.ui.h:132
 msgid "If checked, Gajim will allow others to detect the time on your system"
-msgstr "במידה ואפשרות זו מסומנת, Gajim יתיר לאחרים לאתר את הזמן של המערכת שלך"
+msgstr "במידה ואפשרות זו מסומנת, Gajim יתיר לאחרים לאתר את הזמן שבמערכת שלך"
 
-#: ../data/gui/preferences_window.ui.h:130
+#: ../data/gui/preferences_window.ui.h:133
 msgid "Log _encrypted chat session"
 msgstr "רשום סשן שיחה מו_צפן ברשומות ההיסטוריה"
 
 # BUG: encryption, the
 # אלמלא כן
-#: ../data/gui/preferences_window.ui.h:131
-msgid ""
-"If checked, Gajim will keep logs for encrypted messages. Please note that "
-"when using E2E encryption the remote party has to agree on logging, else the "
-"messages will not be logged."
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim ישמור רשומות עבור הודעות מוצפנות. אנא קח "
-"לתשומת לבך כי כאשר הצפנת E2E (קצה אל קצה) נמצאת בשימוש, הצד המרוחק מוכרח "
-"להסכים לרישום השיחה, אחרת ההודעות לא יירשמו."
+#: ../data/gui/preferences_window.ui.h:134
+msgid "If checked, Gajim will keep logs for encrypted messages. Please note that when using E2E encryption the remote party has to agree on logging, else the messages will not be logged."
+msgstr "במידה ואפשרות זו מסומנת, Gajim ישמור רשומות עבור הודעות מוצפנות. נא לקחת לתשומת לבך שכאשר הצפנת קצה אל קצה (E2E) נמצאת בשימוש, הצד המרוחק מוכרח להסכים לרישום השיחה, אחרת ההודעות לא ירשמו."
 
 # חוסר מעש
-#: ../data/gui/preferences_window.ui.h:132
+#: ../data/gui/preferences_window.ui.h:135
 msgid "Allow my _idle time to be sent"
 msgstr "התר שליחת משך זמן _חוסר פעילות"
 
-#: ../data/gui/preferences_window.ui.h:133
+#: ../data/gui/preferences_window.ui.h:136
 msgid "Global proxy:"
-msgstr "ציר גלובלי:"
+msgstr "מתווך גלובלי:"
 
-#: ../data/gui/preferences_window.ui.h:135
+#: ../data/gui/preferences_window.ui.h:138
 msgid "Privacy "
 msgstr "פרטיות "
 
-#: ../data/gui/preferences_window.ui.h:136
+#: ../data/gui/preferences_window.ui.h:139
 msgid "_Log status changes of contacts"
-msgstr "רשום _שינויים של מצב חיבור של אנשי קשר"
+msgstr "רשום _שינויים של מצב־חיבור של אנשי קשר"
 
-#: ../data/gui/preferences_window.ui.h:137
+# ברירת המחדל
+#: ../data/gui/preferences_window.ui.h:140
 msgid "Check on startup if Gajim is the _default Jabber client"
 msgstr "בדוק בעת הפעלה אם Gajim הינו לקוח _Jabber ברירת מחדל"
 
-#: ../data/gui/preferences_window.ui.h:139
+#: ../data/gui/preferences_window.ui.h:142
 msgid "_Open..."
 msgstr "_פתיחה..."
 
-#: ../data/gui/preferences_window.ui.h:140
+#: ../data/gui/preferences_window.ui.h:143
 msgid "Advanced Configuration Editor "
 msgstr "עורך תצורה מתקדם "
 
-#: ../data/gui/preferences_window.ui.h:141
+#: ../data/gui/preferences_window.ui.h:144
 msgid "Advanced"
 msgstr "מתקדם"
 
-#: ../data/gui/privacy_list_window.ui.h:1 ../src/dialogs.py:4121
+#: ../data/gui/privacy_lists_window.ui.h:1
+msgid "Privacy Lists:"
+msgstr "רשימות פרטיות:"
+
+#: ../data/gui/privacy_list_window.ui.h:1
+#: ../src/dialogs.py:4023
 msgid "Privacy List"
 msgstr "רשימת פרטיות"
 
@@ -2401,9 +2496,10 @@ msgstr "פעילה בכל אתחול"
 msgid "List of rules "
 msgstr "רשימת כללים "
 
+# הוספת / הסרת חוק
 #: ../data/gui/privacy_list_window.ui.h:6
 msgid "Add / Edit a rule "
-msgstr "הוספת \\ הסרת כלל "
+msgstr "הוספה \\ הסרה של כלל "
 
 # להתיר
 #: ../data/gui/privacy_list_window.ui.h:7
@@ -2416,9 +2512,8 @@ msgstr "לאסור"
 
 #: ../data/gui/privacy_list_window.ui.h:9
 msgid "JabberID"
-msgstr "מזהה Jabber"
+msgstr "JID"
 
-# אשר
 #: ../data/gui/privacy_list_window.ui.h:10
 msgid "all in the group"
 msgstr "כל מי שבקבוצה"
@@ -2447,6 +2542,7 @@ msgstr "לצפות במצב שלי"
 msgid "to send me status"
 msgstr "לשלוח אלי מצב"
 
+# Can I write subscriptions instead?
 #: ../data/gui/privacy_list_window.ui.h:17
 msgid "All (including subscription)"
 msgstr "הכל (כולל הרשמה)"
@@ -2471,10 +2567,6 @@ msgstr "מן"
 msgid "to"
 msgstr "אל"
 
-#: ../data/gui/privacy_lists_window.ui.h:1
-msgid "Privacy Lists:"
-msgstr "רשימות פרטיות:"
-
 #. Family Name
 #: ../data/gui/profile_window.ui.h:3
 #: ../data/gui/vcard_information_window.ui.h:17
@@ -2521,6 +2613,10 @@ msgstr "רחוב: "
 msgid "City: "
 msgstr "עיר: "
 
+# Changed to District instead of State.
+# Reason: Most of the Hebrew speakers, who probably going to be Israelis, would find the word District (the way the big parts of Israel are parted) more attractive.
+# State = מדינה
+# District = מחוז , אזור
 #: ../data/gui/profile_window.ui.h:15
 #: ../data/gui/vcard_information_window.ui.h:29
 msgid "State: "
@@ -2585,6 +2681,7 @@ msgstr "דוא״ל: "
 msgid "Avatar: "
 msgstr "אווטאר: "
 
+# לחץ כדי להגדיר אווטאר
 #: ../data/gui/profile_window.ui.h:28
 msgid "Click to set your avatar"
 msgstr "לחץ כדי לקבוע אווטאר"
@@ -2627,11 +2724,11 @@ msgstr "אודות"
 
 #: ../data/gui/remove_account_window.ui.h:1
 msgid "Remove account _only from Gajim"
-msgstr "להסיר חשבון מתוך Gajim _בלבד"
+msgstr "להסיר חשבון מן Gajim _בלבד"
 
 #: ../data/gui/remove_account_window.ui.h:2
 msgid "Remove account from Gajim and from _server"
-msgstr "להסיר חשבון מתוך Gajim וגם מתוך _שרת"
+msgstr "להסיר חשבון מן Gajim וגם מן _שרת"
 
 #: ../data/gui/remove_account_window.ui.h:3
 msgid "What do you want to do? "
@@ -2639,8 +2736,10 @@ msgstr "מה ברצונך לעשות? "
 
 #. Remove group
 #. Remove
-#: ../data/gui/remove_account_window.ui.h:4 ../src/roster_window.py:5829
-#: ../src/roster_window.py:5954 ../src/roster_window.py:6084
+#: ../data/gui/remove_account_window.ui.h:4
+#: ../src/roster_window.py:5881
+#: ../src/roster_window.py:6006
+#: ../src/roster_window.py:6136
 msgid "_Remove"
 msgstr "הס_ר"
 
@@ -2672,9 +2771,10 @@ msgstr "_פעולות"
 
 #: ../data/gui/roster_window.ui.h:6
 msgid "Add _Contact..."
-msgstr "הוספת _איש קשר..."
+msgstr "הוסף _איש קשר..."
 
-#: ../data/gui/roster_window.ui.h:9 ../src/disco.py:1558
+#: ../data/gui/roster_window.ui.h:9
+#: ../src/disco.py:1519
 msgid "_Edit"
 msgstr "ע_ריכה"
 
@@ -2682,6 +2782,7 @@ msgstr "ע_ריכה"
 msgid "_Accounts"
 msgstr "_חשבונות"
 
+# _מידע אישי
 #: ../data/gui/roster_window.ui.h:11
 msgid "Profile, A_vatar"
 msgstr "_דיוקן, אווטאר"
@@ -2750,29 +2851,32 @@ msgstr "חיפוש"
 # אחזור
 #: ../data/gui/search_window.ui.h:2
 msgid "Please wait while retrieving search form..."
-msgstr "אנא המתן בעת אחזרת טופס חיפוש..."
+msgstr "נא להמתין בעת אחזרת תבנית חיפוש..."
 
 #: ../data/gui/search_window.ui.h:3
 msgid "_Add contact"
 msgstr "הוסף _איש קשר"
 
 #. Information
-#: ../data/gui/search_window.ui.h:4 ../src/roster_window.py:6096
+#: ../data/gui/search_window.ui.h:4
+#: ../src/roster_window.py:6148
 msgid "_Information"
 msgstr "_מידע"
 
-#: ../data/gui/search_window.ui.h:5 ../src/disco.py:1408
+#: ../data/gui/search_window.ui.h:5
+#: ../src/disco.py:1372
 msgid "_Search"
 msgstr "_חפש"
 
 #: ../data/gui/service_discovery_window.ui.h:1
 msgid "G_o"
-msgstr "ה_משך"
+msgstr "מ_עבר"
 
 #: ../data/gui/service_discovery_window.ui.h:2
 msgid "_Address:"
 msgstr "_כתובת:"
 
+# הרשמה אל
 # Register = רישום
 # Subscribe = הרשמה
 #: ../data/gui/service_registration_window.ui.h:1
@@ -2789,7 +2893,11 @@ msgstr "אל:"
 
 #: ../data/gui/single_message_window.ui.h:5
 msgid "Sen_d"
-msgstr "של_ח"
+msgstr "שלי_ח"
+
+#: ../data/gui/single_message_window.ui.h:6
+msgid "Send message"
+msgstr "שלח הודעה"
 
 #: ../data/gui/single_message_window.ui.h:7
 msgid "_Reply"
@@ -2803,6 +2911,7 @@ msgstr "מענה להודעה"
 msgid "_Send & Close"
 msgstr "_שלח וסגור"
 
+# BUG: Sends ?
 #: ../data/gui/single_message_window.ui.h:10
 msgid "Send message and close window"
 msgstr "שליחת הודעה וסגירת החלון"
@@ -2821,7 +2930,6 @@ msgid ""
 "connected"
 msgstr "איסור הרשאות מן איש קשר כך שהוא או היא לא יוכלו לדעת מתי הינך מחובר"
 
-# הס_מך
 #: ../data/gui/subscription_request_window.ui.h:6
 msgid "Au_thorize"
 msgstr "אש_ר"
@@ -2834,9 +2942,10 @@ msgstr "הענקת הרשאה אל איש קשר זה כדי שהוא או הי
 msgid "Synchronise contacts"
 msgstr "סנכרן אנשי קשר"
 
+# שאיתו
 #: ../data/gui/synchronise_select_account_dialog.ui.h:2
 msgid "Select the account with which you want to synchronise"
-msgstr "בחירת החשבון אשר עמו ברצונך לסנכרן"
+msgstr "בחירת החשבון שעמו ברצונך להסתנכרן"
 
 #: ../data/gui/synchronise_select_contacts_dialog.ui.h:1
 msgid "Synchronise : select contacts"
@@ -2848,7 +2957,7 @@ msgstr "בחירת אנשי הקשר אותם ברצונך לסנכרן"
 
 #: ../data/gui/systray_context_menu.ui.h:1
 msgid "Sta_tus"
-msgstr "_מצב חיבור"
+msgstr "_מצב־חיבור"
 
 #: ../data/gui/systray_context_menu.ui.h:3
 msgid "_Group Chat"
@@ -2866,6 +2975,7 @@ msgstr "הצג _אירועים ממתינים"
 msgid "Mute Sounds"
 msgstr "דומם _צלילים"
 
+# מידע אישי
 #: ../data/gui/vcard_information_window.ui.h:1
 #: ../data/gui/zeroconf_information_window.ui.h:1
 msgid "Contact Information"
@@ -2873,7 +2983,7 @@ msgstr "מידע איש קשר"
 
 #: ../data/gui/vcard_information_window.ui.h:2
 msgid "Jabber ID: "
-msgstr "מזהה Jabber: "
+msgstr "JID: "
 
 #: ../data/gui/vcard_information_window.ui.h:3
 msgid "Resource: "
@@ -2891,6 +3001,7 @@ msgstr "לקוח: "
 msgid "System: "
 msgstr "מערכת: "
 
+# זמן איש קשר
 #: ../data/gui/vcard_information_window.ui.h:7
 msgid "Contact time: "
 msgstr "זמן: "
@@ -2899,9 +3010,10 @@ msgstr "זמן: "
 msgid "User avatar: "
 msgstr "אווטאר משתמש: "
 
+# Changed to: The avatar which has been set
 #: ../data/gui/vcard_information_window.ui.h:9
 msgid "Configured avatar: "
-msgstr "אווטאר מוגדר: "
+msgstr "האווטאר שהוגדר: "
 
 #. Family Name
 #: ../data/gui/vcard_information_window.ui.h:11
@@ -2932,25 +3044,26 @@ msgstr "הערות"
 msgid "Jabber Traffic "
 msgstr "תעבורת Jabber "
 
+# החבאת
 #: ../data/gui/xml_console_window.ui.h:4
 msgid "Hide IN stanzas"
-msgstr "הסתר סטנזות IN"
+msgstr "הסתרת סטנזות IN"
 
 #: ../data/gui/xml_console_window.ui.h:5
 msgid "Hide OUT stanzas"
-msgstr "הסתר סטנזות OUT"
+msgstr "הסתרת סטנזות OUT"
 
 #: ../data/gui/xml_console_window.ui.h:6
 msgid "Hide Presence stanzas"
-msgstr "הסתר סטנזות נוכחות"
+msgstr "הסתרת סטנזות נוכחות"
 
 #: ../data/gui/xml_console_window.ui.h:7
 msgid "Hide IQ stanzas"
-msgstr "הסתר סטנזות IQ"
+msgstr "הסתרת סטנזות IQ"
 
 #: ../data/gui/xml_console_window.ui.h:8
 msgid "Hide Message stanzas"
-msgstr "הסתר סטנזות הודעה"
+msgstr "הסתרת סטנזות הודעה"
 
 #: ../data/gui/xml_console_window.ui.h:9
 msgid "Filter "
@@ -2965,6 +3078,7 @@ msgstr ""
 msgid "Info/Query"
 msgstr "מידע/שאילתא"
 
+# הופעה
 #: ../data/gui/xml_console_window.ui.h:13
 msgid "_Presence"
 msgstr "_נוכחות"
@@ -2979,11 +3093,11 @@ msgstr "קלט XML "
 
 #: ../data/gui/zeroconf_context_menu.ui.h:2
 msgid "_Modify Account..."
-msgstr "ה_תאמת חשבון..."
+msgstr "ה_תאם חשבון..."
 
 #: ../data/gui/zeroconf_information_window.ui.h:2
 msgid "Local jid:"
-msgstr "JID מקומית:"
+msgstr "JID מקומית:"
 
 #: ../data/gui/zeroconf_information_window.ui.h:3
 msgid "Resource:"
@@ -2999,51 +3113,48 @@ msgstr "אישי"
 
 #: ../data/gajim.desktop.in.in.h:2
 msgid "Jabber IM Client"
-msgstr "לקוח מסרים מידיים Jabber"
+msgstr "לקוח מסרים מיידיים ג׳אבּר"
 
 #: ../data/gajim.desktop.in.in.h:3
 msgid "A GTK+ Jabber client"
-msgstr "לקוח ג׳אבּר GTK+"
+msgstr "לקוח ג׳אבּר GTK+"
 
-#: ../data/gajim.desktop.in.in.h:4
-msgid "chat;messaging;im;jabber;xmpp;bonjour;voip"
-msgstr "צ'אט;מסרים;מסנג'ר;jabber;xmpp;bonjour;voip"
-
-#: ../src/adhoc_commands.py:325
+#: ../src/adhoc_commands.py:323
 msgid "Cancel confirmation"
 msgstr "אימות ביטול"
 
 # מצוי/ה במהלך
-#: ../src/adhoc_commands.py:326
-msgid ""
-"You are in process of executing command. Do you really want to cancel it?"
-msgstr "הינך בתוך עיצומו של תהליך הרצת פקודה. האם ברצונך לבטלו?"
+#: ../src/adhoc_commands.py:324
+msgid "You are in process of executing command. Do you really want to cancel it?"
+msgstr "הינך באמצע תהליך של הרצת פקודה. האם ברצונך לבטלו?"
 
-#: ../src/adhoc_commands.py:372
+#: ../src/adhoc_commands.py:370
 msgid "Invalid Form"
-msgstr "טופס שגוי"
+msgstr "תבנית שגויה"
 
-#: ../src/adhoc_commands.py:373
+#: ../src/adhoc_commands.py:371
 msgid "The form is not filled correctly."
-msgstr "הטופס אינו ממולא כראוי."
+msgstr "התבנית לא מולאה כראוי."
 
-#: ../src/adhoc_commands.py:392 ../src/adhoc_commands.py:416
+#: ../src/adhoc_commands.py:390
+#: ../src/adhoc_commands.py:414
 msgid "Service sent malformed data"
-msgstr "שירות שלח מידע פגום"
+msgstr "השירות שלח מידע פגום"
 
-#: ../src/adhoc_commands.py:401
+#: ../src/adhoc_commands.py:399
 msgid "Service changed the session identifier."
-msgstr "שירות שינה את מזהה הסשן."
+msgstr "השירות שינה את המזהה של הסשן."
 
-#: ../src/adhoc_commands.py:421
+# RTL, NEEDS
+#: ../src/adhoc_commands.py:419
 #, python-format
 msgid "%s - Ad-hoc Commands - Gajim"
 msgstr "%s - פקודות ייעודיות (Ad-hoc) - Gajim"
 
 #. when stanza doesn't have error description
-#: ../src/adhoc_commands.py:516
+#: ../src/adhoc_commands.py:514
 msgid "Service returned an error."
-msgstr "שירות החזיר שגיאה."
+msgstr "השירות החזיר שגיאה."
 
 #. For i18n
 #: ../src/advanced_configuration_window.py:92
@@ -3066,7 +3177,8 @@ msgstr "ספרה"
 msgid "Text"
 msgstr "תמליל"
 
-#: ../src/advanced_configuration_window.py:97 ../src/chat_control.py:1065
+#: ../src/advanced_configuration_window.py:97
+#: ../src/chat_control.py:1069
 msgid "Color"
 msgstr "צבע"
 
@@ -3078,17 +3190,17 @@ msgstr "שם העדפה"
 msgid "Value"
 msgstr "ערך"
 
-#: ../src/advanced_configuration_window.py:124
+#: ../src/advanced_configuration_window.py:122
 msgid "Type"
 msgstr "טיפוס"
 
 #. we talk about option description in advanced configuration editor
-#: ../src/advanced_configuration_window.py:179
+#: ../src/advanced_configuration_window.py:177
 msgid "(None)"
-msgstr "(אין)"
+msgstr "(ללא)"
 
 # Needs to be tested
-#: ../src/advanced_configuration_window.py:305
+#: ../src/advanced_configuration_window.py:303
 msgid "Hidden"
 msgstr "מוסתר"
 
@@ -3096,181 +3208,292 @@ msgstr "מוסתר"
 #, python-format
 msgid "You have received new entries (and %d not displayed):"
 msgid_plural "You have received new entries (and %d not displayed):"
-msgstr[0] "קיבלת רשומות חדשות (ועוד %d אשר לא מוצגת):"
-msgstr[1] "קיבלת רשומות חדשות (ועוד %d אשר לא מוצגות):"
+msgstr[0] "קיבלת רשומות חדשות (ועוד %d שלא מוצגת):"
+msgstr[1] "קיבלת רשומות חדשות (ועוד %d שלא מוצגות):"
 
-#: ../src/chat_control.py:209
+#. the next script, executed in the "po" directory,
+#. generates the following list.
+#. #!/bin/sh
+#. LANG=$(for i in *.po; do j=${i/.po/}; echo -n "_('"$j"')":" '"$j"', " ; done)
+#. echo "{_('en'):'en'",$LANG"}"
+#: ../src/chat_control.py:86
+msgid "English"
+msgstr "אנגלית"
+
+#: ../src/chat_control.py:86
+msgid "Belarusian"
+msgstr "בלארוסית"
+
+#: ../src/chat_control.py:86
+msgid "Bulgarian"
+msgstr "בולגרית"
+
+#: ../src/chat_control.py:87
+msgid "Breton"
+msgstr "ברטונית"
+
+#: ../src/chat_control.py:87
+msgid "Czech"
+msgstr "צ׳כית"
+
+#: ../src/chat_control.py:87
+msgid "German"
+msgstr "גרמנית"
+
+#: ../src/chat_control.py:88
+msgid "Greek"
+msgstr "יוונית"
+
+#: ../src/chat_control.py:88
+msgid "British"
+msgstr "בריטית"
+
+#: ../src/chat_control.py:88
+msgid "Esperanto"
+msgstr "אספרנטו"
+
+#: ../src/chat_control.py:89
+msgid "Spanish"
+msgstr "ספרדית"
+
+#: ../src/chat_control.py:89
+msgid "Basque"
+msgstr "בסקית"
+
+#: ../src/chat_control.py:89
+msgid "French"
+msgstr "צרפתית"
+
+#: ../src/chat_control.py:90
+msgid "Croatian"
+msgstr "קרואטית"
+
+#: ../src/chat_control.py:90
+msgid "Italian"
+msgstr "איטלקית"
+
+# b = book language
+#: ../src/chat_control.py:90
+msgid "Norwegian (b)"
+msgstr "נורבגית (ס)"
+
+#: ../src/chat_control.py:91
+msgid "Dutch"
+msgstr "הולנדית"
+
+#: ../src/chat_control.py:91
+msgid "Norwegian"
+msgstr "נורבגית"
+
+#: ../src/chat_control.py:91
+msgid "Polish"
+msgstr "פולנית"
+
+#: ../src/chat_control.py:92
+msgid "Portuguese"
+msgstr "פורטוגזית"
+
+#: ../src/chat_control.py:92
+msgid "Brazilian Portuguese"
+msgstr "פורטוגזית ברזילאית"
+
+#: ../src/chat_control.py:93
+msgid "Russian"
+msgstr "רוסית"
+
+#: ../src/chat_control.py:93
+msgid "Serbian"
+msgstr "סרבית"
+
+#: ../src/chat_control.py:93
+msgid "Slovak"
+msgstr "סלובקית"
+
+#: ../src/chat_control.py:94
+msgid "Swedish"
+msgstr "שוודית"
+
+#: ../src/chat_control.py:94
+msgid "Chinese (Ch)"
+msgstr "סינית (Ch)"
+
+#: ../src/chat_control.py:94
+msgid "Hebrew"
+msgstr "עברית"
+
+#: ../src/chat_control.py:237
 msgid "Ping?"
 msgstr "פינג?"
 
-#: ../src/chat_control.py:214
+#: ../src/chat_control.py:242
 #, python-format
 msgid "Pong! (%s s.)"
-msgstr "פונג! (%s ש.)"
+msgstr "פונג! (%s s.)"
 
-#: ../src/chat_control.py:219
+#: ../src/chat_control.py:247
 msgid "Error."
 msgstr "שגיאה."
 
+#: ../src/chat_control.py:582
+msgid "Spelling language"
+msgstr "שפת איות"
+
 #. we are not connected
-#: ../src/chat_control.py:800
+#: ../src/chat_control.py:614
+#: ../src/chat_control.py:830
 msgid "A connection is not available"
 msgstr "חיבור אינו זמין"
 
-#: ../src/chat_control.py:801
+#: ../src/chat_control.py:615
+#: ../src/chat_control.py:831
 msgid "Your message can not be sent until you are connected."
-msgstr "הודעתך לא יכולה להישלח עד אשר תהיה מחובר."
+msgstr "ההודעה לא יכולה להישלח עד שתהיה מחובר."
 
-#: ../src/chat_control.py:1047
+#: ../src/chat_control.py:1051
 msgid "Underline"
 msgstr "קו תחתון"
 
-#: ../src/chat_control.py:1048
+#: ../src/chat_control.py:1052
 msgid "Strike"
 msgstr "קו חוצה"
 
-#: ../src/chat_control.py:1071
+#: ../src/chat_control.py:1075
 msgid "Font"
 msgstr "גופן"
 
 # Reset
-#: ../src/chat_control.py:1080
+#: ../src/chat_control.py:1084
 msgid "Clear formating"
 msgstr "איפוס עיצוב"
 
-#: ../src/chat_control.py:1157
+#: ../src/chat_control.py:1161
 msgid "Really send file?"
 msgstr "האם באמת לשלוח קובץ?"
 
-#: ../src/chat_control.py:1158
+#: ../src/chat_control.py:1162
 #, python-format
 msgid "If you send a file to %s, he/she will know your real Jabber ID."
-msgstr "אם תשלח קובץ אל %s, הוא/היא ידעו את כתובתך (מזהה Jabber) המלאה."
+msgstr "אם תשלח קובץ אל %s, הוא/היא ידעו את כתובתך (JID) המלאה."
 
-#: ../src/chat_control.py:1665 ../src/chat_control.py:2249
-msgid "OpenPGP encryption enabled"
-msgstr "הצפנת OpenPGP מאופשרת"
-
-#: ../src/chat_control.py:1727
-msgid "Formattings are not available when GPG is active"
-msgstr "עיצובים אינם נתמכים כאשר GPG הינו פעיל"
-
-#: ../src/chat_control.py:1730
-msgid "This contact does not support HTML"
-msgstr "איש קשר זה לא תומך HTML"
+# Changed enabled with activated
+# Enabled = מאופשרת
+# Activated = מופעלת
+#: ../src/chat_control.py:1645
+#: ../src/chat_control.py:2190
+msgid "GPG encryption enabled"
+msgstr "הצפנת GPG מופעלת"
 
 #. Add to roster
-#: ../src/chat_control.py:1735 ../src/common/contacts.py:152
-#: ../src/common/contacts.py:273 ../src/common/helpers.py:67
-#: ../src/common/helpers.py:261 ../src/dialogs.py:1105 ../src/dialogs.py:2310
-#: ../src/dialogs.py:2339 ../src/dialogs.py:3551 ../src/gui_interface.py:485
-#: ../src/gui_menu_builder.py:268 ../src/gui_menu_builder.py:423
-#: ../src/roster_window.py:771 ../src/roster_window.py:1732
-#: ../src/roster_window.py:1734 ../src/roster_window.py:2082
-#: ../src/roster_window.py:3618 ../src/roster_window.py:3645
+#: ../src/chat_control.py:1699
+#: ../src/common/contacts.py:152
+#: ../src/common/contacts.py:273
+#: ../src/common/helpers.py:67
+#: ../src/common/helpers.py:261
+#: ../src/dialogs.py:1101
+#: ../src/dialogs.py:2266
+#: ../src/dialogs.py:2295
+#: ../src/gui_interface.py:484
+#: ../src/gui_menu_builder.py:262
+#: ../src/gui_menu_builder.py:416
+#: ../src/roster_window.py:767
+#: ../src/roster_window.py:1722
+#: ../src/roster_window.py:1724
+#: ../src/roster_window.py:2072
+#: ../src/roster_window.py:3689
+#: ../src/roster_window.py:3716
 msgid "Not in Roster"
 msgstr "לא ברשימה"
 
-#. change tooltip text for audio and video buttons if python-farstream is
-#. not installed
-#: ../src/chat_control.py:1760
-#: ../src/command_system/implementation/standard.py:215
-msgid "Toggle audio session"
-msgstr "הפעלת סשן שמע"
-
-#: ../src/chat_control.py:1761
-#: ../src/command_system/implementation/standard.py:225
-msgid "Toggle video session"
-msgstr "הפעלת סשן וידאו"
-
-#: ../src/chat_control.py:1763
+#: ../src/chat_control.py:1727
 msgid "Feature not available, see Help->Features"
 msgstr "תכונה זו לא זמינה, ראו עזרה->תכונות."
 
-#: ../src/chat_control.py:1767
+#: ../src/chat_control.py:1731
 msgid "Feature not supported by remote client"
 msgstr "תכונה אינה נתמכת על ידי לקוח מרוחק"
 
-#: ../src/chat_control.py:1780
-msgid "Send files"
-msgstr "שליחת קבצים"
-
-#: ../src/chat_control.py:1785
+#: ../src/chat_control.py:1748
 msgid "This contact does not support file transfer."
 msgstr "איש קשר זה אינו תומך בהעברת קבצים."
 
-#: ../src/chat_control.py:1788
+#: ../src/chat_control.py:1751
 msgid "You need to know the real JID of the contact to send him or her a file."
-msgstr ""
-"יש צורך לדעת את הכתובת המממשת (JID) של איש הקשר כדי לשלוח אליו או אליה קובץ."
+msgstr "יש צורך לדעת את הכתובת (JID) של איש הקשר כדי לשלוח אליו או אליה קובץ."
 
-#: ../src/chat_control.py:1906
+#: ../src/chat_control.py:1869
 #, python-format
 msgid "%(type)s state : %(state)s, reason: %(reason)s"
-msgstr "%(type)s מצב : %(state)s, סיבה: %(reason)s"
+msgstr "%(type)s מצב : %(state)s, סיבה: %(reason)s"
 
-#: ../src/chat_control.py:2098
+# מן שיחת
+#: ../src/chat_control.py:2060
 #, python-format
 msgid "%(nickname)s from group chat %(room_name)s"
-msgstr "%(nickname)s מתוך שיחת קבוצה %(room_name)s"
+msgstr "%(nickname)s משיחת הקבוצה %(room_name)s "
 
 #. No key assigned nor a key is used by remote contact
-#: ../src/chat_control.py:2229 ../src/dialogs.py:5194
-msgid "No OpenPGP key assigned"
-msgstr "לא הוקצה מפתח OpenPGP"
+#: ../src/chat_control.py:2170
+#: ../src/dialogs.py:5092
+msgid "No GPG key assigned"
+msgstr "לא הוקצה מפתח GPG"
 
-#: ../src/chat_control.py:2230
-msgid ""
-"No OpenPGP key is assigned to this contact. So you cannot encrypt messages "
-"with OpenPGP."
-msgstr ""
-"אין מפתח OpenPGP אשר מוקצה לאיש קשר זה. כך שאין אין באפשרותך להצפין הודעות "
-"באמצעות OpenPGP."
+# באפשרותך
+# כך שאין ב
+#: ../src/chat_control.py:2171
+msgid "No GPG key is assigned to this contact. So you cannot encrypt messages with GPG."
+msgstr "לא הוקצה מפתח GPG לאיש קשר זה. אי לכך אין ביכולתך להצפין הודעות באמצעות GPG."
 
-#: ../src/chat_control.py:2239
-msgid "OpenPGP encryption disabled"
-msgstr "הצפנת OpenPGP מנוטרלת"
+# Changed disabled with neutralized (which is pretty much the exact same)
+# Disable = נטרל
+# Neutralized = נוטרל
+#: ../src/chat_control.py:2180
+msgid "GPG encryption disabled"
+msgstr "הצפנת GPG מנוטרלת כעת"
 
-#: ../src/chat_control.py:2265
+#: ../src/chat_control.py:2206
 msgid "Session WILL be logged"
 msgstr "הסשן יירשם"
 
-#: ../src/chat_control.py:2267
+#: ../src/chat_control.py:2208
 msgid "Session WILL NOT be logged"
 msgstr "הסשן לא יירשם"
 
+# Needs to be tested
 #. encryption %s active
-#: ../src/chat_control.py:2284
+#: ../src/chat_control.py:2225
 msgid "is"
 msgstr "הינה"
 
-#: ../src/chat_control.py:2284
+# Needs to be tested
+#: ../src/chat_control.py:2225
 msgid "is NOT"
-msgstr "אינה"
+msgstr "*אינה*"
 
+# Needs to be tested
 #. chat session %s be logged
-#: ../src/chat_control.py:2286
+#: ../src/chat_control.py:2227
 msgid "will"
 msgstr "יירשם"
 
-#: ../src/chat_control.py:2286
+#: ../src/chat_control.py:2227
 msgid "will NOT"
 msgstr "לא יירשם"
 
+# Needs to be tested
 #. About encrypted chat session
-#: ../src/chat_control.py:2290
+#: ../src/chat_control.py:2231
 msgid "and authenticated"
 msgstr "והינה מאומת"
 
 #. About encrypted chat session
-#: ../src/chat_control.py:2294
+#: ../src/chat_control.py:2235
 msgid "and NOT authenticated"
 msgstr "ואינה מאומתת"
 
 #. status will become 'is' or 'is not', authentificaed will become
 #. 'and authentificated' or 'and not authentificated', logged will become
 #. 'will' or 'will not'
-#: ../src/chat_control.py:2301
+#: ../src/chat_control.py:2242
 #, python-format
 msgid ""
 "%(type)s encryption %(status)s active %(authenticated)s.\n"
@@ -3279,70 +3502,74 @@ msgstr ""
 "הצפנת %(type)s %(status)s מופעלת %(authenticated)s.\n"
 "סשן שיחתך %(logged)s ברשומות ההיסטוריה."
 
-#: ../src/chat_control.py:2439
+# הסדרת סשן בוטלה
+#: ../src/chat_control.py:2370
 msgid "Session negotiation cancelled"
 msgstr "משא ומתן סשן בוטל"
 
-#: ../src/chat_control.py:2449
+#: ../src/chat_control.py:2380
 msgid "This session WILL be archived on server"
 msgstr "סשן זה יושם בארכיון על שרת"
 
-#: ../src/chat_control.py:2451
+#: ../src/chat_control.py:2382
 msgid "This session WILL NOT be archived on server"
 msgstr "סשן זה לא יושם בארכיון על שרת"
 
-#: ../src/chat_control.py:2460
+#: ../src/chat_control.py:2391
 msgid "This session is encrypted"
 msgstr "סשן זה הינו מוצפן"
 
-#: ../src/chat_control.py:2463
+#: ../src/chat_control.py:2394
 msgid " and WILL be logged"
 msgstr " ויירשם"
 
-#: ../src/chat_control.py:2465
+#: ../src/chat_control.py:2396
 msgid " and WILL NOT be logged"
 msgstr " ולא יירשם"
 
-#: ../src/chat_control.py:2470
-msgid ""
-"Remote contact's identity not verified. Click the shield button for more "
-"details."
-msgstr "זהות איש קשר מרוחק לא מאומתת. לחץ על לחצן המגן עבור פרטים נוספים."
+#: ../src/chat_control.py:2401
+msgid "Remote contact's identity not verified. Click the shield button for more details."
+msgstr "זהות איש קשר מרוחק לא מאומתת. נא ללחוץ על כפתור המגן עבור פרטים נוספים."
 
-#: ../src/chat_control.py:2472
+#: ../src/chat_control.py:2403
 msgid "E2E encryption disabled"
-msgstr "הצפנת E2E מנוטרלת כעת"
+msgstr "הצפנת E2E (קצה אל קצה) מנוטרלת כעת"
 
-#: ../src/chat_control.py:2520 ../src/chat_control.py:2534
+#: ../src/chat_control.py:2451
+#: ../src/chat_control.py:2465
 msgid "The following message was NOT encrypted"
 msgstr "ההודעה הבאה לא הוצפנה"
 
-#: ../src/chat_control.py:2526
+#: ../src/chat_control.py:2457
 msgid "The following message was encrypted"
 msgstr "ההודעה הבאה הוצפנה"
 
+# זה עתה קיבלת
+# קיבלת זה עתה
+# קיבלת כעת
 #. %s is being replaced in the code with JID
-#: ../src/chat_control.py:2797
+#: ../src/chat_control.py:2728
 #, python-format
 msgid "You just received a new message from \"%s\""
 msgstr "זה עתה קיבלת הודעה חדשה מן \"%s\""
 
-#: ../src/chat_control.py:2799
-msgid ""
-"If you close this tab and you have history disabled, this message will be "
-"lost."
-msgstr ""
-"אם כרטיסייה זו תיסגר ובמידה ורשימת היסטוריה מנוטרלת אצלך. הודעה זו תאבד."
+# תאובד
+#: ../src/chat_control.py:2729
+msgid "If you close this tab and you have history disabled, this message will be lost."
+msgstr "אם לשונית זו תיסגר ובמידה ורשימת היסטוריה מנוטרלת אצלך. הודעה זו תאבד."
 
-#: ../src/chat_control.py:2967 ../src/common/connection.py:523
-#: ../src/common/connection_handlers.py:1145
-#: ../src/common/connection_handlers.py:1269
-#: ../src/common/connection_handlers_events.py:913
-#: ../src/common/logger.py:1161 ../src/gajim.py:229 ../src/session.py:98
+#: ../src/chat_control.py:2896
+#: ../src/common/connection_handlers_events.py:911
+#: ../src/common/connection_handlers.py:955
+#: ../src/common/connection_handlers.py:1077
+#: ../src/common/connection.py:462
+#: ../src/common/logger.py:1155
+#: ../src/gajim.py:208
+#: ../src/session.py:100
 msgid "Database Error"
 msgstr "שגיאת מסד נתונים"
 
-#: ../src/chat_control.py:2968
+#: ../src/chat_control.py:2897
 #, python-format
 msgid ""
 "The database file (%s) cannot be read. Try to repair it or remove it (all "
@@ -3351,64 +3578,76 @@ msgstr ""
 "קובץ מסד הנתונים (%s) לא ניתן לקריאה. נסה לתקנו או להסירו (כל ההיסטוריה "
 "תאבד)."
 
-#: ../src/chat_control.py:3205 ../src/gui_interface.py:1161
+#: ../src/chat_control.py:3134
+#: ../src/gui_interface.py:1151
 #, python-format
 msgid ""
 "Unable to decrypt message from %s\n"
 "It may have been tampered with."
 msgstr ""
-"אין אפשרות לפענח הודעה מאת %s\n"
-"ייתכן כי הודעה זו נפגמה."
+"לא ניתן לפענח את ההודעה מאת %s\n"
+"ייתכן שההודעה נפגמה."
 
-#: ../src/chat_control.py:3262
+# See: LRE string PDF
+#: ../src/chat_control.py:3167
 #, python-format
 msgid "%(name)s is now %(status)s"
-msgstr "%(name)s מצוי/ה כעת במצב %(status)s"
+msgstr "%(name)s מצוי/ה כעת במצב %(status)s "
 
-#: ../src/chat_control.py:3321
+#: ../src/chat_control.py:3226
 msgid "File transfer"
 msgstr "העברת קובץ"
 
-#: ../src/chat_control.py:3324
+#: ../src/chat_control.py:3229
 msgid "Size"
 msgstr "גודל"
 
-#: ../src/chat_control.py:3326
+# Would it be proper to translate to _Download?
+#: ../src/chat_control.py:3231
 msgid "_Accept"
-msgstr "_קבל"
+msgstr "_קבלה"
 
-#: ../src/chat_control.py:3347 ../src/filetransfers_window.py:211
+#: ../src/chat_control.py:3252
+#: ../src/filetransfers_window.py:211
 msgid "File transfer completed"
 msgstr "העברת קובץ הושלמה"
 
-#: ../src/chat_control.py:3383 ../src/dialogs.py:2927 ../src/dialogs.py:4614
-#: ../src/gui_interface.py:646 ../src/notify.py:278
+# הזמנת שיחת קבוצה
+#: ../src/chat_control.py:3288
+#: ../src/dialogs.py:2828
+#: ../src/gui_interface.py:645
+#: ../src/notify.py:278
 msgid "Groupchat Invitation"
 msgstr "הזמנה אל שיחת קבוצה"
 
-#: ../src/chat_control.py:3405 ../src/gui_interface.py:1019
-#: ../src/roster_window.py:1991
+#: ../src/chat_control.py:3310
+#: ../src/gui_interface.py:1009
+#: ../src/roster_window.py:1981
 msgid "Remote contact stopped transfer"
 msgstr "ההעברה הופסקה על ידי איש קשר מרוחק"
 
-#: ../src/chat_control.py:3407 ../src/gui_interface.py:1022
-#: ../src/roster_window.py:1993
+#: ../src/chat_control.py:3312
+#: ../src/gui_interface.py:1012
+#: ../src/roster_window.py:1983
 msgid "Error opening file"
 msgstr "שגיאה בפתיחת הקובץ"
 
-#: ../src/chat_control.py:3409 ../src/filetransfers_window.py:247
+#: ../src/chat_control.py:3314
+#: ../src/filetransfers_window.py:247
 msgid "File transfer stopped"
 msgstr "העברת קובץ נעצרה"
 
-#: ../src/chat_control.py:3412 ../src/filetransfers_window.py:226
+#: ../src/chat_control.py:3317
+#: ../src/filetransfers_window.py:226
 #: ../src/filetransfers_window.py:233
 msgid "File transfer cancelled"
 msgstr "העברת קובץ בוטלה"
 
-#: ../src/chat_control.py:3413 ../src/filetransfers_window.py:226
+#: ../src/chat_control.py:3318
+#: ../src/filetransfers_window.py:226
 #: ../src/filetransfers_window.py:234
 msgid "Connection with peer cannot be established."
-msgstr "חיבור עם עמית לא היה אפשרי לביסוס."
+msgstr "חיבור עם עמית לא היה ניתן לביסוס."
 
 #: ../src/command_system/implementation/custom.py:105
 msgid "The same as using a doc-string, except it supports translation"
@@ -3424,17 +3663,16 @@ msgstr "הרצת ביטוי בתוך מעטפת, שליחת פלט"
 
 #: ../src/command_system/implementation/middleware.py:74
 msgid "Error during command execution!"
-msgstr "שגיאה במהלך הוצאה לפועל של פקודה!"
+msgstr ""
 
+# השיחה
 #: ../src/command_system/implementation/standard.py:50
 msgid "Hide the chat buttons"
 msgstr "הסתרת לחצני שיחה"
 
 #: ../src/command_system/implementation/standard.py:56
-msgid ""
-"Show help on a given command or a list of available commands if -a is given"
-msgstr ""
-"הצגת עזרה על פקודה נתונה או רשימה של פקודות זמינות במידה והארגומנט -a ניתן"
+msgid "Show help on a given command or a list of available commands if -a is given"
+msgstr "הצגת עזרה אודות פקודה נתונה או רשימה של פקודות זמינות במידה והארגומנט -a ניתן"
 
 #: ../src/command_system/implementation/standard.py:83
 msgid "Send a message to the contact"
@@ -3446,20 +3684,23 @@ msgstr "שליחת פעולה (בגוף שלישי) אל השיחה הנוכחי
 
 #: ../src/command_system/implementation/standard.py:93
 msgid "Show logged messages which mention given text"
-msgstr "הצגת הודעות רשומות אשר מאזכרות תמליל נתון"
+msgstr "הצגת הודעות רשומות שמאזכרות תמליל נתון"
 
 # gajim-remote?
 #: ../src/command_system/implementation/standard.py:99
 #, python-format
 msgid "%s: Nothing found"
-msgstr "%s: לא נמצא דבר"
+msgstr "%s: לא נמצא דבר"
 
 #: ../src/command_system/implementation/standard.py:105
 msgid "Limit must be an integer"
 msgstr "תחום מוכרח להיות ספרה"
 
-#. Do not translate online, away, chat, xa, dnd
-#: ../src/command_system/implementation/standard.py:130
+# BUG: move one line like שיוך and תפקיד
+#     Status can be given as one of the following values:\n
+#     online, away, chat, xa, dnd.\n
+#
+#: ../src/command_system/implementation/standard.py:129
 msgid ""
 "\n"
 "    Set the current status\n"
@@ -3471,126 +3712,130 @@ msgstr ""
 "\n"
 "    קביעת מצב החיבור הנוכחי\n"
 "\n"
-"    מצב יכול להיות נתון בתור אחד מתוך הערכים הבאים:\n"
-"    online, away, chat, xa, dnd.\n"
+"    מצב יכול להיות נתון כאחד מן הערכים הבאים:\n"
+"    online, away, chat, xa, dnd.\n"
 "    "
 
-#: ../src/command_system/implementation/standard.py:148
+#: ../src/command_system/implementation/standard.py:147
 msgid "Set the current status to away"
 msgstr "קביעת מצב החיבור הנוכחי אל נעדר"
 
-#: ../src/command_system/implementation/standard.py:151
-#: ../src/common/commands.py:110 ../src/common/helpers.py:249
+# אני לא כאן
+# לא נמצא
+#: ../src/command_system/implementation/standard.py:150
+#: ../src/common/commands.py:109
+#: ../src/common/helpers.py:249
 #: ../src/tooltips.py:189
 msgid "Away"
 msgstr "נעדר"
 
-#: ../src/command_system/implementation/standard.py:162
+#: ../src/command_system/implementation/standard.py:161
 msgid "Set the current status to online"
 msgstr "קביעת מצב החיבור הנוכחי אל מקוון"
 
-#: ../src/command_system/implementation/standard.py:165
+#: ../src/command_system/implementation/standard.py:164
 msgid "Available"
 msgstr "זמין"
 
-#: ../src/command_system/implementation/standard.py:185
-#: ../src/command_system/implementation/standard.py:267
+#: ../src/command_system/implementation/standard.py:184
+#: ../src/command_system/implementation/standard.py:266
 msgid "Clear the text window"
 msgstr "טיהור תמליל החלון"
 
-#: ../src/command_system/implementation/standard.py:190
-msgid "Toggle the OpenPGP encryption"
-msgstr "הפעלת הצפנת OpenPGP"
+# BUG: should be> Toggle GPG encryption
+#: ../src/command_system/implementation/standard.py:189
+msgid "Toggle the GPG encryption"
+msgstr "הפעלת הצפנת GPG"
 
-#: ../src/command_system/implementation/standard.py:195
+#: ../src/command_system/implementation/standard.py:194
 msgid "Send a ping to the contact"
 msgstr "שליחת פינג אל איש הקשר"
 
-#: ../src/command_system/implementation/standard.py:198
+#: ../src/command_system/implementation/standard.py:197
 msgid "Command is not supported for zeroconf accounts"
 msgstr "פקודה לא נתמכת עבור חשבונות zeroconf"
 
-#: ../src/command_system/implementation/standard.py:202
+#: ../src/command_system/implementation/standard.py:201
 msgid "Send DTMF sequence through an open audio session"
-msgstr "שליחת רצף טזמ״ת (DTMF) מבעד סשן שמע פתוח"
+msgstr "שליחת רצף טזמ״ת (DTMF) מבעד סשן שמע פתוח"
 
 # סשנים של שמע
-#: ../src/command_system/implementation/standard.py:205
+#: ../src/command_system/implementation/standard.py:204
 msgid "No open audio sessions with the contact"
 msgstr "לא קיימים סשני שמע פתוחים עם איש הקשר"
 
-#: ../src/command_system/implementation/standard.py:208
+#: ../src/command_system/implementation/standard.py:207
 #, python-format
 msgid "%s is not a valid tone"
-msgstr "%s אינו טון (tone) תקף"
+msgstr "%s אינו טון (tone) תקף"
 
-#: ../src/command_system/implementation/standard.py:218
+#: ../src/command_system/implementation/standard.py:217
 msgid "Audio sessions are not available"
 msgstr "סשן שמע אינו זמין"
 
-#: ../src/command_system/implementation/standard.py:228
+#: ../src/command_system/implementation/standard.py:227
 msgid "Video sessions are not available"
 msgstr "סשן וידאו לא זמין"
 
-# תשומת לב , הקשב , צוּמִי
-#: ../src/command_system/implementation/standard.py:235
+# תשומת־לב , הקשב , צוּמִי
+#: ../src/command_system/implementation/standard.py:234
 msgid "Send a message to the contact that will attract his (her) attention"
-msgstr "שליחת הודעה אשר תסב את צומת ליבו של איש הקשר"
+msgstr "שליחת הודעה שתסב את צומת ליבו של איש הקשר"
 
-#: ../src/command_system/implementation/standard.py:274
+#: ../src/command_system/implementation/standard.py:273
 msgid "Change your nickname in a group chat"
-msgstr "שינוי שם הכינוי שלך בתוך שיחת קבוצה"
+msgstr "שינוי שם כינוייך בשיחת קבוצה"
 
 #. invalid char
-#: ../src/command_system/implementation/standard.py:279 ../src/config.py:3405
-#: ../src/dialogs.py:2154
+#: ../src/command_system/implementation/standard.py:278
+#: ../src/config.py:3387
+#: ../src/dialogs.py:2113
 msgid "Invalid nickname"
 msgstr "שם כינוי שגוי"
 
-#: ../src/command_system/implementation/standard.py:284
+# מתואר, נקוב
+#: ../src/command_system/implementation/standard.py:283
 msgid "Open a private chat window with a specified occupant"
 msgstr "פתיחת חלון שיחה פרטית עם נוכח מצוין"
 
-#: ../src/command_system/implementation/standard.py:290
-#: ../src/command_system/implementation/standard.py:299
-#: ../src/command_system/implementation/standard.py:353
-#: ../src/command_system/implementation/standard.py:365
-#: ../src/command_system/implementation/standard.py:377
+#: ../src/command_system/implementation/standard.py:289
+#: ../src/command_system/implementation/standard.py:298
+#: ../src/command_system/implementation/standard.py:352
+#: ../src/command_system/implementation/standard.py:363
+#: ../src/command_system/implementation/standard.py:374
 msgid "Nickname not found"
 msgstr "שם כינוי לא נמצא"
 
 # BUG: him or her or they
 # he she
-#: ../src/command_system/implementation/standard.py:293
-msgid ""
-"Open a private chat window with a specified occupant and send him a message"
+#: ../src/command_system/implementation/standard.py:292
+msgid "Open a private chat window with a specified occupant and send him a message"
 msgstr "פתיחת חלון שיחה פרטית עם נוכח מצוין ושליחת הודעה אליו"
 
-#: ../src/command_system/implementation/standard.py:302
+#: ../src/command_system/implementation/standard.py:301
 msgid "Display or change a group chat topic"
 msgstr "הצגה או שינוי נושא של שיחת קבוצה"
 
 # תכלית
-#: ../src/command_system/implementation/standard.py:310
+#: ../src/command_system/implementation/standard.py:309
 msgid "Invite a user to a room for a reason"
 msgstr "הזמנת משתמש אל חדר עם ציון סיבה"
 
-#: ../src/command_system/implementation/standard.py:313
+#: ../src/command_system/implementation/standard.py:312
 #, python-format
 msgid "Invited %s to %s"
 msgstr "ה_זמנת %s אל %s"
 
-#: ../src/command_system/implementation/standard.py:316
+#: ../src/command_system/implementation/standard.py:315
 msgid "Join a group chat given by a jid, optionally using given nickname"
-msgstr "הצטרפות אל שיחת קבוצה לפי jid, אפשרי לעשות שימוש בשם כינוי נתון"
+msgstr "הצטרפות אל שיחת קבוצה לפי כתובת jid, אפשרי לעשות שימוש בשם כינוי נתון"
 
-#: ../src/command_system/implementation/standard.py:333
-msgid ""
-"Leave the groupchat, optionally giving a reason, and close tab or window"
-msgstr ""
-"עזיבת שיחת קבוצה, קיימת אפשרות לתת סיבה, ולסגור את הכרטיסייה או את החלון"
+# אפשרי לתת
+#: ../src/command_system/implementation/standard.py:332
+msgid "Leave the groupchat, optionally giving a reason, and close tab or window"
+msgstr "עזיבת שיחת קבוצה, קיימת אפשרות לתת סיבה, ולסגור את הלשונית או החלון"
 
-#: ../src/command_system/implementation/standard.py:338
+#: ../src/command_system/implementation/standard.py:337
 msgid ""
 "\n"
 "    Ban user by a nick or a jid from a groupchat\n"
@@ -3599,75 +3844,65 @@ msgid ""
 "    "
 msgstr ""
 "\n"
-"    חסימת משתמש מתוך שיחת קבוצה לפי כינוי או לפי jid\n"
+"    חסימת משתמש מן שיחת קבוצה לפי כינוי או לפי כתובת jid\n"
 "\n"
-"    במידה ושם כינוי נתון לא נמצא זה ייוחס בתור jid.\n"
+"    במידה ושם כינוי נתון לא נמצא זה ייוחס ככתובת jid.\n"
 "    "
 
-#: ../src/command_system/implementation/standard.py:350
+#: ../src/command_system/implementation/standard.py:349
 msgid "Kick user by a nick from a groupchat"
-msgstr "בעיטת משתמש מתוך שיחת קבוצה לפי כינוי"
+msgstr "בעיטת משתמש מן שיחת קבוצה לפי כינוי"
 
-#. Do not translate moderator, participant, visitor, none
-#: ../src/command_system/implementation/standard.py:358
+# אחראי, משתתף, מבקר, ללא
+#: ../src/command_system/implementation/standard.py:356
 msgid ""
 "Set occupant role in group chat.\n"
 "    Role can be given as one of the following values:\n"
 "    moderator, participant, visitor, none"
 msgstr ""
-"קביעת תפקיד נוכח בתוך שיחת קבוצה.\n"
-"    תפקיד יכול להיות נתון בתור אחד מתוך הערכים הבאים:\n"
-"    moderator, participant, visitor, none"
+"הגדרת תפקיד נוכח בשיחת קבוצה.\n"
+"    תפקיד יכול להיות נתון כאחד מן הערכים הבאים:\n"
+"    moderator, participant, visitor, none"
 
-#: ../src/command_system/implementation/standard.py:363
+#: ../src/command_system/implementation/standard.py:361
 msgid "Invalid role given"
 msgstr "ניתן תפקיד שגוי"
 
-#. Do not translate owner, admin, member, outcast, none
-#: ../src/command_system/implementation/standard.py:370
+# בעלים, מנהל, חבר, מוחרם, ללא
+#: ../src/command_system/implementation/standard.py:367
 msgid ""
 "Set occupant affiliation in group chat.\n"
 "    Affiliation can be given as one of the following values:\n"
 "    owner, admin, member, outcast, none"
 msgstr ""
-"קביעת שיוך נוכח בתוך שיחת קבוצה.\n"
-"    שיוך יכול להיות נתון בתור אחד מתוך הערכים הבאים:\n"
-"    owner, admin, member, outcast, none"
+"הגדרת שיוך נוכח בשיחת קבוצה.\n"
+"    שיוך יכול להיות נתון כאחד מן הערכים הבאים:\n"
+"    owner, admin, member, outcast, none"
 
-#: ../src/command_system/implementation/standard.py:375
+#: ../src/command_system/implementation/standard.py:372
 msgid "Invalid affiliation given"
 msgstr "ניתן שיוך שגוי"
 
-#: ../src/command_system/implementation/standard.py:383
+#: ../src/command_system/implementation/standard.py:380
 msgid "Display names of all group chat occupants"
-msgstr "הצגת שמות של כל הנוכחים בתוך שיחת קבוצה"
+msgstr "הצגת השמות של כל הנוכחים בשיחת קבוצה"
 
-#: ../src/command_system/implementation/standard.py:405
+#: ../src/command_system/implementation/standard.py:402
 msgid "Forbid an occupant to send you public or private messages"
 msgstr "אסירה על נוכח לשלוח אליך הודעות פומביות או פרטיות"
 
-#: ../src/command_system/implementation/standard.py:410
+#: ../src/command_system/implementation/standard.py:407
 msgid "Allow an occupant to send you public or private messages"
 msgstr "התרה לנוכח לשלוח לך הודעות פומביות או פרטיות"
 
-#: ../src/command_system/mapping.py:165 ../src/command_system/mapping.py:175
-#: ../src/command_system/mapping.py:195
-#, fuzzy
-msgid "Missing arguments"
-msgstr "cli?"
-
-#: ../src/command_system/mapping.py:262
-#, fuzzy
-msgid "Excessive arguments"
-msgstr "cli?"
-
 #: ../src/common/check_paths.py:39
 msgid "creating logs database"
-msgstr "יוצר כעת רשומות מסד נתונים"
+msgstr "רשומות מסד נתונים נוצרות כעת"
 
+# מתייצר
 #: ../src/common/check_paths.py:87
 msgid "creating cache database"
-msgstr "יוצר כעת מטמון מסד נתונים"
+msgstr "מטמון מסד נתונים נוצר כעת"
 
 #: ../src/common/check_paths.py:278 ../src/common/check_paths.py:285
 #: ../src/common/check_paths.py:292 ../src/common/check_paths.py:299
@@ -3675,153 +3910,171 @@ msgstr "יוצר כעת מטמון מסד נתונים"
 #: ../src/common/check_paths.py:320 ../src/common/check_paths.py:327
 #, python-format
 msgid "%s is a file but it should be a directory"
-msgstr "%s הינו קובץ אך אמור להיות מדור"
+msgstr "%s הינו קובץ אך אמור להיות מדור"
 
-#: ../src/common/check_paths.py:279 ../src/common/check_paths.py:286
-#: ../src/common/check_paths.py:293 ../src/common/check_paths.py:300
-#: ../src/common/check_paths.py:307 ../src/common/check_paths.py:314
-#: ../src/common/check_paths.py:321 ../src/common/check_paths.py:328
-#: ../src/common/check_paths.py:338 ../src/common/check_paths.py:346
-#, fuzzy
+# CLI?
+# The session of Gajim will end now
+# הסשן של Gajim יסויים כעת
+#: ../src/common/check_paths.py:279
+#: ../src/common/check_paths.py:286
+#: ../src/common/check_paths.py:293
+#: ../src/common/check_paths.py:300
+#: ../src/common/check_paths.py:307
+#: ../src/common/check_paths.py:314
+#: ../src/common/check_paths.py:321
+#: ../src/common/check_paths.py:328
+#: ../src/common/check_paths.py:338
+#: ../src/common/check_paths.py:346
 msgid "Gajim will now exit"
-msgstr "cli"
+msgstr ""
 
 #: ../src/common/check_paths.py:337 ../src/common/check_paths.py:345
 #, python-format
 msgid "%s is a directory but should be a file"
-msgstr "%s הינו מדור אך אמור להיות קובץ"
+msgstr "%s הינו מדור אך אמור להיות קובץ"
 
 #: ../src/common/check_paths.py:366
 #, python-format
 msgid "creating %s directory"
 msgstr "יוצר כעת מדור %s"
 
-#: ../src/common/commands.py:86
+#: ../src/common/commands.py:85
 msgid "Change status information"
 msgstr "שנה מידע מצב"
 
-#: ../src/common/commands.py:101
+#: ../src/common/commands.py:100
 msgid "Change status"
-msgstr "שנה מצב חיבור"
+msgstr "שנה מצב־חיבור"
 
-#: ../src/common/commands.py:102
+#: ../src/common/commands.py:101
 msgid "Set the presence type and description"
-msgstr "קביעת טיפוס ותיאור הנוכחות"
+msgstr "הגדרת טיפוס הנוכחות ותיאור"
 
 # BUG: Free for Chat
 # BUG: x2
-#: ../src/common/commands.py:108
+#: ../src/common/commands.py:107
 msgid "Free for chat"
 msgstr "חופשי לשיחה"
 
-#: ../src/common/commands.py:109
+#: ../src/common/commands.py:108
 msgid "Online"
 msgstr "מקוון"
 
-#: ../src/common/commands.py:111
+#: ../src/common/commands.py:110
 msgid "Extended away"
 msgstr "נעדר לזמן ארוך"
 
-#: ../src/common/commands.py:112
+#: ../src/common/commands.py:111
 msgid "Do not disturb"
 msgstr "נא לא להפריע"
 
 # Needs to be tested
-#: ../src/common/commands.py:113
+#: ../src/common/commands.py:112
 msgid "Offline - disconnect"
 msgstr "לא מקוון - מנותק"
 
 # BUG: Remove colon because it is appearing in Psi with two colons
 # תיאור נוכחות::
-#: ../src/common/commands.py:118
+#: ../src/common/commands.py:117
 msgid "Presence description:"
 msgstr "תיאור נוכחות:"
 
-#: ../src/common/commands.py:153 ../src/common/commands.py:330
+# The word השתנה is also urination so do not use it
+# המצב שונה.
+#: ../src/common/commands.py:152
+#: ../src/common/commands.py:324
 msgid "The status has been changed."
 msgstr "מצב החיבור השתנה."
 
-#: ../src/common/commands.py:185 ../src/common/commands.py:211
+#: ../src/common/commands.py:184
+#: ../src/common/commands.py:210
 msgid "Leave Groupchats"
 msgstr "עזיבת שיחות קבוצה"
 
-#: ../src/common/commands.py:201
+#: ../src/common/commands.py:200
 #, python-format
 msgid "%(nickname)s on %(room_jid)s"
-msgstr "%(nickname)s בחדר %(room_jid)s"
+msgstr "%(nickname)s בתוך החדר %(room_jid)s"
 
-#: ../src/common/commands.py:205
+#: ../src/common/commands.py:204
 msgid "You have not joined a groupchat."
 msgstr "לא הצטרפת אל שיחת קבוצה."
 
-#: ../src/common/commands.py:212
+#: ../src/common/commands.py:211
 msgid "Choose the groupchats you want to leave"
-msgstr "בחירת שיחות קבוצה אשר ברצונך לעזוב"
+msgstr "בחירת שיחות קבוצה שברצונך לעזוב"
 
 #. Make special context menu if group is Groupchats
-#: ../src/common/commands.py:216 ../src/common/contacts.py:131
-#: ../src/common/helpers.py:67 ../src/roster_window.py:824
-#: ../src/roster_window.py:1736 ../src/roster_window.py:1738
-#: ../src/roster_window.py:2621 ../src/roster_window.py:5714
+#: ../src/common/commands.py:215
+#: ../src/common/contacts.py:131
+#: ../src/common/helpers.py:67
+#: ../src/roster_window.py:820
+#: ../src/roster_window.py:1726
+#: ../src/roster_window.py:1728
+#: ../src/roster_window.py:2611
+#: ../src/roster_window.py:5766
 msgid "Groupchats"
 msgstr "שיחות קבוצה"
 
-#: ../src/common/commands.py:257
+#: ../src/common/commands.py:256
 msgid "You left the following groupchats:"
 msgstr "עזבת את שיחות הקבוצה הבאות:"
 
-#: ../src/common/commands.py:269
+# להעביר הלאה
+# שליחת
+#: ../src/common/commands.py:268
 msgid "Forward unread messages"
-msgstr "קדם הודעות אשר לא נקראו"
+msgstr "קידום הודעות שלא נקראו"
 
-#: ../src/common/commands.py:296
+#: ../src/common/commands.py:294
 msgid "All unread messages have been forwarded."
-msgstr "כל ההודעות אשר לא נקראו קודמו."
+msgstr "כל ההודעות שלא נקראו קודמו."
 
-#: ../src/common/commands.py:304
+# ולאחר מכן התנתק
+#: ../src/common/commands.py:302
 msgid "Forward unread message then disconnect"
-msgstr "קדם הודעות אשר לא נקראו והתנתק לאחר מכן"
+msgstr "קידום הודעות שלא נקראו והתנתקות לאלתר"
 
 #: ../src/common/config.py:76
 msgid "Play sound when user is busy"
-msgstr "נגן צלילים כאשר המשתמש עסוק"
+msgstr "השמעת צלילים כאשר המשתמש עסוק"
 
+# שדון
 #: ../src/common/config.py:77
 msgid "Use D-Bus and Notification-Daemon to show notifications"
 msgstr "השתמש באפיק D-Bus וגם Notification-Daemon כדי להציג התראות"
 
 #: ../src/common/config.py:79
 msgid "Show only online and free for chat contacts in roster."
-msgstr "הצגה בלעדית של אנשי קשר מקוונים וחופשיים לשיחה ברשימה."
+msgstr "הצגה של אנשי קשר מקוונים ופנויים לשיחה בלבד ברשימה."
 
 #: ../src/common/config.py:82
 msgid "Time in minutes, after which your status changes to away."
-msgstr "זמן בדקות, אשר לאחריו מצבך ישתנה אל נעדר."
+msgstr "זמן בדקות, שלאחריו מצבך ישתנה אל נעדר."
 
 # במצב סרק
 #: ../src/common/config.py:83
 msgid "$S (Away as a result of being idle more than $T min)"
-msgstr "$S (נעדר כתוצאה מהיותי בחוסר פעילות למשך של יותר מ־$T דקות)"
+msgstr "$S (נעדר כתוצאה מהיותי בחוסר פעילות למשך יותר מ־$T דקות)"
 
+# BUG: autoaway time or the ACE entry autoawaytime?
 #: ../src/common/config.py:83
-msgid "$S will be replaced by current status message, $T by autoawaytime."
-msgstr ""
-"התווים $S יוחלפו על ידי הודעת מצב נוכחית, והתווים $T יוחלפו בערך הנקוב "
-"ברשומה autoawaytime."
+msgid "$S will be replaced by current status message, $T by autoaway time."
+msgstr "התווים $S יוחלפו על ידי הודעת מצב נוכחית, והתווים $T יוחלפו בערך הנקוב ברשומה autoawaytime."
 
+# האם אפשר למחוק את הפסיק משום שקיימת ש אחרי?
 #: ../src/common/config.py:85
 msgid "Time in minutes, after which your status changes to not available."
-msgstr "זמן בדקות, אשר לאחריו מצבך ישתנה אל לא זמין."
+msgstr "זמן בדקות, שלאחריו מצבך ישתנה אל לא זמין."
 
 #: ../src/common/config.py:86
 msgid "$S (Not available as a result of being idle more than $T min)"
-msgstr "$S (לא זמין כתוצאה מהיותי בחוסר פעילות למשך של יותר מ־$T דקות)"
+msgstr "$S (לא זמין כתוצאה מהיותי בחוסר פעילות למשך יותר מ־$T דקות)"
 
+# BUG: autoxa time or autoxatime of ACE
 #: ../src/common/config.py:86
-msgid "$S will be replaced by current status message, $T by autoxatime."
-msgstr ""
-"התווים $S יוחלפו על ידי הודעת מצב נוכחית, והתווים $T יוחלפו בערך הנקוב "
-"ברשומה autoxatime."
+msgid "$S will be replaced by current status message, $T by autoxa time."
+msgstr "התווים $S יוחלפו על ידי הודעת מצב נוכחית, והתווים $T יוחלפו בערך הנקוב ברשומה autoxatime."
 
 # מגש המערכת
 #: ../src/common/config.py:89
@@ -3833,7 +4086,7 @@ msgstr ""
 
 #: ../src/common/config.py:90
 msgid "Allow to hide the roster window even if the tray icon is not shown."
-msgstr "אפשר הסתרת הרשימה אפילו כאשר צלמית המגש איננה מוצגת."
+msgstr "אפשר הסתרת הרשימה אפילו אם צלמית המגש איננה מוצגת."
 
 #: ../src/common/config.py:95
 msgid "Incoming nickname color."
@@ -3870,6 +4123,7 @@ msgstr "צבע התראה של התנתקות איש קשר"
 msgid "New message/email notification color."
 msgstr "צבע התראה של הודעה/דוא״ל חדש/ה."
 
+# בקשה להעברת קובץ
 #. dodgerblue
 #: ../src/common/config.py:105
 msgid "File transfer request notification color."
@@ -3897,12 +4151,13 @@ msgstr "צבע התראה של הזמנה אל שיחת קבוצה"
 #. tan1
 #: ../src/common/config.py:109
 msgid "Status changed notification background color"
-msgstr "צבע רקע אחורי של התראת שינוי מצב חיבור"
+msgstr "צבע רקע אחורי של התראת שינוי מצב־חיבור"
 
 #. thistle2
 #: ../src/common/config.py:110
+#, fuzzy
 msgid "Other dialogs color."
-msgstr "צבע של תיבות דו שיח אחרות."
+msgstr "צבע דו־שיח אחר."
 
 #. white
 #: ../src/common/config.py:111
@@ -3931,15 +4186,18 @@ msgid ""
 msgstr "רשימה (רווח מפריד) של שורות (חשבונות וקבוצות) מכווצות."
 
 #. sorted alphanum
-#: ../src/common/config.py:117 ../src/common/config.py:533
-#: ../src/common/optparser.py:295 ../src/common/optparser.py:491
-#: ../src/common/optparser.py:525 ../src/gui_interface.py:2795
+#: ../src/common/config.py:117
+#: ../src/common/config.py:528
+#: ../src/common/optparser.py:295
+#: ../src/common/optparser.py:491
+#: ../src/common/optparser.py:525
+#: ../src/gui_interface.py:2761
 msgid "default"
 msgstr "ברירת מחדל"
 
 #: ../src/common/config.py:123
 msgid "Language used by speller"
-msgstr "השפה אשר בשימוש על ידי מאיית"
+msgstr "השפה שבשימוש על ידי מאיית"
 
 #: ../src/common/config.py:124
 msgid ""
@@ -3951,409 +4209,295 @@ msgstr ""
 "'sometimes' - הדפסת זמן כל print_ichat_every_foo_minutes דקות.\n"
 "'never' - לא להדפיס זמן בכלל."
 
-# while the value 1 will
+# while the value 4 will
+# בעוד שהערך 4 יספק
 #: ../src/common/config.py:125
-msgid ""
-"Print time in chats using Fuzzy Clock. Value of fuzziness from 1 to 4, or 0 "
-"to disable fuzzyclock. 1 is the most precise clock, 4 the least precise one. "
-"This is used only if print_time is 'sometimes'."
-msgstr ""
-"הדפסת זמן בתוך שיחות באמצעות שעון מעורפל. ערך הערפול נע בין 1 אל 4, או 0 "
-"לנטרול שעון מעורפל. בעוד שהערך 1 יספק את השעה המדויקת ביותר, הערך 4 יספק את "
-"השעה הכי פחות מדויקת. אפשרות זו ניתנת לשימוש רק כאשר print_time מוגדר אל "
-"'sometimes'."
+msgid "Print time in chats using Fuzzy Clock. Value of fuzziness from 1 to 4, or 0 to disable fuzzyclock. 1 is the most precise clock, 4 the least precise one. This is used only if print_time is 'sometimes'."
+msgstr "הדפסת זמן בשיחות באמצעות שעון מעורפל. ערך הערפול נע בין 1 אל 4, או 0 לנטרול שעון מעורפל. הערך 1 יספק את השעה המדויקת ביותר, הערך 4 יספק את השעה הכי פחות מדויקת. אפשרות זו ניתנת לשימוש רק אם print_time מוגדר אל 'sometimes'."
 
 #: ../src/common/config.py:128
 msgid "Treat * / _ pairs as possible formatting characters."
-msgstr "התייחסות אל צמדים של * / _  בתור תווי עיצוב אפשריים."
+msgstr "התייחסות אל צמדים של * / _  כתווי עיצוב אפשריים."
 
+# מודגשות ובו בזמן עם הכוכביות * * לא מוסרות (תווים או כוכביות)
 #: ../src/common/config.py:129
-msgid ""
-"If True, do not remove */_ . So *abc* will be bold but with * * not removed."
-msgstr ""
-"במידה והעדפה זו מופעלת, אל תסיר */_ . כך שמחרוזת כגון *אבג* תהיה מובלטת כאשר "
-"* * לא מוסרים."
+msgid "If True, do not remove */_ . So *abc* will be bold but with * * not removed."
+msgstr "במידה והעדפה זו מופעלת, אל תסיר */_ . כך שמחרוזת כגון *אבג* יהיו מודגשות ביחד עם התווים * * לא מוסרים."
 
+# If you want to
+# אם אין ברצונך
+# אם יש ברצונך
 #: ../src/common/config.py:132
 msgid ""
 "Uses ReStructured text markup to send HTML, plus ascii formatting if "
 "selected. For syntax, see http://docutils.sourceforge.net/docs/ref/rst/"
 "restructuredtext.html (If you want to use this, install docutils)"
 msgstr ""
-"השתמש בשיטת קידוד ReStructured כדי לשלוח HTML, בנוסף גם עיצוב ascii במידה "
-"ונבחר. לתחביר, ראו http://docutils.sourceforge.net/docs/ref/rst/"
-"restructuredtext.html (אם רצונך להפיק מזה שימוש, יש להתקין docutils)"
 
+# בהשלמת כינוי אוטומטית
 #: ../src/common/config.py:141
-msgid ""
-"Character to add after nickname when using nick completion (tab) in group "
-"chat."
-msgstr ""
-"תו להוספה לאחר שם כינוי כאשר משתמשים בהשלמת כינוי (tab) בתוך שיחת קבוצה."
+msgid "Character to add after nickname when using nick completion (tab) in group chat."
+msgstr "תו להוספה לאחר שם כינוי כאשר משתמשים בהשלמת כינוי (tab) בשיחת קבוצה."
 
 # מוצע
 #: ../src/common/config.py:142
-msgid ""
-"Character to propose to add after desired nickname when desired nickname is "
-"used by someone else in group chat."
-msgstr ""
-"תו להציע להוספה לאחר שם הכינוי הרצוי כאשר זה בשימוש על ידי מישהו אחר בתוך "
-"שיחת קבוצה."
+msgid "Character to propose to add after desired nickname when desired nickname is used by someone else in group chat."
+msgstr "תו להציע להוספה לאחר שם הכינוי הרצוי כאשר זה בשימוש על ידי מישהו אחר בשיחת קבוצה."
 
+# BUG: TYPO: If True, (Case is 'T', not 't')
+# תנוחת
 #: ../src/common/config.py:160
-msgid ""
-"If True, Gajim will save roster position when hiding roster, and restore it "
-"when showing roster."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim ישמור את מיקום הרשימה כאשר הרשימה מוסתרת, "
-"וישחזרה כאשר הרשימה מוצגת."
+msgid "If true, Gajim will save roster position when hiding roster, and restore it when showing roster."
+msgstr "במידה והעדפה זו מופעלת, Gajim ישמור את מיקום הרשימה כאשר הרשימה מוסתרת, וישחזרה כאשר הרשימה מוצגת."
 
 # ראה
+#: ../src/common/config.py:171
+msgid "This option let you customize timestamp that is printed in conversation. For exemple \"[%H:%M] \" will show \"[hour:minute] \". See python doc on strftime for full documentation: http://docs.python.org/lib/module-time.html"
+msgstr "אפשרות זו מאפשרת לך להתאים את חותמת הזמן המודפסת בדיון. למשל \"[%H:%M] \" תראה \"[שעה:דקה] \". קיים לרשותך מסמך Python אודות strftime עבור תיעוד מלא בכתובת: http://docs.python.org/lib/module-time.html"
+
 #: ../src/common/config.py:172
-msgid ""
-"This option let you customize timestamp that is printed in conversation. For "
-"exemple \"[%H:%M] \" will show \"[hour:minute] \". See python doc on "
-"strftime for full documentation: http://docs.python.org/lib/module-time.html"
-msgstr ""
-"אפשרות זו מאפשרת לך להתאים את חותמת הזמן המודפסת בתוך דיון. למשל \"[%H:%M] "
-"\" תציג \"[שעה:דקה] \". לרשותך קיים מסמך Python אודות strftime עבור תיעוד "
-"מלא בכתובת: http://docs.python.org/lib/module-time.html"
+msgid "Characters that are printed before the nickname in conversations"
+msgstr "תווים שמודפסים לפני שם כינוי בדיונים"
 
 #: ../src/common/config.py:173
-msgid "Characters that are printed before the nickname in conversations"
-msgstr "תווים אשר מודפסים לפני שם כינוי בתוך דיונים"
-
-#: ../src/common/config.py:174
 msgid "Characters that are printed after the nickname in conversations"
-msgstr "תווים אשר מודפסים אחרי שם כינוי בתוך דיונים"
+msgstr "תווים שמודפסים אחרי שם כינוי בדיונים"
 
-#: ../src/common/config.py:177
-msgid ""
-"Specify the command to run when new mail arrives, e.g.: /usr/bin/getmail -q"
-msgstr ""
-"ציון הפקודה אשר ברצונך להריץ כאשר דואר חדש מגיעה, למשל: /usr/bin/getmail -q"
+# LRO character has solved the problem!
+# Yann, we can also do this:
+# למשל:\n
+# /usr/bin/getmail -q
+#: ../src/common/config.py:176
+msgid "Specify the command to run when new mail arrives, e.g.: /usr/bin/getmail -q"
+msgstr "ציון הפקודה שברצונך להריץ כאשר דואר חדש מגיעה, למשל: /usr/bin/getmail -q"
 
-#: ../src/common/config.py:179
+#: ../src/common/config.py:178
 msgid "Add * and [n] in roster title?"
 msgstr "האם להוסיף * וגם [n] בכותרת הרשימה?"
 
 # נפתחת שוב
-#: ../src/common/config.py:180
-msgid ""
-"How many lines to remember from previous conversation when a chat tab/window "
-"is reopened?"
-msgstr "כמה שורות לזכור מתוך דיון קודם כאשר חלון/כרטיסייה שיחה נפתחים מחדש."
+# BUG: Question mark ? at the end
+#: ../src/common/config.py:179
+msgid "How many lines to remember from previous conversation when a chat tab/window is reopened."
+msgstr "כמה שורות לזכור מן דיון קודם כאשר חלון/לשונית שיחה נפתחת מחדש."
 
-#: ../src/common/config.py:181
+#: ../src/common/config.py:180
 msgid "How many minutes should last lines from previous conversation last."
-msgstr "כמה דקות על שורות אחרונות מתוך דיון קודם להישאר."
+msgstr "כמה דקות על שורות אחרונות מן דיון קודם להישאר."
 
 # ללא גבול/סייג
+#: ../src/common/config.py:181
+msgid "How many lines to request from server when entering a groupchat. -1 means no limit"
+msgstr "כמה שורות לבקש מן שרת בעת כניסה אל שיחת קבוצה. הערך 1- מסמל אי הגבלה"
+
+# BUG: when ? entering
 #: ../src/common/config.py:182
-msgid ""
-"How many lines to request from server when entering a groupchat. -1 means no "
-"limit"
-msgstr "כמה שורות לבקש מתוך שרת בעת כניסה אל שיחת קבוצה. הערך 1- מסמל אי הגבלה"
+msgid "How many minutes back to request logs when a entering a groupchat. -1 means no limit"
+msgstr "כמה דקות לאחור לבקש רשומות בעת התחברות אל שיחת קבוצה. הערך 1- מסמל אי הגבלה"
 
+# ניסיון
 #: ../src/common/config.py:183
-msgid ""
-"How many minutes back to request logs when entering a groupchat. -1 means no "
-"limit"
-msgstr ""
-"כמה דקות לאחור לבקש רשומות בעת התחברות אל שיחת קבוצה. הערך 1- מסמל אי הגבלה"
+msgid "How many seconds to wait before trying to autorejoin to a conference you are being disconnected from. Set to 0 to disable autorejoining."
+msgstr "כמה שניות להמתין לפני שאנו מנסים להצטרף אוטומטית אל שיחת ועידה שממנה הינך מתנתק. הגדר אל 0 כדי לנטרל הצטרפות אוטומטית."
 
+# הצטרפות חוזרת אוטומטית
 #: ../src/common/config.py:184
-msgid ""
-"How many seconds to wait before trying to autorejoin to a conference you are "
-"being disconnected from. Set to 0 to disable autorejoining."
-msgstr ""
-"כמה שניות להמתין טרם ניסיון להצטרף אוטומטית אל שיחת ועידה אשר ממנה הינך "
-"מתנתק. הגדר אל 0 כדי לנטרל הצטרפות אוטומטית."
+msgid "Should autorejoin be activated when we are being kicked from a conference?"
+msgstr "האם הצטרפות אוטומטית צריכה להיות מופעלת כאשר אנחנו נבעטים מן שיחת ועידה?"
 
 #: ../src/common/config.py:185
-msgid ""
-"Should autorejoin be activated when we are being kicked from a conference?"
-msgstr ""
-"האם על הצטרפות חוזרת אוטומטית להיות מופעלת כאשר אנחנו נבעטים מתוך שיחת ועידה?"
+msgid "Send message on Ctrl+Enter and with Enter make new line (Mirabilis ICQ Client default behaviour)."
+msgstr "שליחת הודעה בלחיצה על Ctrl+Enter ויצירת שורה חדשה באמצעות המקש Enter (התנהגות משתמטת של Mirabilis לקוח ICQ)."
 
-#: ../src/common/config.py:186
-msgid ""
-"Send message on Ctrl+Enter and with Enter make new line (Mirabilis ICQ "
-"Client default behaviour)."
-msgstr ""
-"שליחת הודעה בלחיצה על Ctrl+Enter ויצירת שורה חדשה באמצעות המקש Enter "
-"(התנהגות משתמטת של Mirabilis לקוח ICQ)."
-
-# Ctrl+מעלה
-#: ../src/common/config.py:188
+# מקש־למעלה
+#: ../src/common/config.py:187
 msgid "How many lines to store for Ctrl+KeyUP."
 msgstr "כמה שורות לאחסן עבור Ctrl+KeyUP."
 
-#: ../src/common/config.py:191
+#: ../src/common/config.py:190
 #, python-format
-msgid ""
-"Either custom url with %s in it where %s is the word/phrase or 'WIKTIONARY' "
-"which means use wiktionary."
-msgstr ""
-"או כתובת url מותאמת עם %s בתוכה כאשר הסימן %s הינו המילה/הצירוף או "
-"'WIKTIONARY' אשר משמעותו היא להשתמש בויקימילון."
+msgid "Either custom url with %s in it where %s is the word/phrase or 'WIKTIONARY' which means use wiktionary."
+msgstr "או כתובת url מותאמת עם %s בתוכה כאשר הסימן %s הינו המילה/הצירוף או 'WIKTIONARY' שמשמעותו היא לעשות שימוש בויקימילון."
 
-#: ../src/common/config.py:194
+#: ../src/common/config.py:193
 msgid "If checked, Gajim can be controlled remotely using gajim-remote."
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יכול לפעול באופן מרוחק באמצעות gajim-remote."
+msgstr "במידה ואפשרות זו מסומנת, ביכולתו של Gajim לפעול באופן מרוחק באמצעות gajim-remote."
 
 # they = signals?
 # מוגדרת אל מנוטרלת
+#: ../src/common/config.py:194
+msgid "If True, listen to D-Bus signals from NetworkManager and change the status of accounts (provided they do not have listen_to_network_manager set to False and they sync with global status) based upon the status of the network connection."
+msgstr "במידה והעדפה זו מופעלת, הקשב אל אותות D-Bus המשודרים מן NetworkManager ושנה את מצב החיבור של חשבונות (בתנאי שאין להם את ההעדפה listen_to_network_manager מנוטרלת והם מסונכרנים עם מצב־חיבור גלובלי) על סמך המצב של חיבור רשת העבודה."
+
+# What is: one of all?
 #: ../src/common/config.py:195
-msgid ""
-"If True, listen to D-Bus signals from NetworkManager and change the status "
-"of accounts (provided they do not have listen_to_network_manager set to "
-"False and they sync with global status) based upon the status of the network "
-"connection."
-msgstr ""
-"במידה והעדפה זו מופעלת, הקשב אל אותות D-Bus המשודרים מתוך NetworkManager "
-"ושנה את מצב החיבור של חשבונות (בתנאי שאין להם את ההעדפה "
-"listen_to_network_manager מנוטרלת והם מסונכרנים עם מצב חיבור גלובלי) על סמך "
-"המצב של חיבור רשת העבודה."
+#, fuzzy
+msgid "Sent chat state notifications. Can be one of all, composing_only, disabled."
+msgstr "שליחת התראות מצב שיחה בחלון שיחה. Can be one of all, composing_only, disabled."
 
+# What is: one of all?
 #: ../src/common/config.py:196
-msgid ""
-"Sent chat state notifications. Can be one of all, composing_only, disabled."
-msgstr ""
-"שלח התראות מצב שיחה בחלון שיחה. יכול להיות אחד מאלו all, composing_only, "
-"disabled."
+#, fuzzy
+msgid "Displayed chat state notifications in chat windows. Can be one of all, composing_only, disabled."
+msgstr "הצגת התראות מצב שיחה בחלון שיחה. Can be one of all, composing_only, disabled."
 
-#: ../src/common/config.py:197
-msgid ""
-"Displayed chat state notifications in chat windows. Can be one of all, "
-"composing_only, disabled."
-msgstr ""
-"הצגת התראות מצב שיחה בחלון שיחה. יכול להיות אחד מאלו all, composing_only, "
-"disabled."
+#: ../src/common/config.py:198
+msgid "When not printing time for every message (print_time==sometimes), print it every x minutes."
+msgstr "כאשר זמן לא מודפס עבור כל הודעה (print_time==sometimes), הזמן יודפס כל x דקות."
 
 #: ../src/common/config.py:199
-msgid ""
-"When not printing time for every message (print_time==sometimes), print it "
-"every x minutes."
-msgstr ""
-"כאשר זמן לא מודפס עבור כל הודעה (print_time==sometimes), הזמן יודפס כל x "
-"דקות."
-
-#: ../src/common/config.py:200
 msgid "Ask before closing a group chat tab/window."
-msgstr "שאל טרם סגירת חלון/כרטיסייה של שיחת קבוצה."
+msgstr "שאל לפני סגירת חלון/לשונית של שיחת קבוצה."
 
+# BUG: Make it JIDs
+#: ../src/common/config.py:200
+msgid "Always ask before closing group chat tab/window in this space separated list of group chat jids."
+msgstr "שאל תמיד לפני סגירת חלון/לשונית של שיחת קבוצה ברשימה זו שמופרדת עם רווח, של כתובות JID של שיחות קבוצה."
+
+# BUG: Make it JIDs
 #: ../src/common/config.py:201
-msgid ""
-"Always ask before closing group chat tab/window in this space separated list "
-"of group chat JIDs."
-msgstr ""
-"שאל תמיד טרם סגירת חלון/כרטיסייה של שיחת קבוצה ברשימה זו אשר מופרדת עם רווח, "
-"של כתובות JID של שיחות קבוצה."
+msgid "Never ask before closing group chat tab/window in this space separated list of group chat jids."
+msgstr "לעולם אל תשאל לפני סגירת חלון/לשונית של שיחת קבוצה ברשימה זו שמופרדת עם רווח, של כתובות JID של שיחות קבוצה."
 
+# there are control?
 #: ../src/common/config.py:202
-msgid ""
-"Never ask before closing group chat tab/window in this space separated list "
-"of group chat JIDs."
-msgstr ""
-"לעולם אל תשאל טרם סגירת חלון/כרטיסייה של שיחת קבוצה ברשימה זו אשר מופרדת עם "
-"רווח, של כתובות JID של שיחות קבוצה."
+#, fuzzy
+msgid "Ask before closing tabbed chat window if there are control that can loose data (chat, private chat, groupchat that will not be minimized)"
+msgstr "שאל לפני סגירת חלון שיחה tabbed אם "
 
-#: ../src/common/config.py:203
-msgid ""
-"Ask before closing tabbed chat window if there are controls that can lose "
-"data (chat, private chat, groupchat that will not be minimized)"
-msgstr ""
-"שאל טרם סגירת חלון שיחה בעל סימניות כאשר קיימים בקרים אשר עלולים לאבד מידע "
-"(שיחה, שיחה פרטית, שיחת קבוצה אשר לא תמוזער)"
-
-#: ../src/common/config.py:206
-msgid ""
-"Comma separated list of hosts that we send, in addition of local interfaces, "
-"for File Transfer in case of address translation/port forwarding."
-msgstr ""
-"רשימה אשר מופרדת עם פסיקים, של מארחים אשר אנו שולחים, בנוסף לממשק מקומי, "
-"עבור העברת קובץ במקרה של תרגום כתובת/תיעול שערים (port forwarding)."
+#: ../src/common/config.py:205
+msgid "Comma separated list of hosts that we send, in addition of local interfaces, for File Transfer in case of address translation/port forwarding."
+msgstr "רשימה שמופרדת עם פסיקים, של מארחים שאנו שולחים, בנוסף לממשק מקומי, עבור העברת קובץ במקרה של תרגום כתובת/תיעול שערים (port forwarding)."
 
 # לפי תקן IEC
-#: ../src/common/config.py:208
+#: ../src/common/config.py:207
 msgid "IEC standard says KiB = 1024 bytes, KB = 1000 bytes."
-msgstr "תקן IEC אומר KiB = 1024 ביתים, KB = 1000 ביתים."
+msgstr "תקן IEC אומר KiB = 1024 ביתים, KB = 1000 ביתים."
 
-#: ../src/common/config.py:210
+#: ../src/common/config.py:209
 msgid "Notify of events in the notification area."
-msgstr "הודע על אירועים באזור ההתראה."
+msgstr "הודע לי על אירועים באזור ההתראה."
 
 # המהבהבת
 # כאשר זה מתריע על אירוע
-#: ../src/common/config.py:211
-msgid ""
-"If False, Gajim will display a static event icon instead of the blinking "
-"status icon in the notification area when notifying on event."
-msgstr ""
-"במידה ואפשרות זו מנוטרלת, Gajim יציג צלמית אירוע סטטית במקום צלמית המצב אשר "
-"ממצמצת באזור ההתראה בעת יידוע על אירוע."
+#: ../src/common/config.py:210
+msgid "If False, Gajim will display a static event icon instead of the blinking status icon in the notification area when notifying on event."
+msgstr "במידה ואפשרות זו מנוטרלת, Gajim יציג צלמית אירוע סטטית במקום צלמית המצב הממצמצת באזור ההתראה בעת יידוע על אירוע."
+
+# אם רק
+#: ../src/common/config.py:216
+msgid "Show tab when only one conversation?"
+msgstr "האם להציג לשונית כאשר רק דיון אחד קיים?"
 
 #: ../src/common/config.py:217
-msgid "Show tab when only one conversation?"
-msgstr "האם להציג כרטיסייה כאשר רק דיון אחד קיים?"
-
-#: ../src/common/config.py:218
 #, fuzzy
 msgid "Show tabbed notebook border in chat windows?"
-msgstr "להציג מסגרת tabbed notebook בחלון שיחה?"
+msgstr "הצגת מסגרת tabbed notebook בחלון שיחה?"
+
+#: ../src/common/config.py:218
+msgid "Show close button in tab?"
+msgstr "האם להציג כפתור סגירה בלשונית?"
 
 #: ../src/common/config.py:219
-msgid "Show close button in tab?"
-msgstr "האם להציג לחצן סגירה בתוך כרטיסייה?"
+#, fuzzy
+msgid "A list of modp groups to use in a Diffie-Hellman, highest preference first, separated by commas. Valid groups are 1, 2, 5, 14, 15, 16, 17 and 18. Higher numbers are more secure, but take longer to calculate when you start a session."
+msgstr "רשימה של קבוצות modp לשימוש בתוך Diffie-Hellman, highest preference first, מופרדת בפסיקים. קבוצות תקיפות הינן 1, 2, 5, 14, 15, 16, 17 וגם 18. ספרות גבוהות יותר הינן יותר מאובטחות, אולם לוקחות משך זמן ארוך יותר לחישוב בהתחילך סשן חדש."
 
-#: ../src/common/config.py:220
-msgid ""
-"A list of modp groups to use in a Diffie-Hellman, highest preference first, "
-"separated by commas. Valid groups are 1, 2, 5, 14, 15, 16, 17 and 18. Higher "
-"numbers are more secure, but take longer to calculate when you start a "
-"session."
-msgstr ""
-"רשימה של קבוצות modp לשימוש בתוך Diffie-Hellman, ההעדפה הרמה ביותר ראשונה, "
-"מופרדת בפסיקים. קבוצות תקפות הינן 1, 2, 5, 14, 15, 16, 17 וגם 18. ספרות "
-"גבוהות יותר הינן יותר מאובטחות, אולם לוקחות משך זמן ארוך יותר לחישוב בהתחילך "
-"סשן חדש."
-
-#: ../src/common/config.py:241
+#: ../src/common/config.py:240
 msgid "Preview new messages in notification popup?"
 msgstr "האם להראות תצוגה מוקדמת של הודעות חדשות בהתראה מוקפצת?"
 
+# Changed to: A list of words that will be highlighted in group chats (you will need to use semicolon ; to separate between words)
+# ### separated by \":\", ###
+#: ../src/common/config.py:245
+msgid "A semicolon-separated list of words that will be highlighted in group chats."
+msgstr "רשימה של מילים שיובלטו בשיחות קבוצה (יש לעשות שימוש בנקודה ופסיק ; כדי להפריד בין מילים)."
+
 #: ../src/common/config.py:246
-msgid ""
-"A semicolon-separated list of words that will be highlighted in group chats."
-msgstr ""
-"רשימה של מילים שיובלטו בתוך שיחות קבוצה (יש לעשות שימוש בנקודה ופסיק ; כדי "
-"להפריד בין מילים)."
+msgid "If True, quits Gajim when X button of Window Manager is clicked. This setting is taken into account only if notification icon is used."
+msgstr "במידה והעדפה זו מופעלת, Gajim יצא כאשר לחצן X של מנהל חלונות נלחץ. יש לקחת את הגדרה זו בחשבון רק במידה וצלמית התראה בשימוש."
 
 #: ../src/common/config.py:247
-msgid ""
-"If True, quits Gajim when X button of Window Manager is clicked. This "
-"setting is taken into account only if notification icon is used."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יצא כאשר לחצן X של מנהל חלונות נלחץ. הגדרה זו "
-"נלקחת בחשבון רק במידה וצלמית התראה מצויה בשימוש."
+msgid "If True, Gajim will check if it's the default jabber client on each startup."
+msgstr "במידה והעדפה זו מופעלת, Gajim יבדוק בכל הפעלה אם הוא לקוח Jabber המשתמט."
 
 #: ../src/common/config.py:248
-msgid ""
-"If True, Gajim will check if it's the default jabber client on each startup."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יבדוק בכל הפעלה אם הוא לקוח Jabber המשתמט."
+msgid "If True, Gajim will display an icon on each tab containing unread messages. Depending on the theme, this icon may be animated."
+msgstr "במידה והעדפה זו מופעלת, Gajim יציג צלמית על כל לשונית שמכילה הודעות שלא נקראו. תלוי במוטיב שבשימוש, צלמית זו יכולה להיות מונפשת."
 
 #: ../src/common/config.py:249
-msgid ""
-"If True, Gajim will display an icon on each tab containing unread messages. "
-"Depending on the theme, this icon may be animated."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יציג צלמית על כל כרטיסייה המכילה הודעות אשר לא "
-"נקראו. תלוי במוטיב אשר מצוי בשימוש, צלמית זו יכולה להיות מונפשת."
-
-#: ../src/common/config.py:250
-msgid ""
-"If True, Gajim will display the status message, if not empty, for every "
-"contact under the contact name in roster window."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יציג הודעת מצב, בתנאי שזו לא ריקה, עבור כל איש "
-"קשר תחת שם איש קשר בחלון הרשימה."
+msgid "If True, Gajim will display the status message, if not empty, for every contact under the contact name in roster window."
+msgstr "במידה והעדפה זו מופעלת, Gajim יציג הודעת מצב, בתנאי שזו לא ריקה, עבור כל איש קשר תחת שם איש קשר בחלון הרשימה."
 
 # right is left and left is right
-#: ../src/common/config.py:256
+#: ../src/common/config.py:255
 msgid "Define the position of the avatar in roster. Can be left or right"
 msgstr ""
 "הגדרת המיקום של האווטאר ברשימה. המיקום יכול להיות בצד ימין (left) או בצד "
 "שמאל (right)"
 
 # הטמון
+#: ../src/common/config.py:256
+msgid "If True, Gajim will ask for avatar each contact that did not have an avatar last time or has one cached that is too old."
+msgstr "במידה והעדפה זו מופעלת, Gajim יבקש עבור אווטאר מכל איש קשר שלא היה ברשותו אווטאר בפעם אחרונה או כאשר אווטאר מוטמן הינו ישן מידי."
+
+# BUG: or is better than and/or
+# no longer > not
 #: ../src/common/config.py:257
-msgid ""
-"If True, Gajim will ask for avatar each contact that did not have an avatar "
-"last time or has one cached that is too old."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יבקש עבור אווטאר מכל איש קשר אשר לא היה ברשותו "
-"אווטאר בפעם אחרונה או כאשר האווטאר המוטמן עבורו הינו ישן מדי."
-
-# BUG: or is better than and/or
-#: ../src/common/config.py:258
-msgid ""
-"If False, Gajim will no longer print status line in chats when a contact "
-"changes his or her status and/or his or her status message."
-msgstr ""
-"במידה ואפשרות זו מנוטרלת, Gajim לא ידפיס שורות מצב בתוך שיחות כאשר איש קשר "
-"משנה מצב חיבור או הודעת מצב."
+msgid "If False, Gajim will no longer print status line in chats when a contact changes his or her status and/or his or her status message."
+msgstr "במידה ואפשרות זו מנוטרלת, Gajim לא ידפיס שורות מצב בתוך שיחות כאשר איש קשר משנה מצב־חיבור או הודעת מצב."
 
 # BUG: or is better than and/or
+# BUG: Can (capital letter)
+# FOO?
 # יוזן > ישובץ
-#: ../src/common/config.py:259
-msgid ""
-"Can be \"none\", \"all\" or \"in_and_out\". If \"none\", Gajim will no "
-"longer print status line in groupchats when a member changes his or her "
-"status and/or his or her status message. If \"all\" Gajim will print all "
-"status messages. If \"in_and_out\", Gajim will only print FOO enters/leaves "
-"group chat."
-msgstr ""
-"יכול להיות \"none\" (כלל לא), \"all\" (הכל) או \"in_and_out\" (כניסה "
-"ויציאה). במידה ויוזן \"none\", Gajim לא ידפיס שורות מצב בתוך שיחות קבוצה "
-"כאשר חברים בשיחת קבוצה משנים את המצב שלהם או את הודעת המצב שלהם. במידה ויוזן "
-"\"all\" Gajim ידפיס את כל הודעות המצב. במידה ויוזן \"in_and_out\", Gajim "
-"ידפיס FOO כניסות/עזיבות של שיחות קבוצה בלבד."
+#: ../src/common/config.py:258
+msgid "can be \"none\", \"all\" or \"in_and_out\". If \"none\", Gajim will no longer print status line in groupchats when a member changes his or her status and/or his or her status message. If \"all\" Gajim will print all status messages. If \"in_and_out\", Gajim will only print FOO enters/leaves group chat."
+msgstr "יכול להיות \"none\" (כלל לא), \"all\" (הכל) או \"in_and_out\" (כניסה ויציאה). במידה ויוזן \"none\", Gajim לא ידפיס שורות מצב בשיחות קבוצה כאשר חברים בקבוצה משנים את מצב־החיבור שלהם או את הודעת המצב שלהם. במידה ויוזן \"all\" Gajim ידפיס את כל הודעות המצב. במידה ויוזן \"in_and_out\", Gajim ידפיס FOO כניסות/עזיבות של שיחות קבוצה בלבד."
 
-#: ../src/common/config.py:261
+#: ../src/common/config.py:260
 msgid "Log XHTML messages instead of plain text messages."
 msgstr "רישום הודעות בתסדיר XHTML במקום הודעות בתמליל רגיל."
 
 # בזמן שהם מתחברים
 # שזה עתה
 # בעת שהם
-#: ../src/common/config.py:262
+#: ../src/common/config.py:261
 msgid "Background color of contacts when they just signed in."
 msgstr "צבע רקע אחורי של אנשי קשר כאשר הם מתחברים."
 
-#: ../src/common/config.py:263
+#: ../src/common/config.py:262
 msgid "Background color of contacts when they just signed out."
 msgstr "צבע רקע אחורי של אנשי קשר כאשר הם מתנתקים."
 
+#: ../src/common/config.py:264
+msgid "If True, restored messages will use a smaller font than the default one."
+msgstr "במידה והעדפה זו מופעלת, הודעות משוחזרות יעשו שימוש בגופנים קטנים יותר מהגופן המשתמט."
+
 #: ../src/common/config.py:265
-msgid ""
-"If True, restored messages will use a smaller font than the default one."
-msgstr ""
-"במידה והעדפה זו מופעלת, הודעות משוחזרות יעשו שימוש בגופנים קטנים יותר מהגופן "
-"המשתמט."
-
-#: ../src/common/config.py:266
 msgid "Don't show avatar for the transport itself."
-msgstr "אל תציג אווטאר עבור המוביל עצמו."
+msgstr "לא להציג אווטאר עבור המוביל עצמו."
 
-#: ../src/common/config.py:267
+# שורת המשימות
+#: ../src/common/config.py:266
 msgid "Don't show roster in the system taskbar."
-msgstr "אל תציג את הרשימה בתוך שורת המשימות של המערכת."
+msgstr "לא להציג את הרשימה בסרגל המשימות."
 
 # להבהב
-#: ../src/common/config.py:268
-msgid ""
-"If True and installed GTK+ and PyGTK versions are at least 2.8, make the "
-"window flash (the default behaviour in most Window Managers) when holding "
-"pending events."
-msgstr ""
-"במידה והעדפה זו מופעלת, והגרסאות המותקנות של GTK+ ושל PyGTK הן לפחות 2.8, "
-"גרום לחלון להבזיק (ההתנהגות המשתמטת ברוב מנהלי החלונות) כאשר קיימים אירועים "
-"ממתינים."
+#: ../src/common/config.py:267
+msgid "If True and installed GTK+ and PyGTK versions are at least 2.8, make the window flash (the default behaviour in most Window Managers) when holding pending events."
+msgstr "במידה והעדפה זו מופעלת, והגרסאות המותקנות של GTK+ ושל PyGTK הן לפחות 2.8, גרום לחלון להבזיק (ההתנהגות המשתמטת ברוב מנהלי החלונות) כאשר קיימים אירועים ממתינים."
 
-#: ../src/common/config.py:270
-msgid ""
-"Jabberd1.4 does not like sha info when one join a password protected group "
-"chat. Turn this option to False to stop sending sha info in group chat "
-"presences."
-msgstr ""
-"Jabberd1.4 לא חפץ במידע sha כאשר מאן דהו מצטרף אל שיחת קבוצה המוגנת במילת "
-"מעבר. כדי להפסיק לשלוח מידע sha בנוכחויות שיחת קבוצה יש לנטרל את אפשרות זו."
+# keep מילת־מעבר
+#: ../src/common/config.py:269
+msgid "Jabberd1.4 does not like sha info when one join a password protected group chat. Turn this option to False to stop sending sha info in group chat presences."
+msgstr "Jabberd1.4 לא מחבב מידע sha כאשר מאן דהו מצטרף אל שיחת קבוצה המוגנת במילת־מעבר. כדי להפסיק לשלוח מידע sha בנוכחויות שיחת קבוצה יש לנטרל את אפשרות זו."
 
+# BUG: groupchats) s/are/is sent to
+# Is, not Are
+# היכן הודעות חדשות יושמו
 #. always, never, peracct, pertype should not be translated
-#: ../src/common/config.py:273
+#: ../src/common/config.py:272
 msgid ""
 "Controls the window where new messages are placed.\n"
 "'always' - All messages are sent to a single window.\n"
@@ -4361,8 +4505,7 @@ msgid ""
 "along with the roster.\n"
 "'never' - All messages get their own window.\n"
 "'peracct' - Messages for each account are sent to a specific window.\n"
-"'pertype' - Each message type (e.g. chats vs. groupchats) is sent to a "
-"specific window."
+"'pertype' - Each message type (e.g., chats vs. groupchats) are sent to a specific window."
 msgstr ""
 "בקרה על החלון בו הודעות חדשות מושמות.\n"
 "'always' - כל ההודעות נשלחות אל חלון בודד.\n"
@@ -4372,7 +4515,7 @@ msgstr ""
 "'peracct' - הודעות עבור כל חשבון נשלחות אל חלון מסוים.\n"
 "'pertype' - כל טיפוס הודעה (למשל, שיחות כנגד שיחות קבוצה) נשלח אל חלון מסוים."
 
-#: ../src/common/config.py:274
+#: ../src/common/config.py:273
 msgid ""
 "Show roster on startup.\n"
 "'always' - Always show roster.\n"
@@ -4384,408 +4527,298 @@ msgstr ""
 "'never' - לא להציג רשימה בכלל.\n"
 "'last_state' - שחזור המצב האחרון של הרשימה."
 
-#: ../src/common/config.py:275
+# deactivated, not false
+# ?
+#: ../src/common/config.py:274
 msgid "If False, you will no longer see the avatar in the chat window."
 msgstr ""
 "במידה ואפשרות זו מנוטרלת, לא תהיה לך האפשרות לראות את האווטאר בחלון השיחה."
 
-#: ../src/common/config.py:276
+#: ../src/common/config.py:275
 msgid "If True, pressing the escape key closes a tab/window."
-msgstr "במידה והעדפה זו מופעלת, לחיצה על המקש Esc תוביל לסגירת חלון/כרטיסייה."
+msgstr "במידה והעדפה זו מופעלת, לחיצה על המקש Esc תוביל לסגירת חלון/לשונית."
 
-#: ../src/common/config.py:277
+#: ../src/common/config.py:276
 msgid "Hides the buttons in chat windows."
 msgstr "הסתרת הלחצנים בחלונות שיחה."
 
-#: ../src/common/config.py:278
+#: ../src/common/config.py:277
 msgid "Hides the banner in a group chat window"
-msgstr "הסתרת הכרזה בחלון שיחת קבוצה"
+msgstr "הסתרת הכרזה בחלון של שיחת קבוצה"
 
 # עם שתי אישויות
-#: ../src/common/config.py:279
+#: ../src/common/config.py:278
 msgid "Hides the banner in two persons chat window"
 msgstr "הסתרת הכרזה בחלון שיחה עם שני נוכחים"
 
-# הסתרת רשימת הנוכחים בשיחת קבוצה בתוך חלון שיחת קבוצה
-#: ../src/common/config.py:280
+# הסתרת רשימת הנוכחים בשיחת קבוצה בחלון שיחת קבוצה
+#: ../src/common/config.py:279
 msgid "Hides the group chat occupants list in group chat window."
 msgstr "הסתרת רשימת הנוכחים בחלון שיחת קבוצה."
 
 # What does "than" mean?
+#: ../src/common/config.py:280
+#, fuzzy
+msgid "In a chat, show the nickname at the beginning of a line only when it's not the same person talking than in previous message."
+msgstr "בשיחה, הצג את שם הכינוי בתחילת שורה רק כאשר אין זו אותה האישיות מדברת מבהודעה קודמת."
+
 #: ../src/common/config.py:281
-msgid ""
-"In a chat, show the nickname at the beginning of a line only when it's not "
-"the same person talking than in previous message."
-msgstr ""
-"בשיחה, הצג את שם הכינוי בתחילת שורה רק כאשר אין זו אותה האישיות אשר מדברת "
-"מבהודעה קודמת."
-
-#: ../src/common/config.py:282
+#, fuzzy
 msgid "Indentation when using merge consecutive nickname."
-msgstr "הזחה בעת שימוש בשם כינוי עוקב מובלע."
+msgstr "הזחה בעת שימוש במיזוג רציף של שם כינוי."
 
-#: ../src/common/config.py:283
+# גלילת הודעות באופן חלק בחלון שיחה
+#: ../src/common/config.py:282
 msgid "Smooth scroll message in conversation window"
 msgstr "גלילה חלקה של הודעות בחלון דיון"
 
-#: ../src/common/config.py:284
-msgid ""
-"List of colors, separated by \":\", that will be used to color nicknames in "
-"group chats."
-msgstr ""
-"רשימה של צבעים, מופרדים על ידי \":\", אשר ישמשו לצביעת שמות כינוי בתוך שיחות "
-"קבוצה."
+# ### separated by \":\", ###
+#: ../src/common/config.py:283
+msgid "List of colors, separated by \":\", that will be used to color nicknames in group chats."
+msgstr "רשימה של צבעים, המופרדים על ידי \":\", ושישמשו לצביעת שמות כינוי בשיחות קבוצה."
 
-#: ../src/common/config.py:285
+#: ../src/common/config.py:284
 msgid "Ctrl-Tab go to next composing tab when none is unread."
-msgstr ""
-"Ctrl-Tab כדי לעבור אל הכרטיסייה המולחנת הבאה כאשר אין כרטיסיות אשר לא נקראו."
+msgstr "Ctrl-Tab כדי לעבור אל הלשונית המולחנת הבאה כאשר אין לשוניות שלא נקראו."
 
 # אנשי־קשר-מוצמדים
 # Meta- (from the Greek preposition μετά = "after", "beyond", "adjacent", "self",
 # adjacent = adjoining = צמוד
+#: ../src/common/config.py:285
+msgid "Should we show the confirm metacontacts creation dialog or not? Empty string means we never show the dialog."
+msgstr "האם קיים הצורך שאנחנו נציג את דו־שיח וידוא יצירת אנשי־קשר-מוצמדים או שלא? המשמעות של מחרוזת ריקה תהיה שאנחנו לא נציג את הדו־שיח בכלל."
+
 #: ../src/common/config.py:286
-msgid ""
-"Should we show the confirm metacontacts creation dialog or not? Empty string "
-"means we never show the dialog."
-msgstr ""
-"האם עלינו להציג דו שיח וידוא יצירת אנשי־קשר-מוצמדים? המשמעות של מחרוזת ריקה "
-"תהיה שאנחנו לא נציג את הדו שיח בכלל."
+msgid "Should we show the confirm block contact dialog or not? Empty string means we never show the dialog."
+msgstr "האם קיים הצורך שאנחנו נציג את דו־שיח וידוא חסימת איש קשר או שלא? המשמעות של מחרוזת ריקה תהיה שאנחנו לא נציג את הדו־שיח בכלל."
 
 #: ../src/common/config.py:287
-msgid ""
-"Should we show the confirm block contact dialog or not? Empty string means "
-"we never show the dialog."
-msgstr ""
-"האם עלינו להציג דו שיח וידוא חסימת איש קשר? המשמעות של מחרוזת ריקה תהיה "
-"שאנחנו לא נציג את הדו שיח בכלל."
+msgid "Should we show the confirm custom status dialog or not? Empty string means we never show the dialog."
+msgstr "האם קיים הצורך שאנחנו נציג את דו־שיח וידוא מצב־חיבור מותאם או שלא? המשמעות של מחרוזת ריקה תהיה שאנחנו לא נציג את הדו־שיח בכלל."
 
 #: ../src/common/config.py:288
-msgid ""
-"Should we show the confirm custom status dialog or not? Empty string means "
-"we never show the dialog."
-msgstr ""
-"האם עלינו להציג דו שיח וידוא מצב חיבור מותאם? המשמעות של מחרוזת ריקה תהיה "
-"שאנחנו לא נציג את הדו שיח בכלל."
+msgid "If True, you will be able to set a negative priority to your account in account modification window. BE CAREFUL, when you are logged in with a negative priority, you will NOT receive any message from your server."
+msgstr "במידה והעדפה זו מופעלת, תהיה ביכולתך להגדיר עדיפות שלילית עבור חשבונך בתוך חלון התאמת חשבון. יש להיזהר, בעת התחברותך יחד עם עדיפות שלילית, לא תתקבלנה שום הודעה מן שרתך."
 
 #: ../src/common/config.py:289
-msgid ""
-"If True, you will be able to set a negative priority to your account in "
-"account modification window. BE CAREFUL, when you are logged in with a "
-"negative priority, you will NOT receive any message from your server."
-msgstr ""
-"במידה והעדפה זו מופעלת, תהיה באפשרותך להגדיר עדיפות שלילית עבור חשבונך בתוך "
-"חלון התאמת חשבון. יש להיזהר, בעת התחברותך יחד עם עדיפות שלילית, לא תתקבלנה "
-"שום הודעה מתוך שרתך."
+msgid "If True, Gajim will use Gnome Keyring (if available) to store account passwords."
+msgstr "במידה והעדפה זו מופעלת, Gajim יעשה שימוש ביישום Gnome Keyring (במידה והיישום זמין) כדי לאחסן סיסמאות חשבון."
 
 #: ../src/common/config.py:290
-msgid ""
-"If True, Gajim will use Gnome Keyring (if available) to store account "
-"passwords."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יעשה שימוש ביישום Gnome Keyring (במידה וזה "
-"זמין) כדי לאחסן סיסמאות חשבון."
+msgid "If True, Gajim will use KDE Wallet (if kwalletcli is available) to store account passwords."
+msgstr "במידה והעדפה זו מופעלת, Gajim יעשה שימוש ביישום KDE Wallet (אם kwalletcli הינו זמין) כדי לאחסן סיסמאות חשבון."
 
 #: ../src/common/config.py:291
-msgid ""
-"If True, Gajim will use KDE Wallet (if kwalletcli is available) to store "
-"account passwords."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יעשה שימוש ביישום KDE Wallet (כאשר kwalletcli "
-"הינו זמין) כדי לאחסן סיסמאות חשבון."
-
-#: ../src/common/config.py:292
-msgid ""
-"If True, Gajim will show number of online and total contacts in account and "
-"group rows."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יציג מספר של אנשי קשר מקוונים בשורות חשבון "
-"וקבוצה."
+msgid "If True, Gajim will show number of online and total contacts in account and group rows."
+msgstr "במידה והעדפה זו מופעלת, Gajim יציג מספר של אנשי קשר מקוונים בשורות חשבון וקבוצה."
 
 # what type?
 # אפשרי שיהיה
-#: ../src/common/config.py:293
-msgid ""
-"Can be empty, 'chat' or 'normal'. If not empty, treat all incoming messages "
-"as if they were of this type"
-msgstr ""
-"יכול להיות ריק, 'chat' (שיחה) או 'normal' (רגיל). במידה וערך זה אינו ריק, "
-"התייחס אל כל ההודעות הנכנסות כאילו היו מטיפוס זה"
+#: ../src/common/config.py:292
+msgid "Can be empty, 'chat' or 'normal'. If not empty, treat all incoming messages as if they were of this type"
+msgstr "יכול להיות ריק, 'chat' (שיחה) או 'normal' (רגיל). במידה וערך זה אינו ריק, התייחס אל כל ההודעות הנכנסות כאילו היו מטיפוס זה"
 
 # שממנו נשלחה
+#: ../src/common/config.py:293
+#, fuzzy
+msgid "If True, Gajim will scroll and select the contact who sent you the last message, if chat window is not already opened."
+msgstr "במידה והעדפה זו מופעלת, Gajim יגולל ויבחר את איש הקשר ששלח לך את ההודעה האחרונה, אם חלון שיחה אינו פתוח כבר."
+
 #: ../src/common/config.py:294
-msgid ""
-"If True, Gajim will scroll and select the contact who sent you the last "
-"message, if chat window is not already opened."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יגולל ויבחר את איש הקשר אשר שלח לך את ההודעה "
-"האחרונה, אם וכאשר חלון שיחה אינו פתוח כבר."
-
-#: ../src/common/config.py:295
 msgid "Time of inactivity needed before the change status window closes down."
-msgstr "זמן חוסר פעילות אשר נחוץ לפני שחלון שינוי מצב נסגר."
+msgstr "זמן חוסר פעילות שנחוץ לפני שחלון שינוי המצב נסגר."
 
-#: ../src/common/config.py:296
-msgid ""
-"Maximum number of lines that are printed in conversations. Oldest lines are "
-"cleared."
-msgstr "מספר מרבי של שורות אשר יודפסו בתוך דיונים. השורות הכי ישנות יטוהרו."
+# מרבי של שורות
+#: ../src/common/config.py:295
+msgid "Maximum number of lines that are printed in conversations. Oldest lines are cleared."
+msgstr "מספר שורות מרבי שיודפסו בדיונים. השורות הכי ישנות יטוהרו."
 
 # יכרכו
 # BUG: the notification icon?
+#: ../src/common/config.py:296
+msgid "If True, notification windows from notification-daemon will be attached to notification icon."
+msgstr "במידה והעדפה זו מופעלת, חלונות התראה מן notification-daemon יסופחו אל צלמית התראה."
+
+# What is checks?
 #: ../src/common/config.py:297
-msgid ""
-"If True, notification windows from notification-daemon will be attached to "
-"notification icon."
-msgstr ""
-"במידה והעדפה זו מופעלת, חלונות התראה מן notification-daemon יסופחו אל צלמית "
-"התראה."
-
-# חוסר
-#: ../src/common/config.py:298
+#, fuzzy
 msgid "Choose interval between 2 checks of idleness."
-msgstr "בחר תדירות עדכון בין 2 בדיקות של העדר פעילות."
+msgstr "בחירת תדירות עדכון בין 2 checks של חוסר פעילות."
 
-#: ../src/common/config.py:299
-msgid ""
-"Valid uri schemes. Only schemes in this list will be accepted as \"real\" "
-"uri. (mailto and xmpp are handled separately)"
-msgstr ""
-"תרשים uri תקף. תרשימים המצויים בתוך הרשימה בלבד יתקבלו בתור תרשים uri \"אמיתי"
-"\". (mailto וגם xmpp מטופלים בנפרד)"
+#: ../src/common/config.py:298
+msgid "Valid uri schemes. Only schemes in this list will be accepted as \"real\" uri. (mailto and xmpp are handled separately)"
+msgstr "תרשים uri תקף. תרשימים המצויים ברשימה בלבד יתקבלו כתרשים uri \"אמיתי\". (mailto וגם xmpp מטופלים בנפרד)"
 
 # שידור בקשות
-# עלולה לגרום could
+#: ../src/common/config.py:299
+msgid "Ask offline status message to all offline contacts when connection to an accoutn is established. WARNING: This causes a lot of requests to be sent!"
+msgstr "בקש הודעות מצב לא מקוונות מכל אנשי קשר בלתי מקוונים כאשר חיבור אל חשבון מבוסס. אזהרה: זו עלולה לגרום לשליחת מספר רב של בקשות!"
+
 #: ../src/common/config.py:300
-msgid ""
-"Ask offline status message to all offline contacts when connection to an "
-"account is established. WARNING: This causes a lot of requests to be sent!"
-msgstr ""
-"בקש הודעות מצב לא מקוונות מכל אנשי קשר בלתי מקוונים כאשר חיבור אל חשבון "
-"מבוסס. אזהרה: זו גורמת לשליחת מספר רב של בקשות!"
+msgid "If True, completion in groupchats will be like a shell auto-completion"
+msgstr "במידה והעדפה זו מופעלת, השלמה בשיחת קבוצה תיעשה בדומה להשלמה אוטומטית במעטפת (shell) של מסוף."
 
 #: ../src/common/config.py:301
-msgid "If True, completion in groupchats will be like a shell auto-completion"
-msgstr ""
-"במידה והעדפה זו מופעלת, השלמה בתוך שיחות קבוצה תיעשה בדומה להשלמה אוטומטית "
-"במעטפת (shell) של מסוף."
+msgid "When is self contact row displayed. Can be \"always\", \"when_other_resource\" or \"never\""
+msgstr "מתי שורת איש קשר עצמי תוצג. יכול להיות \"always\" (תמיד), \"when_other_resource\" (כאשר משאב אחר מחובר) או \"never\" (בכלל לא)"
 
-#: ../src/common/config.py:302
-msgid ""
-"When is self contact row displayed. Can be \"always\", \"when_other_resource"
-"\" or \"never\""
-msgstr ""
-"מתי שורת איש קשר עצמי תוצג. יכול להיות \"always\" (תמיד), "
-"\"when_other_resource\" (כאשר משאב אחר מחובר) או \"never\" (בכלל לא)"
-
-#: ../src/common/config.py:307
+# Any better word to mine for Optionally?
+# Does it mean: an option to?
+#: ../src/common/config.py:306
 msgid "Optionally fix jingle output video framerate. Example: 10/1 or 25/2"
 msgstr "אפשרות קיבוע פלט תדר וידאו של jingle. דוגמא: 10/1 או 25/2"
 
-#: ../src/common/config.py:308
+#: ../src/common/config.py:307
 msgid "Optionally resize jingle output video. Example: 320x240"
 msgstr "אפשרות שינוי מידת פלט הוידאו של jingle. דוגמא: 320x240"
 
-#: ../src/common/config.py:309
-msgid "If True, You will also see your webcam"
-msgstr "במידה והעדפה זו מופעלת, תהיה באפשרותך לראות גם את מצלמת הרשת שלך"
+# שהוגדר ברשומה
+#: ../src/common/config.py:310
+msgid "If True, Gajim will try to use a STUN server when using jingle. The one in \"stun_server\" option, or the one given by the jabber server."
+msgstr "במידה והעדפה זו מופעלת, Gajim ינסה לעשות שימש בשרת STUN כאשר jingle מצוי בשימוש. זה שהוזן בהעדפה \"stun_server\", או בזה שניתן בשרת jabber נתון."
 
+# שישמשך
+#: ../src/common/config.py:311
+msgid "STUN server to use when using jingle"
+msgstr "שרת STUN שישמש אותך בעת שימוש ב־jingle"
+
+# נוכחי שיחת קבוצה
+# נוכחים בשיחות קבוצה
 #: ../src/common/config.py:312
-msgid ""
-"If True, Gajim will try to use a STUN server when using jingle. The one in "
-"\"stun_server\" option, or the one given by the jabber server."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim ינסה לעשות שימש בשרת STUN כאשר jingle מצוי "
-"בשימוש. זה אשר הוגדר בתוך \"stun_server\", או בזה אשר ניתן על ידי שרת jabber "
-"נתון."
+msgid "If True, Gajim will show affiliation of groupchat occupants by adding a colored square to the status icon"
+msgstr "במידה והעדפה זו מופעלת, Gajim יציג שיוך של נוכחים של שיחת קבוצה על ידי הוספת מרובע צבעוני לצלמית המצב"
 
 #: ../src/common/config.py:313
-msgid "STUN server to use when using jingle"
-msgstr "שרת STUN אשר ישמש אותך בעת שימוש ב־jingle"
+msgid "Proxy used for all outgoing connections if the account does not have a specific proxy configured"
+msgstr "מתווך שבשימוש עבור כל החיבורים היוצאים במידה ולחשבון אין מתווך מסוים מוגדר"
 
 #: ../src/common/config.py:314
-msgid ""
-"If True, Gajim will show affiliation of groupchat occupants by adding a "
-"colored square to the status icon"
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יציג שיוך של נוכחים של שיחת קבוצה על ידי הוספת "
-"מרובע צבעוני לצלמית המצב"
-
-#: ../src/common/config.py:315
-msgid ""
-"Proxy used for all outgoing connections if the account does not have a "
-"specific proxy configured"
-msgstr ""
-"ציר אשר בשימוש עבור כל החיבורים היוצאים במידה ולחשבון אין ציר מסוים מוגדר"
-
-#: ../src/common/config.py:316
 msgid "If True, Gajim will ignore incoming attention requestd (\"wizz\")."
 msgstr "במידה והעדפה זו מופעלת, Gajim יתעלם מבקשות הקשב נכנסות (\"wizz\")."
 
-#: ../src/common/config.py:317
-msgid ""
-"If enabled, Gajim will reopen chat windows that were opened last time Gajim "
-"was closed."
-msgstr ""
-"במידה ואפשרות זו מופעלת, Gajim ייפתח מחדש חלונות שיחה שהיו פתוחים בפעם "
-"האחרונה בה Gajim נסגר."
+#: ../src/common/config.py:315
+msgid "If enabled, Gajim will reopen chat windows that were opened last time Gajim was closed."
+msgstr "במידה ואפשרות זו מופעלת, Gajim ייפתח מחדש חלונות שיחה שהיו פתוחים בפעם האחרונה שהיישום נסגר."
 
-#: ../src/common/config.py:318
-msgid ""
-"If enabled, Gajim will show an icon to show that sent message has been "
-"received by your contact"
-msgstr ""
-"במידה ואפשרות זו מופעלת, Gajim יציג צלמית המעידה על כך שהודעה אשר נשלחה "
-"התקבלה על ידי איש הקשר שלך"
+#: ../src/common/config.py:329
+msgid "Priority will change automatically according to your status. Priorities are defined in autopriority_* options."
+msgstr "עדיפות תשונה אוטומטית בהתאם למצב־חיבורך. עדיפויות מוגדרות בתוך האפשרות autopriority_*."
 
-#: ../src/common/config.py:332
-msgid ""
-"Priority will change automatically according to your status. Priorities are "
-"defined in autopriority_* options."
-msgstr ""
-"עדיפות תשונה אוטומטית בהתאם אל מצב החיבור שלך. עדיפויות מוגדרות בתוך האפשרות "
-"autopriority_*."
+#: ../src/common/config.py:337
+msgid "Status used to autoconnect as. Can be online, chat, away, xa, dnd, invisible. NOTE: this option is used only if restore_last_status is disabled"
+msgstr "מצב בשימוש להתחברות אוטומטית כ-. יכול להיות online (מקוון), chat (פנוי לשיחה), away (נעדר), xa (לא זמין), dnd (עסוק), invisible (בלתי נראה). הערה: אפשרות זו נכנסת לשימוש רק אם ההעדפה restore_last_status מנוטרלת"
 
-#: ../src/common/config.py:340
-msgid ""
-"Status used to autoconnect as. Can be online, chat, away, xa, dnd, "
-"invisible. NOTE: this option is used only if restore_last_status is disabled"
-msgstr ""
-"מצב בשימוש להתחברות אוטומטית בתור . יכול להיות online (מקוון), chat (פנוי "
-"לשיחה), away (נעדר), xa (לא זמין), dnd (עסוק), invisible (בלתי נראה). הערה: "
-"אפשרות זו נכנסת לשימוש רק אם ההעדפה restore_last_status מנוטרלת"
-
-#: ../src/common/config.py:341
+#: ../src/common/config.py:338
 msgid "If enabled, restore the last status that was used."
-msgstr "במידה והעדפה זו מופעלת, מצב החיבור האחרון אשר היה בשימוש ישוחזר."
+msgstr "במידה והעדפה זו מופעלת, מצב־החיבור האחרון שהיה בשימוש ישוחזר."
 
 # BUG: typo: the authorization of the contacts will get accepted, not the contacts themselves
 # הרשאות שיתבקשו על ידי אנשי קשר יתקבלו אוטומטית
-#: ../src/common/config.py:343
-msgid ""
-"If True, Contacts requesting authorization will be automatically accepted."
-msgstr "במידה והעדפה זו מופעלת, אנשי קשר אשר מבקשים הרשאה יתקבלו אוטומטית."
+#: ../src/common/config.py:340
+msgid "If True, Contacts requesting authorization will be automatically accepted."
+msgstr "במידה והעדפה זו מופעלת, אנשי קשר שמבקשים הרשאה יתקבלו אוטומטית."
 
-#: ../src/common/config.py:344
-msgid ""
-"If False, this account will be disabled and will not appear in roster window."
+# ייראה
+#: ../src/common/config.py:341
+msgid "If False, this account will be disabled and will not appear in roster window."
 msgstr "במידה ואפשרות זו מנוטרלת, חשבון זה ינוטרל ולא יופיע בחלון הרשימה."
 
-#: ../src/common/config.py:347
-msgid ""
-"If disabled, don't sign presences with GPG key, even if GPG is configured."
-msgstr ""
-"במידה ואפשרות זו מנוטרלת, אל תחתום נוכחות באמצעות מפתח GPG, אפילו אם GPG "
-"מוגדר."
+#: ../src/common/config.py:344
+msgid "If disabled, don't sign presences with GPG key, even if GPG is configured."
+msgstr "במידה ואפשרות זו מנוטרלת, אל תחתום נוכחות באמצעות מפתח GPG, אפילו אם GPG מוגדר."
 
-#: ../src/common/config.py:349
+#: ../src/common/config.py:346
 msgid "Enable ESessions encryption for this account."
 msgstr "אפשור הצפנת ESessions עבור חשבון זה."
 
 # באם/כאשר ניתן
-#: ../src/common/config.py:350
+#: ../src/common/config.py:347
 msgid "Should Gajim automatically start an encrypted session when possible?"
 msgstr "האם על Gajim להתחיל אוטומטית סשן מוצפן במידת האפשר?"
 
-#: ../src/common/config.py:351
-msgid ""
-"Ordered list (space separated) of connection type to try. Can contain tls, "
-"ssl or plain"
-msgstr ""
-"רשימה סדורה (רווח מפריד) של טיפוס חיבור לנסות. יכול להכיל tls, ssl או plain"
+#: ../src/common/config.py:348
+msgid "Ordered list (space separated) of connection type to try. Can contain tls, ssl or plain"
+msgstr "רשימה סדורה (רווח מפריד) של טיפוס חיבור לנסות. יכול להכיל tls, ssl או plain"
 
-#: ../src/common/config.py:352
-msgid ""
-"Show a warning dialog before sending password on an plaintext connection. "
-"Can be 'warn', 'connect', 'disconnect'"
-msgstr ""
-"הצגת דו שיח אזהרה טרם שליחת סיסמה על פני חיבור גלוי. יכול להיות "
-"'warn' (הזהר), 'connect' (התחבר), 'disconnect' (התנתק)"
+# בטרם
+# חיבור תמליל גלוי
+#: ../src/common/config.py:349
+msgid "Show a warning dialog before sending password on an plaintext connection. Can be 'warn', 'connect', 'disconnect'"
+msgstr "הצגת דו־שיח אזהרה טרם שליחת סיסמה על פני חיבור גלוי. יכול להיות 'warn' (הזהר), 'connect' (התחבר), 'disconnect' (התנתק)"
+
+# What is standard?
+# (1) serving as a model, widely accepted
+# (2) normal, regular, typical
+#: ../src/common/config.py:350
+#, fuzzy
+msgid "Show a warning dialog before using standard SSL library."
+msgstr "הצג דו־שיח אזהרה בטרם שימוש בספריית SSL רגילה."
+
+# גלויה
+# חיבור לא מאובטח
+#: ../src/common/config.py:351
+msgid "Show a warning dialog before sending PLAIN password over a plain connection."
+msgstr "הצגת דו־שיח אזהרה טרם שליחת סיסמה חשופה על פני חיבור גלוי."
 
 #: ../src/common/config.py:353
-msgid "Show a warning dialog before using standard SSL library."
-msgstr "הצג דו שיח אזהרה בטרם שימוש בספריית SSL סטנדרטית."
-
-#: ../src/common/config.py:354
-msgid ""
-"Show a warning dialog before sending PLAIN password over a plain connection."
-msgstr "הצגת דו שיח אזהרה טרם שליחת סיסמה חשופה על פני חיבור גלוי."
-
-#: ../src/common/config.py:356
 msgid "Space separated list of ssl errors to ignore."
-msgstr "רשימה אשר מופרדת עם רווח, של שגיאות ssl שיש להתעלם מהן."
+msgstr "רשימה שמופרדת עם רווח, של שגיאות ssl שיש להתעלם מהן."
 
-#: ../src/common/config.py:362
-msgid ""
-"Space separated list of JIDs for which you do not want to store logs. You "
-"can also add account name to log nothing for this account."
-msgstr ""
-"רשימה אשר מופרדת עם רווח, של כתובות JID עבורן אין ברצונך לאחסן רשומות. "
-"באפשרותך גם להוסיף שם חשבון כדי לא לרשום דבר עבור חשבון זה."
+#: ../src/common/config.py:359
+msgid "Space separated list of JIDs for which you do not want to store logs. You can also add account name to log nothing for this account."
+msgstr "רשימה שמופרדת עם רווח, של כתובות JID עבורן אין ברצונך לאחסן רשומות. ביכולתך גם להוסיף שם חשבון כדי לא לרשום דבר עבור חשבון זה."
 
 # BUG: he or she
-#: ../src/common/config.py:363
-msgid ""
-"Space separated list of JIDs for which you accept to not log conversations "
-"if he does not want to."
-msgstr ""
-"רשימה אשר מופרדת עם רווח, של כתובות JID עבורן הינך מביע הסכמה שלא לרושם "
-"דיונים במידה והקצה השני לא מעוניין בכך."
+#: ../src/common/config.py:360
+msgid "Space separated list of JIDs for which you accept to not log conversations if he does not want to."
+msgstr "רשימה שמופרדת עם רווח, של כתובות JID עבורן הינך מביע הסכמה שלא לרושם דיונים במידה והקצה השני לא מעוניין בכך."
 
 # חלל לבן, עקב
-#: ../src/common/config.py:366
+#: ../src/common/config.py:363
 msgid "Whitespace sent after inactivity"
 msgstr "סימן לבן נשלח לאחר חוסר פעילות"
 
-#: ../src/common/config.py:367
+#: ../src/common/config.py:364
 msgid "XMPP ping sent after inactivity"
 msgstr "פינג XMPP נשלח לאחר חוסר פעילות"
 
-#: ../src/common/config.py:371
-msgid ""
-"How many seconds to wait for the answer of ping alive packet before we try "
-"to reconnect?"
-msgstr ""
-"כמה שניות להמתין עבור תשובת חבילת פינג חי לפני שאנחנו מנסים להתחבר מחדש."
+# keep-alive?
+# BUG: Question mark ? at the end
+# לתשובת
+#: ../src/common/config.py:368
+msgid "How many seconds to wait for the answer of ping alive packet before we try to reconnect."
+msgstr "כמה שניות להמתין עבור תשובת חבילת פינג חי לפני שאנחנו מנסים להתחבר מחדש."
 
 #. yes, no, ask
-#: ../src/common/config.py:375
+#: ../src/common/config.py:372
 msgid "Jabberd2 workaround"
 msgstr "מעקף עבור Jabberd2"
 
 # INTERESTING!
 # option (אפשרות), not entry (רשומה)
-#: ../src/common/config.py:378
-msgid ""
-"If checked, Gajim will use your IP and proxies defined in "
-"file_transfer_proxies option for file transfer."
-msgstr ""
-"במידה ואפשרות זו מסומנת, Gajim יעשה שימוש בכתובת פרוטוקול המרשתת (IP; "
-"Internet Protocol) ובמתווכים שהוגדרו על ידיך באפשרות file_transfer_proxies "
-"עבור העברת קובץ."
+#: ../src/common/config.py:375
+msgid "If checked, Gajim will use your IP and proxies defined in file_transfer_proxies option for file transfer."
+msgstr "במידה ואפשרות זו מסומנת, Gajim יעשה שימוש בכתובת פרוטוקול המרשתת (IP) ובמתווכים שהוגדרו על ידיך באפשרות file_transfer_proxies עבור העברת קובץ."
 
-#: ../src/common/config.py:379
-msgid ""
-"If True, Gajim will test file transfer proxies on startup to be sure it "
-"works. Openfire's proxies are known to fail this test even if they work."
-msgstr ""
-"במידה והעדפה זו מופעלת, Gajim יבחן מתווכי העברת קובץ בעת הפעלה כדי לוודא כי "
-"זו אכן פועלת. ידוע כי מתווכי Openfire נכשלים בבחינה זו אפילו אם אלו עובדים."
+# לוודא שהתכונה
+#: ../src/common/config.py:376
+msgid "If True, Gajim will test file transfer proxies on startup to be sure it works. Openfire's proxies are known to fail this test even if they work."
+msgstr "במידה והעדפה זו מופעלת, Gajim יבחן מתווכי העברת קובץ בעת הפעלה כדי לוודא שזו אכן פועלת. ידוע שמתווכי Openfire נכשלים בבחינה זו אפילו אם אלו עובדים."
 
-#: ../src/common/config.py:393
+#: ../src/common/config.py:390
 msgid "Answer to receipt requests"
 msgstr "מענה לבקשות קבלה"
 
-#: ../src/common/config.py:394
+#: ../src/common/config.py:391
 msgid "Sent receipt requests"
-msgstr "בקשות קבלה אשר נשלחו"
+msgstr "בקשות קבלה שנשלחו"
 
-#: ../src/common/config.py:403
-msgid ""
-"Allow Gajim to send information about the operating system you are running."
-msgstr "התר ל־Gajim לשלוח מידע אודות מערכת ההפעלה אשר בשימושך."
+# BUG: a dot at the end
+#: ../src/common/config.py:400
+msgid "Allow Gajim to send information about the operating system you are running."
+msgstr "התר ל־Gajim לשלוח מידע אודות מערכת ההפעלה שבשימושך"
 
-#: ../src/common/config.py:404
+#: ../src/common/config.py:401
 msgid "Allow Gajim to send your local time."
 msgstr "התר ל־Gajim לשלוח את הזמן המקומי שלך."
 
@@ -4793,236 +4826,418 @@ msgstr "התר ל־Gajim לשלוח את הזמן המקומי שלך."
 # מתקיימת הסדרה לסשן
 # מתקיימת הסדרת סשן
 # שרצונך הוא
+#: ../src/common/config.py:402
+msgid "When negotiating an encrypted session, should Gajim assume you want your messages to be logged?"
+msgstr "כאשר מתקיים משא ומתן עבור סשן מוצפן, האם על Gajim להניח שברצונך שהודעותיך ירשמו?"
+
 #: ../src/common/config.py:405
-msgid ""
-"When negotiating an encrypted session, should Gajim assume you want your "
-"messages to be logged?"
-msgstr ""
-"כאשר מתקיים משא ומתן עבור סשן מוצפן, האם על Gajim להניח כי ברצונך שהודעותיך "
-"ירשמו?"
+msgid "Message that is sent to contacts you want to add"
+msgstr "הודעה שתישלח אל אנשי קשר אותם ברצונך להוסיף"
+
+#: ../src/common/config.py:406
+msgid "Last time we syncronized with logs from server."
+msgstr "פעם אחרונה בה סנכרנו רשומות מן שרת."
+
+#: ../src/common/config.py:407
+msgid "If enabled and if server supports this feature, Gajim will receive messages sent and received by other resources."
+msgstr "במידה ואפשרות זו מופעלת ושרת נתון תומך בתכונה זו, Gajim יקבל הודעות שמתקבלות ונשלחות על ידי משאבים אחרים."
 
 #: ../src/common/config.py:408
-msgid "Message that is sent to contacts you want to add"
-msgstr "הודעה אשר תישלח אל אנשי קשר אותם ברצונך להוסיף"
+msgid "If enabled, Gajim will send your local IPs so your contact can connect to your machine to transfer files."
+msgstr "במידה ואפשרות זו מופעלת, Gajim ישלח את כתובות פרוטוקול המרשתת (IP) המקומיות שלך וכך תעמוד לרשות איש הקשר שלך האפשרות להתחבר ישירות אל מחשבך כדי להעביר קבצים."
 
 #: ../src/common/config.py:409
-msgid "Last time we syncronized with logs from server."
-msgstr "פעם אחרונה בה סנכרנו רשומות מתוך שרת."
-
-#: ../src/common/config.py:410
-msgid ""
-"If enabled and if server supports this feature, Gajim will receive messages "
-"sent and received by other resources."
-msgstr ""
-"במידה ואפשרות זו מופעלת ושרת נתון תומך בתכונה זו, Gajim יקבל הודעות אשר "
-"מתקבלות ונשלחות על ידי משאבים אחרים."
-
-#: ../src/common/config.py:411
-msgid ""
-"If enabled, Gajim will send your local IPs so your contact can connect to "
-"your machine to transfer files."
-msgstr ""
-"במידה ואפשרות זו מופעלת, Gajim ישלח את כתובות פרוטוקול המרשתת (IP; Internet "
-"Protocol) המקומיות שלך וכך תעמוד לרשות איש הקשר שלך האפשרות להתחבר ישירות אל "
-"מחשבך כדי להעביר קבצים."
-
-#: ../src/common/config.py:412
 msgid "Latest token for Oauth2 authentication."
 msgstr "האות האחרון עבור אימות Oauth2."
 
-#: ../src/common/config.py:413
+#: ../src/common/config.py:410
 msgid "client_id for Oauth2 authentication."
 msgstr "client_id עבור אימות Oauth2."
 
-#: ../src/common/config.py:414
+#: ../src/common/config.py:411
 msgid "redirect_url for Oauth2 authentication."
 msgstr "redirect_url עבור אימות Oauth2."
 
-#: ../src/common/config.py:415
-msgid ""
-"Space separated list of JIDs for which we want to re-open a chat window on "
-"next startup."
-msgstr ""
-"רשימה אשר מופרדת עם רווח, של כתובות JID עבורן אנו רוצים לפתוח מחדש חלון שיחה "
-"בהפעלה הבאה."
+# BUG: jid > JIDs
+#: ../src/common/config.py:412
+msgid "Space separated list of jid for which we want to re-open a chat window on next startup."
+msgstr "רשימה שמופרדת עם רווח, של כתובות JID עבורן אנו רוצים לפתוח מחדש חלון שיחה בהפעלה הבאה."
 
-#: ../src/common/config.py:477
+#: ../src/common/config.py:474
 msgid "Is OpenPGP enabled for this contact?"
 msgstr "האם OpenPGP מאופשרת עבור איש קשר זה?"
 
 # thank you, rodensky
-#: ../src/common/config.py:478
-msgid ""
-"Should Gajim automatically start an encrypted session with this contact when "
-"possible?"
+#: ../src/common/config.py:475
+msgid "Should Gajim automatically start an encrypted session with this contact when possible?"
 msgstr "האם על Gajim להתחיל אוטומטית סשן מוצפן עם איש קשר זה במידת האפשר?"
 
-# אשר ברצוננו
-#: ../src/common/config.py:479 ../src/common/config.py:482
+# שברצוננו
+#: ../src/common/config.py:476
+#: ../src/common/config.py:479
 msgid "Language for which we want to check misspelled words"
-msgstr "שפה עבורה אנחנו רוצים לבדוק מילים אשר לא מאויתות כראוי"
+msgstr "שפה עבורה אנחנו רוצים לבדוק מילים שלא מאויתות כראוי"
 
-# ללא
-#: ../src/common/config.py:483
-msgid ""
-"How many lines to request from server when entering a groupchat. -1 means no "
-"limit, -2 means global value"
+#: ../src/common/config.py:482
+msgid "State whether plugins should be activated on startup (this is saved on Gajim exit). This option SHOULD NOT be used to (de)activate plug-ins. Use GUI instead."
 msgstr ""
-"כמה שורות לבקש מתוך שרת בעת כניסה אל שיחת קבוצה. 1- מסמל אי הגבלה, 2- מסמל "
-"ערך גלובלי"
-
-#: ../src/common/config.py:484
-msgid ""
-"How many minutes back to request logs when entering a groupchat. -1 means no "
-"limit, -2 means global value"
-msgstr ""
-"כמה דקות לאחור לבקש רשומות בעת התחברות אל שיחת קבוצה. 1- מסמל אי הגבלה, 2- "
-"מסמל ערך גלובלי"
 
 #: ../src/common/config.py:487
-msgid ""
-"State whether plugins should be activated on startup (this is saved on Gajim "
-"exit). This option SHOULD NOT be used to (de)activate plug-ins. Use GUI "
-"instead."
-msgstr ""
-"קבע האם על תוספות להיות מתופעלות בעת הפעלה (זוהי נשמרת בעת יציאה מתוך "
-"Gajim). אין להשתמש באפשרות זו כדי לשפעל או לנטרל תוספות. עליך להשתמש בממשק "
-"משתמש גרפי במקום."
-
-# יושן
-#: ../src/common/config.py:492 ../src/common/pep.py:157
+#: ../src/common/pep.py:157
 msgid "Sleeping"
-msgstr "ישן"
+msgstr "יושן"
 
-#: ../src/common/config.py:493
+#: ../src/common/config.py:488
 msgid "Back soon"
 msgstr "אשוב בקרוב"
 
-#: ../src/common/config.py:493
+#: ../src/common/config.py:488
 msgid "Back in some minutes."
 msgstr "אני אחזור בעוד כמה דקות."
 
-#: ../src/common/config.py:494 ../src/common/pep.py:127
+#: ../src/common/config.py:489
+#: ../src/common/pep.py:127
 msgid "Eating"
 msgstr "אוכל"
 
-#: ../src/common/config.py:494
+#: ../src/common/config.py:489
 msgid "I'm eating, so leave me a message."
 msgstr "אני בהפסקת אוכל, אז תשאירו לי הודעה."
 
-#: ../src/common/config.py:495
+#: ../src/common/config.py:490
 msgid "Movie"
 msgstr "סרט"
 
-#: ../src/common/config.py:495
+#: ../src/common/config.py:490
 msgid "I'm watching a movie."
 msgstr "אני צופה בסרט."
 
-#: ../src/common/config.py:496 ../src/common/pep.py:186
+#: ../src/common/config.py:491
+#: ../src/common/pep.py:185
 msgid "Working"
 msgstr "עובד"
 
-#: ../src/common/config.py:496
+#: ../src/common/config.py:491
 msgid "I'm working."
 msgstr "אני בעבודה."
 
-#: ../src/common/config.py:497
+#: ../src/common/config.py:492
 msgid "Phone"
 msgstr "טלפון"
 
 # בשיחת טלפון
-#: ../src/common/config.py:497
+#: ../src/common/config.py:492
 msgid "I'm on the phone."
 msgstr "אני בטלפון."
 
-#: ../src/common/config.py:498
+#: ../src/common/config.py:493
 msgid "Out"
 msgstr "בחוץ"
 
-#: ../src/common/config.py:498
+#: ../src/common/config.py:493
 msgid "I'm out enjoying life."
 msgstr "יצאתי החוצה ליהנות מן החיים."
 
 # מצבי זמין
-#: ../src/common/config.py:509
+#: ../src/common/config.py:504
 msgid "I'm available."
 msgstr "אני זמין."
 
-#: ../src/common/config.py:510
+#: ../src/common/config.py:505
 msgid "I'm free for chat."
 msgstr "אני פנוי/ה לשיחה."
 
 # אשוב מיד
 # מיד אשוב
-#: ../src/common/config.py:511 ../src/config.py:1646
+#: ../src/common/config.py:506
+#: ../src/config.py:1645
 msgid "Be right back."
 msgstr "אני כבר אשוב."
 
 # איני/אינני זמין.
-#: ../src/common/config.py:512
+#: ../src/common/config.py:507
 msgid "I'm not available."
 msgstr "אני לא זמין."
 
-#: ../src/common/config.py:513
+#: ../src/common/config.py:508
 msgid "Do not disturb."
 msgstr "נא לא להפריע."
 
-#: ../src/common/config.py:514 ../src/common/config.py:515
+#: ../src/common/config.py:509
+#: ../src/common/config.py:510
 msgid "Bye!"
 msgstr "להתראות!"
 
-#: ../src/common/config.py:526
-msgid ""
-"Sound to play when a group chat message contains one of the words in "
-"muc_highlight_words, or when a group chat message contains your nickname."
-msgstr ""
-"צליל לניגון כאשר הודעת שיחת קבוצה מכילה אחת מתוך המילים אשר מצוינות בתוך "
-"muc_highlight_words, או כאשר הודעת שיחת קבוצה מכילה אח שם הכינוי שלך."
+#: ../src/common/config.py:521
+msgid "Sound to play when a group chat message contains one of the words in muc_highlight_words, or when a group chat message contains your nickname."
+msgstr "צליל לניגון כאשר הודעת שיחת קבוצה מכילה אחת מן המילים שמצוינות בתוך muc_highlight_words, או כאשר הודעת שיחת קבוצה מכילה אח שם כינוייך."
 
-#: ../src/common/config.py:527
+#: ../src/common/config.py:522
 msgid "Sound to play when any MUC message arrives."
 msgstr "צליל לניגון כאשר הודעת שמ״מ מגיעה."
 
-#: ../src/common/config.py:536 ../src/common/optparser.py:309
+#: ../src/common/config.py:531
+#: ../src/common/optparser.py:309
 msgid "green"
 msgstr "ירוק"
 
-#: ../src/common/config.py:540 ../src/common/optparser.py:295
+#: ../src/common/config.py:535
+#: ../src/common/optparser.py:295
 msgid "grocery"
 msgstr "במכולת"
 
-#: ../src/common/config.py:544
+#: ../src/common/config.py:539
 msgid "human"
 msgstr "אנושי"
 
-#: ../src/common/config.py:548
+#: ../src/common/config.py:543
 msgid "marine"
 msgstr "ימי"
 
-#: ../src/common/config.py:555
+#: ../src/common/config.py:550
 msgid "Tor"
 msgstr ""
 
+# request for comments?
+# כתובת JID
+#: ../src/common/connection_handlers_events.py:369
+#, python-format
+msgid "JID %s is not RFC compliant. It will not be added to your roster. Use roster management tools such as http://jru.jabberstudio.org/ to remove it"
+msgstr "JID %s אינה תואמת RFC. זו לא תוסף אל רשימתך. ניתן להשתמש בכלי רשימה (roster) כגון http://jru.jabberstudio.org כדי להסירה"
+
+#: ../src/common/connection_handlers_events.py:823
+#, python-format
+msgid "unsubscribe request from %s"
+msgstr "בקשת ביטול הרשמה מאת %s"
+
+# Write to Disk?
+#: ../src/common/connection_handlers_events.py:908
+#: ../src/common/connection_handlers.py:338
+#: ../src/common/connection_handlers.py:953
+#: ../src/common/connection_handlers.py:1075
+#: ../src/common/connection.py:459
+#: ../src/common/logger.py:1153
+#: ../src/gajim.py:390
+#: ../src/session.py:97
+#, fuzzy
+msgid "Disk Write Error"
+msgstr "שגיאת כתיבה אל כונן"
+
+#: ../src/common/connection_handlers_events.py:912
+#: ../src/common/connection_handlers.py:956
+#: ../src/common/connection_handlers.py:1078
+#: ../src/common/connection.py:463
+#: ../src/common/logger.py:1156
+#: ../src/gajim.py:209
+#: ../src/session.py:101
+#, python-format
+msgid "The database file (%s) cannot be read. Try to repair it (see http://trac.gajim.org/wiki/DatabaseBackup) or remove it (all history will be lost)."
+msgstr "קובץ מסד הנתונים (%s) לא ניתן לקריאה. נסו לתקנו (ראו http://trac.gajim.org/wiki/DatabaseBackup) או להסירו (כל ההיסטוריה תאבד)."
+
+#. Room has been destroyed. see
+#. http://www.xmpp.org/extensions/xep-0045.html#destroyroom
+#: ../src/common/connection_handlers_events.py:933
+msgid "Room has been destroyed"
+msgstr "החדר הוחרב"
+
+#: ../src/common/connection_handlers_events.py:941
+#, python-format
+msgid "You can join this room instead: %s"
+msgstr "יש באפשרותך להצטרף אל חדר זה במקום: %s"
+
+#: ../src/common/connection_handlers_events.py:1025
+#: ../src/common/connection_handlers_events.py:1062
+#: ../src/common/connection.py:263
+#: ../src/config.py:2142
+#: ../src/config.py:2151
+#: ../src/config.py:2219
+#: ../src/config.py:3662
+#: ../src/dataforms_widget.py:633
+#: ../src/dialogs.py:3133
+msgid "Invalid Jabber ID"
+msgstr "כתובת JID שגויה"
+
+# מן כתובת
+# זכתה להתעלמות מן הצד/הקצה שלך
+#: ../src/common/connection_handlers_events.py:1026
+#: ../src/common/connection_handlers_events.py:1063
+msgid "A message from a non-valid JID arrived, it has been ignored."
+msgstr "התקבלה הודעה מן כתובת JID שאיננה תקפה, Gajim התעלם מן הודעה זו."
+
+#. ('MSGNOTSENT', account, (jid, ierror_msg, msg, time, session))
+#: ../src/common/connection_handlers_events.py:1094
+#: ../src/gui_interface.py:432
+#: ../src/gui_interface.py:446
+#, python-format
+msgid "error while sending %(message)s ( %(error)s )"
+msgstr "שגיאה בעת שליחת %(message)s ( %(error)s )"
+
+#: ../src/common/connection_handlers_events.py:1565
+#, python-format
+msgid "Unknown SSL error: %d"
+msgstr "שגיאת SSL לא ידועה: %d"
+
+#: ../src/common/connection_handlers_events.py:2157
+#: ../src/dialogs.py:2818
+#: ../src/notify.py:266
+msgid "New Single Message"
+msgstr "הודעה בודדת חדשה"
+
+#: ../src/common/connection_handlers_events.py:2159
+#, python-format
+msgid "New Single Message from %(nickname)s"
+msgstr "התקבלה הודעה בודדת חדשה מאת %(nickname)s"
+
+#: ../src/common/connection_handlers_events.py:2163
+#: ../src/dialogs.py:2819
+#: ../src/notify.py:267
+msgid "New Private Message"
+msgstr "הודעה פרטית חדשה"
+
+# מן שיחת
+#: ../src/common/connection_handlers_events.py:2165
+#, python-format
+msgid "New Private Message from group chat %s"
+msgstr "הודעה פרטית חדשה משיחת הקבוצה %s"
+
+#: ../src/common/connection_handlers_events.py:2168
+#, python-format
+msgid "%(nickname)s: %(message)s"
+msgstr "%(nickname)s: %(message)s"
+
+# [09:02:34 PM] Rodensky: "התקבלה הודעה מ"
+# [09:08:28 PM] Myself: אני חושב שזה: המסר נשלח על-ידי...
+# [09:08:39 PM] Rodensky: לא
+# [09:08:46 PM] Rodensky: זה "התקבלה הודעה מ"
+#: ../src/common/connection_handlers_events.py:2171
+#, python-format
+msgid "Messaged by %(nickname)s"
+msgstr "התקבלה הודעה מאת %(nickname)s"
+
+#: ../src/common/connection_handlers_events.py:2175
+#: ../src/dialogs.py:2818
+#: ../src/notify.py:266
+msgid "New Message"
+msgstr "הודעה חדשה"
+
+#: ../src/common/connection_handlers_events.py:2177
+#, python-format
+msgid "New Message from %(nickname)s"
+msgstr "הודעה חדשה מאת %(nickname)s"
+
+# %(nick)s שינה/תה מצב
+#: ../src/common/connection_handlers_events.py:2320
+#, python-format
+msgid "%(nick)s Changed Status"
+msgstr "המצב של %(nick)s שונה"
+
+# See: LRE string PDF
+#: ../src/common/connection_handlers_events.py:2322
+#: ../src/groupchat_control.py:205
+#: ../src/groupchat_control.py:1767
+#: ../src/history_window.py:448
+#, python-format
+msgid "%(nick)s is now %(status)s"
+msgstr "%(nick)s מצוי/ה כעת במצב %(status)s "
+
+#: ../src/common/connection_handlers_events.py:2327
+#: ../src/dialogs.py:2830
+#: ../src/notify.py:280
+msgid "Contact Changed Status"
+msgstr "איש קשר שינה מצב־חיבור"
+
+#: ../src/common/connection_handlers_events.py:2329
+#, python-format
+msgid "%(nickname)s Signed In"
+msgstr "%(nickname)s התחבר/ה"
+
+#. default value
+#: ../src/common/connection_handlers_events.py:2334
+#: ../src/dialogs.py:2814
+#: ../src/notify.py:262
+msgid "Contact Signed In"
+msgstr "איש קשר התחבר"
+
+#: ../src/common/connection_handlers_events.py:2336
+#, python-format
+msgid "%(nickname)s Signed Out"
+msgstr "%(nickname)s התנתק/ה"
+
+#: ../src/common/connection_handlers_events.py:2341
+#: ../src/dialogs.py:2816
+#: ../src/notify.py:264
+msgid "Contact Signed Out"
+msgstr "איש קשר התנתק"
+
+#: ../src/common/connection_handlers.py:89
+#: ../src/common/zeroconf/connection_handlers_zeroconf.py:54
+msgid "Unable to load idle module"
+msgstr "לא ניתן לטעון מודוּל חוסר פעילות"
+
+#: ../src/common/connection_handlers.py:122
+#, python-format
+msgid "Registration information for transport %s has not arrived in time"
+msgstr "מידע רישום עבור המוביל %s לא הגיע בזמן"
+
+#: ../src/common/connection_handlers.py:130
+msgid "Registration succeeded"
+msgstr "רישום בוצע בהצלחה"
+
+# BUG: agent>transport ?
+#: ../src/common/connection_handlers.py:131
+#, python-format
+msgid "Registration with agent %s succeeded"
+msgstr "רישום עם סוכן %s בוצע בהצלחה"
+
+#: ../src/common/connection_handlers.py:140
+msgid "Registration failed"
+msgstr "רישום נכשל"
+
+# BUG: with errors
+# BUG: with an error
+# Needs to be tested
+#: ../src/common/connection_handlers.py:141
+#, python-format
+msgid "Registration with agent %(agent)s failed with error %(error)s: %(error_msg)s"
+msgstr "רישום עם סוכן %(agent)s נכשל בליווי שגיאה %(error)s: %(error_msg)s"
+
+#: ../src/common/connection_handlers.py:575
+#: ../src/common/connection.py:1576
+msgid "Invisibility not supported"
+msgstr "מצב בלתי נראה אינו נתמך"
+
+#: ../src/common/connection_handlers.py:576
+#: ../src/common/connection.py:1577
+#, python-format
+msgid "Account %s doesn't support invisibility."
+msgstr "חשבון %s לא תומך במצב בלתי נראה."
+
+#: ../src/common/connection_handlers.py:1742
+msgid "I would like to add you to my roster."
+msgstr "ברצוני להוסיפך אל הרשימה שלי."
+
 #: ../src/common/connection.py:70
 msgid "Unable to get issuer certificate"
-msgstr "אין אפשרות לקבל תעודת מנפיק"
+msgstr "לא ניתן לקבל תעודת מנפיק"
 
 #: ../src/common/connection.py:71
 msgid "Unable to get certificate CRL"
-msgstr "אין אפשרות לקבל תעודת CRL"
+msgstr "לא ניתן לקבל תעודת CRL"
 
 #: ../src/common/connection.py:72
 msgid "Unable to decrypt certificate's signature"
-msgstr "אין אפשרות לפענח את החתימה של התעודה"
+msgstr "לא ניתן לפענח את החתימה של התעודה"
 
 #: ../src/common/connection.py:73
 msgid "Unable to decrypt CRL's signature"
-msgstr "אין אפשרות לפענח חתימת CRL"
+msgstr "לא ניתן לפענח חתימת CRL"
 
+# Is decode different from decrypt?
 #: ../src/common/connection.py:74
 msgid "Unable to decode issuer public key"
-msgstr "אין אפשרות לפענח מפתח ציבורי של מנפיק"
+msgstr "לא ניתן לפענח מפתח ציבורי של מנפיק"
 
+# תעודת חתימה נכשל
 #: ../src/common/connection.py:75
 msgid "Certificate signature failure"
 msgstr "כשל תעודת חתימה"
@@ -5042,13 +5257,15 @@ msgstr "התעודה פקעה"
 # CRL what? (Certificate?)
 #: ../src/common/connection.py:79
 msgid "CRL is not yet valid"
-msgstr "CRL אינה תקפה עדיין"
+msgstr "CRL עדיין לא תקפה"
 
 # CRL what? (Certificate?)
 #: ../src/common/connection.py:80
 msgid "CRL has expired"
-msgstr "CRL פקעה"
+msgstr "CRL פקעה"
 
+# תבנית
+# שבתעודה
 #: ../src/common/connection.py:81
 msgid "Format error in certificate's notBefore field"
 msgstr "שגיאת תסדיר בשדה notBefore של התעודה"
@@ -5080,16 +5297,18 @@ msgstr "תעודה חתומה באופן עצמי בתוך שרשרת תעודה
 
 #: ../src/common/connection.py:88
 msgid "Unable to get local issuer certificate"
-msgstr "אין אפשרות לקבל תעודת מנפיק מקומית"
+msgstr "לא ניתן לקבל תעודת מנפיק מקומית"
 
 #: ../src/common/connection.py:89
 msgid "Unable to verify the first certificate"
-msgstr "אין אפשרות לאמת את התעודה הראשונה"
+msgstr "לא ניתן לאמת את התעודה הראשונה"
 
+# מחרוזת
 #: ../src/common/connection.py:90
 msgid "Certificate chain too long"
-msgstr "שרשרת תעודה ארוכה מדי"
+msgstr "שרשרת תעודה ארוכה מידי"
 
+# נפסלה
 #: ../src/common/connection.py:91
 msgid "Certificate revoked"
 msgstr "התעודה בוטלה"
@@ -5100,9 +5319,11 @@ msgstr "תעודת CA חסרת תוקף"
 
 #: ../src/common/connection.py:93
 msgid "Path length constraint exceeded"
-msgstr "מגבלת אורך נתיב מוצתה"
+msgstr ""
 
+# מטרת
 #: ../src/common/connection.py:94
+#, fuzzy
 msgid "Unsupported certificate purpose"
 msgstr "תכלית תעודה לא נתמכת"
 
@@ -5119,7 +5340,7 @@ msgstr "התעודה נדחתה"
 # קיימת אי תיאום עם/ב
 #: ../src/common/connection.py:97
 msgid "Subject issuer mismatch"
-msgstr "נושא מנפיק לא תואם"
+msgstr ""
 
 #: ../src/common/connection.py:98
 msgid "Authority and subject key identifier mismatch"
@@ -5132,43 +5353,35 @@ msgstr "רשות ומספר סידורי של מנפיק לא תואמים"
 
 #: ../src/common/connection.py:100
 msgid "Key usage does not include certificate signing"
-msgstr "שימוש מפתח לא כולל חתימת תעודה"
+msgstr ""
 
 #: ../src/common/connection.py:101
 #, fuzzy
 msgid "Application verification failure"
 msgstr "כשל אימות פניה"
 
-#: ../src/common/connection.py:270 ../src/common/connection.py:280
-#: ../src/common/connection_handlers_events.py:1027
-#: ../src/common/connection_handlers_events.py:1070 ../src/config.py:2157
-#: ../src/config.py:2166 ../src/config.py:2236 ../src/config.py:3680
-#: ../src/dataforms_widget.py:633 ../src/dialogs.py:3244
-msgid "Invalid Jabber ID"
-msgstr "מזהה Jabber שגוי"
-
-#: ../src/common/connection.py:271 ../src/common/connection.py:281
-#: ../src/dialogs.py:3245
+#: ../src/common/connection.py:264
+#: ../src/dialogs.py:3134
 #, python-format
 msgid "It is not possible to send a message to %s, this JID is not valid."
-msgstr "אין אפשרות לשלוח הודעה אל %s, כתובת JID זו אינה תקפה."
+msgstr "לא ניתן לשלוח הודעה אל %s, כתובת JID זו אינה תקפה."
 
-#: ../src/common/connection.py:304
+#: ../src/common/connection.py:286
 msgid "Neither the remote presence is signed, nor a key was assigned."
 msgstr "אף לא הנוכחות המרוחקת חתומה, וגם לא הוקצה מפתח."
 
-#: ../src/common/connection.py:307
+#: ../src/common/connection.py:289
 #, python-format
 msgid "The contact's key (%s) does not match the key assigned in Gajim."
-msgstr "המפתח של איש קשר (%s) לא תואם את המפתח שמוקצה בתוך Gajim."
+msgstr "המפתח של איש קשר (%s) לא תואם את המפתח שמוקצה אצל Gajim."
 
 # Needs to be tested
 #. we're not english: one in locale and one en
-#: ../src/common/connection.py:363
+#: ../src/common/connection.py:343
 msgid "[This message is *encrypted* (See :XEP:`27`]"
 msgstr "[הודעה זו הינה *מוצפנת* (ראו :XEP:`27`]"
 
-#: ../src/common/connection.py:507
+#: ../src/common/connection.py:446
 #, python-format
 msgid ""
 "Subject: %(subject)s\n"
@@ -5177,120 +5390,103 @@ msgstr ""
 "נושא: %(subject)s\n"
 "%(message)s"
 
-# BUG: spawning dialog
-#: ../src/common/connection.py:520 ../src/common/connection_handlers.py:343
-#: ../src/common/connection_handlers.py:1143
-#: ../src/common/connection_handlers.py:1267
-#: ../src/common/connection_handlers_events.py:910
-#: ../src/common/logger.py:1159 ../src/gajim.py:435 ../src/session.py:95
-msgid "Disk Write Error"
-msgstr "שגיאת כתיבת כונן"
-
-#: ../src/common/connection.py:524 ../src/common/connection_handlers.py:1146
-#: ../src/common/connection_handlers.py:1270
-#: ../src/common/connection_handlers_events.py:914
-#: ../src/common/logger.py:1162 ../src/gajim.py:230 ../src/session.py:99
-#, python-format
-msgid ""
-"The database file (%s) cannot be read. Try to repair it (see http://trac."
-"gajim.org/wiki/DatabaseBackup) or remove it (all history will be lost)."
-msgstr ""
-"קובץ מסד הנתונים (%s) לא ניתן לקריאה. נסו לתקנו (ראו http://trac.gajim.org/"
-"wiki/DatabaseBackup) או להסירו (כל ההיסטוריה תאבד)."
-
-#: ../src/common/connection.py:930
+#: ../src/common/connection.py:866
 #, python-format
 msgid "Connection with account \"%s\" has been lost"
 msgstr "החיבור עם חשבון \"%s\" אבד"
 
-#: ../src/common/connection.py:931
+# כדי להתחבר מחדש, עליך להתחבר ידנית
+#: ../src/common/connection.py:867
 msgid "Reconnect manually."
 msgstr "התחבר ידנית."
 
 #. it's a new account
 #. wrong answer
-#: ../src/common/connection.py:942
+#: ../src/common/connection.py:878
 #, python-format
 msgid "Server %(name)s answered wrongly to register request: %(error)s"
 msgstr "שרת %(name)s ענה באופן שגוי לבקשת rhauo: %(error)s"
 
 #. requested config has changed since first connection
-#: ../src/common/connection.py:984
+#: ../src/common/connection.py:920
 #, python-format
 msgid "Server %s provided a different registration form"
-msgstr "שרת %s סיפק טופס רישום שונה"
+msgstr "שרת %s סיפק צורת רישום שונה"
 
-#: ../src/common/connection.py:1001
+#: ../src/common/connection.py:937
 msgid "Invalid answer"
 msgstr "תשובה שגויה"
 
-#: ../src/common/connection.py:1002
+#: ../src/common/connection.py:938
 #, python-format
 msgid "Transport %(name)s answered wrongly to register request: %(error)s"
 msgstr "מוביל %(name)s ענה באופן שגוי לבקשת רישום: %(error)s"
 
-#: ../src/common/connection.py:1297
+#: ../src/common/connection.py:1230
+#: ../src/common/connection.py:1385
+#: ../src/common/connection.py:2016
+#: ../src/common/zeroconf/connection_zeroconf.py:205
 #, python-format
-msgid "Could not connect to \"%(host)s\" via proxy \"%(proxy)s\""
-msgstr "לא היתה אפשרות להתחבר אל \"%(host)s\" דרך ציר \"%(proxy)s\""
+msgid "Could not connect to \"%s\""
+msgstr "לא ניתן להתחבר אל \"%s\""
 
-#: ../src/common/connection.py:1300
-#, python-format
-msgid "Could not connect to \"%(host)s\""
-msgstr "לא היתה אפשרות להתחבר אל \"%(host)s\""
-
-#: ../src/common/connection.py:1302 ../src/common/connection.py:1463
-#: ../src/gui_interface.py:542
+# BUG: x2
+#: ../src/common/connection.py:1231
+#: ../src/gui_interface.py:541
 msgid "Check your connection or try again later."
-msgstr "בדוק את החיבור שלך או נסה שוב מאוחר יותר."
+msgstr "נא לבדוק את החיבור או לנסות שוב מאוחר יותר."
 
-#: ../src/common/connection.py:1307
+#: ../src/common/connection.py:1236
 #, python-format
 msgid "Server replied: %s"
 msgstr "תגובת שרת: %s"
 
-#: ../src/common/connection.py:1322
+# כשל בהתחברות
+# החיבור
+#: ../src/common/connection.py:1251
 msgid "Connection to proxy failed"
-msgstr "התחברות אל ציר נכשלה"
+msgstr "התחברות אל מתווך נכשלה"
 
-#: ../src/common/connection.py:1360 ../src/common/connection.py:1438
+#: ../src/common/connection.py:1289
+#: ../src/common/connection.py:1361
 #, python-format
 msgid "Could not connect to account %s"
-msgstr "לא היתה אפשרות להתחבר אל חשבון %s"
+msgstr "לא ניתן להתחבר אל חשבון %s"
 
-#: ../src/common/connection.py:1361 ../src/common/connection.py:1439
+#: ../src/common/connection.py:1290
+#: ../src/common/connection.py:1362
 #, python-format
 msgid "Connection with account %s has been lost. Retry connecting."
 msgstr "החיבור עם חשבון %s אבד. מנסה להתחבר כעת מחדש."
 
 # חסרת תוקף
-#: ../src/common/connection.py:1388
+#: ../src/common/connection.py:1315
 #, python-format
 msgid "The authenticity of the %s certificate could be invalid."
 msgstr "מהימנותה של התעודה %s עלולה להיות רעועה."
 
-#: ../src/common/connection.py:1391
+#: ../src/common/connection.py:1318
 #, python-format
 msgid ""
 "\n"
 "SSL Error: %s "
 msgstr ""
 "\n"
-"שגיאת SSL: %s "
+"שגיאת SSL: %s "
 
-#: ../src/common/connection.py:1393
+#: ../src/common/connection.py:1320
 #, python-format
 msgid ""
 "\n"
 "Unknown SSL error: %d"
 msgstr ""
 "\n"
-"שגיאת SSL לא מוכרת: %d"
+"שגיאת SSL לא ידועה: %d"
 
 # חסרת תוקף
 # שם תחום
 # כוללת
-#: ../src/common/connection.py:1420
+#: ../src/common/connection.py:1343
 #, python-format
 msgid ""
 "The authenticity of the %s certificate could be invalid.\n"
@@ -5299,244 +5495,73 @@ msgstr ""
 "מהימנותה של התעודה %s עלולה להיות רעועה.\n"
 "תעודה זו אינה מכסה את מתחם זה."
 
-#: ../src/common/connection.py:1462 ../src/common/connection.py:2203
-#: ../src/common/zeroconf/connection_zeroconf.py:205
-#, python-format
-msgid "Could not connect to \"%s\""
-msgstr "לא היתה אפשרות להתחבר אל \"%s\""
+# BUG: x2
+#: ../src/common/connection.py:1386
+msgid "Check your connection or try again later"
+msgstr "נא לבדוק את החיבור או לנסות שוב מאוחר יותר"
 
-#: ../src/common/connection.py:1498
+#: ../src/common/connection.py:1421
 #, python-format
 msgid "Authentication failed with \"%s\""
 msgstr "אימות עם \"%s\" נכשל"
 
 # נכונות
-#: ../src/common/connection.py:1499
+#: ../src/common/connection.py:1422
 msgid "Please check your login and password for correctness."
 msgstr "אנא בדוק את תקינות התחברותך וסיסמתך."
 
-#: ../src/common/connection.py:1574
+#: ../src/common/connection.py:1497
 msgid "Error while removing privacy list"
 msgstr "שגיאה במהלך הסרת רשימת פרטיות"
 
 # בטל/י נטרל/י
-#: ../src/common/connection.py:1575
+#: ../src/common/connection.py:1498
 #, python-format
-msgid ""
-"Privacy list %s has not been removed. It is maybe active in one of your "
-"connected resources. Deactivate it and try again."
-msgstr ""
-"רשימת הפרטיות %s לא הוסרה. ייתכן וזו פעילה באחד ממשאביך אשר מחוברים כעת. בטל "
-"את פעילותה ונסה שוב."
+msgid "Privacy list %s has not been removed. It is maybe active in one of your connected resources. Deactivate it and try again."
+msgstr "רשימת הפרטיות %s לא הוסרה. ייתכן וזו פעילה באחד ממשאביך שמחוברים כעת. יש לבטל את פעילותה ולנסות שוב."
 
-#: ../src/common/connection.py:1771 ../src/common/connection_handlers.py:592
-#, python-format
-msgid "Account %s doesn't support invisibility."
-msgstr "חשבון %s לא תומך במצב בלתי נראה."
-
-#: ../src/common/connection.py:1770 ../src/common/connection_handlers.py:591
-msgid "Invisibility not supported"
-msgstr "מצב בלתי נראה אינו נתמך"
-
-#: ../src/common/connection.py:2067
+#: ../src/common/connection.py:1883
 #, python-format
 msgid "Sent contact: \"%s\" (%s)"
-msgstr "איש קשר אשר נשלח: \"%s\" (%s)"
+msgstr "איש קשר שנשלח: \"%s\" (%s)"
 
-#: ../src/common/connection.py:2070
+#: ../src/common/connection.py:1886
 msgid "Sent contacts:"
-msgstr "אנשי קשר אשר נשלחו:"
+msgstr "אנשי קשר שנשלחו:"
 
 # נתון להשגה/לביצוע/בהישג יד
-#: ../src/common/connection.py:2220 ../src/common/connection.py:2242
+#: ../src/common/connection.py:2033
+#: ../src/common/connection.py:2056
 msgid "Not fetched because of invisible status"
-msgstr "לא מובא משום מצב חיבור בלתי נראה"
+msgstr "לא מובא משום מצב־חיבור בלתי נראה"
 
-#: ../src/common/connection.py:2826
+#: ../src/common/connection.py:2616
 msgid "Unregister failed"
 msgstr "ביטול רישום נכשל"
 
-#: ../src/common/connection.py:2827
+#: ../src/common/connection.py:2617
 #, python-format
 msgid "Unregistration with server %(server)s failed: %(error)s"
-msgstr "אי רישום בתוך שרת %(server)s נכשל: %(error)s"
+msgstr "אי רישום אצל שרת %(server)s נכשל: %(error)s"
 
-#: ../src/common/connection_handlers.py:92
-#: ../src/common/zeroconf/connection_handlers_zeroconf.py:53
-msgid "Unable to load idle module"
-msgstr "אין אפשרות לטעון מודוּל חוסר פעילות"
-
-#: ../src/common/connection_handlers.py:127
-#, python-format
-msgid "Registration information for transport %s has not arrived in time"
-msgstr "מידע רישום עבור המוביל %s לא הגיע בזמן"
-
-#: ../src/common/connection_handlers.py:135
-msgid "Registration succeeded"
-msgstr "רישום בוצע בהצלחה"
-
-#: ../src/common/connection_handlers.py:136
-#, python-format
-msgid "Registration with agent %s succeeded"
-msgstr "רישום עם סוכן %s בוצע בהצלחה"
-
-#: ../src/common/connection_handlers.py:145
-msgid "Registration failed"
-msgstr "רישום נכשל"
-
-# BUG: with errors
-# BUG: with an error
-# Needs to be tested
-#: ../src/common/connection_handlers.py:146
-#, python-format
-msgid ""
-"Registration with agent %(agent)s failed with error %(error)s: %(error_msg)s"
-msgstr "רישום עם סוכן %(agent)s נכשל בליווי שגיאה %(error)s: %(error_msg)s"
-
-#: ../src/common/connection_handlers.py:1956
-msgid "I would like to add you to my roster."
-msgstr "ברצוני להוסיפך אל הרשימה שלי."
-
-#: ../src/common/connection_handlers_events.py:370
-#, python-format
-msgid ""
-"JID %s is not RFC compliant. It will not be added to your roster. Use roster "
-"management tools such as http://jru.jabberstudio.org/ to remove it"
-msgstr ""
-"JID %s אינה תואמת RFC. זו לא תוסף אל רשימתך. ניתן להשתמש בכלי ניהול רשימה "
-"(roster management tools) כגון http://jru.jabberstudio.org כדי להסירה"
-
-#: ../src/common/connection_handlers_events.py:825
-#, python-format
-msgid "unsubscribe request from %s"
-msgstr "בקשת ביטול הרשמה מאת %s"
-
-#. Room has been destroyed. see
-#. http://www.xmpp.org/extensions/xep-0045.html#destroyroom
-#: ../src/common/connection_handlers_events.py:935
-msgid "Room has been destroyed"
-msgstr "החדר הוחרב"
-
-#: ../src/common/connection_handlers_events.py:943
-#, python-format
-msgid "You can join this room instead: %s"
-msgstr "באפשרותך להצטרף אל חדר זה במקום: %s"
-
-# זכתה להתעלמות מן הצד/הקצה שלך
-#: ../src/common/connection_handlers_events.py:1028
-#: ../src/common/connection_handlers_events.py:1071
-msgid "A message from a non-valid JID arrived, it has been ignored."
-msgstr "התקבלה הודעה מן JID אשר איננה תקפה, Gajim התעלם מן הודעה זו."
-
-#. ('MSGNOTSENT', account, (jid, ierror_msg, msg, time, session))
-#: ../src/common/connection_handlers_events.py:1102
-#: ../src/gui_interface.py:433 ../src/gui_interface.py:447
-#, python-format
-msgid "error while sending %(message)s ( %(error)s )"
-msgstr "שגיאה בעת שליחת %(message)s ( %(error)s )"
-
-#: ../src/common/connection_handlers_events.py:1307
-msgid "URL:"
-msgstr "URL:"
-
-#: ../src/common/connection_handlers_events.py:1608
-#, python-format
-msgid "Unknown SSL error: %d"
-msgstr "שגיאת SSL לא מוכרת: %d"
-
-#: ../src/common/connection_handlers_events.py:2211 ../src/dialogs.py:2917
-#: ../src/notify.py:266
-msgid "New Single Message"
-msgstr "הודעה בודדת חדשה"
-
-#: ../src/common/connection_handlers_events.py:2213
-#, python-format
-msgid "New Single Message from %(nickname)s"
-msgstr "התקבלה הודעה בודדת חדשה מאת %(nickname)s"
-
-#: ../src/common/connection_handlers_events.py:2217 ../src/dialogs.py:2918
-#: ../src/notify.py:267
-msgid "New Private Message"
-msgstr "הודעה פרטית חדשה"
-
-#: ../src/common/connection_handlers_events.py:2219
-#, python-format
-msgid "New Private Message from group chat %s"
-msgstr "הודעה פרטית חדשה מתוך שיחת קבוצה %s"
-
-#: ../src/common/connection_handlers_events.py:2222
-#, python-format
-msgid "%(nickname)s: %(message)s"
-msgstr ""
-
-# [09:02:34 PM] Rodensky: "התקבלה הודעה מ"
-# [09:08:28 PM] Myself: אני חושב שזה: המסר נשלח על-ידי...
-# [09:08:39 PM] Rodensky: לא
-# [09:08:46 PM] Rodensky: זה "התקבלה הודעה מ"
-#: ../src/common/connection_handlers_events.py:2225
-#, python-format
-msgid "Messaged by %(nickname)s"
-msgstr "התקבלה הודעה מאת %(nickname)s"
-
-#: ../src/common/connection_handlers_events.py:2229 ../src/dialogs.py:2917
-#: ../src/notify.py:266
-msgid "New Message"
-msgstr "הודעה חדשה"
-
-#: ../src/common/connection_handlers_events.py:2231
-#, python-format
-msgid "New Message from %(nickname)s"
-msgstr "הודעה חדשה מאת %(nickname)s"
-
-#: ../src/common/connection_handlers_events.py:2375
-#, python-format
-msgid "%(nick)s Changed Status"
-msgstr "המצב של %(nick)s שונה"
-
-#: ../src/common/connection_handlers_events.py:2377
-#: ../src/groupchat_control.py:207 ../src/groupchat_control.py:1855
-#: ../src/history_window.py:455
-#, python-format
-msgid "%(nick)s is now %(status)s"
-msgstr "%(nick)s מצוי/ה כעת במצב %(status)s "
-
-#: ../src/common/connection_handlers_events.py:2381 ../src/dialogs.py:2929
-#: ../src/notify.py:280
-msgid "Contact Changed Status"
-msgstr "איש קשר שינה מצב חיבור"
-
-#: ../src/common/connection_handlers_events.py:2383
-#, python-format
-msgid "%(nickname)s Signed In"
-msgstr "%(nickname)s התחבר/ה"
-
-#. default value
-#: ../src/common/connection_handlers_events.py:2387 ../src/dialogs.py:2913
-#: ../src/notify.py:262
-msgid "Contact Signed In"
-msgstr "איש קשר התחבר"
-
-#: ../src/common/connection_handlers_events.py:2389
-#, python-format
-msgid "%(nickname)s Signed Out"
-msgstr "%(nickname)s התנתק/ה"
-
-#: ../src/common/connection_handlers_events.py:2393 ../src/dialogs.py:2915
-#: ../src/notify.py:264
-msgid "Contact Signed Out"
-msgstr "איש קשר התנתק"
-
-#: ../src/common/contacts.py:129 ../src/common/helpers.py:67
-#: ../src/gui_interface.py:485
+#: ../src/common/contacts.py:129
+#: ../src/common/helpers.py:67
+#: ../src/gui_interface.py:484
 msgid "Observers"
 msgstr "משקיפים"
 
-#: ../src/common/contacts.py:133 ../src/common/contacts.py:361
-#: ../src/common/helpers.py:67 ../src/disco.py:121 ../src/disco.py:122
-#: ../src/disco.py:1554 ../src/roster_window.py:863
-#: ../src/roster_window.py:1614 ../src/roster_window.py:1728
-#: ../src/roster_window.py:1730 ../src/roster_window.py:1892
-#: ../src/roster_window.py:2589
+#: ../src/common/contacts.py:133
+#: ../src/common/contacts.py:361
+#: ../src/common/helpers.py:67
+#: ../src/disco.py:120
+#: ../src/disco.py:121
+#: ../src/disco.py:1516
+#: ../src/roster_window.py:859
+#: ../src/roster_window.py:1608
+#: ../src/roster_window.py:1718
+#: ../src/roster_window.py:1720
+#: ../src/roster_window.py:1882
+#: ../src/roster_window.py:2579
 msgid "Transports"
 msgstr "מובילים"
 
@@ -5572,9 +5597,10 @@ msgstr "מסד נתונים לא יכול להיקרא."
 
 #: ../src/common/exceptions.py:56
 msgid "Service not available: Gajim is not running, or remote_control is False"
-msgstr "שירות לא זמין: Gajim לא מורץ, או שההעדפה remote_control הינה מנוטרלת"
+msgstr "שירות לא זמין: Gajim לא מורץ, או שהאפשרות remote_control מנוטרלת"
 
-#: ../src/common/exceptions.py:67 ../src/gajim-remote.py:56
+#: ../src/common/exceptions.py:67
+#: ../src/gajim-remote.py:55
 msgid "D-Bus is not present on this machine or python module is missing"
 msgstr ""
 
@@ -5763,15 +5789,15 @@ msgstr "סופשבוע!"
 
 #: ../src/common/helpers.py:158
 msgid "Username must be between 1 and 1023 chars"
-msgstr "שם משתמש מוכרח להיות בין 1 עד 1023 תווים"
+msgstr "שם משתמש מוכרח להיות בין 1 אל 1023 תווים"
 
 #: ../src/common/helpers.py:163
 msgid "Invalid character in username."
-msgstr "תו שגוי בתוך שם משתמש."
+msgstr "תו שגוי בשם משתמש"
 
 #: ../src/common/helpers.py:169
 msgid "Server must be between 1 and 1023 chars"
-msgstr "שרת מוכרח להיות בין 1 עד 1023 תווים"
+msgstr "שרת מוכרח להיות בין 1 אל 1023 תווים"
 
 #: ../src/common/helpers.py:174
 msgid "Invalid character in hostname."
@@ -5783,7 +5809,7 @@ msgstr "נדרשת כתובת שרת."
 
 #: ../src/common/helpers.py:180
 msgid "Resource must be between 1 and 1023 chars"
-msgstr "משאב מוכרח להיות בין 1 עד 1023 תווים"
+msgstr "משאב מוכרח להיות בין 1 אל 1023 תווים"
 
 #: ../src/common/helpers.py:185
 msgid "Invalid character in resource."
@@ -5865,7 +5891,7 @@ msgstr "אל"
 
 #: ../src/common/helpers.py:274
 msgid "From"
-msgstr "מן"
+msgstr "מאת"
 
 #: ../src/common/helpers.py:276
 msgid "Both"
@@ -5883,6 +5909,7 @@ msgstr "הרשמה"
 msgid "?Group Chat Contact Role:None"
 msgstr "ללא"
 
+# לא לעשות שימווש במילה אחראיים
 #: ../src/common/helpers.py:298
 msgid "Moderators"
 msgstr "אחראים"
@@ -5923,26 +5950,31 @@ msgstr "מנהל"
 msgid "Member"
 msgstr "חבר"
 
+# Osmo - LRE. Take it!
+# BUG: Due to RTL issue, I need a translation field that includes username so that I will manage to order it for RTL layout.
+# מסב/ה צומת לב אל השיחה
+# מקשיב/ה
 #: ../src/common/helpers.py:361
 msgid "is paying attention to the conversation"
-msgstr "קשוב/ה לשיחה"
+msgstr "קשוב/ה לשיחה"
 
 #: ../src/common/helpers.py:363
 msgid "is doing something else"
-msgstr "עושה משהו אחר"
+msgstr "עושה משהו אחר"
 
+# מלחין/נה
 #: ../src/common/helpers.py:365
 msgid "is composing a message..."
-msgstr "כותב/ת הודעה..."
+msgstr "כותב/ת הודעה..."
 
 #. paused means he or she was composing but has stopped for a while
 #: ../src/common/helpers.py:368
 msgid "paused composing a message"
-msgstr "חדל/ה מלהלחין הודעה"
+msgstr "פסק/ה מלהלחין הודעה"
 
 #: ../src/common/helpers.py:370
 msgid "has closed the chat window or tab"
-msgstr "סגר/ה את כרטיסיית או את חלון השיחה"
+msgstr "סגר/ה את לשונית או את חלון השיחה"
 
 # גיבי בתים
 #. GiB means gibibyte
@@ -6027,30 +6059,34 @@ msgstr[1] "%d אירועים תלויים ועומדים"
 msgid "Gajim - %s"
 msgstr "Gajim - %s"
 
-#: ../src/common/helpers.py:1368
+# LRE string PDF
+# שמי הוא
+#: ../src/common/helpers.py:1365
 msgid "Hello, I am $name."
-msgstr "שלום, שמי $name."
+msgstr "שלום, שמי $name. "
 
-#: ../src/common/helpers.py:1478 ../src/common/helpers.py:1487
-#: ../src/common/helpers.py:1541
+#: ../src/common/helpers.py:1475
+#: ../src/common/helpers.py:1484
+#: ../src/common/helpers.py:1538
 msgid "Timeout loading image"
-msgstr "תם הזמן אשר הוקצב לטעינת תמונה"
+msgstr "תם הזמן שהוקצב לטעינת תמונה"
 
 # BUG: File too big
-#: ../src/common/helpers.py:1497 ../src/common/helpers.py:1539
+#: ../src/common/helpers.py:1494
+#: ../src/common/helpers.py:1536
 msgid "Image is too big"
-msgstr "התמונה גדולה מדי"
+msgstr "התמונה גדולה מידי"
 
-#: ../src/common/helpers.py:1507
+#: ../src/common/helpers.py:1504
 msgid "PyCURL is not installed"
-msgstr "PyCURL אינה מותקנת"
+msgstr "PyCURL אינה מותקנת"
 
-#: ../src/common/helpers.py:1543
+#: ../src/common/helpers.py:1540
 msgid "Error loading image"
 msgstr "שגיאה בטעינת תמונה"
 
 # Needs to be tested
-#: ../src/common/jingle_rtp.py:114
+#: ../src/common/jingle_rtp.py:110
 #, python-format
 msgid "%s configuration error"
 msgstr "שגיאת תצורת %s"
@@ -6058,7 +6094,7 @@ msgstr "שגיאת תצורת %s"
 # ההתקנה
 # הצינור (Pipeline) היה
 # השגיאה היתה
-#: ../src/common/jingle_rtp.py:115
+#: ../src/common/jingle_rtp.py:111
 #, python-format
 msgid ""
 "Couldn't setup %s. Check your configuration.\n"
@@ -6069,7 +6105,7 @@ msgid ""
 "Error was:\n"
 "%s"
 msgstr ""
-"לא היתה אפשרות להגדיר %s. בדוק את הגדרת התצורה שלך.\n"
+"לא ניתן להגדיר את %s. נא לבדוק את הגדרת התצורה שלך.\n"
 "\n"
 "Pipeline was:\n"
 "%s\n"
@@ -6077,11 +6113,11 @@ msgstr ""
 "Error was:\n"
 "%s"
 
-#: ../src/common/jingle_rtp.py:220
+#: ../src/common/jingle_rtp.py:207
 msgid "GStreamer error"
 msgstr "שגיאת GStreamer"
 
-#: ../src/common/jingle_rtp.py:220
+#: ../src/common/jingle_rtp.py:207
 #, python-format
 msgid ""
 "Error: %s\n"
@@ -6090,112 +6126,112 @@ msgstr ""
 "שגיאה: %s\n"
 "ניפוי שגיאות: %s"
 
-#: ../src/common/jingle_rtp.py:354
+#: ../src/common/jingle_rtp.py:337
 msgid "audio input"
 msgstr "קלט שמע"
 
-#: ../src/common/jingle_rtp.py:357
+#: ../src/common/jingle_rtp.py:340
 msgid "audio output"
 msgstr "פלט שמע"
 
-#: ../src/common/jingle_rtp.py:412
+#: ../src/common/jingle_rtp.py:382
 msgid "video input"
 msgstr "קלט וידאו"
 
-#: ../src/common/jingle_rtp.py:421
+#: ../src/common/jingle_rtp.py:391
 msgid "video output"
 msgstr "פלט וידאו"
 
 #: ../src/common/logging_helpers.py:33
-#, fuzzy, python-format
+#, python-format
 msgid "%s is not a valid loglevel"
-msgstr "cli"
+msgstr ""
 
-#: ../src/common/multimedia_helpers.py:41
+#: ../src/common/multimedia_helpers.py:39
 msgid " Default device"
-msgstr "מכשיר משתמט"
+msgstr "תקן משתמט"
 
 #. Test src
-#: ../src/common/multimedia_helpers.py:62
+#: ../src/common/multimedia_helpers.py:60
 msgid "Audio test"
 msgstr "בדיקת שמע"
 
 #. Auto src
 #. Auto sink
 #. Auto src
-#: ../src/common/multimedia_helpers.py:65
-#: ../src/common/multimedia_helpers.py:81
-#: ../src/common/multimedia_helpers.py:95
-#: ../src/common/multimedia_helpers.py:113
+#: ../src/common/multimedia_helpers.py:63
+#: ../src/common/multimedia_helpers.py:79
+#: ../src/common/multimedia_helpers.py:93
+#: ../src/common/multimedia_helpers.py:111
 msgid "Autodetect"
 msgstr "איתור אוטומטי"
 
 #. Alsa src
 #. Alsa sink
-#: ../src/common/multimedia_helpers.py:68
-#: ../src/common/multimedia_helpers.py:83
+#: ../src/common/multimedia_helpers.py:66
+#: ../src/common/multimedia_helpers.py:81
 #, python-format
 msgid "ALSA: %s"
-msgstr "ALSA: %s"
+msgstr "ALSA: %s"
 
 #. Pulseaudio src
 #. Pulseaudio sink
-#: ../src/common/multimedia_helpers.py:71
-#: ../src/common/multimedia_helpers.py:85
+#: ../src/common/multimedia_helpers.py:69
+#: ../src/common/multimedia_helpers.py:83
 #, python-format
 msgid "Pulse: %s"
-msgstr "Pulse: %s"
+msgstr "Pulse: %s"
 
 # מעושה, מלאכותי
 #. Fake sink
-#: ../src/common/multimedia_helpers.py:79
+#. Fake video output
+#: ../src/common/multimedia_helpers.py:77
+#: ../src/common/multimedia_helpers.py:105
 msgid "Fake audio output"
 msgstr "פלט שמע מזויף"
 
 #. Test src
-#: ../src/common/multimedia_helpers.py:92
+#: ../src/common/multimedia_helpers.py:90
 msgid "Video test"
 msgstr "בדיקת וידאו"
 
 #. V4L2 src
-#: ../src/common/multimedia_helpers.py:97
+#: ../src/common/multimedia_helpers.py:95
 #, python-format
 msgid "V4L2: %s"
-msgstr "V4L2: %s"
+msgstr "V4L2: %s"
 
 # not sure מרקע
 #. Funny things, just to test...
 #. self.devices['GOOM'] = 'audiotestsrc ! goom'
-#: ../src/common/multimedia_helpers.py:100
+#: ../src/common/multimedia_helpers.py:98
 msgid "Screen"
 msgstr "אקרן"
 
-#. Fake video output
-#: ../src/common/multimedia_helpers.py:107
-msgid "Fake video output"
-msgstr "פלט וידאו מזויף"
-
-#: ../src/common/multimedia_helpers.py:110
+#: ../src/common/multimedia_helpers.py:108
 #, python-format
 msgid "X Window System (X11/XShm/Xv): %s"
-msgstr "מערכת חלונות X (X11/XShm/Xv): %s"
+msgstr "מערכת חלונות X (X11/XShm/Xv): %s"
 
 #. ximagesink
-#: ../src/common/multimedia_helpers.py:112
+#: ../src/common/multimedia_helpers.py:110
 msgid "X Window System (without Xv)"
 msgstr "מערכת חלונות X (ללא Xv)"
 
 #. we talk about a file
 #. we talk about file
-#: ../src/common/optparser.py:53 ../src/gtkgui_helpers.py:204
-#: ../src/gtkgui_helpers.py:220
+#: ../src/common/optparser.py:53
+#: ../src/gtkgui_helpers.py:203
+#: ../src/gtkgui_helpers.py:219
 #, python-format
 msgid "Error: cannot open %s for reading"
-msgstr "שגיאה: אין אפשרות לפתוח את %s לקריאה"
+msgstr "שגיאה: לא ניתן לפתוח את %s לקריאה"
 
-#: ../src/common/optparser.py:304 ../src/common/optparser.py:305
+# ציאן
+#: ../src/common/optparser.py:304
+#: ../src/common/optparser.py:305
 msgid "cyan"
-msgstr ""
+msgstr "cyan"
 
 #: ../src/common/optparser.py:384
 #, fuzzy
@@ -6640,7 +6676,8 @@ msgstr "אוכל ארוחת צהריים"
 msgid "Exercising"
 msgstr "מתאמן"
 
-#: ../src/common/pep.py:133 ../src/common/pep.py:178
+#: ../src/common/pep.py:133
+#: ../src/common/pep.py:177
 msgid "Cycling"
 msgstr "ברכיבה על אופניים"
 
@@ -6749,246 +6786,245 @@ msgid "Relaxing"
 msgstr "נרגע"
 
 #: ../src/common/pep.py:160
-msgid "Fishing"
-msgstr "דג"
-
-#: ../src/common/pep.py:161
 msgid "Gaming"
 msgstr "משחק"
 
 # any better word?
 # יוצאים קבוע going steady
 # יוצא
-#: ../src/common/pep.py:162
+#: ../src/common/pep.py:161
 msgid "Going out"
 msgstr "מסתובב בחוץ"
 
-#: ../src/common/pep.py:163
+#: ../src/common/pep.py:162
 msgid "Partying"
 msgstr "חוגג"
 
-#: ../src/common/pep.py:164
+#: ../src/common/pep.py:163
 msgid "Reading"
 msgstr "קורא"
 
 # מתאמן
-#: ../src/common/pep.py:165
+#: ../src/common/pep.py:164
 msgid "Rehearsing"
 msgstr "מתרגל"
 
-#: ../src/common/pep.py:166
+#: ../src/common/pep.py:165
 msgid "Shopping"
 msgstr "בקניות"
 
-#: ../src/common/pep.py:167
+#: ../src/common/pep.py:166
 msgid "Smoking"
 msgstr "מעשן"
 
 # Be aware of brainwashing terms!
 # בגיבוש, מתגבש
-#: ../src/common/pep.py:168
+#: ../src/common/pep.py:167
 msgid "Socializing"
 msgstr "מתחבר"
 
-#: ../src/common/pep.py:169
+#: ../src/common/pep.py:168
 msgid "Sunbathing"
 msgstr "משתזף"
 
-#: ../src/common/pep.py:170
+#: ../src/common/pep.py:169
 msgid "Watching TV"
 msgstr "צופה בטלוויזיה"
 
-#: ../src/common/pep.py:171
+#: ../src/common/pep.py:170
 msgid "Watching a Movie"
 msgstr "צופה בסרט"
 
 # מדבר
-#: ../src/common/pep.py:172
+#: ../src/common/pep.py:171
 msgid "Talking"
 msgstr "משוחח"
 
-#: ../src/common/pep.py:173
+#: ../src/common/pep.py:172
 msgid "In Real Life"
 msgstr "בחיים האמיתיים"
 
-#: ../src/common/pep.py:174
+#: ../src/common/pep.py:173
 msgid "On the Phone"
 msgstr "בטלפון"
 
-#: ../src/common/pep.py:175
+#: ../src/common/pep.py:174
 msgid "On Video Phone"
 msgstr "בוידאו־פון"
 
-#: ../src/common/pep.py:176
+#: ../src/common/pep.py:175
 msgid "Traveling"
 msgstr "במסע"
 
-#: ../src/common/pep.py:177
+#: ../src/common/pep.py:176
 msgid "Commuting"
 msgstr "ביוממות"
 
-#: ../src/common/pep.py:179
+#: ../src/common/pep.py:178
 msgid "Driving"
 msgstr "בנהיגה"
 
-#: ../src/common/pep.py:180
+#: ../src/common/pep.py:179
 msgid "In a Car"
 msgstr "במכונית"
 
-#: ../src/common/pep.py:181
+#: ../src/common/pep.py:180
 msgid "On a Bus"
 msgstr "באוטובוס"
 
-#: ../src/common/pep.py:182
+#: ../src/common/pep.py:181
 msgid "On a Plane"
 msgstr "במטוס"
 
-#: ../src/common/pep.py:183
+#: ../src/common/pep.py:182
 msgid "On a Train"
 msgstr "ברכבת"
 
-#: ../src/common/pep.py:184
+#: ../src/common/pep.py:183
 msgid "On a Trip"
 msgstr "בטיול"
 
-#: ../src/common/pep.py:185
+#: ../src/common/pep.py:184
 msgid "Walking"
 msgstr "הולך"
 
-#: ../src/common/pep.py:187
+#: ../src/common/pep.py:186
 msgid "Coding"
 msgstr "מקודד"
 
-#: ../src/common/pep.py:188
+#: ../src/common/pep.py:187
 msgid "In a Meeting"
 msgstr "בפגישה"
 
-#: ../src/common/pep.py:189
+#: ../src/common/pep.py:188
 msgid "Studying"
 msgstr "לומד"
 
-#: ../src/common/pep.py:190
+#: ../src/common/pep.py:189
 msgid "Writing"
 msgstr "כותב"
 
-#: ../src/common/pep.py:195
+#: ../src/common/pep.py:194
 msgid "accuracy"
 msgstr "דיוק"
 
-#: ../src/common/pep.py:196
+#: ../src/common/pep.py:195
 msgid "alt"
 msgstr "גובה"
 
-#: ../src/common/pep.py:197
+#: ../src/common/pep.py:196
 msgid "area"
 msgstr "אזור"
 
 # GPS bearing
-#: ../src/common/pep.py:198
+#: ../src/common/pep.py:197
 msgid "bearing"
 msgstr "הסבה"
 
-#: ../src/common/pep.py:199
+#: ../src/common/pep.py:198
 msgid "building"
 msgstr "בניין"
 
-#: ../src/common/pep.py:200
+#: ../src/common/pep.py:199
 msgid "country"
 msgstr "ארץ"
 
-#: ../src/common/pep.py:201
+#: ../src/common/pep.py:200
 msgid "countrycode"
 msgstr "מיקוד מדינה"
 
 # GPS datum
-#: ../src/common/pep.py:202
+#: ../src/common/pep.py:201
 msgid "datum"
 msgstr "נתון"
 
-#: ../src/common/pep.py:203
+#: ../src/common/pep.py:202
 msgid "description"
 msgstr "תיאור"
 
-#: ../src/common/pep.py:204
+#: ../src/common/pep.py:203
 msgid "error"
 msgstr "שגיאה"
 
-#: ../src/common/pep.py:205
+#: ../src/common/pep.py:204
 msgid "floor"
 msgstr "קומה"
 
-#: ../src/common/pep.py:206
+#: ../src/common/pep.py:205
 msgid "lat"
 msgstr "קו רוחב"
 
-#: ../src/common/pep.py:207
+#: ../src/common/pep.py:206
 msgid "locality"
 msgstr "מקומיות"
 
-#: ../src/common/pep.py:208
+#: ../src/common/pep.py:207
 msgid "lon"
 msgstr "קו אורך"
 
-#: ../src/common/pep.py:209
+#: ../src/common/pep.py:208
 msgid "postalcode"
 msgstr "מיקוד דואר"
 
-#: ../src/common/pep.py:210
+#: ../src/common/pep.py:209
 msgid "region"
 msgstr "תחום"
 
-#: ../src/common/pep.py:211
+# PEP
+#: ../src/common/pep.py:210
+#: ../src/gajim-remote.py:288
+#, fuzzy
 msgid "room"
-msgstr "חדר"
+msgstr "cli"
 
-#: ../src/common/pep.py:212
+#: ../src/common/pep.py:211
 msgid "speed"
 msgstr "מהירות"
 
-#: ../src/common/pep.py:213
+#: ../src/common/pep.py:212
 msgid "street"
 msgstr "רחוב"
 
-#: ../src/common/pep.py:214
+#: ../src/common/pep.py:213
 msgid "text"
 msgstr "תמליל"
 
-#: ../src/common/pep.py:215
+#: ../src/common/pep.py:214
 msgid "timestamp"
 msgstr "חותמת זמן"
 
-#: ../src/common/pep.py:216
+# uri
+#: ../src/common/pep.py:215
+#: ../src/gajim-remote.py:279
 msgid "uri"
-msgstr "uri"
+msgstr "uri"
 
-#: ../src/common/pep.py:349
+#: ../src/common/pep.py:357
 msgid "Unknown Artist"
 msgstr "אמן לא ידוע"
 
-#: ../src/common/pep.py:352
+#: ../src/common/pep.py:360
 msgid "Unknown Title"
 msgstr "כותרת לא ידועה"
 
-#: ../src/common/pep.py:355
+#: ../src/common/pep.py:363
 msgid "Unknown Source"
 msgstr "מקור לא ידוע"
 
-#: ../src/common/pep.py:358
+#: ../src/common/pep.py:366
 #, python-format
 msgid ""
 "\"%(title)s\"  by %(artist)s \n"
 "from %(source)s "
 msgstr ""
-"\"%(title)s\"  מאת %(artist)s \n"
-"מתוך %(source)s "
+"\"%(title)s\"  מאת %(artist)s \n"
+"מן האלבום %(source)s "
 
 # רואה הודעה זאת
 #. we're not english
-#: ../src/common/stanza_session.py:425
-msgid ""
-"[This is part of an encrypted session. If you see this message, something "
-"went wrong.]"
-msgstr "[זהו חלק מסשן מוצפן. באם הינך רואה את הודעה זאת, משהו השתבש.]"
+#: ../src/common/stanza_session.py:424
+msgid "[This is part of an encrypted session. If you see this message, something went wrong.]"
+msgstr "[זהו חלק מסשן מוצפן. באם הינך רואה את הודעה זו, משהו השתבש.]"
 
 # שגיאה אצל
 #: ../src/common/zeroconf/connection_zeroconf.py:193
@@ -7002,7 +7038,7 @@ msgid ""
 "Link-local messaging might not work properly."
 msgstr ""
 "%s\n"
-"ייתכן כי קישוריות מסרים מקומית לא תעבוד כראוי."
+"ייתכן שקישוריות מסרים מקומית לא תעבוד כראוי."
 
 #: ../src/common/zeroconf/connection_zeroconf.py:206
 msgid "Please check if Avahi or Bonjour is installed."
@@ -7011,12 +7047,12 @@ msgstr "אנא בדוק אם Avahi או Bonjour מותקן במערכת."
 #: ../src/common/zeroconf/connection_zeroconf.py:216
 #: ../src/common/zeroconf/connection_zeroconf.py:220
 msgid "Could not start local service"
-msgstr "לא היתה אפשרות להתחיל שירות מקומי"
+msgstr "לא ניתן להתחיל שירות מקומי"
 
 #: ../src/common/zeroconf/connection_zeroconf.py:217
 #, python-format
 msgid "Unable to bind to port %d."
-msgstr "אין אפשרות לכרוך אל פורט %d."
+msgstr "לא ניתן לכרוך אל פורט %d."
 
 #: ../src/common/zeroconf/connection_zeroconf.py:221
 #: ../src/common/zeroconf/connection_zeroconf.py:305
@@ -7030,22 +7066,23 @@ msgstr "אנא בדוק אם avahi-daemon מורץ כעת."
 #: ../src/common/zeroconf/connection_zeroconf.py:333
 #, python-format
 msgid "Could not change status of account \"%s\""
-msgstr "לא היתה אפשרות לשנות את המצב של חשבון \"%s\""
+msgstr "לא ניתן לשנות את המצב של חשבון \"%s\""
 
 # הודעתך לא יכולה להישלח.
-#: ../src/common/zeroconf/connection_zeroconf.py:353
+#: ../src/common/zeroconf/connection_zeroconf.py:352
+#: ../src/common/zeroconf/connection_zeroconf.py:393
 msgid "Your message could not be sent."
-msgstr "לא היתה אפשרות לשלוח את הודעתך זו."
+msgstr "לא ניתן היה לשלוח את הודעתך זו."
 
 # לא מחובר
-#: ../src/common/zeroconf/connection_zeroconf.py:367
+#: ../src/common/zeroconf/connection_zeroconf.py:366
+#: ../src/common/zeroconf/connection_zeroconf.py:407
 msgid "Contact is offline. Your message could not be sent."
-msgstr "איש קשר לא מקוון. לא היתה אפשרות לשלוח את הודעתך זו."
+msgstr "איש קשר לא מקוון. לא ניתן היה לשלוח את הודעתך זו."
 
-#: ../src/common/zeroconf/connection_zeroconf.py:394
-msgid ""
-"Connection to host could not be established: Timeout while sending data."
-msgstr "לא היתה אפשרות לבסס חיבור אל מארח: תם הזמן במהלך שליחת מידע."
+#: ../src/common/zeroconf/connection_zeroconf.py:434
+msgid "Connection to host could not be established: Timeout while sending data."
+msgstr "לא ניתן היה לבסס חיבור אל מארח: תם הזמן במהלך שליחת מידע."
 
 #: ../src/common/zeroconf/zeroconf_avahi.py:192
 #: ../src/common/zeroconf/zeroconf_bonjour.py:191
@@ -7053,26 +7090,29 @@ msgstr "לא היתה אפשרות לבסס חיבור אל מארח: תם הז
 msgid "Error while adding service. %s"
 msgstr "שגיאה במהלך הוספת שירות. %s"
 
-#: ../src/config.py:404
+#: ../src/config.py:409
 msgid "Default Message"
 msgstr "הודעה משתמטת"
 
-#: ../src/config.py:413
+#: ../src/config.py:418
 msgid "Enabled"
 msgstr "מאופשר"
 
 # משתמט
-#: ../src/config.py:468 ../src/config.py:472 ../src/config.py:3185
+#: ../src/config.py:473
+#: ../src/config.py:477
+#: ../src/config.py:3154
 msgid "Default"
 msgstr "ברירת מחדל"
 
-#: ../src/config.py:747 ../src/dialogs.py:1499
+#: ../src/config.py:759
+#: ../src/dialogs.py:1495
 #, python-format
 msgid "Dictionary for lang %s not available"
 msgstr "מילון עבור שפה %s לא זמין"
 
 # להפיק תועלת
-#: ../src/config.py:748
+#: ../src/config.py:760
 #, python-format
 msgid ""
 "You have to install %s dictionary to use spellchecking, or choose another "
@@ -7081,225 +7121,252 @@ msgstr ""
 "עליך להתקין מילון %s כדי לעשות שימוש בבדיקת איות, או בחרו בשפה שונה על ידי "
 "הגדרת האפשרות speller_language."
 
-#: ../src/config.py:1226
+#: ../src/config.py:1227
 msgid "status message title"
 msgstr "כותרת הודעת מצב"
 
-#: ../src/config.py:1226
+#: ../src/config.py:1227
 msgid "status message text"
 msgstr "תמליל הודעת מצב"
 
 #. Name column
-#: ../src/config.py:1553 ../src/dialogs.py:2673 ../src/dialogs.py:2740
-#: ../src/dialogs.py:3535 ../src/disco.py:889 ../src/disco.py:1787
-#: ../src/disco.py:2089 ../src/history_window.py:92
+#: ../src/config.py:1554
+#: ../src/dialogs.py:2574
+#: ../src/dialogs.py:2641
+#: ../src/dialogs.py:3437
+#: ../src/disco.py:885
+#: ../src/disco.py:1743
+#: ../src/disco.py:2045
+#: ../src/history_window.py:91
 msgid "Name"
 msgstr "שם"
 
-#: ../src/config.py:1656
+# התחבר/י מחדש כעת?
+#: ../src/config.py:1654
 msgid "Relogin now?"
-msgstr "להתחבר מחדש כעת?"
+msgstr "התחברות מחודשת?"
 
-#: ../src/config.py:1657
+#: ../src/config.py:1655
 msgid "If you want all the changes to apply instantly, you must relogin."
-msgstr "אם ברצונך כי השינויים יוחלו באופן מידי, עליך להתחבר מחדש."
+msgstr "אם ברצונך שהשינויים יוחלו באופן מידי, עליך להתחבר מחדש."
 
 # הצפנת OpenPGP
-#: ../src/config.py:1814 ../src/config.py:1949
+#: ../src/config.py:1809
+#: ../src/config.py:1942
 msgid "OpenPGP is not usable on this computer"
-msgstr "OpenPGP אינה שמישה על מחשב זה"
+msgstr "OpenGPG אינה שמישה במחשב זה"
 
-#: ../src/config.py:1990 ../src/config.py:2039
+#: ../src/config.py:1982
+#: ../src/config.py:2029
 msgid "Unread events"
-msgstr "אירועים אשר לא נקראו"
+msgstr "אירועים שלא נקראו"
 
-#: ../src/config.py:1991
+#: ../src/config.py:1983
 msgid "Read all pending events before removing this account."
-msgstr "קרא את כל האירועים אשר ממתינים טרם הסרת חשבון זה."
+msgstr "קריאת כל האירועים הממתינים לפני הסרת חשבון זה."
 
-#: ../src/config.py:2021
+#: ../src/config.py:2012
 #, python-format
 msgid "You have opened chat in account %s"
 msgstr "פתחת שיחה בחשבון %s"
 
-#: ../src/config.py:2022
+#: ../src/config.py:2013
 msgid "All chat and groupchat windows will be closed. Do you want to continue?"
 msgstr "כל חלונות שיחה וחלונות שיחת קבוצה ייסגרו. האם ברצונך להמשיך?"
 
-#: ../src/config.py:2034 ../src/config.py:2596 ../src/config.py:2634
+#: ../src/config.py:2025
+#: ../src/config.py:2570
+#: ../src/config.py:2607
 msgid "You are currently connected to the server"
-msgstr "הינך מחובר כעת אל שרת"
+msgstr "הינך מחובר כעת אל השרת"
 
-#: ../src/config.py:2035
+#: ../src/config.py:2026
 msgid "To change the account name, you must be disconnected."
 msgstr "כדי לשנות את שם החשבון, עליך להתנתק."
 
-#: ../src/config.py:2040
+#: ../src/config.py:2030
 msgid "To change the account name, you must read all pending events."
-msgstr "כדי לשנות את שם החשבון, עליך לקרוא את כל האירועים אשר ממתינים."
+msgstr "כדי לשנות את שם החשבון, עליך לקרוא את כל האירועים הממתינים."
 
-#: ../src/config.py:2046
+#: ../src/config.py:2036
 msgid "Account Name Already Used"
 msgstr "שם חשבון כבר מצוי בשימוש"
 
-#: ../src/config.py:2047
-msgid ""
-"This name is already used by another of your accounts. Please choose another "
-"name."
-msgstr "שם זה כבר מצוי בשימוש על ידי חשבון אחר מחשבונותיך. אנא בחר שם אחר."
+#: ../src/config.py:2037
+msgid "This name is already used by another of your accounts. Please choose another name."
+msgstr "שם זה כבר מצוי בשימוש על ידי חשבון אחר מחשבונותיך. נא לבחור שם אחר."
 
-#: ../src/config.py:2051 ../src/config.py:2056
+#: ../src/config.py:2041
+#: ../src/config.py:2045
 msgid "Invalid account name"
 msgstr "שם חשבון שגוי"
 
-#: ../src/config.py:2052
+#: ../src/config.py:2042
 msgid "Account name cannot be empty."
 msgstr "שם חשבון לא יכול להיות ריק."
 
-#: ../src/config.py:2057
+#: ../src/config.py:2046
 msgid "Account name cannot contain spaces."
 msgstr "שם חשבון לא יכול להכיל רווחים."
 
-#: ../src/config.py:2138
+#: ../src/config.py:2123
 msgid "Rename Account"
 msgstr "שנה שם חשבון"
 
-#: ../src/config.py:2139
+#: ../src/config.py:2124
 #, python-format
 msgid "Enter a new name for account %s"
 msgstr "הזן שם חדש עבור חשבון %s"
 
-#: ../src/config.py:2168
+# username@servername
+# user@server
+#: ../src/config.py:2152
 msgid "A Jabber ID must be in the form \"user@servername\"."
-msgstr "על מזהה Jabber להיות בצורה הזו \"user@servername\"."
+msgstr "כתובת JID מוכרחה להיות בצורה של \"user@servername\"."
 
-#: ../src/config.py:2394 ../src/config.py:3726
+#: ../src/config.py:2375
+#: ../src/config.py:3708
 msgid "Invalid entry"
 msgstr "רשומה שגויה"
 
-#: ../src/config.py:2395 ../src/config.py:3727
+#  צריכה
+# על הפתחה המותאמת להיות
+#: ../src/config.py:2376
+#: ../src/config.py:3709
 msgid "Custom port must be a port number."
 msgstr "פורט מותאם מוכרח להיות מספר פורט."
 
-#: ../src/config.py:2417
+#: ../src/config.py:2397
 msgid "Failed to get secret keys"
 msgstr "כשל בקבלת מפתחות סודיים"
 
-#: ../src/config.py:2418
+# Would it be ok to write: "There is no secret OpenPGP key available." ?
+# לא קיים מפתח OpenPGP סודי.
+# לא קיים מפתח סודי של OpenPGP זמין.
+#: ../src/config.py:2398
 msgid "There is no OpenPGP secret key available."
 msgstr "לא קיים מפתח OpenPGP סודי זמין."
 
-#: ../src/config.py:2456
+#: ../src/config.py:2432
 msgid "OpenPGP Key Selection"
 msgstr "בחירת מפתח OpenPGP"
 
-#: ../src/config.py:2457
+# Would it be ok to write: an OpenPGP
+# נא לבחור את מפתח ה־OpenPGP שלך
+#: ../src/config.py:2433
 msgid "Choose your OpenPGP key"
 msgstr "בחר מפתח OpenPGP"
 
-#: ../src/config.py:2465
+#: ../src/config.py:2441
 msgid "No such account available"
 msgstr "לא קיים חשבון כזה"
 
 # עוד בטרם
-#: ../src/config.py:2466
+#: ../src/config.py:2442
 msgid "You must create your account before editing your personal information."
-msgstr "עליך ליצור חשבון טרם עריכת המידע האישי שלך."
+msgstr "עליך ליצור חשבון לפני עריכת המידע האישי שלך."
 
-#: ../src/config.py:2473 ../src/dialogs.py:2369 ../src/dialogs.py:2662
-#: ../src/dialogs.py:2850 ../src/disco.py:516 ../src/profile_window.py:371
+#: ../src/config.py:2449
+#: ../src/dialogs.py:2325
+#: ../src/dialogs.py:2563
+#: ../src/dialogs.py:2751
+#: ../src/disco.py:515
+#: ../src/profile_window.py:369
 msgid "You are not connected to the server"
 msgstr "אינך מחובר אל השרת"
 
-#: ../src/config.py:2474
+#: ../src/config.py:2450
 msgid "Without a connection, you can not edit your personal information."
-msgstr "ללא חיבור, אין באפשרותך לערוך את המידע האישי שלך."
+msgstr "ללא חיבור, אין ביכולתך לערוך את המידע האישי שלך."
 
-#: ../src/config.py:2479
-msgid "Your server doesn't support vCard"
-msgstr "שרתך אינו תומך בטופס vCard"
+# Vcard form
+#: ../src/config.py:2454
+msgid "Your server doesn't support Vcard"
+msgstr "שרתך אינו תומך בתבנית Vcard"
 
-#: ../src/config.py:2480
+#: ../src/config.py:2455
 msgid "Your server can't save your personal information."
 msgstr "שרתך לא יכול לשמור את המידע האישי שלך."
 
-#: ../src/config.py:2597 ../src/config.py:2635
+#: ../src/config.py:2571
+#: ../src/config.py:2608
 msgid "To disable the account, you must be disconnected."
 msgstr "כדי לנטרל את החשבון, עליך להתנתק."
 
-#: ../src/config.py:2604
+#: ../src/config.py:2577
 msgid "Account Local already exists."
 msgstr "חשבון Local כבר קיים."
 
-#: ../src/config.py:2605
+#: ../src/config.py:2578
 msgid "Please rename or remove it before enabling link-local messaging."
 msgstr "אנא שנה את שמו או הסר אותו בטרם אפשור קישוריות מסרים מקומית."
 
-#: ../src/config.py:2766
+#: ../src/config.py:2735
 #, python-format
 msgid "Edit %s"
 msgstr "ערוך %s"
 
 # רישום
-#: ../src/config.py:2768
+#: ../src/config.py:2737
 #, python-format
 msgid "Register to %s"
 msgstr "הירשם אל %s"
 
 #. list at the beginning
-#: ../src/config.py:2804
+#: ../src/config.py:2773
 msgid "Ban List"
-msgstr "רשימת אסירה"
+msgstr "רשימת חסימה"
 
-#: ../src/config.py:2805
+#: ../src/config.py:2774
 msgid "Member List"
 msgstr "רשימת חברים"
 
-#: ../src/config.py:2805
+#: ../src/config.py:2774
 msgid "Owner List"
 msgstr "רשימת בעלים"
 
-#: ../src/config.py:2806
+#: ../src/config.py:2775
 msgid "Administrator List"
 msgstr "רשימת מנהלים"
 
 #. Address column
 #. holds JID (who said this)
-#: ../src/config.py:2870 ../src/disco.py:896 ../src/history_manager.py:217
+#: ../src/config.py:2839
+#: ../src/disco.py:892
+#: ../src/history_manager.py:207
 msgid "JID"
-msgstr "JID"
+msgstr "JID"
 
-#: ../src/config.py:2880
+#: ../src/config.py:2849
 msgid "Reason"
 msgstr "סיבה"
 
-#: ../src/config.py:2887
+#: ../src/config.py:2856
 msgid "Nick"
 msgstr "כינוי"
 
-#: ../src/config.py:2893
+#: ../src/config.py:2862
 msgid "Role"
 msgstr "תפקיד"
 
-#: ../src/config.py:2920
+#: ../src/config.py:2889
 msgid "Banning..."
-msgstr "אוסר כעת..."
+msgstr "חוסם..."
 
 #. You can move '\n' before user@domain if that line is TOO BIG
-#: ../src/config.py:2922
+#: ../src/config.py:2891
 msgid ""
 "Whom do you want to ban? \n"
 "\n"
 msgstr ""
-"את מי ברצונך לאסור? \n"
+"את מי ברצונך לחסום? \n"
 "\n"
 
-# מוסיף כעת חבר...
-#: ../src/config.py:2924
+#: ../src/config.py:2893
 msgid "Adding Member..."
 msgstr "הוספת חבר..."
 
-#: ../src/config.py:2925
+#: ../src/config.py:2894
 msgid ""
 "Whom do you want to make a member? \n"
 "\n"
@@ -7307,12 +7374,11 @@ msgstr ""
 "את מי ברצונך להפוך אל חבר? \n"
 "\n"
 
-# מוסיף כעת בעלים...
-#: ../src/config.py:2927
+#: ../src/config.py:2896
 msgid "Adding Owner..."
 msgstr "הוספת בעלים..."
 
-#: ../src/config.py:2928
+#: ../src/config.py:2897
 msgid ""
 "Whom do you want to make an owner? \n"
 "\n"
@@ -7320,12 +7386,11 @@ msgstr ""
 "את מי ברצונך להפוך אל בעלים? \n"
 "\n"
 
-# מוסיף כעת מנהל...
-#: ../src/config.py:2930
+#: ../src/config.py:2899
 msgid "Adding Administrator..."
 msgstr "הוספת מנהל..."
 
-#: ../src/config.py:2931
+#: ../src/config.py:2900
 msgid ""
 "Whom do you want to make an administrator? \n"
 "\n"
@@ -7338,7 +7403,7 @@ msgstr ""
 #      user = משתמש\n
 #      resource = משאב\n
 #
-#: ../src/config.py:2932
+#: ../src/config.py:2901
 msgid ""
 "Can be one of the following:\n"
 "1. user@domain/resource (only that resource matches).\n"
@@ -7347,151 +7412,160 @@ msgid ""
 "4. domain (the domain itself matches, as does any user@domain,\n"
 "domain/resource, or address containing a subdomain)."
 msgstr ""
-"הקלט יכול להיות אחד מתוך הבאים:\n"
+"הקלט יכול להיות אחד מן הבאים:\n"
 "1. user@domain/resource (רק משאב זה תואם).\n"
 "2. user@domain (כל משאב תואם).\n"
 "3. domain/resource (רק משאב זה תואם).\n"
 "4. domain (המתחם עצמו מתאים, עבור כל user@domain,\n"
-"domain/resource, או כתובת אשר מכילים מתחם משני)."
+"domain/resource, או כתובת המכילה מתחם־משני)."
 
-#: ../src/config.py:3033
+#: ../src/config.py:3002
 #, python-format
 msgid "Removing %s account"
 msgstr "הסרת חשבון %s"
 
-#: ../src/config.py:3048
+# נוטרל
+#: ../src/config.py:3017
 msgid "Account is disabled"
 msgstr "חשבון מנוטרל"
 
-#: ../src/config.py:3049
+#: ../src/config.py:3018
 msgid "To unregister from a server, account must be enabled."
-msgstr "כדי לבטל רישום מתוך שרת, על חשבון נתון להיות מאופשר."
+msgstr "כדי לבטל רישום מן שרת, על חשבון נתון להיות מאופשר."
 
-#: ../src/config.py:3062 ../src/gui_interface.py:286
-#: ../src/gui_interface.py:734
+#: ../src/config.py:3031
+#: ../src/gui_interface.py:285
+#: ../src/gui_interface.py:732
 msgid "Password Required"
-msgstr "נדרשת מילת מעבר"
+msgstr "נדרשת מילת־מעבר"
 
-#: ../src/config.py:3063 ../src/gui_interface.py:714
+#: ../src/config.py:3032
+#: ../src/gui_interface.py:712
 #, python-format
 msgid "Enter your password for account %s"
 msgstr "הזן את סיסמתך עבור חשבון %s"
 
-#: ../src/config.py:3064 ../src/gui_interface.py:734
+# שמירת
+#: ../src/config.py:3033
+#: ../src/gui_interface.py:732
 msgid "Save password"
 msgstr "שמור סיסמה"
 
-#: ../src/config.py:3074
+#: ../src/config.py:3043
 #, python-format
 msgid "Account \"%s\" is connected to the server"
-msgstr "חשבון \"%s\" מחובר כעת אל שרת"
+msgstr "חשבון \"%s\" מחובר כעת אל השרת"
 
 # it = account?
 # תסיר/י אותו
-#: ../src/config.py:3075
+#: ../src/config.py:3044
 msgid "If you remove it, the connection will be lost."
 msgstr "אם תסירו, החיבור יאבד."
 
-#: ../src/config.py:3089
+#: ../src/config.py:3058
 #, python-format
 msgid "Connection to server %s failed"
 msgstr "התחברות אל שרת %s נכשלה"
 
-#: ../src/config.py:3090
+#: ../src/config.py:3059
 msgid "What would you like to do?"
 msgstr "מה ברצונך לעשות?"
 
 # מהיישום
-#: ../src/config.py:3091
+#: ../src/config.py:3060
 msgid "Remove only from Gajim"
-msgstr "הסרה מתוך Gajim בלבד"
+msgstr "הסרה מן Gajim בלבד"
 
 # אחר כך
-#: ../src/config.py:3092
+#: ../src/config.py:3061
 msgid "Don't remove anything. I'll try again later"
 msgstr "לא להסיר דבר. אני אנסה שוב מאוחר יותר"
 
-#: ../src/config.py:3185
+#: ../src/config.py:3154
 msgid "?print_status:All"
 msgstr "הכל"
 
-#: ../src/config.py:3186
+#: ../src/config.py:3155
 msgid "Enter and leave only"
 msgstr "כניסה ועזיבה בלבד"
 
-#: ../src/config.py:3187
+#: ../src/config.py:3156
 msgid "?print_status:None"
 msgstr "אל תדפיס"
 
-#: ../src/config.py:3246
+#: ../src/config.py:3228
 msgid "New Group Chat"
 msgstr "שיחת קבוצה חדשה"
 
-#: ../src/config.py:3279
+# לסימנייה זו יש מידע שגוי
+#: ../src/config.py:3261
 msgid "This bookmark has invalid data"
 msgstr "סימנייה זו מכילה מידע שגוי"
 
-#: ../src/config.py:3280
-msgid ""
-"Please be sure to fill out server and room fields or remove this bookmark."
-msgstr "אנא דאג למלא שדות חדר ושרת או הסר את סימנייה זו."
+#: ../src/config.py:3262
+msgid "Please be sure to fill out server and room fields or remove this bookmark."
+msgstr "נא לוודא למלא שדות חדר ושרת או להסיר את סימנייה זו."
 
-#: ../src/config.py:3406 ../src/config.py:3417 ../src/config.py:3426
-#: ../src/config.py:3437 ../src/config.py:3445
+# מותר
+#: ../src/config.py:3388
+#: ../src/config.py:3399
+#: ../src/config.py:3408
+#: ../src/config.py:3419
+#: ../src/config.py:3427
 msgid "Character not allowed"
 msgstr "תו לא מורשה"
 
-#: ../src/config.py:3417 ../src/config.py:3425 ../src/config.py:3437
-#: ../src/config.py:3702
+#: ../src/config.py:3399
+#: ../src/config.py:3407
+#: ../src/config.py:3419
+#: ../src/config.py:3684
 msgid "Invalid server"
 msgstr "שרת שגוי"
 
-#: ../src/config.py:3444
+#: ../src/config.py:3426
 msgid "Invalid room"
 msgstr "חדר שגוי"
 
-#: ../src/config.py:3614
+#: ../src/config.py:3596
 msgid "Account has been added successfully"
 msgstr "חשבון הוסף בהצלחה"
 
 # מאוחר יותר
-#: ../src/config.py:3615 ../src/config.py:3621
-msgid ""
-"You can set advanced account options by pressing the Advanced button, or "
-"later by choosing the Accounts menu item under the Edit menu from the main "
-"window."
-msgstr ""
-"באפשרותך להגדיר אפשרויות חשבון מתקדמות על ידי לחיצה על הלחצן מתקדם, או לאחר "
-"מכן בבוחרך בתפריט חשבונות תחת התפריט עריכה מתוך החלון הראשי."
+#: ../src/config.py:3597
+#: ../src/config.py:3603
+msgid "You can set advanced account options by pressing the Advanced button, or later by choosing the Accounts menu item under the Edit menu from the main window."
+msgstr "ביכולתך להגדיר אפשרויות חשבון מתקדמות על ידי לחיצה על הכפתור מתקדם, או לאחר מכן בבוחרך בתפריט חשבונות תחת התפריט עריכה מן החלון הראשי."
 
-#: ../src/config.py:3620
+#: ../src/config.py:3602
 msgid "Your new account has been created successfully"
 msgstr "חשבונך החדש נוצר בהצלחה"
 
-#: ../src/config.py:3659
+#: ../src/config.py:3641
 msgid "Invalid username"
 msgstr "שם משתמש שגוי"
 
-#: ../src/config.py:3661
+#: ../src/config.py:3643
 msgid "You must provide a username to configure this account."
 msgstr "עליך לספק שם משתמש כדי להגדיר את חשבון זה."
 
-#: ../src/config.py:3703
+#: ../src/config.py:3685
 msgid "Please provide a server on which you want to register."
 msgstr "אנא ספק שרת אליו ברצונך להירשם."
 
 # BUG: גודל אותיות באנגלית?
-#: ../src/config.py:3759 ../src/gui_interface.py:1313
+#: ../src/config.py:3741
+#: ../src/gui_interface.py:1303
 msgid "Certificate Already in File"
 msgstr "התעודה כבר מצויה בקובץ"
 
 # חריג לכלל: עשיתי שימוש במילה שנית במקום שוב מכיוון שתמיד יהיה 'ראשון' ולאחריו שני
-#: ../src/config.py:3760 ../src/gui_interface.py:1314
+#: ../src/config.py:3742
+#: ../src/gui_interface.py:1304
 #, python-format
 msgid "This certificate is already in file %s, so it's not added again."
 msgstr "תעודה זו כבר מצויה בקובץ %s, ולכן היא לא תוסף בשנית."
 
-#: ../src/config.py:3850
+#: ../src/config.py:3830
 #, python-format
 msgid ""
 "Security Warning \n"
@@ -7503,10 +7577,11 @@ msgstr ""
 "אזהרת אבטחה \n"
 "\n"
 "מהימנותה של תעודת SSL של %(hostname)s עלולה להיות רעועה.\n"
-"שגיאת SSL: %(error)s\n"
+"שגיאת SSL: %(error)s\n"
 "האם עדיין יש ברצונך להתחבר אל שרת זה?"
 
-#: ../src/config.py:3856 ../src/gui_interface.py:1342
+#: ../src/config.py:3836
+#: ../src/gui_interface.py:1332
 #, python-format
 msgid ""
 "Add this certificate to the list of trusted certificates.\n"
@@ -7517,90 +7592,85 @@ msgstr ""
 "טביעת אצבע SHA1 של התעודה:\n"
 "%s"
 
-#: ../src/config.py:3888 ../src/config.py:3922
+# בעת מהלך
+#: ../src/config.py:3868
+#: ../src/config.py:3902
 msgid "An error occurred during account creation"
-msgstr "אירעה שגיאה בעת מהלך יצירת חשבון"
+msgstr "ארעה שגיאה בעת יצירת חשבון"
 
-#: ../src/config.py:3987
+#: ../src/config.py:3967
 msgid "Account name is in use"
-msgstr "שם חשבון הינו בשימוש"
+msgstr "שם חשבון בשימוש"
 
-#: ../src/config.py:3988
+#: ../src/config.py:3968
 msgid "You already have an account using this name."
-msgstr "כבר יש ברשותך חשבון אשר עושה שימוש בשם זה."
+msgstr "כבר יש ברשותך חשבון שעושה שימוש בשם זה."
 
-#: ../src/config.py:4118
+#: ../src/config.py:4098
 msgid "PEP node was not removed"
 msgstr "ממסר PEP לא הוסר"
 
-#: ../src/config.py:4119
+#: ../src/config.py:4099
 #, python-format
 msgid "PEP node %(node)s was not removed: %(message)s"
-msgstr "ממסר PEP %(node)s לא הוסר: %(message)s"
+msgstr "ממסר PEP %(node)s לא הוסר: %(message)s"
 
-#: ../src/config.py:4147
+#: ../src/config.py:4127
 #, python-format
 msgid "Configure %s"
 msgstr "תצורת %s"
 
-#: ../src/config.py:4163 ../src/plugins/gui.py:92
+#: ../src/config.py:4143
+#: ../src/plugins/gui.py:88
 msgid "Active"
 msgstr "פעיל"
 
-#: ../src/config.py:4171
+#: ../src/config.py:4151
 msgid "Event"
 msgstr "אירוע"
 
-#: ../src/config.py:4205
+#: ../src/config.py:4185
 msgid "Attention Message Received"
 msgstr "התקבלה הודעת הקשב"
 
-#: ../src/config.py:4206
+#: ../src/config.py:4186
 msgid "First Message Received"
-msgstr "הודעה ראשונה אשר התקבלה"
+msgstr "הודעה ראשונה שהתקבלה"
 
-#: ../src/config.py:4207
+#: ../src/config.py:4187
 msgid "Next Message Received Focused"
-msgstr "הודעה הבאה אשר התקבלה (ממוקד)"
+msgstr "הודעה הבאה שהתקבלה (ממוקד)"
 
-#: ../src/config.py:4209
+#: ../src/config.py:4189
 msgid "Next Message Received Unfocused"
-msgstr "הודעה הבאה אשר התקבלה (לא ממוקד)"
+msgstr "הודעה הבאה שהתקבלה (לא ממוקד)"
 
-#: ../src/config.py:4210
+#: ../src/config.py:4190
 msgid "Contact Connected"
 msgstr "איש קשר מחובר"
 
-#: ../src/config.py:4211
+#: ../src/config.py:4191
 msgid "Contact Disconnected"
 msgstr "איש קשר מנותק"
 
-#: ../src/config.py:4212
+#: ../src/config.py:4192
 msgid "Message Sent"
 msgstr "הודעה נשלחה"
 
-#: ../src/config.py:4213
+#: ../src/config.py:4193
 msgid "Group Chat Message Highlight"
 msgstr "הודעת שיחת קבוצה מודגשת"
 
-#: ../src/config.py:4214
+#: ../src/config.py:4194
 msgid "Group Chat Message Received"
-msgstr "הודעת שיחת קבוצה אשר התקבלה"
+msgstr "הודעת שיחת קבוצה שהתקבלה"
 
-#: ../src/config.py:4215
+#: ../src/config.py:4195
 msgid "GMail Email Received"
-msgstr "דוא״ל GMail אשר התקבל"
+msgstr "דוא״ל GMail שהתקבל"
 
-#: ../src/conversation_textview.py:483 ../src/conversation_textview.py:501
-#, python-format
-msgid ""
-"Message was corrected. Last message was: \n"
-"  %s"
-msgstr ""
-"הודעה תוקנה. הודעה אחרונה היתה: \n"
-"  %s"
-
-#: ../src/conversation_textview.py:654
+# סביר ש
+#: ../src/conversation_textview.py:602
 msgid ""
 "This icon indicates that this message has not yet\n"
 "been received by the remote end. If this icon stays\n"
@@ -7608,54 +7678,56 @@ msgid ""
 msgstr ""
 "צלמית זו מצביע על כך שהודעה זו עדיין לא\n"
 "התקבלה על ידי הקצה המרוחק. אם צלמית זו\n"
-"נותרת למשך זמן ממושך, סביר כי ההודעה אבדה."
+"נשארת לזמן ממושך, כנראה שההודעה אבדה."
 
-#: ../src/conversation_textview.py:673
+#: ../src/conversation_textview.py:621
 msgid ""
 "Text below this line is what has been said since the\n"
 "last time you paid attention to this group chat"
 msgstr ""
-"תמליל תחת שורה זו הוא דברים אשר נרשמו מאז הפעם\n"
-"האחרונה בה הסבת את צומת לבך אל שיחת קבוצה זו"
+"תמליל תחת שורה זו הינו מה שנאמר מאז\n"
+"הפעם האחרונה שהקשבת לשיחת קבוצה זו"
 
-#: ../src/conversation_textview.py:793
+#: ../src/conversation_textview.py:741
 msgid "_Quote"
-msgstr "_צטט"
+msgstr "_ציטוט"
 
-#: ../src/conversation_textview.py:800
+#: ../src/conversation_textview.py:748
 #, python-format
 msgid "_Actions for \"%s\""
-msgstr "_פעולות עבור \"%s\""
+msgstr "_פעולות עבור \"%s\""
 
-#: ../src/conversation_textview.py:813
+# עיון בערך אצל/באתר
+#: ../src/conversation_textview.py:761
 msgid "Read _Wikipedia Article"
-msgstr "עיין ערך _ויקיפדיה"
+msgstr "עיון בערך ב_ויקיפדיה"
 
-#: ../src/conversation_textview.py:818
+#: ../src/conversation_textview.py:766
 msgid "Look it up in _Dictionary"
-msgstr "חפש בתוך _מילון"
+msgstr "חיפוש ב_מילון"
 
-#: ../src/conversation_textview.py:835
+#: ../src/conversation_textview.py:783
 #, python-format
 msgid "Dictionary URL is missing an \"%s\" and it is not WIKTIONARY"
 msgstr "לכתובת URL של המילון חסר \"%s\" וזו לא WIKTIONARY"
 
 #. we must have %s in the url
-#: ../src/conversation_textview.py:848
+#: ../src/conversation_textview.py:796
 #, python-format
 msgid "Web Search URL is missing an \"%s\""
 msgstr "לכתובת URL של חיפוש ברשת חסר \"%s\""
 
-#: ../src/conversation_textview.py:851
+#: ../src/conversation_textview.py:799
 msgid "Web _Search for it"
 msgstr "_חפש ברשת"
 
-#: ../src/conversation_textview.py:857
+#: ../src/conversation_textview.py:805
 msgid "Open as _Link"
-msgstr "פתח בתור _קישור"
+msgstr "פתיחה כ_קישור"
 
+# לפני %i ימים
 #. %i is day in year (1-365)
-#: ../src/conversation_textview.py:1386
+#: ../src/conversation_textview.py:1302
 #, python-format
 msgid "Yesterday"
 msgid_plural "%(nb_days)i days ago"
@@ -7663,14 +7735,15 @@ msgstr[0] "אתמול"
 msgstr[1] "לפני %(nb_days)i ימים"
 
 #. if we have subject, show it too!
-#: ../src/conversation_textview.py:1436 ../src/history_window.py:488
+#: ../src/conversation_textview.py:1351
+#: ../src/history_window.py:481
 #, python-format
 msgid "Subject: %s\n"
 msgstr "נושא: %s\n"
 
 #: ../src/dataforms_widget.py:575
 msgid "Unable to load image"
-msgstr "אין אפשרות לטעון תמונה"
+msgstr "לא ניתן לטעון תמונה"
 
 #: ../src/dataforms_widget.py:577
 #, python-format
@@ -7679,171 +7752,176 @@ msgstr "טיפוס מדיה לא נתמך: %s"
 
 #: ../src/dataforms_widget.py:592
 msgid "This field is required"
-msgstr "שדה זה הינו נדרש"
+msgstr "שדה זה נדרש"
 
 #: ../src/dataforms_widget.py:637
 msgid "Jabber ID already in list"
-msgstr "מזהה Jabber כבר מצוי בתוך הרשימה"
+msgstr "כתובת JID כבר מצויה ברשימה"
 
 #: ../src/dataforms_widget.py:638
 msgid "The Jabber ID you entered is already in the list. Choose another one."
-msgstr "מזהה Jabber אשר הזנת כבר מצוי בתוך הרשימה. בחר מזהה אחר."
+msgstr "הכתובת (JID) שהזנת כבר מצויה ברשימה. נא לבחור כתובת אחרת."
 
 #. Default jid
 #: ../src/dataforms_widget.py:649
 msgid "new@jabber.id"
-msgstr ""
+msgstr "new@jabber.id"
 
 #: ../src/dataforms_widget.py:652 ../src/dataforms_widget.py:654
 #, python-format
 msgid "new%d@jabber.id"
-msgstr ""
+msgstr "new%d@jabber.id"
 
-#: ../src/dialogs.py:84
+#: ../src/dialogs.py:82
 #, python-format
 msgid "Contact name: %s "
 msgstr "שם איש קשר: %s "
 
-#: ../src/dialogs.py:86
+#: ../src/dialogs.py:84
 #, python-format
 msgid "Jabber ID: %s "
-msgstr "מזהה Jabber: %s "
+msgstr "JID: %s "
 
-#: ../src/dialogs.py:200
+#: ../src/dialogs.py:198
 msgid "Group"
 msgstr "קבוצה"
 
-#: ../src/dialogs.py:207
+#: ../src/dialogs.py:205
 msgid "In the group"
 msgstr "בקבוצה"
 
-#: ../src/dialogs.py:299
+#: ../src/dialogs.py:297
 msgid "KeyID"
-msgstr "מזהה מפתח"
+msgstr "מפתח (KeyID)"
 
-#: ../src/dialogs.py:304
+#: ../src/dialogs.py:302
 msgid "Contact name"
 msgstr "שם איש קשר"
 
-#: ../src/dialogs.py:479
+#: ../src/dialogs.py:477
 msgid "Set Mood"
 msgstr "קביעת מצב רוח"
 
-#: ../src/dialogs.py:599
+#: ../src/dialogs.py:597
 #, python-format
 msgid "%s Status Message"
 msgstr "%s הודעת מצב"
 
-#: ../src/dialogs.py:613
+#: ../src/dialogs.py:611
 msgid "Status Message"
 msgstr "הודעת מצב"
 
-#: ../src/dialogs.py:804
+# Changed "overwrite" with "delete"
+# Changed "delete" with "replace"
+#: ../src/dialogs.py:802
 msgid "Overwrite Status Message?"
 msgstr "החלף הודעת מצב?"
 
-#: ../src/dialogs.py:805
-msgid ""
-"This name is already used. Do you want to overwrite this status message?"
+# Change to: This name is already used. Do you want to delete the existed status message?
+#: ../src/dialogs.py:803
+msgid "This name is already used. Do you want to overwrite this status message?"
 msgstr "שם זה כבר מצוי בשימוש. האם ברצונך להחליף את הודעת המצב הקיימת?"
 
-#: ../src/dialogs.py:813
+#: ../src/dialogs.py:811
 msgid "Save as Preset Status Message"
-msgstr "שמור בתור הודעת מצב מותאמת"
+msgstr "שמירה כהודעת מצב ערוכה מראש"
 
-#: ../src/dialogs.py:814
+#: ../src/dialogs.py:812
 msgid "Please type a name for this status message"
 msgstr "אנא הקלד שם עבור הודעת מצב זו"
 
-#: ../src/dialogs.py:842
+#: ../src/dialogs.py:840
 msgid "AIM Address:"
 msgstr "כתובת AIM:"
 
-#: ../src/dialogs.py:843
+#: ../src/dialogs.py:841
 msgid "GG Number:"
 msgstr "מספר GG:"
 
-#: ../src/dialogs.py:844
+#: ../src/dialogs.py:842
 msgid "ICQ Number:"
 msgstr "מספר ICQ:"
 
-#: ../src/dialogs.py:845
+#: ../src/dialogs.py:843
 msgid "MSN Address:"
 msgstr "כתובת MSN:"
 
-#: ../src/dialogs.py:846
+#: ../src/dialogs.py:844
 msgid "Yahoo! Address:"
 msgstr "כתובת !Yahoo:"
 
-#: ../src/dialogs.py:883
+#: ../src/dialogs.py:881
 #, python-format
 msgid "Please fill in the data of the contact you want to add in account %s"
-msgstr "אנא מלא את המידע של איש הקשר אשר ברצונך להוסיף בחשבון %s"
+msgstr "נא להזין את המידע של איש הקשר שברצונך להוסיף בחשבון %s"
 
-#: ../src/dialogs.py:886
+#: ../src/dialogs.py:884
 msgid "Please fill in the data of the contact you want to add"
-msgstr "אנא מלא את המידע של איש הקשר אשר ברצונך להוסיף"
+msgstr "נא להזין את המידע של איש הקשר שברצונך להוסיף"
 
-#: ../src/dialogs.py:1080 ../src/dialogs.py:1086 ../src/dialogs.py:1091
-#: ../src/dialogs.py:3770
+#: ../src/dialogs.py:1076
+#: ../src/dialogs.py:1082
+#: ../src/dialogs.py:1087
+#: ../src/dialogs.py:3672
 msgid "Invalid User ID"
-msgstr "מזהה משתמש שגוי"
+msgstr "ID משתמש שגויה"
 
 # אסור להכיל
 # אסור ש
 # מוכרחה שלא
-#: ../src/dialogs.py:1087
+#: ../src/dialogs.py:1083
 msgid "The user ID must not contain a resource."
-msgstr "מזהה משתמש לא יכול להכיל משאב."
+msgstr "ID משתמש לא יכולה להכיל משאב."
 
-#: ../src/dialogs.py:1092
+#: ../src/dialogs.py:1088
 msgid "You cannot add yourself to your roster."
-msgstr "אין באפשרותך להוסיף את עצמך אל הרשימה שלך."
+msgstr "אין באפשרותך להוסיף את עצמך אל רשימתך."
 
-#: ../src/dialogs.py:1106
+#: ../src/dialogs.py:1102
 msgid "Contact already in roster"
 msgstr "איש קשר כבר מצוי ברשימה"
 
-#: ../src/dialogs.py:1107
+#: ../src/dialogs.py:1103
 msgid "This contact is already listed in your roster."
-msgstr "איש קשר זה כבר מצוי ברשימה שלך."
+msgstr "איש קשר זה כבר מצוי ברשימתך."
 
-#: ../src/dialogs.py:1160 ../src/dialogs.py:1194
+#: ../src/dialogs.py:1156
+#: ../src/dialogs.py:1190
 msgid "User ID:"
-msgstr "מזהה משתמש:"
+msgstr "ID משתמש:"
 
-#: ../src/dialogs.py:1279
+#: ../src/dialogs.py:1275
 msgid "A GTK+ Jabber/XMPP client"
-msgstr "לקוח Jabber/XMPP מבוסס GTK+"
+msgstr ""
 
-#: ../src/dialogs.py:1280
+#: ../src/dialogs.py:1276
 msgid "GTK+ Version:"
 msgstr ""
 
-#: ../src/dialogs.py:1281
+#: ../src/dialogs.py:1277
 msgid "PyGTK Version:"
 msgstr ""
 
-#: ../src/dialogs.py:1291
+#: ../src/dialogs.py:1287
 msgid "Current Developers:"
 msgstr "מפתחים נוכחיים:"
 
-#: ../src/dialogs.py:1293
+#: ../src/dialogs.py:1289
 msgid "Past Developers:"
 msgstr "מפתחים מן העבר:"
 
-#: ../src/dialogs.py:1299
+#: ../src/dialogs.py:1295
 msgid "THANKS:"
 msgstr "תודות:"
 
 #. remove one english sentence
 #. and add it manually as translatable
-#: ../src/dialogs.py:1305
+#: ../src/dialogs.py:1301
 msgid "Last but not least, we would like to thank all the package maintainers."
 msgstr "ואחרון אחרון חביב, ברצוננו להודות לכל מתחזקי החבילות."
 
 #. here you write your name in the form Name FamilyName 
-#: ../src/dialogs.py:1317
+#: ../src/dialogs.py:1313
 msgid "translator-credits"
 msgstr ""
 "Lead Translator:\n"
@@ -7856,7 +7934,7 @@ msgstr ""
 "Rahut Contributors:\n"
 "  Isratine Citizen (genghiskhan AT gmx.ca)"
 
-#: ../src/dialogs.py:1500
+#: ../src/dialogs.py:1496
 #, python-format
 msgid ""
 "You have to install %s dictionary to use spellchecking, or choose another "
@@ -7867,495 +7945,475 @@ msgstr ""
 "עליך להתקין מילון %s כדי לעשות שימוש בבדיקת איות, או בחרו בשפה שונה על ידי "
 "הגדרת האפשרות speller_language.\n"
 "\n"
-"הדגשת מילים אשר לא אויתו כראוי לא תנוצל"
+"הדגשת מילים שלא אויתו כראוי לא תנוצל"
 
-#: ../src/dialogs.py:1845 ../src/gui_interface.py:1446
-#: ../src/gui_interface.py:1488
-msgid "Insecure connection"
-msgstr "חיבור לא מאובטח"
-
-# BUG: to the server > to a serverr > to server
-# Added: will be exchanged with the other end will not be encrypted
-# הינך על סף התחברות אל שרת עם חיבור לא מאובטח. משמעות הדבר היא שכל השיחות שלך שיוחלפו עם הקצה השני לא יהיו מוצפנות. האם עדיין ברצונך להתחבר?
-# discouraged:
-#  > deprived > לקוי בחסר
-#  > dissuade > dissuade from > להניא מ-
-#: ../src/dialogs.py:1846
-#, python-format
-msgid ""
-"You are about to connect to the account %(account)s (%(server)s) with an "
-"insecure connection. This means all your conversations will be exchanged "
-"unencrypted. This type of connection is really discouraged.\n"
-"Are you sure you want to do that?"
-msgstr ""
-"הינך על סף התחברות אל החשבון %(account)s (%(server)s) באמצעות חיבור לא "
-"מאובטח. משמעות הדבר היא כי כל השיחות אשר יוחלפו עם הקצה השני לא יהיו "
-"מוצפנות. רצוי להימנע מחיבורים מטיפוס זה.\n"
-"האם אתה בטוח כי ברצונך לעשות כן?"
-
-#: ../src/dialogs.py:1852 ../src/gui_interface.py:1450
-#: ../src/gui_interface.py:1491
-msgid "Yes, I really want to connect insecurely"
-msgstr "כן, ברצוני להתחבר בשיטה לא בטוחה"
-
-#: ../src/dialogs.py:1853
-msgid "Gajim will NOT connect unless you check this box"
-msgstr "Gajim לא יתחבר אלא אם כן תיבה זו תסומן"
-
-#: ../src/dialogs.py:1854 ../src/groupchat_control.py:2130
-#: ../src/gui_interface.py:706 ../src/gui_interface.py:1451
-#: ../src/gui_interface.py:1492 ../src/message_window.py:222
-#: ../src/roster_window.py:3048 ../src/roster_window.py:3728
-#: ../src/roster_window.py:4556
-msgid "_Do not ask me again"
-msgstr "אל ת_שאל אותי שוב"
-
-#: ../src/dialogs.py:1950
+#: ../src/dialogs.py:1912
 msgid "_Resume"
-msgstr "_חזור"
+msgstr "_חזרה"
 
-#: ../src/dialogs.py:1958
+#: ../src/dialogs.py:1920
 msgid "Re_place"
-msgstr "ה_חלף"
+msgstr "ה_חלפה"
 
-#: ../src/dialogs.py:2155 ../src/dialogs.py:2612
-msgid "The nickname contains invalid characters."
+# BUG: unallowed characters
+#: ../src/dialogs.py:2114
+#: ../src/dialogs.py:2515
+msgid "The nickname has not allowed characters."
 msgstr "שם הכינוי מכיל תווים אסורים."
 
-#: ../src/dialogs.py:2277
+#: ../src/dialogs.py:2233
 #, python-format
 msgid "Subscription request for account %(account)s from %(jid)s"
 msgstr "בקשת הרשמה עבור חשבון %(account)s מאת %(jid)s"
 
-#: ../src/dialogs.py:2280
+#: ../src/dialogs.py:2236
 #, python-format
 msgid "Subscription request from %s"
-msgstr "בקשת הרשמה מאת %s"
+msgstr "בקשת הרשמה מאת %s"
 
-#: ../src/dialogs.py:2364 ../src/gui_interface.py:2056
+#: ../src/dialogs.py:2320
+#: ../src/gui_interface.py:2056
 #, python-format
 msgid "You are already in group chat %s"
-msgstr "הינך כבר בתוך שיחת קבוצה %s"
+msgstr "הינך כבר בתוך שיחת קבוצה %s"
+
+#: ../src/dialogs.py:2326
+msgid "You can not join a group chat unless you are connected."
+msgstr "אין ביכולתך להצטרף אל שיחת קבוצה עד שלא תחובר."
 
 #: ../src/dialogs.py:2370
-msgid "You can not join a group chat unless you are connected."
-msgstr "אין באפשרותך להצטרף אל שיחת קבוצה עד אשר לא תחובר."
-
-#: ../src/dialogs.py:2414
 #, python-format
 msgid "Join Group Chat with account %s"
 msgstr "הצטרפות אל שיחת קבוצה באמצעות חשבון %s"
 
-#: ../src/dialogs.py:2548 ../src/dialogs.py:2558
-msgid "Wrong server"
-msgstr "שרת שגוי"
-
-#: ../src/dialogs.py:2548 ../src/dialogs.py:2558
-#, python-format
-msgid "%s is not a groupchat server"
-msgstr "%s אינו שרת שיחת קבוצה"
-
-#: ../src/dialogs.py:2598
+#: ../src/dialogs.py:2501
 msgid "Invalid Account"
 msgstr "חשבון שגוי"
 
-#: ../src/dialogs.py:2599
-msgid ""
-"You have to choose an account from which you want to join the groupchat."
-msgstr "עליך לבחור חשבון אשר ממנו ברצונך להצטרף אל שיחת הקבוצה."
+#: ../src/dialogs.py:2502
+msgid "You have to choose an account from which you want to join the groupchat."
+msgstr "עליך לבחור חשבון שממנו ברצונך להצטרף אל שיחת הקבוצה."
 
-#: ../src/dialogs.py:2611
+#: ../src/dialogs.py:2514
 msgid "Invalid Nickname"
 msgstr "שם כינוי שגוי"
 
-#: ../src/dialogs.py:2616 ../src/dialogs.py:2622
-#: ../src/groupchat_control.py:2198
+#: ../src/dialogs.py:2519
+#: ../src/dialogs.py:2525
+#: ../src/groupchat_control.py:2093
 msgid "Invalid group chat Jabber ID"
-msgstr "מזהה Jabber של שיחת קבוצה שגוי"
+msgstr "כתובת (JID) שגויה של שיחת קבוצה"
 
-#: ../src/dialogs.py:2617
+#: ../src/dialogs.py:2520
 msgid "Please enter the group chat Jabber ID as room@server."
-msgstr "אנא הזן מזהה Jabber של שיחת הקבוצה בתור חדר@שרת."
+msgstr "נא להזין כתובת JID של שיחת הקבוצה באופן זה חדר@שרת."
 
-#: ../src/dialogs.py:2623
-msgid "The group chat Jabber ID contains invalid characters."
-msgstr "מזהה Jabber של שיחת קבוצה מכילה תווים אסורים."
+# BUG: unallowed characters
+#: ../src/dialogs.py:2526
+#: ../src/groupchat_control.py:2094
+msgid "The group chat Jabber ID has not allowed characters."
+msgstr "כתובת (JID) שיחת קבוצה מכילה תווים אסורים."
 
-#: ../src/dialogs.py:2628 ../src/gui_interface.py:2038
+# זו לא
+#: ../src/dialogs.py:2531
+#: ../src/gui_interface.py:2038
 msgid "This is not a group chat"
 msgstr "זוהי אינה שיחת קבוצה"
 
-#: ../src/dialogs.py:2629 ../src/gui_interface.py:2039
+#: ../src/dialogs.py:2532
+#: ../src/gui_interface.py:2039
 #, python-format
 msgid "%s is not the name of a group chat."
 msgstr "%s אינו שם של שיחת קבוצה."
 
-#: ../src/dialogs.py:2663
+#: ../src/dialogs.py:2564
 msgid "Without a connection, you can not synchronise your contacts."
-msgstr "ללא חיבור, אין באפשרותך לסנכרן את אנשי הקשר שלך."
+msgstr "ללא חיבור, אין ביכולתך לסנכרן את אנשי הקשר שלך."
 
-#: ../src/dialogs.py:2676
+#: ../src/dialogs.py:2577
 msgid "Server"
 msgstr "שרת"
 
 # Sync account > Unlogged account > Error
 # Should this be "to its server" OR "to a server"?
-#: ../src/dialogs.py:2712
+#: ../src/dialogs.py:2613
 msgid "This account is not connected to the server"
-msgstr "חשבון זה אינו מחובר כעת אל שרת"
+msgstr "חשבון זה אינו מחובר כעת אל השרת"
 
 # BUG: synchronise with *another* account
-# עד אשר זה לא יחובר
-#: ../src/dialogs.py:2713
+# עד שזה לא יחובר
+#: ../src/dialogs.py:2614
 msgid "You cannot synchronize with an account unless it is connected."
-msgstr "אין באפשרותך להסתנכרן עם חשבון אלא אם כן החשבון הינו מחובר."
+msgstr "אין ביכולתך להסתנכרן עם חשבון אלא אם כן החשבון הינו מחובר."
 
-#: ../src/dialogs.py:2738
+#: ../src/dialogs.py:2639
 msgid "Synchronise"
 msgstr "סנכרון"
 
-#: ../src/dialogs.py:2799
+#: ../src/dialogs.py:2700
 #, python-format
 msgid "Start Chat with account %s"
 msgstr "התחלת שיחה באמצעות חשבון %s"
 
-#: ../src/dialogs.py:2801
+#: ../src/dialogs.py:2702
 msgid "Start Chat"
 msgstr "התחלת שיחה"
 
 # לו, אליו
-#: ../src/dialogs.py:2802
+# נא לרשום את הכינוי או את כתובת ה־JID של
+#: ../src/dialogs.py:2703
 msgid ""
 "Fill in the nickname or the Jabber ID of the contact you would like\n"
 "to send a chat message to:"
 msgstr ""
-"מלא שם כינוי או מזהה Jabber של איש הקשר\n"
-"אשר ברצונך לשלוח אליו או אליה הודעה:"
+"נא לרשום שם כינוי או כתובת JID של איש הקשר\n"
+"שברצונך לשלוח אליו או אליה הודעה:"
 
 #. if offline or connecting
-#: ../src/dialogs.py:2829 ../src/dialogs.py:3213 ../src/dialogs.py:3448
+#: ../src/dialogs.py:2730
+#: ../src/dialogs.py:3114
+#: ../src/dialogs.py:3350
 msgid "Connection not available"
 msgstr "חיבור לא זמין"
 
-#: ../src/dialogs.py:2830 ../src/dialogs.py:3214 ../src/dialogs.py:3449
+# עם
+#: ../src/dialogs.py:2731
+#: ../src/dialogs.py:3115
+#: ../src/dialogs.py:3351
 #, python-format
 msgid "Please make sure you are connected with \"%s\"."
-msgstr "אנא ודא כי הינך מחובר בעזרת \"%s\"."
+msgstr "נא לוודא שהינך מחובר באמצעות \"%s\"."
 
-#: ../src/dialogs.py:2839 ../src/dialogs.py:2842
+#: ../src/dialogs.py:2740
+#: ../src/dialogs.py:2743
 msgid "Invalid JID"
 msgstr "כתובת JID שגויה"
 
-#: ../src/dialogs.py:2842
+#: ../src/dialogs.py:2743
 #, python-format
 msgid "Unable to parse \"%s\"."
-msgstr "אין אפשרות לנתח את \"%s\"."
+msgstr "לא ניתן לנתח את \"%s\"."
 
-#: ../src/dialogs.py:2851
+#: ../src/dialogs.py:2752
 msgid "Without a connection, you can not change your password."
-msgstr "ללא חיבור, אין באפשרותך לשנות את סיסמתך."
+msgstr "ללא חיבור, אין ביכולתך לשנות את סיסמתך."
 
-#: ../src/dialogs.py:2870
+#: ../src/dialogs.py:2771
 msgid "Invalid password"
 msgstr "סיסמה שגויה"
 
-#: ../src/dialogs.py:2870
+#: ../src/dialogs.py:2771
 msgid "You must enter a password."
 msgstr "עליך להזין סיסמה."
 
-#: ../src/dialogs.py:2874
+#: ../src/dialogs.py:2775
 msgid "Passwords do not match"
 msgstr "סיסמאות לא תואמות"
 
 # על הסיסמאות
-#: ../src/dialogs.py:2875
+#: ../src/dialogs.py:2776
 msgid "The passwords typed in both fields must be identical."
-msgstr "הסיסמאות אשר מוקלדות בשני השדות מוכרחות להיות זהות."
+msgstr "הסיסמאות שמוקלדות בשני השדות מוכרחות להיות זהות."
 
-#: ../src/dialogs.py:2918 ../src/gui_interface.py:883 ../src/notify.py:276
+#: ../src/dialogs.py:2819
+#: ../src/gui_interface.py:873
+#: ../src/notify.py:276
 msgid "New E-mail"
 msgstr "דוא״ל חדש"
 
-#: ../src/dialogs.py:2920 ../src/gui_interface.py:943 ../src/notify.py:269
+#: ../src/dialogs.py:2821
+#: ../src/gui_interface.py:933
+#: ../src/notify.py:269
 msgid "File Transfer Request"
 msgstr "בקשה להעברת קובץ"
 
-#: ../src/dialogs.py:2922 ../src/gui_interface.py:845
-#: ../src/gui_interface.py:909 ../src/notify.py:271
+#: ../src/dialogs.py:2823
+#: ../src/gui_interface.py:835
+#: ../src/gui_interface.py:899
+#: ../src/notify.py:271
 msgid "File Transfer Error"
 msgstr "שגיאה בהעברת קובץ"
 
-#: ../src/dialogs.py:2924 ../src/gui_interface.py:1032
-#: ../src/gui_interface.py:1058 ../src/gui_interface.py:1079
+#: ../src/dialogs.py:2825
+#: ../src/gui_interface.py:1022
+#: ../src/gui_interface.py:1048
+#: ../src/gui_interface.py:1069
 #: ../src/notify.py:273
 msgid "File Transfer Completed"
 msgstr "העברת קובץ הושלמה"
 
-#: ../src/dialogs.py:2925 ../src/gui_interface.py:1035
-#: ../src/gui_interface.py:1062 ../src/gui_interface.py:1083
+#: ../src/dialogs.py:2826
+#: ../src/gui_interface.py:1025
+#: ../src/gui_interface.py:1052
+#: ../src/gui_interface.py:1073
 #: ../src/notify.py:274
 msgid "File Transfer Stopped"
 msgstr "העברת קובץ נעצרה"
 
-#: ../src/dialogs.py:3132
+#: ../src/dialogs.py:3033
 #, python-format
 msgid "Single Message using account %s"
 msgstr "הודעה בודדת באמצעות חשבון %s"
 
-#: ../src/dialogs.py:3134
+#: ../src/dialogs.py:3035
 #, python-format
 msgid "Single Message in account %s"
 msgstr "הודעה בודדת בחשבון %s"
 
-#: ../src/dialogs.py:3136
+#: ../src/dialogs.py:3037
 msgid "Single Message"
 msgstr "הודעה בודדת"
 
 #. prepare UI for Sending
-#: ../src/dialogs.py:3139
+#: ../src/dialogs.py:3040
 #, python-format
 msgid "Send %s"
 msgstr "שליחת %s"
 
 #. prepare UI for Receiving
-#: ../src/dialogs.py:3162
+#: ../src/dialogs.py:3063
 #, python-format
 msgid "Received %s"
 msgstr "התקבלה %s"
 
+# BUG: From, not Form?
+# תבנית
 #. prepare UI for Receiving
-#: ../src/dialogs.py:3185
-#, python-format
+#: ../src/dialogs.py:3086
+#, fuzzy, python-format
 msgid "Form %s"
-msgstr "טופס %s"
+msgstr "מאת %s"
 
-# Is there RE for Hebrew?
 #. we create a new blank window to send and we preset RE: and to jid
-#: ../src/dialogs.py:3268
+#: ../src/dialogs.py:3170
 #, python-format
 msgid "RE: %s"
 msgstr "RE: %s"
 
-#: ../src/dialogs.py:3269
+#: ../src/dialogs.py:3171
 #, python-format
 msgid "%s wrote:\n"
-msgstr "%s כתב/ה:\n"
+msgstr "%s כתב/ה:\n"
 
-#: ../src/dialogs.py:3329
+#: ../src/dialogs.py:3231
 #, python-format
 msgid "XML Console for %s"
 msgstr "מסוף XML עבור %s"
 
-#: ../src/dialogs.py:3331
+#: ../src/dialogs.py:3233
 msgid "XML Console"
 msgstr "מסוף XML"
 
 # רוצה לה
 #. Action that can be done with an incoming list of contacts
-#: ../src/dialogs.py:3478
+#: ../src/dialogs.py:3380
 msgid "add"
 msgstr "להוסיף"
 
 # Is this Change or Adjust?
 # לשנות
 # תתאים
-#: ../src/dialogs.py:3478
+#: ../src/dialogs.py:3380
 msgid "modify"
 msgstr "להתאים"
 
-#: ../src/dialogs.py:3479
+#: ../src/dialogs.py:3381
 msgid "remove"
 msgstr "להסיר"
 
 # שתבצע/י %(action)s  של
 # שיותאמו על ידך מספר x שברשימה
 # רוצה שתוסיף  מספר אנשי קשר ברשימה
-#: ../src/dialogs.py:3508
+#: ../src/dialogs.py:3410
 #, python-format
-msgid ""
-"%(jid)s  would like you to %(action)s  some contacts in your "
-"roster."
-msgstr "%(jid)s  מעוניין %(action)s  מספר אנשי קשר ברשימתך."
+msgid "%(jid)s  would like you to %(action)s  some contacts in your roster."
+msgstr "%(jid)s  מעוניין %(action)s  מספר אנשי קשר ברשימתך."
 
 #. Change label for accept_button to action name instead of 'OK'.
-#: ../src/dialogs.py:3526 ../src/dialogs.py:3601
+#: ../src/dialogs.py:3428
+#: ../src/dialogs.py:3503
 msgid "Modify"
 msgstr "התאמה"
 
 #. holds jid
-#: ../src/dialogs.py:3532 ../src/history_manager.py:166
+#: ../src/dialogs.py:3434
+#: ../src/history_manager.py:156
 msgid "Jabber ID"
-msgstr "מזהה Jabber"
+msgstr "JID"
 
-#: ../src/dialogs.py:3538
+#: ../src/dialogs.py:3440
 msgid "Groups"
 msgstr "קבוצות"
 
 #. it is selected
 #. remote_jid = model[iter_][1].decode('utf-8')
-#: ../src/dialogs.py:3646
+#: ../src/dialogs.py:3548
 #, python-format
 msgid "%s suggested me to add you in my roster."
-msgstr "%s הציע לי להוסיף אותך אל הרשימה שלי."
+msgstr "%s הציע לי להוסיפך אל רשימתי."
 
 # נוספו
-#: ../src/dialogs.py:3660
+#: ../src/dialogs.py:3562
 #, python-format
 msgid "Added %d contact"
 msgid_plural "Added %d contacts"
 msgstr[0] "הוסף איש קשר %d"
 msgstr[1] "הוספו %d אנשי קשר"
 
-#: ../src/dialogs.py:3698
+# BUG: extra space ?
+#: ../src/dialogs.py:3600
 #, python-format
 msgid "Removed %d contact"
 msgid_plural "Removed %d contacts"
 msgstr[0] "הוסר איש קשר %d"
 msgstr[1] "הוסרו %d אנשי קשר"
 
-# ארכיונאות
-#: ../src/dialogs.py:3739 ../src/dialogs.py:3916
+#: ../src/dialogs.py:3641
+#: ../src/dialogs.py:3818
 #, python-format
 msgid "Archiving Preferences for %s"
-msgstr "העדפות גנזך עבור %s"
+msgstr "העדפות ארכיונאות עבור %s"
 
-#: ../src/dialogs.py:3779
+#: ../src/dialogs.py:3681
 msgid "Invalid expire value"
 msgstr "ערך תפוגה שגוי"
 
-#: ../src/dialogs.py:3780
+#: ../src/dialogs.py:3682
 msgid "Expire must be a valid positive integer."
 msgstr "תפוגה מוכרחה להיות ספרה חיובית תקפה."
 
-#: ../src/dialogs.py:3827
+# עם התבנית
+#: ../src/dialogs.py:3729
 msgid "There is an error with the form"
-msgstr "קיימת שגיאה עם הטופס"
+msgstr "זוהי שגיאה בתבנית"
 
-#: ../src/dialogs.py:4047
+#: ../src/dialogs.py:3949
 msgid "There is an error"
-msgstr "קיימת שגיאה"
+msgstr "קיימת שגיאה."
 
-#: ../src/dialogs.py:4115
+#: ../src/dialogs.py:4017
 #, python-format
 msgid "Privacy List %s %s Edit a rule "
 msgstr "עריכת כלל "
 
-#: ../src/dialogs.py:4353
+#: ../src/dialogs.py:4255
 msgid "Add a rule "
 msgstr "הוספת כלל "
 
-#: ../src/dialogs.py:4452
+#: ../src/dialogs.py:4354
 #, python-format
 msgid "Privacy Lists for %s"
 msgstr "רשימות פרטיות עבור %s"
 
-#: ../src/dialogs.py:4454
+#: ../src/dialogs.py:4356
 msgid "Privacy Lists"
 msgstr "רשימות פרטיות"
 
-#: ../src/dialogs.py:4543
+#: ../src/dialogs.py:4445
 msgid "Invalid List Name"
 msgstr "שם רשימה שגוי"
 
-#: ../src/dialogs.py:4544
+#: ../src/dialogs.py:4446
 msgid "You must enter a name to create a privacy list."
 msgstr "עליך להזין שם כדי ליצור רשימת פרטיות."
 
 # Changed to: You have been invited to a groupchat
-#: ../src/dialogs.py:4580
+#: ../src/dialogs.py:4481
 msgid "You are invited to a groupchat"
 msgstr "הוזמנת אל שיחת קבוצה"
 
-#: ../src/dialogs.py:4583
+#: ../src/dialogs.py:4484
 msgid "$Contact has invited you to join a discussion"
-msgstr "$Contact הזמינך להצטרף אל דיון"
+msgstr "$Contact הזמינך להצטרף אל דיון"
 
-#: ../src/dialogs.py:4585
+#: ../src/dialogs.py:4486
 #, python-format
 msgid "$Contact has invited you to group chat %(room_jid)s"
-msgstr "$Contact הזמינך אל שיחת קבוצה %(room_jid)s"
+msgstr "$Contact הזמינך אל שיחת הקבוצה %(room_jid)s"
 
-#: ../src/dialogs.py:4593
+#: ../src/dialogs.py:4494
 #, python-format
 msgid "Comment: %s"
 msgstr "הערה: %s"
 
-#: ../src/dialogs.py:4595
+#: ../src/dialogs.py:4496
 msgid "Do you want to accept the invitation?"
 msgstr "האם ברצונך לקבל את ההזמנה?"
 
-#: ../src/dialogs.py:4612
+#: ../src/dialogs.py:4512
 msgid "Reason (if you decline):"
-msgstr "סיבה (באם רצונך בדחיית ההזמנה):"
+msgstr "סיבה (במידה ותסרב):"
 
-#: ../src/dialogs.py:4664
+#: ../src/dialogs.py:4563
 msgid "Choose Client Cert #PCKS12"
-msgstr "בחירת תעודת לקוח #PCKS12"
+msgstr "בחירת תעודת לקוח #PCKS12"
 
-#: ../src/dialogs.py:4674 ../src/dialogs.py:4716 ../src/dialogs.py:4772
-#: ../src/dialogs.py:4860
+#: ../src/dialogs.py:4573
+#: ../src/dialogs.py:4615
+#: ../src/dialogs.py:4671
+#: ../src/dialogs.py:4759
 msgid "All files"
 msgstr "כל הקבצים"
 
-#: ../src/dialogs.py:4679
+#: ../src/dialogs.py:4578
 msgid "PKCS12 Files"
 msgstr "קבצי PKCS12"
 
-#: ../src/dialogs.py:4706
+#: ../src/dialogs.py:4605
 msgid "Choose Sound"
 msgstr "בחירת צליל"
 
-#: ../src/dialogs.py:4721
+#: ../src/dialogs.py:4620
 msgid "Wav Sounds"
 msgstr "צלילי Wav"
 
-#: ../src/dialogs.py:4759
+#: ../src/dialogs.py:4658
 msgid "Choose Image"
 msgstr "בחירת תמונה"
 
-#: ../src/dialogs.py:4777
+#: ../src/dialogs.py:4676
 msgid "Images"
 msgstr "תמונות"
 
-#: ../src/dialogs.py:4847
+#: ../src/dialogs.py:4746
 msgid "Choose Archive"
 msgstr "בחירת ארכיון"
 
-#: ../src/dialogs.py:4865
+#: ../src/dialogs.py:4764
 msgid "Zip files"
 msgstr "קבצי Zip"
 
 # הופך ל
-#: ../src/dialogs.py:4891
+#: ../src/dialogs.py:4790
 #, python-format
 msgid "When %s becomes:"
 msgstr "כאשר %s נהיה:"
 
-#: ../src/dialogs.py:4893
+#: ../src/dialogs.py:4792
 #, python-format
 msgid "Adding Special Notification for %s"
 msgstr "הוספת התראה מיוחדת עבור %s"
 
-#: ../src/dialogs.py:5113
+#: ../src/dialogs.py:5012
 #, python-format
 msgid ""
 "Your chat session with %(jid)s  is encrypted.\n"
@@ -8366,45 +8424,44 @@ msgstr ""
 "\n"
 "מחרוזת האימות הקצרה (SAS) של סשן זה הינה %(sas)s ."
 
-#: ../src/dialogs.py:5116
+# אומתה הזהות של
+#: ../src/dialogs.py:5015
 msgid "You have already verified this contact's identity."
 msgstr "כבר אימתת את הזהות של איש קשר זה."
 
-#: ../src/dialogs.py:5122 ../src/dialogs.py:5207
+#: ../src/dialogs.py:5021
+#: ../src/dialogs.py:5105
 msgid "Contact's identity verified"
 msgstr "זהות איש קשר מאומתת"
 
 # מאמת
-#: ../src/dialogs.py:5128
+#: ../src/dialogs.py:5027
 msgid "Verify again..."
 msgstr "אמת שוב..."
 
 # הודעותיך
 # GOOD! their identity, not his or her ("he or she") identity [not a BUG:]
-#: ../src/dialogs.py:5133
-msgid ""
-"To be certain that only  the expected person can read your messages or "
-"send you messages, you need to verify their identity by clicking the button "
-"below."
-msgstr ""
-"כדי להסיר ספק כי האישיות הצפויה בלבד  יכולה לקרוא את הודעותייך או "
-"לשלוח לך הודעות, עליך לאמת את זהותם על ידי הקלקה על הלחצן מטה."
+#: ../src/dialogs.py:5032
+msgid "To be certain that only  the expected person can read your messages or send you messages, you need to verify their identity by clicking the button below."
+msgstr "כדי להסיר ספק שהאישיות הצפויה בלבד  יכולה לקרוא את הודעותייך או לשלוח לך הודעות, עליך לאמת את זהותם על ידי הקלקה על הלחצן מטה."
 
-#: ../src/dialogs.py:5136 ../src/dialogs.py:5188 ../src/dialogs.py:5201
+#: ../src/dialogs.py:5035
+#: ../src/dialogs.py:5086
+#: ../src/dialogs.py:5099
 msgid "Contact's identity NOT verified"
 msgstr "זהות איש קשר אינה מאומתת!"
 
-#: ../src/dialogs.py:5141
+#: ../src/dialogs.py:5040
 msgid "Verify..."
-msgstr "אימות..."
+msgstr "אמת..."
 
-#: ../src/dialogs.py:5152
+#: ../src/dialogs.py:5051
 msgid "Have you verified the contact's identity?"
 msgstr "האם אימתת את הזהות של איש הקשר?"
 
 # אישית או טלפונית
 # באופן אישי או בטלפון
-#: ../src/dialogs.py:5153
+#: ../src/dialogs.py:5052
 #, python-format
 msgid ""
 "To prevent talking to an unknown person, you should speak to %(jid)s  "
@@ -8413,69 +8470,60 @@ msgid ""
 "\n"
 "This session's Short Authentication String is %(sas)s ."
 msgstr ""
-"בכדי למנוע שיחה אל אישיות לא מוכרת, עליך לדבר עם %(jid)s  באופן ישיר "
-"(באופן אישי או טלפונית) ולוודא כי הם רואים את אותה מחרוזת אימות קצרה (SAS) "
-"כפי שעינייך רואות.\n"
+"בכדי למנוע שיחה אל אישיות לא מוכרת, עליך לדבר עם %(jid)s  באופן ישיר (באופן אישי או טלפונית) ולוודא שהם רואים את אותה מחרוזת אימות קצרה (SAS) כפי שעינייך רואות.\n"
 "\n"
 "מחרוזת האימות הקצרה של סשן זה הינה %(sas)s ."
 
-#: ../src/dialogs.py:5154
+#: ../src/dialogs.py:5053
 msgid "Did you talk to the remote contact and verify the SAS?"
 msgstr "האם דיברת עם איש הקשר המרוחק ודאגת לוודא הצפנת SAS?"
 
-#: ../src/dialogs.py:5189
+#: ../src/dialogs.py:5087
 #, python-format
 msgid "The contact's key (%s) does not match  the key assigned in Gajim."
-msgstr "המפתח של איש קשר (%s) לא תואם  את המפתח אשר מוקצה בתוך Gajim."
+msgstr "המפתח של איש קשר (%s) לא תואם  את המפתח המוקצה אצל Gajim."
 
-#: ../src/dialogs.py:5195
-msgid ""
-"No OpenPGP key is assigned to this contact. So you cannot encrypt messages."
-msgstr "לא הוקצה מפתח OpenPGP לאיש קשר זה. כך שאין אין באפשרותך להצפין הודעות."
+#: ../src/dialogs.py:5093
+msgid "No GPG key is assigned to this contact. So you cannot encrypt messages."
+msgstr "לא הוקצה מפתח GPG לאיש קשר זה. אי לכך אין באפשרותך להצפין הודעות."
 
-#: ../src/dialogs.py:5202
-msgid ""
-"OpenPGP key is assigned to this contact, but you do not trust his key"
-"b>, so message cannot  be encrypted. Use your OpenPGP client to trust "
-"this key."
-msgstr ""
-"מפתח OpenPGP מוקצה לאיש קשר זה, אך אינך סומך על מפתח זה , אי לכך "
-"הודעות לא יכולות  להיות מוצפנות. יש לעשות שימוש בלקוח OpenPGP בכדי "
-"לבטוח במפתח זה."
+#: ../src/dialogs.py:5100
+msgid "GPG key is assigned to this contact, but you do not trust his key , so message cannot  be encrypted. Use your GPG client to trust this key."
+msgstr "מפתח GPG אכן הוקצה לאיש קשר זה, אך אינך סומך על מפתח זה , אי לכך הודעות לא יכולות  להיות מוצפנות. יש לעשות שימוש בלקוח GPG בכדי לבטוח במפתח זה."
 
-#: ../src/dialogs.py:5208
-msgid ""
-"OpenPGP Key is assigned to this contact, and you trust his key, so messages "
-"will be encrypted."
-msgstr ""
-"מפתח OpenPGP מוקצה לאיש קשר זה, והינך סומך על המפתח שלו, אי לכך הודעות "
-"יוצפנו."
+#: ../src/dialogs.py:5106
+msgid "GPG Key is assigned to this contact, and you trust his key, so messages will be encrypted."
+msgstr "מפתח GPG מוקצה לאיש קשר זה, והינך סומך על המפתח שלו, אי לכך הודעות יוצפנו."
 
-#: ../src/dialogs.py:5273
+#: ../src/dialogs.py:5171
 msgid "an audio and video"
 msgstr "שמע וגם וידאו"
 
-#: ../src/dialogs.py:5275
+#: ../src/dialogs.py:5173
 msgid "an audio"
 msgstr "שמע"
 
-#: ../src/dialogs.py:5277
+#: ../src/dialogs.py:5175
 msgid "a video"
 msgstr "וידאו"
 
-#: ../src/dialogs.py:5281
+# What is being put into %(type)s?
+# Maybe an RTL issue would show up
+# Needs to be tested
+# See: Right-to-left mark
+#: ../src/dialogs.py:5179
 #, python-format
-msgid ""
-"%(contact)s wants to start %(type)s session with you. Do you want to answer "
-"the call?"
-msgstr "%(contact)s רוצה להתחיל עמך בסשן %(type)s. האם יש ברצונך לענות לקריאה?"
+msgid "%(contact)s wants to start %(type)s session with you. Do you want to answer the call?"
+msgstr "%(contact)s רוצה להתחיל עמך בסשן %(type)s. האם ברצונך לענות לקריאה?"
 
-#: ../src/dialogs.py:5372 ../src/dialogs.py:5376
+#: ../src/dialogs.py:5248
 #, python-format
 msgid "Certificate for account %s"
 msgstr "תעודה עבור חשבון %s"
 
-#: ../src/dialogs.py:5376
+# Unit
+# Fix LTR issues with Latin characters (Done!)
+#: ../src/dialogs.py:5248
 #, python-format
 msgid ""
 "Issued to: \n"
@@ -8497,157 +8545,168 @@ msgid ""
 "SHA1 Fingerprint: %(sha1)s"
 msgstr ""
 "הונפקה עבור: \n"
-"שם כללי (CN): %(scn)s\n"
-"ארגון (O): %(sorg)s\n"
-"יחידת איגוד (OU): %(sou)s\n"
+"שם כללי (CN): %(scn)s\n"
+"ארגון (O): %(sorg)s\n"
+"יחידת איגוד (OU): %(sou)s\n"
 "מספר סידורי: %(sn)s\n"
 "\n"
 "הונפקה על ידי: \n"
-"שם כללי (CN): %(icn)s\n"
-"ארגון (O): %(iorg)s\n"
-"יחידת איגוד (OU): %(iou)s\n"
+"שם כללי (CN): %(icn)s\n"
+"ארגון (O): %(iorg)s\n"
+"יחידת איגוד (OU): %(iou)s\n"
 "\n"
 "תקפות: \n"
 "הונפקה בתאריך: %(io)s\n"
 "פוקעת בתאריך: %(eo)s\n"
 "\n"
 "טביעת אצבע \n"
-"טביעת אצבע SHA1: %(sha1)s"
+"טביעת אצבע SHA1: %(sha1)s"
 
-#: ../src/dialogs.py:5411 ../src/dialogs.py:5428
+#: ../src/dialogs.py:5283
+#: ../src/dialogs.py:5300
 msgid "View cert..."
 msgstr "הצג תעודה"
 
-#: ../src/dialogs.py:5436
-msgid "Certificate"
-msgstr "תעודה"
-
-#: ../src/disco.py:120
+#: ../src/disco.py:119
 msgid "Others"
 msgstr "אחרים"
 
 #. conference is a category for listing mostly groupchats in service discovery
-#: ../src/disco.py:124
+#: ../src/disco.py:123
 msgid "Conference"
 msgstr "ועידה"
 
 # BUG: Dot
-#: ../src/disco.py:517
+#: ../src/disco.py:516
 msgid "Without a connection, you can not browse available services"
-msgstr "ללא חיבור, אין באפשרותך לעיין בשירותים זמינים"
+msgstr "ללא חיבור, אין ביכולתך לעיין בשירותים זמינים"
 
-#: ../src/disco.py:603
+#: ../src/disco.py:602
 #, python-format
 msgid "Service Discovery using account %s"
 msgstr "מציאת שירות באמצעות חשבון %s"
 
-#: ../src/disco.py:605
+#: ../src/disco.py:604
 msgid "Service Discovery"
 msgstr "מציאת שירות"
 
 # BUG: general title without "the"
-#: ../src/disco.py:761
+# לא ניתן
+#: ../src/disco.py:760
 msgid "The service could not be found"
 msgstr "השירות לא היה יכול להימצא"
 
-#: ../src/disco.py:762
-msgid ""
-"There is no service at the address you entered, or it is not responding. "
-"Check the address and try again."
-msgstr "אין שירות בכתובת אשר הזנת, או שזה אינו מגיב. בדוק את הכתובת ונסה שוב."
+# it = service
+# הוא = השירות
+#: ../src/disco.py:761
+msgid "There is no service at the address you entered, or it is not responding. Check the address and try again."
+msgstr "לא קיים שירות בכתובת שהזנת, או שהוא לא מגיב. נא לבדוק את הכתובת ולנסות שוב."
 
-#: ../src/disco.py:768 ../src/disco.py:1109
+#: ../src/disco.py:765
+#: ../src/disco.py:1101
 msgid "The service is not browsable"
-msgstr "השירות אינו בר עיון"
+msgstr "השירות אינו בר־עיון"
 
-#: ../src/disco.py:769
+# סוג שירות זה
+#: ../src/disco.py:766
 msgid "This type of service does not contain any items to browse."
-msgstr "טיפוס זה של שירות לא מכיל פריטים לעיון."
+msgstr "טיפוס זה של שירות לא מכיל פריטים שניתן לעיין בהם."
 
-#: ../src/disco.py:810 ../src/disco.py:820
+#: ../src/disco.py:806
+#: ../src/disco.py:816
 msgid "Invalid Server Name"
 msgstr "שם שרת שגוי"
 
-#: ../src/disco.py:873
+# מעיין כעת
+# Browsing services at
+#: ../src/disco.py:869
 #, python-format
 msgid "Browsing %(address)s using account %(account)s"
 msgstr "עיון בשירותים בכתובת %(address)s באמצעות חשבון %(account)s"
 
-#: ../src/disco.py:917
+#: ../src/disco.py:913
 msgid "_Browse"
 msgstr "_עיון"
 
-#: ../src/disco.py:1110
+#: ../src/disco.py:1102
 msgid "This service does not contain any items to browse."
-msgstr "שירות זה לא מכיל פריטים לעיון."
+msgstr "שירות זה לא מכיל פריטים שניתן לעיין בהם."
 
-#: ../src/disco.py:1378
+#: ../src/disco.py:1342
 msgid "_Execute Command"
 msgstr "הרץ _פקודה"
 
-#: ../src/disco.py:1388 ../src/disco.py:1560
+#: ../src/disco.py:1352
+#: ../src/disco.py:1521
 msgid "Re_gister"
-msgstr "ה_רשמה"
+msgstr "ה_רשם"
 
+# Plural form maybe?
 # Scanned/Identified/Detected/Discovered/Found %(current)d out of %(total)d..
 # אותרו, זוהו, נמצאו
-#: ../src/disco.py:1601
+#: ../src/disco.py:1562
 #, python-format
 msgid "Scanning %(current)d / %(total)d.."
 msgstr "נסרקו %(current)d שירותים מתוך %(total)d.."
 
 #. Users column
-#: ../src/disco.py:1797
+#: ../src/disco.py:1753
 msgid "Users"
 msgstr "משתמשים"
 
 #. Description column
-#: ../src/disco.py:1805
+#: ../src/disco.py:1761
 msgid "Description"
 msgstr "תיאור"
 
 #. Id column
-#: ../src/disco.py:1813
+#: ../src/disco.py:1769
 msgid "Id"
 msgstr "כתובת"
 
-#: ../src/disco.py:1877 ../src/gui_interface.py:2574
+# כבר הוגדרה סימנייה
+#: ../src/disco.py:1834
+#: ../src/gui_interface.py:2574
 msgid "Bookmark already set"
 msgstr "סימנייה כבר הוגדרה"
 
-#: ../src/disco.py:1878 ../src/gui_interface.py:2575
+#: ../src/disco.py:1835
+#: ../src/gui_interface.py:2575
 #, python-format
 msgid "Group Chat \"%s\" is already in your bookmarks."
 msgstr "שיחת קבוצה \"%s\" כבר קיימת בסימניותייך."
 
-#: ../src/disco.py:1887 ../src/gui_interface.py:2589
+#: ../src/disco.py:1844
+#: ../src/gui_interface.py:2589
 msgid "Bookmark has been added successfully"
 msgstr "סימנייה הוספה בהצלחה"
 
-#: ../src/disco.py:1888 ../src/gui_interface.py:2590
+# יש באפשרותך
+# דרך
+#: ../src/disco.py:1845
+#: ../src/gui_interface.py:2590
 msgid "You can manage your bookmarks via Actions menu in your roster."
-msgstr ""
-"באפשרותך לנהל את הסימניות שלך דרך תפריט 'פעולות' אשר מצוי בתוך הרשימה שלך."
+msgstr "ביכולתך לנהל את סימניותייך באמצעות התפריט 'פעולות' שברשימתך."
 
-#: ../src/disco.py:2098
+#: ../src/disco.py:2054
 msgid "Subscribed"
 msgstr "רשום"
 
-#: ../src/disco.py:2106
+#: ../src/disco.py:2062
 msgid "Node"
 msgstr "נקודת ממסר"
 
-#: ../src/disco.py:2173
+#: ../src/disco.py:2129
 msgid "New post"
 msgstr "פוסט חדש"
 
-#: ../src/disco.py:2179
+#: ../src/disco.py:2135
 msgid "_Subscribe"
-msgstr "הי_רשם"
+msgstr "ה_רשמה"
 
-#: ../src/disco.py:2185
+#: ../src/disco.py:2141
 msgid "_Unsubscribe"
-msgstr "_בטל הרשמה"
+msgstr "_ביטול הרשמה"
 
 #: ../src/features_window.py:50
 msgid "SSL certificate validation"
@@ -8668,9 +8727,7 @@ msgstr ""
 
 #: ../src/features_window.py:55
 msgid "Serverless chatting with autodetected clients in a local network."
-msgstr ""
-"עריכת שיחות ברשת התקשורת המקומית, ללא שרת כלל, באמצעות איתור אוטומטי של "
-"לקוחות אחרים אשר מחוברים אל אותה הרשת."
+msgstr "עריכת שיחות ברשת התקשורת המקומית, ללא שרת כלל, באמצעות איתור אוטומטי של לקוחות אחרים שמחוברים אל אותה הרשת."
 
 #: ../src/features_window.py:56
 msgid "Requires python-avahi."
@@ -8703,14 +8760,14 @@ msgstr "יש צורך בהתקנת python-dbus."
 msgid "Feature not available under Windows."
 msgstr "תכונה זו לא זמינה תחת Windows."
 
-# OpenPGP הצפנת הודעות
+# OpenGPG הצפנת הודעות
 #: ../src/features_window.py:62
-msgid "OpenPGP message encryption"
-msgstr "הצפנת הודעות באמצעות OpenPGP"
+msgid "OpenGPG message encryption"
+msgstr "הצפנת הודעות באמצעות OpenGPG"
 
 #: ../src/features_window.py:63
-msgid "Encrypting chat messages with OpenPGP keys."
-msgstr "הצפנת הודעות שיחה באמצעות מפתחות OpenPGP."
+msgid "Encrypting chat messages with gpg keys."
+msgstr "הצפנת הודעות שיחה באמצעות מפתחות gpg."
 
 #: ../src/features_window.py:64
 msgid "Requires gpg and python-gnupg (http://code.google.com/p/python-gnupg/)."
@@ -8747,7 +8804,7 @@ msgstr "יש צורך בהתקנת python-gnome2."
 
 #: ../src/features_window.py:74
 msgid "Password encryption"
-msgstr "הצפנת מילת מעבר"
+msgstr "הצפנת מילת־מעבר"
 
 #: ../src/features_window.py:75
 msgid "Passwords can be stored securely and not just in plaintext."
@@ -8759,7 +8816,7 @@ msgstr "יש צורך בהתקנת gnome-keyring וגם python-gnome2-desktop, 
 
 #: ../src/features_window.py:78
 msgid "SRV"
-msgstr ""
+msgstr "SRV"
 
 #: ../src/features_window.py:79
 msgid "Ability to connect to servers which are using SRV records."
@@ -8771,7 +8828,7 @@ msgstr "יש צורך בהתקנת dnsutils."
 
 #: ../src/features_window.py:81
 msgid "Requires nslookup to use SRV records."
-msgstr "יש צורך בהתקנת nslookup כדי לעשות שימוש ברשומות SRV."
+msgstr "יש צורך בהתקנת nslookup גדי לעשות שימוש ברשומות SRV."
 
 #: ../src/features_window.py:82
 msgid "Spell Checker"
@@ -8790,14 +8847,17 @@ msgstr "יש צורך בהתקנת libgtkspell."
 msgid "Requires libgtkspell and libenchant."
 msgstr "יש צורך בהתקנת libgtkspell וגם libenchant."
 
+# התראות
 #: ../src/features_window.py:86
 msgid "Notification"
 msgstr "התראה"
 
+# הודעות התראה
 #: ../src/features_window.py:87
 msgid "Passive popups notifying for new events."
 msgstr "התראות מוקפצות פסיביות המיידעות עבור אירועים חדשים."
 
+# בחיבור עם
 #: ../src/features_window.py:88
 msgid ""
 "Requires python-notify or instead python-dbus in conjunction with "
@@ -8813,9 +8873,7 @@ msgstr "מצב אוטומטי"
 # על מנת להגדיר
 #: ../src/features_window.py:91
 msgid "Ability to measure idle time, in order to set auto status."
-msgstr ""
-"יכולת למדוד את הזמן אשר בו המערכת מצויה בחוסר פעילות, בכדי לקבוע מצב חיבור "
-"אוטומטי."
+msgstr "יכולת למדוד את הזמן שבו המערכת מצויה בחוסר פעילות, בכדי לקבוע מצב־חיבור אוטומטי."
 
 #: ../src/features_window.py:92
 msgid "Requires libxss library."
@@ -8825,6 +8883,7 @@ msgstr "יש צורך בהתקנת ספריית libxss."
 msgid "Requires python2.5."
 msgstr "יש צורך בהתקנת python2.5."
 
+# מקצה לקצה
 #: ../src/features_window.py:94
 msgid "End to End message encryption"
 msgstr "הצפנת הודעות מן קצה אל קצה"
@@ -8864,14 +8923,12 @@ msgstr "יש צורך בהתקנת python-farstream וגם gstreamer-plugins-bad
 
 #: ../src/features_window.py:106
 msgid "UPnP-IGD"
-msgstr ""
+msgstr "UPnP-IGD"
 
-# העברת שערים
+# העברת פתחות/שערים
 #: ../src/features_window.py:107
 msgid "Ability to request your router to forward port for file transfer."
-msgstr ""
-"יכולת לבקש מן נתב הרשת שלך (ראוטר) לעשות שימוש בתיעול שערים (Port "
-"forwarding) עבור העברת קובץ."
+msgstr "יכולת לבקש מן נתב הרשת (ראוטר) לעשות שימוש בתיעול שערים (Port forwarding) עבור העברת קובץ."
 
 #: ../src/features_window.py:108
 msgid "Requires python-gupnp-igd."
@@ -8879,12 +8936,12 @@ msgstr "יש צורך בהתקנת python-gupnp-igd."
 
 #: ../src/features_window.py:110
 msgid "UPower"
-msgstr ""
+msgstr "UPower"
 
 # השעיית התליית
 #: ../src/features_window.py:111
 msgid "Ability to disconnect properly just before suspending the machine."
-msgstr "יכולת להתנתק באופן מוסדר טרם השהיית מחשבך."
+msgstr "יכולת להתנתק באופן מוסדר לפני השהיית מחשבך."
 
 #: ../src/features_window.py:112
 msgid "Requires upower and python-dbus."
@@ -8924,8 +8981,9 @@ msgstr "גודל: %s"
 # את/ה
 #. You is a reply of who sent a file
 #. You is a reply of who received a file
-#: ../src/filetransfers_window.py:196 ../src/filetransfers_window.py:206
-#: ../src/history_manager.py:551
+#: ../src/filetransfers_window.py:196
+#: ../src/filetransfers_window.py:206
+#: ../src/history_manager.py:541
 msgid "You"
 msgstr "עצמך"
 
@@ -8934,15 +8992,17 @@ msgstr "עצמך"
 msgid "Sender: %s"
 msgstr "ממען: %s"
 
-#: ../src/filetransfers_window.py:198 ../src/filetransfers_window.py:734
-#: ../src/tooltips.py:758
+#: ../src/filetransfers_window.py:198
+#: ../src/filetransfers_window.py:734
+#: ../src/tooltips.py:756
 msgid "Recipient: "
 msgstr "נמען: "
 
+# במדור
 #: ../src/filetransfers_window.py:209
 #, python-format
 msgid "Saved in: %s"
-msgstr "נשמר בתוך: %s"
+msgstr "נשמר במדור: %s"
 
 #: ../src/filetransfers_window.py:244
 #, python-format
@@ -8962,42 +9022,44 @@ msgid ""
 "received.\n"
 "Do you want to reload it?"
 msgstr ""
-"הקובץ %(file)s התקבל בהצלחה, אך נראה כי הוא התקבל באופן לא תקין.\n"
+"הקובץ %(file)s התקבל בהצלחה, אך נראה שהוא התקבל באופן לא תקין.\n"
 "האם ברצונך להטעינו מחדש?"
 
 #: ../src/filetransfers_window.py:313
 msgid "Choose File to Send..."
 msgstr "בחירת קובץ לשליחה..."
 
-#: ../src/filetransfers_window.py:329 ../src/tooltips.py:793
+#: ../src/filetransfers_window.py:329
+#: ../src/tooltips.py:791
 msgid "Description: "
 msgstr "תיאור: "
 
 #: ../src/filetransfers_window.py:342
 msgid "Gajim cannot access this file"
-msgstr "Gajim לא מסוגל להשיג גישה לקובץ זה"
+msgstr "Gajim לא יכול להשיג גישה לקובץ זה"
 
 #: ../src/filetransfers_window.py:343
 msgid "This file is being used by another process."
 msgstr "קובץ זה מצוי בשימוש בידי תהליך אחר."
 
-# להחליף
-#: ../src/filetransfers_window.py:389 ../src/gtkgui_helpers.py:851
+#: ../src/filetransfers_window.py:389
+#: ../src/gtkgui_helpers.py:850
 #, python-format
 msgid "Cannot overwrite existing file \"%s\""
-msgstr "אין אפשרות לכתוב על קובץ קיים \"%s\""
+msgstr "לא ניתן לכתוב על הקובץ הקיים \"%s\""
 
-#: ../src/filetransfers_window.py:390 ../src/gtkgui_helpers.py:852
-msgid ""
-"A file with this name already exists and you do not have permission to "
-"overwrite it."
+#: ../src/filetransfers_window.py:390
+#: ../src/gtkgui_helpers.py:851
+msgid "A file with this name already exists and you do not have permission to overwrite it."
 msgstr "קובץ בשם זה כבר קיים ואין ולא עומדת לרשותך הרשאה לכתוב עליו."
 
-#: ../src/filetransfers_window.py:407 ../src/gtkgui_helpers.py:856
+#: ../src/filetransfers_window.py:407
+#: ../src/gtkgui_helpers.py:855
 msgid "This file already exists"
 msgstr "קובץ זה כבר קיים"
 
-#: ../src/filetransfers_window.py:407 ../src/gtkgui_helpers.py:856
+#: ../src/filetransfers_window.py:407
+#: ../src/gtkgui_helpers.py:855
 msgid "What do you want to do?"
 msgstr "מה ברצונך לעשות?"
 
@@ -9005,16 +9067,17 @@ msgstr "מה ברצונך לעשות?"
 #. read-only bit is used to mark special folder under
 #. windows, not to mark that a folder is read-only.
 #. See ticket #3587
-#: ../src/filetransfers_window.py:418 ../src/gtkgui_helpers.py:863
+#: ../src/filetransfers_window.py:418
+#: ../src/gtkgui_helpers.py:862
 #, python-format
 msgid "Directory \"%s\" is not writable"
 msgstr "המדור \"%s\" אינו נתון לכתיבה"
 
-#: ../src/filetransfers_window.py:419 ../src/gtkgui_helpers.py:864
+#: ../src/filetransfers_window.py:419
+#: ../src/gtkgui_helpers.py:863
 msgid "You do not have permission to create files in this directory."
 msgstr "אין לך הרשאות ליצור קבצים במדור זה."
 
-# בתור
 #: ../src/filetransfers_window.py:430
 msgid "Save File as..."
 msgstr "שמירת קובץ בשם..."
@@ -9027,7 +9090,7 @@ msgstr "קובץ: %s"
 #: ../src/filetransfers_window.py:456
 #, python-format
 msgid "Type: %s"
-msgstr "טיפוס: %s"
+msgstr "סוג: %s"
 
 #: ../src/filetransfers_window.py:458
 #, python-format
@@ -9037,7 +9100,7 @@ msgstr "תיאור: %s"
 #: ../src/filetransfers_window.py:459
 #, python-format
 msgid "%s wants to send you a file:"
-msgstr "%s רוצה לשלוח אליך קובץ:"
+msgstr "%s רוצה לשלוח אליך קובץ:"
 
 #: ../src/filetransfers_window.py:500
 msgid "Checking file..."
@@ -9053,7 +9116,7 @@ msgstr "שגיאת קובץ"
 #: ../src/filetransfers_window.py:551
 #, python-format
 msgid "%(hours)02.d:%(minutes)02.d:%(seconds)02.d"
-msgstr ""
+msgstr "%(hours)02.d:%(minutes)02.d:%(seconds)02.d"
 
 #. This should make the string Kb/s,
 #. where 'Kb' part is taken from %s.
@@ -9072,16 +9135,18 @@ msgid "File: "
 msgstr "קובץ: "
 
 # לא קיימת אפשרות
-# אין אפשרות
+# לא ניתן
 #: ../src/filetransfers_window.py:704
 msgid "It is not possible to send empty files"
 msgstr "אין זה אפשרי לשלוח קבצים ריקים"
 
-#: ../src/filetransfers_window.py:730 ../src/tooltips.py:748
+#: ../src/filetransfers_window.py:730
+#: ../src/tooltips.py:746
 msgid "Name: "
 msgstr "שם: "
 
-#: ../src/filetransfers_window.py:732 ../src/tooltips.py:752
+#: ../src/filetransfers_window.py:732
+#: ../src/tooltips.py:750
 msgid "Sender: "
 msgstr "ממען: "
 
@@ -9089,137 +9154,209 @@ msgstr "ממען: "
 msgid "Pause"
 msgstr "הפסקה"
 
-#: ../src/gajim-remote.py:78
+#: ../src/gajim.py:192
+#, fuzzy
+msgid "Gajim needs X server to run. Quiting..."
+msgstr "cli"
+
+#: ../src/gajim.py:194
+#, fuzzy, python-format
+msgid "importing PyGTK failed: %s"
+msgstr "cli"
+
+#: ../src/gajim.py:235
+#, fuzzy
+msgid "Gajim needs PyGTK 2.22 or above"
+msgstr "cli"
+
+#: ../src/gajim.py:236
+#, fuzzy
+msgid "Gajim needs PyGTK 2.22 or above to run. Quiting..."
+msgstr "cli"
+
+#: ../src/gajim.py:238
+#, fuzzy
+msgid "Gajim needs GTK 2.22 or above"
+msgstr "cli"
+
+#: ../src/gajim.py:239
+#, fuzzy
+msgid "Gajim needs GTK 2.22 or above to run. Quiting..."
+msgstr "cli"
+
+#: ../src/gajim.py:248
+#, fuzzy
+msgid "Gajim needs pywin32 to run"
+msgstr "cli"
+
+# component
+#: ../src/gajim.py:249
+#, python-format
+msgid "Please make sure that Pywin32 is installed on your system. You can get it at %s"
+msgstr "נא לוודא שהרכיב Pywin32 מותקן במערכתך. ביכולתך להשיגו אצל %s"
+
+#. set the icon to all newly opened wind
+#: ../src/gajim.py:365
+msgid "Gajim is already running"
+msgstr "Gajim כבר מורץ כעת"
+
+#: ../src/gajim.py:366
+msgid ""
+"Another instance of Gajim seems to be running\n"
+"Run anyway?"
+msgstr ""
+"נראה שתהליך אחר של Gajim מורץ כעת\n"
+"האם ברצונך להריץ את התוכנית בכל זאת?"
+
+#: ../src/gajim-remote.py:77
 #, fuzzy
 msgid "Shows a help on specific command"
 msgstr "cli"
 
+# פקודה
 #. User gets help for the command, specified by this parameter
-#: ../src/gajim-remote.py:81
+#: ../src/gajim-remote.py:80
 #, fuzzy
 msgid "command"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:82
+#: ../src/gajim-remote.py:81
 #, fuzzy
 msgid "show help on command"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:86
+# הצגה או הסתרה של חלון הרשימה
+#: ../src/gajim-remote.py:85
 #, fuzzy
 msgid "Shows or hides the roster window"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:90
+#: ../src/gajim-remote.py:89
 #, fuzzy
 msgid "Pops up a window with the next pending event"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:94
+#: ../src/gajim-remote.py:93
 #, fuzzy
 msgid ""
 "Prints a list of all contacts in the roster. Each contact appears on a "
 "separate line"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:97 ../src/gajim-remote.py:112
-#: ../src/gajim-remote.py:122 ../src/gajim-remote.py:132
-#: ../src/gajim-remote.py:148 ../src/gajim-remote.py:162
-#: ../src/gajim-remote.py:171 ../src/gajim-remote.py:192
-#: ../src/gajim-remote.py:222 ../src/gajim-remote.py:231
-#: ../src/gajim-remote.py:238 ../src/gajim-remote.py:245
-#: ../src/gajim-remote.py:256 ../src/gajim-remote.py:281
-#: ../src/gajim-remote.py:292
-msgid "?CLI:account"
-msgstr ""
+# חשבון
+#: ../src/gajim-remote.py:96
+#: ../src/gajim-remote.py:111
+#: ../src/gajim-remote.py:121
+#: ../src/gajim-remote.py:131
+#: ../src/gajim-remote.py:147
+#: ../src/gajim-remote.py:161
+#: ../src/gajim-remote.py:170
+#: ../src/gajim-remote.py:191
+#: ../src/gajim-remote.py:221
+#: ../src/gajim-remote.py:230
+#: ../src/gajim-remote.py:237
+#: ../src/gajim-remote.py:244
+#: ../src/gajim-remote.py:255
+#: ../src/gajim-remote.py:280
+#: ../src/gajim-remote.py:291
+#, fuzzy
+msgid "account"
+msgstr "cli"
 
-#: ../src/gajim-remote.py:97
+#: ../src/gajim-remote.py:96
 #, fuzzy
 msgid "show only contacts of the given account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:103
+# הדפסת רשימה של חשבונות רשומים
+#: ../src/gajim-remote.py:102
 #, fuzzy
 msgid "Prints a list of registered accounts"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:107
+#: ../src/gajim-remote.py:106
 #, fuzzy
 msgid "Changes the status of account or accounts"
 msgstr "cli"
 
+# מצב־חיבור
 #. offline, online, chat, away, xa, dnd, invisible should not be translated
-#: ../src/gajim-remote.py:110
-msgid "?CLI:status"
-msgstr ""
+#: ../src/gajim-remote.py:109
+#, fuzzy
+msgid "status"
+msgstr "cli"
 
-#: ../src/gajim-remote.py:110
+#: ../src/gajim-remote.py:109
 #, fuzzy
 msgid ""
 "one of: offline, online, chat, away, xa, dnd, invisible. If not set, use "
 "account's previous status"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:111 ../src/gajim-remote.py:134
-#: ../src/gajim-remote.py:145 ../src/gajim-remote.py:159
-#: ../src/gajim-remote.py:170 ../src/gajim-remote.py:283
-msgid "?CLI:message"
-msgstr ""
-
-#: ../src/gajim-remote.py:111
+# הודעת מצב
+#: ../src/gajim-remote.py:110
 #, fuzzy
 msgid "status message"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:112
+#: ../src/gajim-remote.py:111
 #, fuzzy
 msgid ""
 "change status of account \"account\". If not specified, try to change status "
 "of all accounts that have \"sync with global status\" option set"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:118
+#: ../src/gajim-remote.py:117
 #, fuzzy
 msgid "Changes the priority of account or accounts"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:120
-msgid "?CLI:priority"
-msgstr ""
+# עדיפות
+#: ../src/gajim-remote.py:119
+#, fuzzy
+msgid "priority"
+msgstr "cli"
 
-#: ../src/gajim-remote.py:120
+# עדיפות שברצונך לתת/להעניק עבור החשבון
+#: ../src/gajim-remote.py:119
 #, fuzzy
 msgid "priority you want to give to the account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:122
+#: ../src/gajim-remote.py:121
 #, fuzzy
 msgid ""
 "change the priority of the given account. If not specified, change status of "
 "all accounts that have \"sync with global status\" option set"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:128
+#: ../src/gajim-remote.py:127
 #, fuzzy
 msgid "Shows the chat dialog so that you can send messages to a contact"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:130
+# JID של איש-הקשר שברצונך לשוחח עם
+# Changed to: JID of the contact with whom you want to chat (with)
+# JID של איש־הקשר עמו ברצונך לשוחח
+#: ../src/gajim-remote.py:129
 #, fuzzy
 msgid "JID of the contact that you want to chat with"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:132 ../src/gajim-remote.py:222
+#: ../src/gajim-remote.py:131
+#: ../src/gajim-remote.py:221
 #, fuzzy
 msgid "if specified, contact is taken from the contact list of this account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:135
+#: ../src/gajim-remote.py:134
 #, fuzzy
 msgid "message content. The account must be specified or \"\""
 msgstr "cli"
 
-#: ../src/gajim-remote.py:140
+# הינם בגדר רשות
+# שליחת הודעת שיחה חדשה אל איש קשר ברשימה. הן מפתח OpenPGP והן החשבון בגדר רשות. אם ברצונך להגדיר רק 'חשבון', ללא 'מפתח OpenPGP', יש להגדיר 'מפתח OpenPGP' אל ''.
+#: ../src/gajim-remote.py:139
 #, fuzzy
 msgid ""
 "Sends new chat message to a contact in the roster. Both OpenPGP key and "
@@ -9227,34 +9364,47 @@ msgid ""
 "key', just set 'OpenPGP key' to ''."
 msgstr "cli"
 
-#: ../src/gajim-remote.py:144 ../src/gajim-remote.py:157
+# JID של איש הקשר שיקבל את ההודעה
+#: ../src/gajim-remote.py:143
+#: ../src/gajim-remote.py:156
 #, fuzzy
 msgid "JID of the contact that will receive the message"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:145 ../src/gajim-remote.py:159
-#: ../src/gajim-remote.py:170
+# תכולת
+# תוכן ההודעה
+#: ../src/gajim-remote.py:144
+#: ../src/gajim-remote.py:158
+#: ../src/gajim-remote.py:169
 #, fuzzy
 msgid "message contents"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:146 ../src/gajim-remote.py:160
+# מפתח pgp
+#: ../src/gajim-remote.py:145
+#: ../src/gajim-remote.py:159
 #, fuzzy
 msgid "pgp key"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:146 ../src/gajim-remote.py:160
+# public key
+# במידה והוגדר, ההודעה תוצפן באמצעות מפתח ציבורי זה
+#: ../src/gajim-remote.py:145
+#: ../src/gajim-remote.py:159
 #, fuzzy
 msgid "if specified, the message will be encrypted using this public key"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:148 ../src/gajim-remote.py:162
-#: ../src/gajim-remote.py:171
+# במידה והוגדר, ההודעה תשלח באמצעות חשבון זה
+#: ../src/gajim-remote.py:147
+#: ../src/gajim-remote.py:161
+#: ../src/gajim-remote.py:170
 #, fuzzy
 msgid "if specified, the message will be sent using this account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:153
+# שליחת הודעת שיחה בודדת חדשה אל איש קשר ברשימה. הן מפתח OpenPGP והן החשבון בגדר רשות. אם ברצונך להגדיר רק 'חשבון', ללא 'מפתח OpenPGP', יש להגדיר 'מפתח OpenPGP' אל ''.
+#: ../src/gajim-remote.py:152
 #, fuzzy
 msgid ""
 "Sends new single message to a contact in the roster. Both OpenPGP key and "
@@ -9262,422 +9412,371 @@ msgid ""
 "key', just set 'OpenPGP key' to ''."
 msgstr "cli"
 
-#: ../src/gajim-remote.py:158
+# נושא
+#: ../src/gajim-remote.py:157
 #, fuzzy
 msgid "subject"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:158
+# נושא הודעה
+#: ../src/gajim-remote.py:157
 #, fuzzy
 msgid "message subject"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:167
+# שליחת הודעה חדשה אל שיחת קבוצה שאליה הצטרפת.
+#: ../src/gajim-remote.py:166
 #, fuzzy
 msgid "Sends new message to a groupchat you've joined."
 msgstr "cli"
 
-#: ../src/gajim-remote.py:169
+# JID של החדר שיקבל את ההודעה
+#: ../src/gajim-remote.py:168
 #, fuzzy
 msgid "JID of the room that will receive the message"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:176
+# קבלת מידע מפורט אודות איש קשר
+#: ../src/gajim-remote.py:175
 #, fuzzy
 msgid "Gets detailed info on a contact"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:178 ../src/gajim-remote.py:191
-#: ../src/gajim-remote.py:221 ../src/gajim-remote.py:230
+# JID של איש הקשר
+#: ../src/gajim-remote.py:177
+#: ../src/gajim-remote.py:190
+#: ../src/gajim-remote.py:220
+#: ../src/gajim-remote.py:229
 #, fuzzy
 msgid "JID of the contact"
 msgstr "cli"
 
 # BUG: on an account
-#: ../src/gajim-remote.py:182
+# קבלת מידע מפורט על חשבון
+#: ../src/gajim-remote.py:181
 #, fuzzy
 msgid "Gets detailed info on a account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:184
+# שם החשבון
+#: ../src/gajim-remote.py:183
 #, fuzzy
 msgid "Name of the account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:188
+# שליחת קובץ אל איש קשר
+#: ../src/gajim-remote.py:187
 #, fuzzy
 msgid "Sends file to a contact"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:190
+# קובץ
+#: ../src/gajim-remote.py:189
 #, fuzzy
 msgid "file"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:190
+# נתיב הקובץ
+#: ../src/gajim-remote.py:189
 #, fuzzy
 msgid "File path"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:192
+# what is specified? (fe/male)
+# במידה וצוין, הקובץ ישלח באמצעות חשבון זה
+#: ../src/gajim-remote.py:191
 #, fuzzy
 msgid "if specified, file will be sent using this account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:197
+# רישום כל ההעדפות וערכיהן
+# הצגת רשימה של כל
+# רשימת כל ההעדפות וערכיהן
+#: ../src/gajim-remote.py:196
 #, fuzzy
 msgid "Lists all preferences and their values"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:201
+# What is "to"?
+# הגדרת הערך של 'מפתח' to 'ערך'.
+#: ../src/gajim-remote.py:200
 #, fuzzy
 msgid "Sets value of 'key' to 'value'."
 msgstr "cli"
 
-#: ../src/gajim-remote.py:203
+# מפתח=ערך
+#: ../src/gajim-remote.py:202
 #, fuzzy
 msgid "key=value"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:203
+# 'מפתח' זה השם של ההעדפה, 'ערך' זה הערך שהוגדר עבור ההעדפה
+#: ../src/gajim-remote.py:202
 #, fuzzy
 msgid "'key' is the name of the preference, 'value' is the value to set it to"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:208
+# מחיקת פריט העדפה
+#: ../src/gajim-remote.py:207
 #, fuzzy
 msgid "Deletes a preference item"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:210
+# מפתח
+#: ../src/gajim-remote.py:209
 #, fuzzy
 msgid "key"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:210
+# שם ההעדפה למחיקה
+#: ../src/gajim-remote.py:209
 #, fuzzy
 msgid "name of the preference to be deleted"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:214
+#: ../src/gajim-remote.py:213
 #, fuzzy
 msgid "Writes the current state of Gajim preferences to the .config file"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:219
+# הסרת איש קשר מן הרשימה
+#: ../src/gajim-remote.py:218
 #, fuzzy
 msgid "Removes contact from roster"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:228
+# הוספת איש קשר אל הרשימה
+#: ../src/gajim-remote.py:227
 #, fuzzy
 msgid "Adds contact to roster"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:231
+# הוספת איש קשר חדש לחשבון זה
+#: ../src/gajim-remote.py:230
 #, fuzzy
 msgid "Adds new contact to this account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:236
+#: ../src/gajim-remote.py:235
 #, fuzzy
 msgid "Returns current status (the global one unless account is specified)"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:243
+#: ../src/gajim-remote.py:242
 #, fuzzy
 msgid ""
 "Returns current status message (the global one unless account is specified)"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:250
+#: ../src/gajim-remote.py:249
 #, fuzzy
 msgid "Returns number of unread messages"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:254
+# פתיחת דו־שיח 'התחלת שיחה'
+#: ../src/gajim-remote.py:253
 #, fuzzy
 msgid "Opens 'Start Chat' dialog"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:256
+# התחלת שיחה באמצעות חשבון זה
+#: ../src/gajim-remote.py:255
 #, fuzzy
 msgid "Starts chat, using this account"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:260
+# שליחת XML מותאם
+#: ../src/gajim-remote.py:259
 #, fuzzy
 msgid "Sends custom XML"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:262
+# XML לשליחה
+#: ../src/gajim-remote.py:261
 #, fuzzy
 msgid "XML to send"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:263
+# xml what?
+# חשבון עבורו ישלח xml; במידה ולא צוין, xml ישלח אל כל החשבונות
+#: ../src/gajim-remote.py:262
 #, fuzzy
 msgid ""
 "Account in which the xml will be sent; if not specified, xml will be sent to "
 "all accounts"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:269
+# שינוי האווטאר
+#: ../src/gajim-remote.py:268
 #, fuzzy
 msgid "Change the avatar"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:271
+# תמונה לשימוש
+#: ../src/gajim-remote.py:270
 #, fuzzy
 msgid "Picture to use"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:272
+# חשבון עבורו יוגדר האווטאר; במידה ולא צוין, האווטאר יוגדר עבור כל החשבונות
+#: ../src/gajim-remote.py:271
 #, fuzzy
 msgid ""
 "Account in which the avatar will be set; if not specified, the avatar will "
 "be set for all accounts"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:278
+#: ../src/gajim-remote.py:277
 #, fuzzy
 msgid "Handle a xmpp:/ uri"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:280
-msgid "?CLI:uri"
-msgstr ""
-
-#: ../src/gajim-remote.py:280
+#: ../src/gajim-remote.py:279
 #, fuzzy
 msgid "URI to handle"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:281
+#: ../src/gajim-remote.py:280
 #, fuzzy
 msgid "Account in which you want to handle it"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:283
+# תוכן הודעה
+#: ../src/gajim-remote.py:282
 #, fuzzy
 msgid "Message content"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:287
+# הצטרפות אל חדר MUC
+#: ../src/gajim-remote.py:286
 #, fuzzy
 msgid "Join a MUC room"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:289
-msgid "?CLI:room"
-msgstr ""
-
-#: ../src/gajim-remote.py:289
+#: ../src/gajim-remote.py:288
 #, fuzzy
 msgid "Room JID"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:290
-msgid "?CLI:nick"
-msgstr ""
+# כינוי
+#: ../src/gajim-remote.py:289
+#, fuzzy
+msgid "nick"
+msgstr "cli"
 
-#: ../src/gajim-remote.py:290
+# כינוי לשימוש
+#: ../src/gajim-remote.py:289
 #, fuzzy
 msgid "Nickname to use"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:291
-msgid "?CLI:password"
-msgstr ""
+# מילת־מעבר
+#: ../src/gajim-remote.py:290
+#, fuzzy
+msgid "password"
+msgstr "cli"
 
-#: ../src/gajim-remote.py:291
+# מילת־מעבר בכדי להיכנס אל החדר
+#: ../src/gajim-remote.py:290
 #, fuzzy
 msgid "Password to enter the room"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:292
+# החשבון שברצונך להתחבר ממנו אל החדר
+#: ../src/gajim-remote.py:291
 #, fuzzy
 msgid "Account from which you want to enter the room"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:297
+# נא לבדוק אם Gajim מורץ כעת
+#: ../src/gajim-remote.py:296
 #, fuzzy
 msgid "Check if Gajim is running"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:301
+# הצגה או הסתרה של חלון ipython
+#: ../src/gajim-remote.py:300
 #, fuzzy
 msgid "Shows or hides the ipython window"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:328
+#: ../src/gajim-remote.py:327
 #, fuzzy
 msgid "Missing argument \"contact_jid\""
 msgstr "cli"
 
-#: ../src/gajim-remote.py:350
+#: ../src/gajim-remote.py:349
 #, fuzzy, python-format
 msgid ""
 "'%s' is not in your roster.\n"
 "Please specify account for sending the message."
 msgstr "cli"
 
-#: ../src/gajim-remote.py:353
+# אין לך אף חשבון פעיל
+#: ../src/gajim-remote.py:352
 #, fuzzy
 msgid "You have no active account"
 msgstr "cli"
 
-# נראה כי Gajim לא מורץ. משכך אין באפשרותך לעשות שימוש ביישום gajim-remote.
-#: ../src/gajim-remote.py:406
+# נראה שהיישום Gajim לא מורץ. משכך אין ביכולתך לעשות שימוש ביישום gajim-remote.
+#: ../src/gajim-remote.py:405
 #, fuzzy
 msgid "It seems Gajim is not running. So you can't use gajim-remote."
 msgstr "cli"
 
-#: ../src/gajim-remote.py:433
+#: ../src/gajim-remote.py:432
 #, fuzzy, python-format
 msgid ""
 "Usage: %(basename)s %(command)s %(arguments)s \n"
 "\t %(help)s"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:437
+#: ../src/gajim-remote.py:436
 #, fuzzy
 msgid "Arguments:"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:441
+# %s לא נמצא/ת
+#: ../src/gajim-remote.py:440
 #, fuzzy, python-format
 msgid "%s not found"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:447
-#, fuzzy, python-format
+# gajim-remote
+# CLI?
+#: ../src/gajim-remote.py:446
+#, python-format
 msgid ""
-"Usage:\n"
-"  %s command [arguments]\n"
-"\n"
+"Usage: %s command [arguments]\n"
 "Command is one of:\n"
-msgstr "cli"
+msgstr ""
 
-#: ../src/gajim-remote.py:517
+#: ../src/gajim-remote.py:515
 #, fuzzy, python-format
 msgid ""
 "Too many arguments. \n"
 "Type \"%(basename)s help %(command)s\" for more info"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:522
+#: ../src/gajim-remote.py:520
 #, fuzzy, python-format
 msgid ""
 "Argument \"%(arg)s\" is not specified. \n"
 "Type \"%(basename)s help %(command)s\" for more info"
 msgstr "cli"
 
-# לא ניתן uri
-#: ../src/gajim-remote.py:541
+# לא ניתן URI
+#: ../src/gajim-remote.py:539
 #, fuzzy
 msgid "No uri given"
 msgstr "cli"
 
-#: ../src/gajim-remote.py:543
+# URI שגוי
+#: ../src/gajim-remote.py:541
 #, fuzzy
 msgid "Wrong uri"
 msgstr "cli"
 
-#: ../src/gajim.py:135 ../src/history_manager.py:73
-#, fuzzy
-msgid "Usage:"
-msgstr "cli"
-
-#: ../src/gajim.py:137 ../src/history_manager.py:75
-#, fuzzy
-msgid "Options:"
-msgstr "cli"
-
-#: ../src/gajim.py:139 ../src/history_manager.py:77
-#, fuzzy
-msgid "Show this help message and exit"
-msgstr "cli"
-
-#: ../src/gajim.py:141
-#, fuzzy
-msgid "Show only critical errors"
-msgstr "cli"
-
-#: ../src/gajim.py:143
-#, fuzzy
-msgid "Print xml stanzas and other debug information"
-msgstr "cli"
-
-#: ../src/gajim.py:145
-#, fuzzy
-msgid "Use defined profile in configuration directory"
-msgstr "cli"
-
-#: ../src/gajim.py:147
-msgid "Set configuration directory"
-msgstr "cli"
-
-#: ../src/gajim.py:149
-#, fuzzy
-msgid "Configure logging system"
-msgstr "cli"
-
-#: ../src/gajim.py:211
-#, fuzzy
-msgid "Gajim needs X server to run. Quiting..."
-msgstr "cli"
-
-#: ../src/gajim.py:213
-#, fuzzy, python-format
-msgid "importing PyGTK failed: %s"
-msgstr "cli"
-
-#: ../src/gajim.py:256
-#, fuzzy
-msgid "Gajim needs PyGTK 2.22 or above"
-msgstr "cli"
-
-#: ../src/gajim.py:257
-#, fuzzy
-msgid "Gajim needs PyGTK 2.22 or above to run. Quiting..."
-msgstr "cli"
-
-#: ../src/gajim.py:259
-#, fuzzy
-msgid "Gajim needs GTK 2.22 or above"
-msgstr "cli"
-
-#: ../src/gajim.py:260
-#, fuzzy
-msgid "Gajim needs GTK 2.22 or above to run. Quiting..."
-msgstr "cli"
-
-#: ../src/gajim.py:269
-#, fuzzy
-msgid "Gajim needs pywin32 to run"
-msgstr "cli"
-
-# component
-#: ../src/gajim.py:270
-#, python-format
-msgid ""
-"Please make sure that Pywin32 is installed on your system. You can get it at "
-"%s"
-msgstr "אנא ודא כי הרכיב Pywin32 מותקן במערכתך. באפשרותך להשיגו אצל %s"
-
-#: ../src/gajim.py:410
-msgid "Gajim is already running"
-msgstr "Gajim כבר מורץ כעת"
-
-#: ../src/gajim.py:411
-msgid ""
-"Another instance of Gajim seems to be running\n"
-"Run anyway?"
-msgstr ""
-"נראה כי תהליך אחר של Gajim מורץ כעת\n"
-"האם ברצונך להריץ בכל זאת?"
-
 # ערכאת נושא
 #: ../src/gajim_themes_window.py:59
 msgid "Theme"
@@ -9685,8 +9784,9 @@ msgstr "מוטיב"
 
 #: ../src/gajim_themes_window.py:97
 msgid "You cannot make changes to the default theme"
-msgstr "אין באפשרותך לערוך שינויים למוטיב המשתמט"
+msgstr "אין ביכולתך לערוך שינויים למוטיב המשתמט"
 
+# clean was omitted
 #: ../src/gajim_themes_window.py:98
 msgid "Please create a clean new theme with your desired name."
 msgstr "אנא צור מוטיב חדש עם השם הרצוי עליך."
@@ -9698,237 +9798,245 @@ msgstr "שם מוטיב"
 
 #: ../src/gajim_themes_window.py:186
 msgid "You cannot delete your current theme"
-msgstr "אין ביכולתך למחוק את המוטיב הנוכחי שלך"
+msgstr "אין באפשרותך למחוק את המוטיב הנוכחי שלך"
 
+# another what?
+# ראשית, נא
 #: ../src/gajim_themes_window.py:187
-msgid "Please first choose another theme as your current theme."
-msgstr "אנא בחר תחילה במוטיב אחר בתור המוטיב הנוכחי שלך."
+#, fuzzy
+msgid "Please first choose another for your current theme."
+msgstr "נא לבחור קודם ב? אחר עבור המוטיב הנוכחי שלך."
 
-# בכינוי
-#: ../src/groupchat_control.py:181 ../src/groupchat_control.py:1645
+#: ../src/groupchat_control.py:179
+#: ../src/groupchat_control.py:1569
 #, python-format
 msgid "%(nick)s is now known as %(new_nick)s"
-msgstr "%(nick)s ידוע/ה כעת בתור %(new_nick)s"
+msgstr "%(nick)s ידוע/ה כעת בכינוי %(new_nick)s"
 
-#: ../src/groupchat_control.py:236
+#: ../src/groupchat_control.py:234
 msgid "Sending private message failed"
 msgstr "שליחת הודעה פרטית נכשלה"
 
 # אינך עוד בשיחת קבוצה או שהמשתמש עזב
 #. in second %s code replaces with nickname
-#: ../src/groupchat_control.py:238
+#: ../src/groupchat_control.py:236
 #, python-format
 msgid "You are no longer in group chat \"%(room)s\" or \"%(nick)s\" has left."
-msgstr "אינך נוכח בשיחת קבוצה \"%(room)s\" או שהמשתמש \"%(nick)s\" עזב."
+msgstr "אינך נוכח בקבוצת השיחה \"%(room)s\" או שהמשתמש \"%(nick)s\" עזב."
 
 # להכניס/להזין
-#: ../src/groupchat_control.py:584
+#: ../src/groupchat_control.py:565
 msgid "Insert Nickname"
 msgstr "שבץ שם כינוי"
 
-#: ../src/groupchat_control.py:767
+#: ../src/groupchat_control.py:748
 msgid "Conversation with "
 msgstr "שיחה עם "
 
 # Needs to be tested
-#: ../src/groupchat_control.py:769
+#: ../src/groupchat_control.py:750
 msgid "Continued conversation"
 msgstr "שיחה נמשכת"
 
-# %(jid)s הגדיר/ה את הנושא אל %(subject)s
-#: ../src/groupchat_control.py:1268
+# %(jid)s הגדיר/ה את הנושא אל %(subject)s
+#: ../src/groupchat_control.py:1227
 #, python-format
 msgid "%(nick)s has set the subject to %(subject)s"
-msgstr "הנושא הוגדר על ידי %(nick)s אל %(subject)s"
+msgstr "הנושא הוגדר על ידי %(nick)s אל %(subject)s"
 
+# Translated to: Any occupant to All of the occupants
+# כל נוכח מורשה/יורשה
 #. Can be a presence (see chg_contact_status in groupchat_control.py)
-#: ../src/groupchat_control.py:1286 ../src/groupchat_control.py:1587
+#: ../src/groupchat_control.py:1245
+#: ../src/groupchat_control.py:1511
 msgid "Any occupant is allowed to see your full JID"
-msgstr "כל נוכח רשאי לראות את כתובתך (JID) המלאה"
+msgstr "כל הנוכחים מורשים לראות את כתובתך (JID) המלאה"
 
-#: ../src/groupchat_control.py:1289
-msgid "Room now shows unavailable members"
-msgstr "כרגע החדר מציג חברים אשר אינם זמינים"
+# BUG: members?
+#: ../src/groupchat_control.py:1248
+msgid "Room now shows unavailable member"
+msgstr "כרגע החדר מציג חברים שאינם זמינים"
 
-#: ../src/groupchat_control.py:1291
-msgid "Room now does not show unavailable members"
-msgstr "כרגע החדר לא מציג חברים אשר אינם זמינים"
+# BUG: Room? (capital letter)
+#: ../src/groupchat_control.py:1250
+msgid "room now does not show unavailable members"
+msgstr "כרגע החדר לא מציג חברים שאינם זמינים"
 
 # שייך, מיוחס
-#: ../src/groupchat_control.py:1293
+#: ../src/groupchat_control.py:1252
 msgid "A non-privacy-related room configuration change has occurred"
-msgstr "שינוי אשר אינו קשור בפרטיות אירע בתצורת חדר"
+msgstr "ארע שינוי בתצורת חדר שאינו קשור בפרטיות"
 
 #. Can be a presence (see chg_contact_status in groupchat_control.py)
-#: ../src/groupchat_control.py:1297
+#: ../src/groupchat_control.py:1256
 msgid "Room logging is now enabled"
 msgstr "רישום פעילות חדר מאופשר כעת"
 
-#: ../src/groupchat_control.py:1299
+#: ../src/groupchat_control.py:1258
 msgid "Room logging is now disabled"
 msgstr "רישום פעילות חדר מנוטרל כעת"
 
 # This room is not anonymous
 # חדר לא אנונימי
-#: ../src/groupchat_control.py:1301
+#: ../src/groupchat_control.py:1260
 msgid "Room is now non-anonymous"
 msgstr "החדר אינו אנונימי"
 
-#: ../src/groupchat_control.py:1304
+#: ../src/groupchat_control.py:1263
 msgid "Room is now semi-anonymous"
 msgstr "החדר הינו אנונימי למחצה"
 
-#: ../src/groupchat_control.py:1307
+#: ../src/groupchat_control.py:1266
 msgid "Room is now fully-anonymous"
 msgstr "החדר הינו אנונימי לחלוטין"
 
-# in or to?
-#: ../src/groupchat_control.py:1580 ../src/groupchat_control.py:2241
-#: ../src/gui_interface.py:605 ../src/roster_window.py:3323
-#, python-format
-msgid "%(jid)s has been invited in this room"
-msgstr "%(jid)s הוזמן/ה אל חדר זה"
-
 #. Can be a message (see handle_event_gc_config_change in
 #. gajim.py)
-#: ../src/groupchat_control.py:1592
+#: ../src/groupchat_control.py:1516
 msgid "Room logging is enabled"
 msgstr "רישום של פעילות חדר הינו מאופשר"
 
-#: ../src/groupchat_control.py:1594
+#: ../src/groupchat_control.py:1518
 msgid "A new room has been created"
 msgstr "חדר חדש נוצר"
 
 # BUG: room nick
 # הקצה
-#: ../src/groupchat_control.py:1597
+#: ../src/groupchat_control.py:1521
 msgid "The server has assigned or modified your roomnick"
 msgstr "השרת הסב או שינה את כינוי החדר שלך"
 
 # סולק
 #. do not print 'kicked by None'
-#: ../src/groupchat_control.py:1603
+#: ../src/groupchat_control.py:1527
 #, python-format
 msgid "%(nick)s has been kicked: %(reason)s"
-msgstr "%(nick)s נבעט/ה: %(reason)s"
+msgstr "%(nick)s נבעט/ה: %(reason)s"
 
 # סולק
-#: ../src/groupchat_control.py:1606
+#: ../src/groupchat_control.py:1530
 #, python-format
 msgid "%(nick)s has been kicked by %(who)s: %(reason)s"
-msgstr "%(nick)s נבעט/ה על ידי %(who)s: %(reason)s"
+msgstr "%(nick)s נבעט/ה על ידי %(who)s: %(reason)s"
 
 #. do not print 'banned by None'
-#: ../src/groupchat_control.py:1615
+#: ../src/groupchat_control.py:1539
 #, python-format
 msgid "%(nick)s has been banned: %(reason)s"
-msgstr "%(nick)s נאסר/ה: %(reason)s"
+msgstr "%(nick)s נחסם/ה: %(reason)s"
 
-#: ../src/groupchat_control.py:1618
+#: ../src/groupchat_control.py:1542
 #, python-format
 msgid "%(nick)s has been banned by %(who)s: %(reason)s"
-msgstr "%(nick)s נאסר/ה על ידי %(who)s: %(reason)s"
+msgstr "%(nick)s נחסם/ה על ידי %(who)s: %(reason)s"
 
-# את/ה ידוע/ה כעת בתור
-#: ../src/groupchat_control.py:1629 ../src/groupchat_control.py:1745
+#: ../src/groupchat_control.py:1553
+#: ../src/groupchat_control.py:1657
 #, python-format
 msgid "You are now known as %s"
-msgstr "הכינוי החדש שלך הוא %s"
+msgstr "כינוייך החדש הוא %s"
 
-# מן
-#: ../src/groupchat_control.py:1699 ../src/groupchat_control.py:1704
-#: ../src/groupchat_control.py:1710
+#: ../src/groupchat_control.py:1611
+#: ../src/groupchat_control.py:1616
+#: ../src/groupchat_control.py:1622
 #, python-format
 msgid "%(nick)s has been removed from the room (%(reason)s)"
-msgstr "%(nick)s הוסר/ה מתוך החדר (%(reason)s)"
+msgstr "%(nick)s הוסר/ה מן החדר (%(reason)s)"
 
-#: ../src/groupchat_control.py:1701
+#: ../src/groupchat_control.py:1613
 msgid "affiliation changed"
-msgstr "שיוך שונה"
+msgstr "השיוך שונה"
 
-#: ../src/groupchat_control.py:1706
+#: ../src/groupchat_control.py:1618
 msgid "room configuration changed to members-only"
 msgstr "תצורת חדר שונתה אל חברים-בלבד"
 
 # הדממת, דימום
-#: ../src/groupchat_control.py:1712
+#: ../src/groupchat_control.py:1624
 msgid "system shutdown"
 msgstr "סגירת מערכת"
 
 # שיוכה/ו של
 # נקבע
-#: ../src/groupchat_control.py:1795
+#: ../src/groupchat_control.py:1707
 #, python-format
 msgid "** Affiliation of %(nick)s has been set to %(affiliation)s by %(actor)s"
 msgstr "** השיוך של %(nick)s הוגדר אל %(affiliation)s על ידי %(actor)s"
 
-#: ../src/groupchat_control.py:1799
+#: ../src/groupchat_control.py:1711
 #, python-format
 msgid "** Affiliation of %(nick)s has been set to %(affiliation)s"
 msgstr "** השיוך של %(nick)s הוגדר אל %(affiliation)s"
 
 # תפקידה/ו של
-#: ../src/groupchat_control.py:1814
+#: ../src/groupchat_control.py:1726
 #, python-format
 msgid "** Role of %(nick)s has been set to %(role)s by %(actor)s"
 msgstr "** התפקיד של %(nick)s הוגדר אל %(role)s על ידי %(actor)s"
 
-#: ../src/groupchat_control.py:1818
+#: ../src/groupchat_control.py:1730
 #, python-format
 msgid "** Role of %(nick)s has been set to %(role)s"
 msgstr "** התפקיד של %(nick)s הוגדר אל %(role)s"
 
-#: ../src/groupchat_control.py:1848
+#: ../src/groupchat_control.py:1760
 #, python-format
 msgid "%s has left"
-msgstr "%s עזב/ה"
+msgstr "%s עזב/ה את החדר"
 
-# הצטרף
-#: ../src/groupchat_control.py:1853
+# הצטרף אל שיחת הקבוצה
+#: ../src/groupchat_control.py:1765
 #, python-format
 msgid "%s has joined the group chat"
-msgstr "%s נכנס/ה אל שיחת הקבוצה"
+msgstr "%s נכנס/ה אל החדר"
 
-#: ../src/groupchat_control.py:2124
+#: ../src/groupchat_control.py:2020
 #, python-format
 msgid "Are you sure you want to leave group chat \"%s\"?"
-msgstr "האם אתה בטוח כי ברצונך לעזוב את שיחת הקבוצה \"%s\"?"
+msgstr "האם אכן ברצונך לעזוב את שיחת הקבוצה \"%s\"?"
 
 # אם תבחר לסגור
-#: ../src/groupchat_control.py:2126
-msgid ""
-"If you close this window, you will be disconnected from this group chat."
-msgstr "בסוגרך את חלון זה, אתה תנותק מתוך שיחת קבוצה זו."
+#: ../src/groupchat_control.py:2022
+msgid "If you close this window, you will be disconnected from this group chat."
+msgstr "בסוגרך את חלון זה, אתה תנותק מן שיחת קבוצה זו."
 
-#: ../src/groupchat_control.py:2165
+#: ../src/groupchat_control.py:2026
+#: ../src/gui_interface.py:704
+#: ../src/gui_interface.py:1411
+#: ../src/gui_interface.py:1451
+#: ../src/gui_interface.py:1492
+#: ../src/message_window.py:222
+#: ../src/roster_window.py:3064
+#: ../src/roster_window.py:3799
+#: ../src/roster_window.py:4612
+msgid "_Do not ask me again"
+msgstr "_נא לא לשאול אותי שוב"
+
+#: ../src/groupchat_control.py:2060
 msgid "Changing Subject"
 msgstr "שינוי נושא"
 
-#: ../src/groupchat_control.py:2166
+#: ../src/groupchat_control.py:2061
 msgid "Please specify the new subject:"
-msgstr "אנא ציין את הנושא החדש:"
+msgstr "נא לציין את הנושא החדש:"
 
-#: ../src/groupchat_control.py:2173
+#: ../src/groupchat_control.py:2068
 msgid "Changing Nickname"
 msgstr "שינוי שם כינוי"
 
-#: ../src/groupchat_control.py:2174
+#: ../src/groupchat_control.py:2069
 msgid "Please specify the new nickname you want to use:"
-msgstr "אנא ציין את שם הכינוי החדש אשר ברצונך לעשות בו שימוש:"
-
-#: ../src/groupchat_control.py:2199
-msgid "The group chat Jabber ID has not allowed characters."
-msgstr "מזהה Jabber של שיחת קבוצה מכילה תווים אסורים."
+msgstr "נא לציין את שם הכינוי החדש שברצונך לעשות בו שימוש:"
 
 # Destroying is "at this moment".  It should be Destroy without ing
 #. Ask for a reason
-#: ../src/groupchat_control.py:2205
+#: ../src/groupchat_control.py:2100
 #, python-format
 msgid "Destroying %s"
 msgstr "החרבת %s"
 
 # בחרת להחריב באופן מוחלט את חדר זה
-#: ../src/groupchat_control.py:2206
+#: ../src/groupchat_control.py:2101
 msgid ""
 "You are going to definitively destroy this room.\n"
 "You may specify a reason below:"
@@ -9937,25 +10045,34 @@ msgstr ""
 "באפשרותך לציין סיבה למטה:"
 
 # מקום מפגש חלופי
-#: ../src/groupchat_control.py:2208
+#: ../src/groupchat_control.py:2103
 msgid "You may also enter an alternate venue:"
 msgstr "באפשרותך להזין זירה אלטרנטיבית:"
 
+# in or to?
+#: ../src/groupchat_control.py:2135
+#: ../src/gui_interface.py:604
+#: ../src/roster_window.py:3390
+#, python-format
+msgid "%(jid)s has been invited in this room"
+msgstr "%(jid)s הוזמנה בחדר זה"
+
 #. ask for reason
-#: ../src/groupchat_control.py:2408
+#: ../src/groupchat_control.py:2300
 #, python-format
 msgid "Kicking %s"
 msgstr "בעיטת %s"
 
-#: ../src/groupchat_control.py:2409 ../src/groupchat_control.py:2743
+#: ../src/groupchat_control.py:2301
+#: ../src/groupchat_control.py:2633
 msgid "You may specify a reason below:"
 msgstr "באפשרותך לציין סיבה למטה:"
 
 #. ask for reason
-#: ../src/groupchat_control.py:2742
+#: ../src/groupchat_control.py:2632
 #, python-format
 msgid "Banning %s"
-msgstr "אסירת %s"
+msgstr "חסימת %s"
 
 #: ../src/gtkexcepthook.py:46
 msgid "A programming error has been detected"
@@ -9964,272 +10081,272 @@ msgstr "אותרה שגיאת תכנות"
 # אבל
 # ככל הנראה שגיאה זו אינה חמורה, אך בכל זאת יש צורך לדווחה למפתחים.
 #: ../src/gtkexcepthook.py:47
-msgid ""
-"It probably is not fatal, but should be reported to the developers "
-"nonetheless."
-msgstr ""
-"שגיאה זו אינה חמורה ככל הנראה, אך בכל זאת קיים הכרח לדווח עליה למפתחים."
+msgid "It probably is not fatal, but should be reported to the developers nonetheless."
+msgstr "שגיאה זו אינה חמורה ככל הנראה, אך בכל זאת קיים הצורך לדווחה אל המפתחים."
 
 #: ../src/gtkexcepthook.py:54
 msgid "_Report Bug"
-msgstr "_דווחו על בעיה"
+msgstr "_דיווח על בעיה"
 
 #: ../src/gtkexcepthook.py:76
 msgid "Details"
 msgstr "פרטים"
 
-#: ../src/gtkgui_helpers.py:349
+#: ../src/gtkgui_helpers.py:348
 msgid "Error reading file:"
 msgstr "שגיאה בקריאת הקובץ:"
 
-#: ../src/gtkgui_helpers.py:352
+#: ../src/gtkgui_helpers.py:351
 msgid "Error parsing file:"
 msgstr "שגיאה בניתוח הקובץ:"
 
 #. do not traceback (could be a permission problem)
 #. we talk about a file here
-#: ../src/gtkgui_helpers.py:393
+#: ../src/gtkgui_helpers.py:392
 #, python-format
 msgid "Could not write to %s. Session Management support will not work"
-msgstr "לא היתה אפשרות לכתוב אל %s. תמיכה עבור ניהול סשן לא תעבוד"
+msgstr "לא ניתן לכתוב אל %s. תמיכה עבור ניהול סשן לא תעבוד"
 
-# Gajim אינו הלקוח המשתמט עבור Jabber
+# הלקוח המשתמט
 #. xmpp: is currently handled by another program, so ask the user
-#: ../src/gtkgui_helpers.py:767
+#: ../src/gtkgui_helpers.py:766
 msgid "Gajim is not the default Jabber client"
-msgstr "Gajim אינו לקוח Jabber ברירת המחדל"
+msgstr "Gajim אינו לקוח ברירת המחדל עבור Jabber"
 
-#: ../src/gtkgui_helpers.py:768
+#: ../src/gtkgui_helpers.py:767
 msgid "Would you like to make Gajim the default Jabber client?"
 msgstr "האם ברצונך להפוך את Gajim ללקוח Jabber ברירת המחדל?"
 
-#: ../src/gtkgui_helpers.py:769
+#: ../src/gtkgui_helpers.py:768
 msgid "Always check to see if Gajim is the default Jabber client on startup"
 msgstr "בדוק תמיד אם Gajim הינו לקוח Jabber ברירת המחדל בעת הפעלה"
 
-#: ../src/gtkgui_helpers.py:836
+#: ../src/gtkgui_helpers.py:835
 msgid "Extension not supported"
 msgstr "הרחבה לא נתמכת"
 
-#: ../src/gtkgui_helpers.py:837
+# Needs to be tested
+# שמירה בשם אחר
+#: ../src/gtkgui_helpers.py:836
 #, python-format
 msgid "Image cannot be saved in %(type)s format. Save as %(new_filename)s?"
-msgstr "אין אפשרות לשמור תמונה בפורמט %(type)s. לשמור בתור %(new_filename)s?"
+msgstr "לא ניתן לשמור תמונה בתסדיר %(type)s. שמירה בשם %(new_filename)s?"
 
-# בתור
-#: ../src/gtkgui_helpers.py:873
+#: ../src/gtkgui_helpers.py:872
 msgid "Save Image as..."
 msgstr "שמירת תמונה בשם..."
 
 #. we are banned
 #. group chat does not exist
-#: ../src/gui_interface.py:134 ../src/gui_interface.py:298
-#: ../src/gui_interface.py:307 ../src/gui_interface.py:313
-#: ../src/gui_interface.py:316 ../src/gui_interface.py:319
-#: ../src/gui_interface.py:324
+#: ../src/gui_interface.py:133
+#: ../src/gui_interface.py:297
+#: ../src/gui_interface.py:306
+#: ../src/gui_interface.py:312
+#: ../src/gui_interface.py:315
+#: ../src/gui_interface.py:318
+#: ../src/gui_interface.py:323
 msgid "Unable to join group chat"
-msgstr "אין אפשרות להצטרף אל שיחת קבוצה"
+msgstr "לא ניתן להצטרף אל שיחת קבוצה"
 
-#: ../src/gui_interface.py:135
+#: ../src/gui_interface.py:134
 #, python-format
 msgid ""
 "Your desired nickname in group chat %s is in use or registered by another "
 "occupant.\n"
 "Please specify another nickname below:"
 msgstr ""
-"שם הכינוי אשר מבוקש על ידך בתוך שיחות הקבוצה %s מצוי בשימוש או רשום בידי "
-"נוכח אחר.\n"
-"אנא ציין שם כינוי אחר למטה:"
+"שם כינוייך המבוקש בשיחת הקבוצה %s הינו בשימוש או רשום בידי נוכח אחר.\n"
+"נא לציין שם כינוי אחר למטה:"
 
-#: ../src/gui_interface.py:138
+#: ../src/gui_interface.py:137
 msgid "Always use this nickname when there is a conflict"
 msgstr "השתמש תמיד בשם כינוי זה כאשר קיימת התנגשות"
 
-#: ../src/gui_interface.py:155
+#: ../src/gui_interface.py:154
 msgid "Do you accept this request?"
 msgstr "האם לקבל את בקשה זו?"
 
-#: ../src/gui_interface.py:157
+#: ../src/gui_interface.py:156
 #, python-format
 msgid "Do you accept this request on account %s?"
-msgstr "האם לקבל את בקשה זו בחשבון %s?"
+msgstr "האם לקבל את בקשה זו בחשבון %s?"
 
 # Needs to be tested
 # זהות
 # אישור
-#: ../src/gui_interface.py:160
+#: ../src/gui_interface.py:159
 #, python-format
 msgid "HTTP (%(method)s) Authorization for %(url)s (id: %(id)s)"
-msgstr "הרשאת HTTP (%(method)s) עבור %(url)s (מזהה: %(id)s)"
+msgstr "הרשאת HTTP (%(method)s) עבור %(url)s (id: %(id)s)"
 
-#: ../src/gui_interface.py:203 ../src/notify.py:282
+#: ../src/gui_interface.py:202
+#: ../src/notify.py:282
 msgid "Connection Failed"
-msgstr "התחברות נכשלה"
+msgstr "ההתחברות נכשלה"
 
-#: ../src/gui_interface.py:287
+# keep מילת־מעבר
+# על מנת
+# להקלידה
+# להזין אותה
+#: ../src/gui_interface.py:286
 #, python-format
 msgid "A Password is required to join the room %s. Please type it."
-msgstr "נדרשת מילת מעבר כדי להצטרף אל החדר %s. אנא הקלד אותה."
+msgstr "נדרשת מילת־מעבר כדי להצטרף אל החדר %s. נא להקלידה."
 
-# מוצתה
-#: ../src/gui_interface.py:299
+# כמות משתמש מרבית עבור %s  הושגה
+#: ../src/gui_interface.py:298
 #, python-format
 msgid "Maximum number of users for %s  has been reached"
-msgstr "כמות משתמשים מרבית עבור %s  הושגה"
+msgstr "הושגה כמות משתמש מרבית עבור %s "
 
 # בכתובת
-#: ../src/gui_interface.py:308
+#: ../src/gui_interface.py:307
 #, python-format
 msgid "You are banned from group chat %s ."
-msgstr "נאסרת מתוך שיחת קבוצה בכתובת %s ."
+msgstr "נחסמת מן שיחת קבוצה אצל %s ."
 
-#: ../src/gui_interface.py:314
+#: ../src/gui_interface.py:313
 #, python-format
 msgid "Group chat %s  does not exist."
 msgstr "שיחת קבוצה %s  לא קיימת."
 
-#: ../src/gui_interface.py:317
+#: ../src/gui_interface.py:316
 msgid "Group chat creation is restricted."
 msgstr "יצירת שיחות קבוצה הינה מוגבלת."
 
-#: ../src/gui_interface.py:320
+#: ../src/gui_interface.py:319
 #, python-format
 msgid "Your registered nickname must be used in group chat %s ."
-msgstr "שם הכינוי הרשום שלך מוכרח להיות בשימוש בתוך שיחת קבוצה %s ."
+msgstr "שם כינוייך הרשום מוכרח להיות בשימוש בשיחת קבוצה %s ."
 
-#: ../src/gui_interface.py:325
+#: ../src/gui_interface.py:324
 #, python-format
 msgid "You are not in the members list in groupchat %s."
-msgstr "אינך ברשימת החברים בתוך שיחות קבוצה %s."
+msgstr "אינך ברשימת החברים בשיחת קבוצה %s."
 
-#: ../src/gui_interface.py:418 ../src/gui_interface.py:422
+#: ../src/gui_interface.py:417
+#: ../src/gui_interface.py:421
 #, python-format
 msgid "Error %(code)s: %(msg)s"
-msgstr "שגיאה %(code)s: %(msg)s"
+msgstr "שגיאה %(code)s: %(msg)s"
 
-#: ../src/gui_interface.py:474 ../src/notify.py:284
+#: ../src/gui_interface.py:473
+#: ../src/notify.py:284
 msgid "Subscription request"
 msgstr "בקשת הרשמה"
 
-#: ../src/gui_interface.py:499
+#: ../src/gui_interface.py:498
 msgid "Authorization accepted"
 msgstr "התקבלה הרשאה"
 
-#: ../src/gui_interface.py:500
+#: ../src/gui_interface.py:499
 #, python-format
 msgid "The contact \"%s\" has authorized you to see his or her status."
 msgstr "הוענקה לך הרשאה מאת \"%s\" לראות את מצב החיבור שלו או שלה."
 
-#: ../src/gui_interface.py:508
+#: ../src/gui_interface.py:507
 #, python-format
 msgid "Contact \"%s\" removed subscription from you"
 msgstr "איש קשר \"%s\" הסיר הרשמה ממך"
 
-#: ../src/gui_interface.py:509
+#: ../src/gui_interface.py:508
 msgid ""
 "You will always see him or her as offline.\n"
 "Do you want to remove him or her from your contact list?"
 msgstr ""
-"איש קשר זה תמיד ייראה עבורך במצב לא מקוון.\n"
-"האם ברצונך להסיר אותו או אותה מתוך רשימת הקשר שלך?"
+"איש קשר זה תמיד יראה עבורך במצב לא מקוון.\n"
+"האם ברצונך להסירו או להסירה מן רשימת הקשר שלך?"
 
-#: ../src/gui_interface.py:530 ../src/notify.py:286
+#: ../src/gui_interface.py:529
+#: ../src/notify.py:286
 msgid "Unsubscribed"
 msgstr "לא רשום"
 
-#: ../src/gui_interface.py:541
+#: ../src/gui_interface.py:540
 #, python-format
 msgid "Contact with \"%s\" cannot be established"
 msgstr "יצירת קשר עם \"%s\" לא היתה ניתנת לביסוס"
 
-#: ../src/gui_interface.py:625
+# דחתה את ההזמנה
+#: ../src/gui_interface.py:624
 #, python-format
 msgid "%(jid)s declined the invitation: %(reason)s"
-msgstr "%(jid)s סרב/ה את ההזמנה: %(reason)s"
+msgstr "%(jid)s סרב/ה להזמנה: %(reason)s"
 
-#: ../src/gui_interface.py:629
+#: ../src/gui_interface.py:628
 #, python-format
 msgid "%(jid)s declined the invitation"
-msgstr "%(jid)s סרב/ה להזמנה"
+msgstr "%(jid)s סרב/ה להזמנה"
 
-#: ../src/gui_interface.py:658
-msgid ""
-"You configured Gajim to use OpenPGP agent, but there is no OpenPGP agent "
-"running or it returned a wrong passphrase.\n"
-msgstr ""
-"הגדרת את Gajim לעשות שימוש בסוכן OpenPGP, אך אין כעת סוכן OpenPGP אשר מופעל "
-"או שזה החזיר מימרת-סיסמה שגויה.\n"
+#: ../src/gui_interface.py:657
+msgid "You configured Gajim to use GPG agent, but there is no GPG agent running or it returned a wrong passphrase.\n"
+msgstr "הגדרת את Gajim לעשות שימוש בסוכן GPG, אך אין כעת סוכן GPG מופעל או שהוא החזיר מימרת-סיסמה שגויה.\n"
 
-#: ../src/gui_interface.py:661 ../src/gui_interface.py:669
+# Would it be ok to write: an OpenPGP
+#: ../src/gui_interface.py:659
+#: ../src/gui_interface.py:667
 msgid "You are currently connected without your OpenPGP key."
-msgstr "התחברותך בוצעה ללא מפתח OpenPGP."
+msgstr "התחברותך מבוצעת ללא מפתח OpenPGP."
 
-#: ../src/gui_interface.py:663
+#: ../src/gui_interface.py:661
 msgid "Your passphrase is incorrect"
-msgstr "מימרת סיסמתך הינה שגויה"
+msgstr "מימרת־סיסמתך הינה שגויה"
 
-#: ../src/gui_interface.py:668
-msgid "OpenPGP Passphrase Incorrect"
-msgstr "מימרת סיסמה OpenPGP שגויה"
+#: ../src/gui_interface.py:666
+msgid "OpenGPG Passphrase Incorrect"
+msgstr "מימרת־סיסמה OpenGPG שגויה"
 
-#: ../src/gui_interface.py:681
+# מימרת־סיסמה של תעודת
+#: ../src/gui_interface.py:679
 msgid "Certificate Passphrase Required"
-msgstr "נדרשת מימרת סיסמה של תעודת"
+msgstr "נדרשת מימרת־סיסמת תעודת"
 
-#: ../src/gui_interface.py:682
+#: ../src/gui_interface.py:680
 #, python-format
 msgid "Enter the passphrase for the certificate for account %s"
-msgstr "הזן מימרת סיסמה עבור התעודה עבור חשבון %s"
+msgstr "נא להזין מימרת־סיסמה עבור התעודה עבור חשבון %s"
 
-#: ../src/gui_interface.py:704
-msgid "OpenPGP key not trusted"
-msgstr "מפתח OpenPGP לא מהימן "
+#: ../src/gui_interface.py:702
+msgid "GPG key not trusted"
+msgstr "מפתח GPG לא מהימן "
 
 # Changed really with still
 # Sure = בטוח
 # Really = באמת
 # Still = עדיין
-#: ../src/gui_interface.py:704
-msgid ""
-"The OpenPGP key used to encrypt this chat is not trusted. Do you really want "
-"to encrypt this message?"
-msgstr ""
-"מפתח OpenPGP המשמש להצפנת שיחה זו אינו מהימן. האם באמת יש ברצונך להצפין את "
-"הודעה זו?"
+#: ../src/gui_interface.py:702
+msgid "The GPG key used to encrypt this chat is not trusted. Do you really want to encrypt this message?"
+msgstr "מפתח GPG המשמש להצפנת שיחה זו אינו מהימן. האם עדיין יש ברצונך להצפין הודעה זו?"
 
-#: ../src/gui_interface.py:717
-msgid ""
-"Gnome Keyring is installed but not correctly started (environment variable "
-"probably not correctly set)"
-msgstr ""
-"היישום Gnome Keyring הינו מותקן אך לא הופעל כראוי (כנראה משתנה סביבה לא "
-"הוגדר כראוי)"
+#: ../src/gui_interface.py:715
+msgid "Gnome Keyring is installed but not correctly started (environment variable probably not correctly set)"
+msgstr "היישום Gnome Keyring הינו מותקן אך לא הופעל כראוי (כנראה משתנה סביבה לא הוגדר כראוי)"
 
 # BUG: refreshed
 # אסימון
-#: ../src/gui_interface.py:755
-msgid ""
-"Please copy / paste the refresh token from the website that has just been "
-"opened."
-msgstr "אנא העתק / הדבק את האות הרענן מתוך אתר הרשת אשר זה עתה נפתח."
+#: ../src/gui_interface.py:753
+msgid "Please copy / paste the refresh token from the website that has just been opened."
+msgstr "נא להעתיק / להדביק את האות הרענן מן אתר הרשת שזה עתה נפתח."
 
-#: ../src/gui_interface.py:758
+# תעודות
+#: ../src/gui_interface.py:756
 msgid "Oauth2 Credentials"
 msgstr "אישורי Oauth2"
 
-#: ../src/gui_interface.py:856
+# עבור
+#: ../src/gui_interface.py:846
 #, python-format
 msgid "New mail on %(gmail_mail_address)s"
 msgstr "דוא״ל חדש אצל %(gmail_mail_address)s"
 
-#: ../src/gui_interface.py:858
+#: ../src/gui_interface.py:848
 #, python-format
 msgid "You have %d new mail conversation"
 msgid_plural "You have %d new mail conversations"
 msgstr[0] "יש לך שיחת דואר חדשה %d"
 msgstr[1] "יש לך %d שיחות דואר חדשות"
 
-#: ../src/gui_interface.py:871
+#: ../src/gui_interface.py:861
 #, python-format
 msgid ""
 "\n"
@@ -10244,109 +10361,105 @@ msgstr ""
 "נושא: %(subject)s\n"
 "%(snippet)s"
 
-#: ../src/gui_interface.py:941
+# אליך
+#: ../src/gui_interface.py:931
 #, python-format
 msgid "%s wants to send you a file."
-msgstr "%s רוצה לשלוח לך קובץ."
+msgstr "%s רוצה לשלוח לך קובץ."
 
-#: ../src/gui_interface.py:1038
+#: ../src/gui_interface.py:1028
 msgid "File Transfer Failed"
 msgstr "העברת קובץ נכשלה"
 
-#: ../src/gui_interface.py:1059
+#: ../src/gui_interface.py:1049
 #, python-format
 msgid "You successfully received %(filename)s from %(name)s."
 msgstr "קיבלת בהצלחה את %(filename)s מן %(name)s."
 
-#: ../src/gui_interface.py:1063
+#: ../src/gui_interface.py:1053
 #, python-format
 msgid "File transfer of %(filename)s from %(name)s stopped."
 msgstr "העברת קובץ %(filename)s מן %(name)s נעצרה."
 
 #. ft hash error
-#: ../src/gui_interface.py:1067
+#: ../src/gui_interface.py:1057
 #, python-format
 msgid "File transfer of %(filename)s from %(name)s failed."
 msgstr "העברת קובץ %(filename)s מן %(name)s נכשלה."
 
-#: ../src/gui_interface.py:1080
+#: ../src/gui_interface.py:1070
 #, python-format
 msgid "You successfully sent %(filename)s to %(name)s."
 msgstr "שלחת בהצלחה את %(filename)s אל %(name)s."
 
-#: ../src/gui_interface.py:1084
+#: ../src/gui_interface.py:1074
 #, python-format
 msgid "File transfer of %(filename)s to %(name)s stopped."
 msgstr "העברת קובץ %(filename)s אל %(name)s נעצרה."
 
 #. ft hash error
-#: ../src/gui_interface.py:1088
+#: ../src/gui_interface.py:1078
 #, python-format
 msgid "File transfer of %(filename)s to %(name)s failed."
 msgstr "העברת הקובץ %(filename)s אל %(name)s נכשלה."
 
-#: ../src/gui_interface.py:1163
+#: ../src/gui_interface.py:1153
 msgid "Unable to decrypt message"
-msgstr "אין אפשרות לפענח את ההודעה"
+msgstr "לא ניתן לפענח את ההודעה"
 
 # התנגשויות, ניגודים, קונפליקט
-#: ../src/gui_interface.py:1175
+#: ../src/gui_interface.py:1165
 msgid "Username Conflict"
 msgstr "התנגשות שם משתמש"
 
-#: ../src/gui_interface.py:1176
+#: ../src/gui_interface.py:1166
 msgid "Please type a new username for your local account"
 msgstr "אנא הקלד שם משתמש חדש עבור חשבונך המקומי"
 
-#: ../src/gui_interface.py:1191
+#: ../src/gui_interface.py:1181
 msgid "Resource Conflict"
 msgstr "התנגשות משאב"
 
-#: ../src/gui_interface.py:1192
-msgid ""
-"You are already connected to this account with the same resource. Please "
-"type a new one"
-msgstr "הינך כבר מחובר אל חשבון זה באמצעות אותו משאב. אנא הקלד אחד חדש."
+#: ../src/gui_interface.py:1182
+msgid "You are already connected to this account with the same resource. Please type a new one"
+msgstr "הינך כבר מחובר אל חשבון זה באמצעות אותו משאב. נא להקליד משאב חדש."
 
 #. TODO: we should use another pixmap ;-)
-#: ../src/gui_interface.py:1247
+#: ../src/gui_interface.py:1237
 #, python-format
 msgid "%s wants to start a voice chat."
-msgstr "%s רוצה להתחיל שיחה קולית."
+msgstr "%s רוצה להתחיל שיחה קולית."
 
-#: ../src/gui_interface.py:1250
+# שיחת שמע
+#: ../src/gui_interface.py:1240
 msgid "Voice Chat Request"
 msgstr "בקשה לשיחה קולית"
 
-#: ../src/gui_interface.py:1337
+#: ../src/gui_interface.py:1327
 msgid "Error verifying SSL certificate"
 msgstr "שגיאה באימות תעודת SSL"
 
-#: ../src/gui_interface.py:1338
+#: ../src/gui_interface.py:1328
 #, python-format
 msgid ""
 "There was an error verifying the SSL certificate of your jabber server: "
 "%(error)s\n"
 "Do you still want to connect to this server?"
 msgstr ""
-"אירעה שגיאה באימות תעודת SSL של שרת ה־Jabber שלך: %(error)s\n"
+"ארעה שגיאה באימות תעודת SSL של שרת ה־Jabber שלך: %(error)s\n"
 "האם עדיין יש ברצונך להתחבר אל שרת זה?"
 
-#: ../src/gui_interface.py:1347
+# התעלמות
+#: ../src/gui_interface.py:1337
 msgid "Ignore this error for this certificate."
 msgstr "התעלם משגיאה זו עבור תעודה זו."
 
-#: ../src/gui_interface.py:1355
-#, python-format
-msgid "SSL Certificate Verification for %s"
-msgstr "אימות תעודת SSL עבור %s"
-
-#: ../src/gui_interface.py:1374
+#: ../src/gui_interface.py:1362
 msgid "SSL certificate error"
 msgstr "שגיאת תעודת SSL"
 
 # ישנה
-#: ../src/gui_interface.py:1375
+#: ../src/gui_interface.py:1363
 #, python-format
 msgid ""
 "It seems the SSL certificate of account %(account)s has changed or your "
@@ -10356,27 +10469,54 @@ msgid ""
 "\n"
 "Do you still want to connect and update the fingerprint of the certificate?"
 msgstr ""
-"נראה שתעודת SSL של חשבון %(account)s שונתה או שהחיבור שלך נפרץ כעת.\n"
+"נראה שתעודת SSL של חשבון %(account)s שונתה או שחיבורך נפרץ כעת.\n"
 "טביעת אצבע קודמת: %(old)s\n"
 "טביעת אצבע חדשה: %(new)s\n"
 "\n"
 "האם עדיין יש ברצונך להתחבר ולעדכן את טביעת האצבע של התעודה?"
 
-#: ../src/gui_interface.py:1447
-msgid ""
-"You are about to send your password on an insecure connection. You should "
-"install PyOpenSSL to prevent that. Are you sure you want to do that?"
-msgstr ""
-"הינך על סף שליחת סיסמתך על פני חיבור לא מאובטח. עליך להתקין PyOpenSSL בכדי "
-"למנוע זאת. האם אתה בטוח כי ברצונך להתחבר?"
+#: ../src/gui_interface.py:1402
+#: ../src/gui_interface.py:1446
+#: ../src/gui_interface.py:1488
+msgid "Insecure connection"
+msgstr "חיבור לא מאובטח"
 
-#: ../src/gui_interface.py:1489
+# BUG: to the server > to a serverr > to server
+# Added: will be exchanged with the other end will not be encrypted
+# הינך על סף התחברות אל שרת עם חיבור לא מאובטח. משמעות הדבר היא שכל השיחות שלך שיוחלפו עם הקצה השני לא יהיו מוצפנות. האם עדיין ברצונך להתחבר?
+# discouraged:
+#  > deprived > לקוי בחסר
+#  > dissuade > dissuade from > להניא מ-
+#: ../src/gui_interface.py:1403
+#, python-format
 msgid ""
-"You are about to send your password unencrypted on an insecure connection. "
+"You are about to connect to the account %(account)s (%(server)s) with an insecure connection. This means all your conversations will be exchanged unencrypted. This type of connection is really discouraged.\n"
 "Are you sure you want to do that?"
 msgstr ""
-"הינך על סף שליחת סיסמתך באופן לא מוצפן על פני חיבור לא מאובטח. האם אתה בטוח "
-"כי ברצונך לעשות זאת?"
+"הינך על סף התחברות אל החשבון %(account)s (%(server)s) באמצעות חיבור לא מאובטח. משמעות הדבר היא שכל השיחות שיוחלפו עם הקצה השני לא יהיו מוצפנות. רצוי להימנע מחיבורים מטיפוס זה.\n"
+"האם באמת שברצונך להתחבר?"
+
+# The word 'Really' was omitted
+# הנני רוצה
+# באופן לא בטוח
+# בצורה לא בטוחה
+#: ../src/gui_interface.py:1409
+#: ../src/gui_interface.py:1450
+#: ../src/gui_interface.py:1491
+msgid "Yes, I really want to connect insecurely"
+msgstr "כן, ברצוני להתחבר בשיטה לא בטוחה"
+
+#: ../src/gui_interface.py:1410
+msgid "Gajim will NOT connect unless you check this box"
+msgstr "Gajim לא יתחבר אלא אם כן תיבה זו תסומן"
+
+#: ../src/gui_interface.py:1447
+msgid "You are about to send your password on an insecure connection. You should install PyOpenSSL to prevent that. Are you sure you want to do that?"
+msgstr "הינך על סף שליחת סיסמתך על פני חיבור לא מאובטח. עליך להתקין PyOpenSSL בכדי למנוע זאת. האם עדיין ברצונך להתחבר?"
+
+#: ../src/gui_interface.py:1489
+msgid "You are about to send your password unencrypted on an insecure connection. Are you sure you want to do that?"
+msgstr "הינך על סף שליחת סיסמתך באופן לא מוצפן על פני חיבור לא מאובטח. האם באמת שברצונך לעשות זאת?"
 
 #. theme doesn't exist, disable emoticons
 #: ../src/gui_interface.py:1995 ../src/gui_interface.py:2018
@@ -10384,107 +10524,95 @@ msgid "Emoticons disabled"
 msgstr "רגשונים נוטרלו"
 
 #: ../src/gui_interface.py:1996
-msgid ""
-"Your configured emoticons theme has not been found, so emoticons have been "
-"disabled."
-msgstr "מוטיב הרגשונים אשר הגדרת לא נמצא, ומשכך רגשונים נוטרלו."
+msgid "Your configured emoticons theme has not been found, so emoticons have been disabled."
+msgstr "מוטיב הרגשונים שהגדרת לא נמצא, ומשכך רגשונים נוטרלו."
 
 #: ../src/gui_interface.py:2019
-msgid ""
-"Your configured emoticons theme cannot been loaded. You maybe need to update "
-"the format of emoticons.py file. See http://trac.gajim.org/wiki/Emoticons "
-"for more details."
-msgstr ""
-"מוטיב הרגשונים אשר הגדרת לא ניתן לטעינה. ייתכן וקיים הצורך לעדכן את התסדיר "
-"של הקובץ emoticons.py. לפרטים נוספים, ראו http://trac.gajim.org/wiki/"
-"Emoticons."
+msgid "Your configured emoticons theme cannot been loaded. You maybe need to update the format of emoticons.py file. See http://trac.gajim.org/wiki/Emoticons for more details."
+msgstr "מוטיב הרגשונים שהגדרת לא ניתן לטעינה. ייתכן וקיים הצורך לעדכן את התסדיר של הקובץ emoticons.py. עבור פרטים נוספים, ראו http://trac.gajim.org/wiki/Emoticons."
 
-#: ../src/gui_interface.py:2063 ../src/roster_window.py:3895
+#: ../src/gui_interface.py:2063
+#: ../src/roster_window.py:3966
 msgid "You cannot join a group chat while you are invisible"
-msgstr "אין באפשרותך להשתתף בשיחת קבוצה כאשר הינך במצב בלתי נראה"
+msgstr "אין ביכולתך להשתתף בשיחת קבוצה כאשר הינך במצב בלתי נראה"
 
 #. it is good to notify the user
 #. in case he or she cannot see the output of the console
 #: ../src/gui_interface.py:2450
 msgid "Could not save your settings and preferences"
-msgstr "לא היתה אפשרות לשמור את ההגדרות וההעדפות שלך"
+msgstr "לא ניתן היה לשמור את ההגדרות וההעדפות שלך"
 
-#: ../src/gui_interface.py:3043
+#: ../src/gui_interface.py:3008
 msgid "Passphrase Required"
-msgstr "נדרשת מימרת סיסמה"
+msgstr "נדרשת מימרת־סיסמה"
 
-#: ../src/gui_interface.py:3044
+#: ../src/gui_interface.py:3009
 #, python-format
-msgid "Enter OpenPGP key passphrase for key %(keyid)s (account %(account)s)."
-msgstr ""
-"הזן מימרת סיסמה של מפתח OpenPGP עבור מפתח %(keyid)s (חשבון %(account)s)."
+msgid "Enter GPG key passphrase for key %(keyid)s (account %(account)s)."
+msgstr "נא להזין מימרת־סיסמה של מפתח GPG עבור מפתח %(keyid)s (חשבון %(account)s)."
 
-#: ../src/gui_interface.py:3058
-msgid "OpenPGP key expired"
-msgstr "מפתח OpenPGP פקע"
+#: ../src/gui_interface.py:3023
+msgid "GPG key expired"
+msgstr "מפתח GPG פקע"
 
-#: ../src/gui_interface.py:3059
+#: ../src/gui_interface.py:3024
 #, python-format
-msgid ""
-"Your OpenPGP key has expired, you will be connected to %s without OpenPGP."
-msgstr "מפתח OpenPGP פקע, התחברותך אל %s תתקיים ללא OpenPGP."
+msgid "Your GPG key has expired, you will be connected to %s without OpenPGP."
+msgstr "מפתח GPG פקע, ההתחברות אל %s תתבצע ללא OpenPGP."
 
 #. ask again
-#: ../src/gui_interface.py:3068
+#: ../src/gui_interface.py:3033
 msgid "Wrong Passphrase"
-msgstr "מימרת סיסמה שגויה"
+msgstr "מימרת־סיסמה שגויה"
 
-#: ../src/gui_interface.py:3069
-msgid "Please retype your OpenPGP passphrase or press Cancel."
-msgstr "אנא הקלד מחדש מימרת סיסמה OpenPGP או לחץ על ביטול."
+#: ../src/gui_interface.py:3034
+msgid "Please retype your GPG passphrase or press Cancel."
+msgstr "נא להקליד מימרת־סיסמה GPG מחדש או ללחוץ על ביטול."
 
-#: ../src/gui_menu_builder.py:96
+#: ../src/gui_menu_builder.py:93
 msgid "_New Group Chat"
 msgstr "שיחת קבוצה _חדשה"
 
-#: ../src/gui_menu_builder.py:438
+#: ../src/gui_menu_builder.py:431
 msgid "I would like to add you to my roster"
 msgstr "ברצוני להוסיפך אל הרשימה שלי"
 
-#: ../src/history_manager.py:78
-#, fuzzy
-msgid "Set logs directory"
-msgstr "cli"
-
-#: ../src/history_manager.py:126
+#: ../src/history_manager.py:116
 msgid "Cannot find history logs database"
-msgstr "אין אפשרות למצוא מסד נתונים של רשומות היסטוריה"
+msgstr "לא ניתן למצוא מסד נתונים של רשומות היסטוריה"
 
 #. holds time
-#: ../src/history_manager.py:179 ../src/history_manager.py:223
-#: ../src/history_window.py:100
+#: ../src/history_manager.py:169
+#: ../src/history_manager.py:213
+#: ../src/history_window.py:99
 msgid "Date"
 msgstr "תאריך"
 
 #. holds nickname
-#: ../src/history_manager.py:186 ../src/history_manager.py:242
+#: ../src/history_manager.py:176
+#: ../src/history_manager.py:232
 msgid "Nickname"
 msgstr "שם כינוי"
 
 #. holds message
-#: ../src/history_manager.py:195 ../src/history_manager.py:230
-#: ../src/history_window.py:108
+#: ../src/history_manager.py:185
+#: ../src/history_manager.py:220
+#: ../src/history_window.py:107
 msgid "Message"
 msgstr "הודעה"
 
 #. holds subject
-#: ../src/history_manager.py:203 ../src/history_manager.py:236
+#: ../src/history_manager.py:193
+#: ../src/history_manager.py:226
 msgid "Subject"
 msgstr "נושא"
 
-#: ../src/history_manager.py:262
-msgid ""
-"Do you want to clean up the database? (STRONGLY NOT RECOMMENDED IF GAJIM IS "
-"RUNNING)"
-msgstr ""
-"האם ברצונך לנקות את מסד הנתונים? (פעולה זו בהחלט לא מומלצת כאשר Gajim מורץ)"
+# לחלוטין לא מומלץ בעת שהיישום Gajim מורץ
+#: ../src/history_manager.py:252
+msgid "Do you want to clean up the database? (STRONGLY NOT RECOMMENDED IF GAJIM IS RUNNING)"
+msgstr "האם ברצונך לנקות את מסד הנתונים? (פעולה זו בפרוש לא מומלצת בעת שהיישום Gajim מורץ)"
 
-#: ../src/history_manager.py:264
+#: ../src/history_manager.py:254
 msgid ""
 "Normally allocated database size will not be freed, it will just become "
 "reusable. If you really want to reduce database filesize, click YES, else "
@@ -10492,102 +10620,103 @@ msgid ""
 "\n"
 "In case you click YES, please wait..."
 msgstr ""
-"בדרך כלל גודל מסד נתונים מוקצה לא יהיה חופשי, אלא הוא רק יהפוך לכזה אשר ניתן "
-"לשימוש חוזר. אם באמת ברצונך להקטין את הגודל של קובץ מסד הנתונים, עליך להקיש "
-"כן, אחרת עליך להקיש לא.\n"
+"בדרך כלל הגודל המוקצה של מסד נתונים לא יהיה חופשי, הוא רק יהפוך לכזה שניתן לשימוש חוזר. אם באמת ברצונך להקטין את הגודל של קובץ מסד הנתונים, עליך להקיש כן, אחרת עליך להקיש לא.\n"
 "\n"
 "במידה ותבחר להקיש כן, אנא המתן..."
 
-#: ../src/history_manager.py:269
+# טיהור (לא מתאים משום שטיהור זה איפוס מוחלט)
+#: ../src/history_manager.py:259
 msgid "Database Cleanup"
 msgstr "ניקוי מסד נתונים"
 
-# מייצא כעת רשומות היסטוריה...
-#: ../src/history_manager.py:487
+#: ../src/history_manager.py:477
 msgid "Exporting History Logs..."
 msgstr "ייצוא רשומות היסטוריה..."
 
 # BUG: said > wrote?
 # Needs to be tested
-#: ../src/history_manager.py:564
+#: ../src/history_manager.py:554
 #, python-format
 msgid "%(who)s on %(time)s said: %(message)s\n"
-msgstr "%(who)s בשעה %(time)s אמר/ה: %(message)s\n"
+msgstr "%(who)s בשעה %(time)s אמר/ה: %(message)s\n"
 
-#: ../src/history_manager.py:602
+# Really>Still
+#: ../src/history_manager.py:592
 #, python-format
 msgid "Do you really want to delete the logs of %(jid)s?"
-msgstr "האם אתה בטוח כי ברצונך למחוק את הרשומות של %(jid)s?"
+msgstr "האם באמת שברצונך למחוק את הרשומות של %(jid)s?"
 
-#: ../src/history_manager.py:606
+#: ../src/history_manager.py:596
 msgid "Do you really want to delete logs of the selected contacts?"
-msgstr "האם אתה בטוח כי ברצונך למחוק את הרשומות של אנשי קשר נבחרים?"
+msgstr "האם באמת שברצונך למחוק את הרשומות של אנשי קשר נבחרים?"
 
-#: ../src/history_manager.py:608 ../src/history_manager.py:647
+# איננה הפיכה/ניתנת לביטול
+# היננה
+#: ../src/history_manager.py:598
+#: ../src/history_manager.py:637
 msgid "This is an irreversible operation."
-msgstr "פעולה זו איננה הפיכה."
+msgstr "פעולה זו הינה בלתי הפיכה."
 
-#: ../src/history_manager.py:610 ../src/history_manager.py:649
+#: ../src/history_manager.py:600
+#: ../src/history_manager.py:639
 msgid "Deletion Confirmation"
 msgstr "אימות מחיקה"
 
-#: ../src/history_manager.py:644
+# Really>Still
+#: ../src/history_manager.py:634
 msgid "Do you really want to delete the selected message?"
 msgid_plural "Do you really want to delete the selected messages?"
-msgstr[0] "האם אתה בטוח כי ברצונך למחוק את ההודעה הנבחרת?"
-msgstr[1] "האם אתה בטוח כי ברצונך למחוק את ההודעות הנבחרות?"
+msgstr[0] "האם באמת שברצונך למחוק את ההודעה הנבחרת?"
+msgstr[1] "האם באמת שברצונך למחוק את ההודעות הנבחרות?"
 
-#: ../src/history_window.py:308
+#: ../src/history_window.py:306
 #, python-format
 msgid "Conversation History with %s"
 msgstr "היסטוריית שיחה עם %s"
 
-#: ../src/history_window.py:358
+# כונן
+#: ../src/history_window.py:356
 msgid "Disk Error"
-msgstr "שגיאת כונן"
+msgstr "שגיאת דיסק"
 
-# Fix Psi status with brackets in Psi with LTR at its end - see realisation below
-# Auto Status (idle)
-# Auto Status (idle)
-#: ../src/history_window.py:451
+# LRE and PDF.
+# Fix Psi status with brackets in Psi! not here!! :D
+# Auto Status (idle)
+#: ../src/history_window.py:444
 #, python-format
 msgid "%(nick)s is now %(status)s: %(status_msg)s"
-msgstr "%(nick)s מצוי/ה כעת במצב %(status)s: %(status_msg)s"
+msgstr "%(nick)s מצוי/ה כעת במצב %(status)s: %(status_msg)s"
 
-#: ../src/history_window.py:462
+#: ../src/history_window.py:455
 #, python-format
 msgid "Error: %s"
 msgstr "שגיאה: %s"
 
-#: ../src/history_window.py:464
+#: ../src/history_window.py:457
 msgid "Error"
 msgstr "שגיאה"
 
-#: ../src/history_window.py:466
+#: ../src/history_window.py:459
 #, python-format
 msgid "Status is now: %(status)s: %(status_msg)s"
 msgstr "מצב נוכחי: %(status)s: %(status_msg)s"
 
-#: ../src/history_window.py:469
+#: ../src/history_window.py:462
 #, python-format
 msgid "Status is now: %(status)s"
 msgstr "המצב כעת: %(status)s"
 
-#: ../src/htmltextview.py:523
+#: ../src/htmltextview.py:522
 msgid "Loading"
-msgstr "טוען כעת"
-
-#: ../src/logind_listener.py:53 ../src/upower_listener.py:31
-msgid "Machine going to sleep"
-msgstr "מחשב על סף שינה"
+msgstr ""
 
 #: ../src/message_window.py:220
 msgid "You are going to close several tabs"
-msgstr "בחרת לסגור מספר כרטיסיות"
+msgstr "בחרת לסגור מספר לשוניות"
 
 #: ../src/message_window.py:221
 msgid "Do you really want to close them all?"
-msgstr "האם אתה בטוח כי ברצונך לסגור את כולן?"
+msgstr "האם באמת שברצונך לסגור את כולן?"
 
 #: ../src/message_window.py:518
 msgid "Chats"
@@ -10605,9 +10734,10 @@ msgstr "שיחות פרטיות"
 msgid "Messages"
 msgstr "הודעות"
 
+# I think that הודעות יירשמו will be proper since we don't know to where the other end saves its messages
 #: ../src/negotiation.py:34
 msgid "- messages will be logged"
-msgstr "- הודעות יירשמו"
+msgstr "- הודעות יירשמו אל יומן ההיסטוריה"
 
 #: ../src/negotiation.py:36
 msgid "- messages will not be logged"
@@ -10617,49 +10747,53 @@ msgstr "- הודעות לא יירשמו אל יומן ההיסטוריה"
 msgid "Ignore"
 msgstr "התעלמות"
 
-#: ../src/plugins/gui.py:82
+#: ../src/plugins/gui.py:78
 msgid "Plugin"
 msgstr "תוספת"
 
-#: ../src/plugins/gui.py:149
+#: ../src/plugins/gui.py:145
 #, python-format
 msgid "Warning: %s"
 msgstr "אזהרה: %s"
 
-#: ../src/plugins/gui.py:207
+# טעינת התוסף נכשלה
+#: ../src/plugins/gui.py:199
 msgid "Plugin failed"
 msgstr "כשל תוספת"
 
-#: ../src/plugins/gui.py:252
+#: ../src/plugins/gui.py:244
 msgid "Unable to properly remove the plugin"
-msgstr "אין אפשרות להסיר את התוספת באופן רגיל"
+msgstr "לא ניתן להסיר את התוספת באופן רגיל"
 
 #. members not safe
-#: ../src/plugins/gui.py:260 ../src/plugins/pluginmanager.py:526
-#: ../src/plugins/pluginmanager.py:534
+#: ../src/plugins/gui.py:252
+#: ../src/plugins/pluginmanager.py:523
+#: ../src/plugins/pluginmanager.py:531
 msgid "Archive is malformed"
 msgstr "ארכיון הינו פגום"
 
-#: ../src/plugins/gui.py:284 ../src/plugins/gui.py:292
-#: ../src/plugins/pluginmanager.py:542
+#: ../src/plugins/gui.py:276
+#: ../src/plugins/gui.py:284
+#: ../src/plugins/pluginmanager.py:539
 msgid "Plugin already exists"
 msgstr "תוספת כבר קיימת"
 
-#: ../src/plugins/gui.py:284
+#: ../src/plugins/gui.py:276
 msgid "Overwrite?"
-msgstr "להחליף?"
+msgstr "האם לכתוב על הקיים?"
 
-#: ../src/plugins/gui.py:314
+#: ../src/plugins/gui.py:306
 msgid "Configuration"
 msgstr "תצורה"
 
 #. it is not zip file
 #. CRC error
-#: ../src/plugins/pluginmanager.py:512 ../src/plugins/pluginmanager.py:518
+#: ../src/plugins/pluginmanager.py:509
+#: ../src/plugins/pluginmanager.py:515
 msgid "Archive corrupted"
 msgstr "ארכיון מושחת"
 
-#: ../src/plugins/pluginmanager.py:514
+#: ../src/plugins/pluginmanager.py:511
 msgid "Archive empty"
 msgstr "ארכיון ריק"
 
@@ -10667,502 +10801,484 @@ msgstr "ארכיון ריק"
 msgid "Retrieving profile..."
 msgstr "מאחזר כעת דיוקן..."
 
-#: ../src/profile_window.py:129 ../src/roster_window.py:3192
+#: ../src/profile_window.py:129
+#: ../src/roster_window.py:3259
 msgid "File is empty"
 msgstr "קובץ ריק"
 
-#: ../src/profile_window.py:132 ../src/roster_window.py:3195
+#: ../src/profile_window.py:132
+#: ../src/roster_window.py:3262
 msgid "File does not exist"
 msgstr "קובץ לא קיים"
 
+# את התמונה
 #. keep identation
 #. unknown format
-#: ../src/profile_window.py:146 ../src/profile_window.py:163
-#: ../src/roster_window.py:3197 ../src/roster_window.py:3208
+#: ../src/profile_window.py:146
+#: ../src/profile_window.py:162
+#: ../src/roster_window.py:3264
+#: ../src/roster_window.py:3275
 msgid "Could not load image"
-msgstr "לא היתה אפשרות להטעין תמונה"
+msgstr "לא ניתן לטעון תמונה"
 
-#: ../src/profile_window.py:235
+#: ../src/profile_window.py:233
 msgid "Wrong date format"
 msgstr "תסדיר תאריך שגוי"
 
 # חייב
-#: ../src/profile_window.py:236
+#: ../src/profile_window.py:234
 msgid "Format of the date must be YYYY-MM-DD"
-msgstr "הפורמט של התאריך מוכרח להיות YYYY-MM-DD"
+msgstr "תסדיר התאריך מוכרח להיות YYYY-MM-DD"
 
 # התקבל מידע
-#: ../src/profile_window.py:294
+#: ../src/profile_window.py:292
 msgid "Information received"
-msgstr "מידע התקבל"
+msgstr "המידע התקבל"
 
-#: ../src/profile_window.py:372
-msgid "Without a connection, you can not publish your contact information."
+# BUG: Comma
+# ללא חיבור זמין
+#: ../src/profile_window.py:370
+msgid "Without a connection you can not publish your contact information."
 msgstr "ללא חיבור, אין באפשרותך לפרסם את מידע איש הקשר שלך."
 
-#: ../src/profile_window.py:385
+#: ../src/profile_window.py:383
 msgid "Sending profile..."
 msgstr "שולח כעת דיוקן..."
 
-#: ../src/profile_window.py:404
+#: ../src/profile_window.py:402
 msgid "Information NOT published"
 msgstr "מידע לא פורסם"
 
-#: ../src/profile_window.py:411
+#: ../src/profile_window.py:409
 msgid "vCard publication failed"
 msgstr "כשל פרסום vCard"
 
-#: ../src/profile_window.py:412
-msgid ""
-"There was an error while publishing your personal information, try again "
-"later."
-msgstr "אירעה שגיאה במהלך פרסום המידע האישי שלך, נסה שוב מאוחר יותר."
+#: ../src/profile_window.py:410
+msgid "There was an error while publishing your personal information, try again later."
+msgstr "ארעה שגיאה במהלך פרסום המידע האישי שלך, נא לנסות שוב מאוחר יותר."
 
-#: ../src/roster_window.py:240 ../src/roster_window.py:1035
+#: ../src/roster_window.py:240
+#: ../src/roster_window.py:1031
 msgid "Merged accounts"
 msgstr "חשבונות ממוזגים"
 
-#: ../src/roster_window.py:2059
+#: ../src/roster_window.py:2049
 msgid "Authorization has been sent"
 msgstr "הרשאה נשלחה"
 
-#: ../src/roster_window.py:2060
+#: ../src/roster_window.py:2050
 #, python-format
 msgid "Now \"%s\" will know your status."
-msgstr "מעתה מצבך יהיה גלוי עבור \"%s\"."
+msgstr "מעתה מצבך יהיה גלוי עבור \"%s\"."
 
-#: ../src/roster_window.py:2083
+#: ../src/roster_window.py:2073
 msgid "Subscription request has been sent"
 msgstr "בקשת הרשמה נשלחה"
 
-#: ../src/roster_window.py:2084
+# Is it possible to use %s twice?
+# אם בקשתך תתקבל על ידי \"%s\" מצב־החיבור של \"%s\" יהיה גלוי בפניך.
+#: ../src/roster_window.py:2074
 #, python-format
 msgid "If \"%s\" accepts this request you will know his or her status."
 msgstr "אם בקשתך תתקבל על ידי \"%s\" מצב החיבור שלו או שלה יהיה גלוי בפניך."
 
-#: ../src/roster_window.py:2098
+#: ../src/roster_window.py:2088
 msgid "Authorization has been removed"
 msgstr "הרשאה הוסרה"
 
-#: ../src/roster_window.py:2099
+#: ../src/roster_window.py:2089
 #, python-format
 msgid "Now \"%s\" will always see you as offline."
-msgstr "מעתה מצבך ייראה בתור לא מקוון עבור \"%s\"."
+msgstr "מעתה מצבך ייראה כלא מקוון עבור \"%s\"."
 
-#: ../src/roster_window.py:2126
-msgid "OpenPGP is not usable"
-msgstr "הצפנת OpenPGP אינה שמישה"
+#: ../src/roster_window.py:2116
+msgid "GPG is not usable"
+msgstr "הצפנת GPG אינה שמישה"
 
-#: ../src/roster_window.py:2127
+#: ../src/roster_window.py:2117
 #, python-format
 msgid "You will be connected to %s without OpenPGP."
-msgstr "התחברותך אל %s תתבצע ללא OpenPGP."
+msgstr "ההתחברות אל %s תתבצע ללא OpenPGP."
 
-#: ../src/roster_window.py:2334 ../src/roster_window.py:3825
+#: ../src/roster_window.py:2324
+#: ../src/roster_window.py:3896
 msgid "You are participating in one or more group chats"
 msgstr "הינך משתתף בשיחת קבוצה אחת או יותר"
 
 # יוביל, יביא לידי
-#: ../src/roster_window.py:2335 ../src/roster_window.py:3826
-msgid ""
-"Changing your status to invisible will result in disconnection from those "
-"group chats. Are you sure you want to go invisible?"
-msgstr ""
-"שינוי מצב החיבור שלך אל בלתי נראה ינבע בניתוקך מתוך שיחות קבוצה אלו. האם אתה "
-"בטוח כי ברצונך להפוך את מצבך אל בלתי נראה?"
+#: ../src/roster_window.py:2325
+#: ../src/roster_window.py:3897
+msgid "Changing your status to invisible will result in disconnection from those group chats. Are you sure you want to go invisible?"
+msgstr "שינוי מצב־חיבורך אל בלתי נראה ינבע בניתוקך מן שיחות קבוצה אלו. האם עדיין ברצונך להפוך את מצבך אל בלתי נראה?"
 
-#: ../src/roster_window.py:2361
+# If this mean desyncronized then 'לא מסונכרן' is correct,
+#: ../src/roster_window.py:2351
 msgid "desync'ed"
 msgstr "לא מסונכרן"
 
-#: ../src/roster_window.py:2427
+#: ../src/roster_window.py:2417
 msgid "Really quit Gajim?"
-msgstr "באמת לצאת מתוך Gajim?"
+msgstr "באמת לצאת מן Gajim?"
 
 # לסגור את
-#: ../src/roster_window.py:2428
+#: ../src/roster_window.py:2418
 msgid "Are you sure you want to quit Gajim?"
-msgstr "האם אתה בטוח כי ברצונך לצאת מתוך Gajim?"
+msgstr "האם באמת שברצונך לצאת מן Gajim?"
 
-#: ../src/roster_window.py:2429
+#: ../src/roster_window.py:2419
 msgid "Always close Gajim"
 msgstr "סגור את Gajim תמיד"
 
-#: ../src/roster_window.py:2519
+#: ../src/roster_window.py:2509
 msgid "You have running file transfers"
-msgstr "נותרו העברות קבצים פעילות"
+msgstr "יש לך העברות קבצים פעילות"
 
-#: ../src/roster_window.py:2520
-msgid ""
-"If you quit now, the file(s) being transferred will be stopped. Do you still "
-"want to quit?"
-msgstr ""
-"אם תצא עכשיו, הקובץ או הקבצים אשר מועברים כעת יופסקו. האם עדיין ברצונך לצאת?"
+# the transfer of file(s) that are being
+#: ../src/roster_window.py:2510
+msgid "If you quit now, the file(s) being transferred will be stopped. Do you still want to quit?"
+msgstr "אם תצא עכשיו, הקובץ או הקבצים שמועברים כעת יופסקו. האם עדיין ברצונך לצאת?"
 
-#: ../src/roster_window.py:2551 ../src/roster_window.py:2988
+#: ../src/roster_window.py:2541
+#: ../src/roster_window.py:2978
 msgid "You have unread messages"
-msgstr "נותרו הודעות אשר לא נקראו"
+msgstr "יש לך הודעות שלא נקראו"
 
 # BUG: and (A or THE) contact
 # קיימת לרשותך
 # היסטוריה מאופשרת
-#: ../src/roster_window.py:2552
-msgid ""
-"Messages will only be available for reading them later if you have history "
-"enabled and contact is in your roster."
-msgstr ""
-"הודעות יהיו זמינות לקריאה מאוחרת רק אם אפשרת רישום היסטוריה ואיש הקשר מצוי "
-"ברשימה שלך."
+#: ../src/roster_window.py:2542
+msgid "Messages will only be available for reading them later if you have history enabled and contact is in your roster."
+msgstr "הודעות יהיו זמינות לקריאה מאוחרת רק אם אפשרת רישום היסטוריה ואיש הקשר מצוי ברשימתך."
 
-#: ../src/roster_window.py:2989
+# לקרואן
+#: ../src/roster_window.py:2979
 msgid "You must read them before removing this transport."
-msgstr "עליך לקרוא אותן טרם הסרת מוביל זה."
+msgstr "עליך לקרוא אותן לפני הסרת מוביל זה."
 
-#: ../src/roster_window.py:2992
+#: ../src/roster_window.py:2982
 #, python-format
 msgid "Transport \"%s\" will be removed"
 msgstr "המוביל \"%s\" יוסר"
 
-#: ../src/roster_window.py:2993
-msgid ""
-"You will no longer be able to send and receive messages from contacts using "
-"this transport."
-msgstr ""
-"לא תעמוד עוד לרשותך האפשרות לקבל ולשלוח הודעות מתוך אנשי קשר באמצעות מוביל "
-"זה."
+#: ../src/roster_window.py:2983
+msgid "You will no longer be able to send and receive messages from contacts using this transport."
+msgstr "לא תעמוד עוד לרשותך האפשרות לקבל ולשלוח הודעות מן אנשי קשר באמצעות מוביל זה."
 
-#: ../src/roster_window.py:2996
+#: ../src/roster_window.py:2986
 msgid "Transports will be removed"
 msgstr "המובילים יוסרו"
 
 # הטרנספורטים שלהלן
 # הטרנספורטים הללו
-#: ../src/roster_window.py:3001
+#: ../src/roster_window.py:2991
 #, python-format
-msgid ""
-"You will no longer be able to send and receive messages to contacts from "
-"these transports: %s"
-msgstr ""
-"לא תעמוד עוד לרשותך האפשרות לקבל ולשלוח הודעות אל אנשי קשר מתוך מובילים אלו: "
-"%s"
+msgid "You will no longer be able to send and receive messages to contacts from these transports: %s"
+msgstr "לא תעמוד עוד לרשותך האפשרות לקבל ולשלוח הודעות אל אנשי קשר מן מובילים אלו: %s"
 
 # Needs to be tested
 # you have chose to
-#: ../src/roster_window.py:3043
+#: ../src/roster_window.py:3059
 msgid "You are about to block a contact. Are you sure you want to continue?"
-msgstr "בחרת לחסום איש קשר. האם אתה בטוח כי ברצונך להמשיך?"
+msgstr "בחרת לחסום איש קשר. האם עדיין ברצונך להמשיך?"
 
 # BUG: HE and SHE
 # על ידו או על ידה
-#: ../src/roster_window.py:3045
-msgid ""
-"This contact will see you offline and you will not receive messages he will "
-"send you."
-msgstr ""
-"איש קשר זה תמיד יראה אותך במצב לא מקוון ולא תהיה באפשרותך לקבל הודעות אשר "
-"יישלחו אליך ממנו."
+#: ../src/roster_window.py:3061
+msgid "This contact will see you offline and you will not receive messages he will send you."
+msgstr "איש קשר זה תמיד יראה אותך במצב לא מקוון ולא תהיה באפשרותך לקבל הודעות שישלחו אליך ממנו או ממנה."
 
 #. it's jid
-#: ../src/roster_window.py:3084
+#: ../src/roster_window.py:3151
 msgid "Rename Contact"
-msgstr "שינוי שם איש קשר"
+msgstr "שנה שם איש קשר"
 
-#: ../src/roster_window.py:3085
+#: ../src/roster_window.py:3152
 #, python-format
 msgid "Enter a new nickname for contact %s"
-msgstr "הזן שם כינוי חדש עבור איש קשר %s"
+msgstr "נא להזין שם כינוי חדש עבור איש קשר %s"
 
-#: ../src/roster_window.py:3092
+#: ../src/roster_window.py:3159
 msgid "Rename Group"
-msgstr "שינוי שם קבוצה"
+msgstr "שנה שם קבוצה"
 
-#: ../src/roster_window.py:3093
+#: ../src/roster_window.py:3160
 #, python-format
 msgid "Enter a new name for group %s"
-msgstr "הזן שם חדש עבור קבוצת %s"
+msgstr "נא להזין שם חדש עבור קבוצת %s"
 
-#: ../src/roster_window.py:3138
+#: ../src/roster_window.py:3205
 msgid "Remove Group"
 msgstr "הסרת קבוצה"
 
-#: ../src/roster_window.py:3139
+#: ../src/roster_window.py:3206
 #, python-format
 msgid "Do you want to remove group %s from the roster?"
-msgstr "האם ברצונך להסיר את קבוצת %s מתוך הרשימה?"
+msgstr "האם ברצונך להסיר את קבוצת %s מן הרשימה?"
 
-#: ../src/roster_window.py:3140
+#: ../src/roster_window.py:3207
 msgid "Also remove all contacts in this group from your roster"
-msgstr "בנוסף הסר גם את כל אנשי הקשר אשר בקבוצה זו מתוך הרשימה"
+msgstr "בנוסף גם להסיר את כל אנשי הקשר שבקבוצה זו מן רשימתך"
 
-#: ../src/roster_window.py:3179
+#: ../src/roster_window.py:3246
 msgid "Assign OpenPGP Key"
 msgstr "הקצאת מפתח OpenPGP"
 
 # BUG: the word OpenPGP should be written
 # להחלה
 # לאיש קשר זה
-#: ../src/roster_window.py:3180
+#: ../src/roster_window.py:3247
 msgid "Select a key to apply to the contact"
-msgstr "בחר מפתח ליישום עבור איש הקשר"
+msgstr "בחירת מפתח ליישם עבור איש הקשר"
 
-#: ../src/roster_window.py:3635
+#: ../src/roster_window.py:3706
 #, python-format
 msgid "Contact \"%s\" will be removed from your roster"
-msgstr "איש קשר \"%s\" יוסר מתוך רשימתך"
+msgstr "איש קשר \"%s\" יוסר מן רשימתך"
 
-#: ../src/roster_window.py:3637
+# you have chose to
+#: ../src/roster_window.py:3708
 #, python-format
 msgid "You are about to remove \"%(name)s\" (%(jid)s) from your roster.\n"
-msgstr "בחרת להסיר את \"%(name)s\" (%(jid)s) מתוך הרשימה שלך.\n"
+msgstr "בחרת להסיר את \"%(name)s\" (%(jid)s) מן רשימתך.\n"
 
-#: ../src/roster_window.py:3642
-msgid ""
-"By removing this contact you also remove authorization resulting in him or "
-"her always seeing you as offline."
-msgstr ""
-"בהסירך את איש קשר זה תוסר גם הרשאה דבר אשר יגרום לכך שהוא או היא יראו אותך "
-"במצב לא מקוון באופן תמידי."
+#: ../src/roster_window.py:3713
+msgid "By removing this contact you also remove authorization resulting in him or her always seeing you as offline."
+msgstr "בהסירך את איש קשר זה תוסר גם הרשאה דבר שיגרום לכך שזה יראה אותך במצב לא מקוון באופן תמידי."
 
 #. Contact is not in roster
-#: ../src/roster_window.py:3648
+#: ../src/roster_window.py:3719
 msgid "Do you want to continue?"
 msgstr "האם ברצונך להמשיך?"
 
-#: ../src/roster_window.py:3652
-msgid ""
-"By removing this contact you also by default remove authorization resulting "
-"in him or her always seeing you as offline."
-msgstr ""
-"בהסירך את איש קשר זה תוסר גם, באופן משתמט, הרשאה דבר אשר יגרום לכך שאיש הקשר "
-"יראה אותך במצב לא מקוון באופן תמידי."
+#: ../src/roster_window.py:3723
+msgid "By removing this contact you also by default remove authorization resulting in him or her always seeing you as offline."
+msgstr "בהסירך את איש קשר זה תוסר גם, באופן משתמט, הרשאה דבר שיגרום לכך שאיש הקשר יראה אותך במצב לא מקוון באופן תמידי."
 
-# לאחר כעבור
-#: ../src/roster_window.py:3655
+# לאחר
+#: ../src/roster_window.py:3726
 msgid "I want this contact to know my status after removal"
 msgstr "ברצוני שאיש קשר זה יהיה מיודע באשר אל מצב החיבור שלי עובר הסרה"
 
 #. several contact to remove at the same time
-#: ../src/roster_window.py:3659
+#: ../src/roster_window.py:3730
 msgid "Contacts will be removed from your roster"
-msgstr "אנשי קשר יוסרו מתןך הרשימה שלך"
+msgstr "אנשי קשר יוסרו מן רשימתך"
 
-#: ../src/roster_window.py:3664
+#: ../src/roster_window.py:3735
 #, python-format
 msgid ""
 "By removing these contacts:%s\n"
 "you also remove authorization resulting in them always seeing you as offline."
 msgstr ""
 "בהסירך את אנשי קשר אלו:%s\n"
-"אתה גם תסיר הרשאה דבר אשר יביא לכך שהם תמיד יראו אותך במצב לא מקוון."
+"אתה גם תסיר הרשאה דבר שיביא לכך שהם תמיד יראו אותך במצב לא מקוון."
 
-#: ../src/roster_window.py:3722
-msgid ""
-"You are about to send a custom status. Are you sure you want to continue?"
-msgstr "בחרת לשלוח מצב חיבור מותאם. האם אתה בטוח כי ברצונך להמשיך?"
+# you have chose to
+#: ../src/roster_window.py:3793
+msgid "You are about to send a custom status. Are you sure you want to continue?"
+msgstr "בחרת לשלוח מצב־חיבור מותאם. האם עדיין ברצונך להמשיך?"
 
-#: ../src/roster_window.py:3724
+#: ../src/roster_window.py:3795
 #, python-format
-msgid ""
-"This contact will temporarily see you as %(status)s, but only until you "
-"change your status. Then he or she will see your global status."
-msgstr ""
-"איש קשר זה יראה אותך באופן זמני במצב %(status)s, אך רק עד אשר תשנה את המצב "
-"שלך. אחרי כן הוא/היא יראו את מצב החיבור הגלובלי שלך."
+msgid "This contact will temporarily see you as %(status)s, but only until you change your status. Then he or she will see your global status."
+msgstr "איש קשר זה יראה אותך באופן זמני במצב %(status)s, אך רק עד שמצבך ישתנה על ידייך. אחרי כן הוא/היא יראו את מצב־חיבורך הגלובלי."
 
-#: ../src/roster_window.py:3743
+# Is this the same as: "There is no account available"?
+#: ../src/roster_window.py:3814
 msgid "No account available"
 msgstr "אין חשבון זמין"
 
+# לפני שתעמוד ליכולתך האפשרות לשוחח
 # לפני שתעמוד לרשותך האפשרות לשוחח
-#: ../src/roster_window.py:3744
+# לפני שתעמוד לרשותך היכולת לשוחח
+#: ../src/roster_window.py:3815
 msgid "You must create an account before you can chat with other contacts."
-msgstr "עליך ליצור חשבון טרם תהיה באפשרותך לשוחח עם אנשי קשר אחרים."
+msgstr "עליך ליצור חשבון לפני שיהיה ביכולתך לשוחח עם אנשי קשר אחרים."
 
-#: ../src/roster_window.py:4456
+#: ../src/roster_window.py:4512
 msgid "Metacontacts storage not supported by your server"
 msgstr "אחסון אנשי־קשר-מוצמדים לא נתמך על ידי שרתך"
 
-#: ../src/roster_window.py:4458
-msgid ""
-"Your server does not support storing metacontacts information. So this "
-"information will not be saved on next reconnection."
-msgstr ""
-"שרתך לא תומך באחסון מידע אנשי־קשר-מוצמדים. לכן מידע זה לא יישמר בהתחברות "
-"הבאה."
+# on (? your ?) next reconnection
+#: ../src/roster_window.py:4514
+msgid "Your server does not support storing metacontacts information. So this information will not be saved on next reconnection."
+msgstr "שרתך לא תומך באחסון מידע אנשי־קשר-מוצמדים. לכן מידע זה לא יישמר בהתחברות הבאה."
 
-#: ../src/roster_window.py:4550
-msgid ""
-"You are about to create a metacontact. Are you sure you want to continue?"
-msgstr "בחרת ליצור איש־קשר-מוצמד. האם אתה בטוח כי ברצונך להמשיך?"
+# you have chose to
+#: ../src/roster_window.py:4606
+msgid "You are about to create a metacontact. Are you sure you want to continue?"
+msgstr "בחרת ליצור איש־קשר-מוצמד. האם עדיין ברצונך להמשיך?"
 
-#: ../src/roster_window.py:4552
-msgid ""
-"Metacontacts are a way to regroup several contacts in one line. Generally it "
-"is used when the same person has several Jabber accounts or transport "
-"accounts."
-msgstr ""
-"אנשי־קשר-מוצמדים (Metacontacts) הינה דרך לאחד מספר אנשי קשר בשורה אחת. באופן "
-"כללי זו בשימוש כאשר אותה האישיות מחזיקה במספר חשבונות Jabber או חשבונות "
-"מוביל."
+#: ../src/roster_window.py:4608
+msgid "Metacontacts are a way to regroup several contacts in one line. Generally it is used when the same person has several Jabber accounts or transport accounts."
+msgstr "אנשי־קשר-מוצמדים (Metacontacts) הינה דרך לאחד מספר אנשי־קשר בשורה אחת. באופן כללי זו בשימוש כאשר אותה האישיות מחזיקה במספר חשבונות Jabber או חשבונות מוביל."
 
-#: ../src/roster_window.py:4673
+#: ../src/roster_window.py:4729
 msgid "Invalid file URI:"
 msgstr "כתובת URI של קובץ שגויה:"
 
-#: ../src/roster_window.py:4685
+#: ../src/roster_window.py:4741
 #, python-format
 msgid "Do you want to send this file to %s:"
 msgid_plural "Do you want to send these files to %s:"
 msgstr[0] "האם ברצונך לשלוח קובץ זה אל %s:"
 msgstr[1] "האם ברצונך לשלוח קבצים אלו אל %s:"
 
-#: ../src/roster_window.py:4820
+#: ../src/roster_window.py:4876
 #, python-format
 msgid "Send %s to %s"
-msgstr "שלח את %s אל %s"
+msgstr "שליחת %s אל %s"
 
-#: ../src/roster_window.py:4831
-#, python-format
+# הפוך את %s ואת %s אל metacontacts
+#: ../src/roster_window.py:4887
+#, fuzzy, python-format
 msgid "Make %s first contact"
-msgstr "הפוך את %s לאיש קשר ראשון"
+msgstr "הפוך את %s וגם %s אל אנשי־קשר-מוצמדים"
 
-#: ../src/roster_window.py:4834
+# הפוך את %s ואת %s אל metacontacts
+#: ../src/roster_window.py:4890
 #, python-format
 msgid "Make %s and %s metacontacts"
-msgstr "הפוך את %s וגם את %s לאנשי־קשר-מוצמדים"
+msgstr "הפיכת %s וגם %s אל אנשי־קשר-מוצמדים"
 
 #. new chat
 #. single message
 #. for chat_with
 #. for single message
 #. join gc
-#: ../src/roster_window.py:5294 ../src/roster_window.py:5348
-#: ../src/roster_window.py:5357 ../src/statusicon.py:277
-#: ../src/statusicon.py:324 ../src/statusicon.py:330
+#: ../src/roster_window.py:5346
+#: ../src/roster_window.py:5400
+#: ../src/roster_window.py:5409
+#: ../src/statusicon.py:277
+#: ../src/statusicon.py:324
+#: ../src/statusicon.py:330
 #, python-format
 msgid "using account %s"
 msgstr "באמצעות חשבון %s"
 
 #. add
-#: ../src/roster_window.py:5364
+#: ../src/roster_window.py:5416
 #, python-format
 msgid "to %s account"
 msgstr "אל חשבון %s"
 
 #. disco
-#: ../src/roster_window.py:5369
+#: ../src/roster_window.py:5421
 #, python-format
 msgid "using %s account"
 msgstr "באמצעות חשבון %s"
 
-#: ../src/roster_window.py:5408 ../src/statusicon.py:340
+#: ../src/roster_window.py:5460
+#: ../src/statusicon.py:340
 msgid "_Manage Bookmarks..."
-msgstr "_ניהול סימניות..."
+msgstr "_נהל סימניות..."
 
 #. profile, avatar
-#: ../src/roster_window.py:5428
+#: ../src/roster_window.py:5480
 #, python-format
 msgid "of account %s"
 msgstr "של חשבון %s"
 
-#: ../src/roster_window.py:5469
+#: ../src/roster_window.py:5521
 #, python-format
 msgid "for account %s"
 msgstr "עבור חשבון %s"
 
-#: ../src/roster_window.py:5529 ../src/roster_window.py:5637
+#: ../src/roster_window.py:5581
+#: ../src/roster_window.py:5689
 msgid "_Change Status Message"
 msgstr "_שנה הודעת מצב"
 
-#: ../src/roster_window.py:5562
+#: ../src/roster_window.py:5614
 msgid "Publish Tune"
 msgstr "פרסם לחן"
 
-#: ../src/roster_window.py:5564
+#: ../src/roster_window.py:5616
 msgid "Publish Location"
 msgstr "פרסם מיקום"
 
-#: ../src/roster_window.py:5567
+#: ../src/roster_window.py:5619
 msgid "Configure Services..."
-msgstr "הגדרת שירותים..."
+msgstr "הגדר שירותים..."
 
 # restore
-#: ../src/roster_window.py:5715
+#: ../src/roster_window.py:5767
 msgid "_Maximize All"
 msgstr "ה_גדל את כולם"
 
-#: ../src/roster_window.py:5725 ../src/roster_window.py:5898
+#: ../src/roster_window.py:5777
+#: ../src/roster_window.py:5950
 msgid "Send Group M_essage"
 msgstr "שלח הודעת _אשכול"
 
-#: ../src/roster_window.py:5733
+#: ../src/roster_window.py:5785
 msgid "To all users"
 msgstr "אל כל המשתמשים"
 
-#: ../src/roster_window.py:5737
+#: ../src/roster_window.py:5789
 msgid "To all online users"
 msgstr "אל כל המשתמשים המקוונים"
 
 #. Manage Transport submenu
-#: ../src/roster_window.py:5918
+#: ../src/roster_window.py:5970
 msgid "_Manage Contacts"
 msgstr "_נהל אנשי קשר"
 
 #. Edit Groups
-#: ../src/roster_window.py:5927
+#: ../src/roster_window.py:5979
 msgid "Edit _Groups"
 msgstr "ערוך _קבוצות"
 
 #. Send single message
-#: ../src/roster_window.py:5982
+#: ../src/roster_window.py:6034
 msgid "Send Single Message"
 msgstr "שלח הודעה בודדת"
 
 #. Execute Command
-#: ../src/roster_window.py:6029
+#: ../src/roster_window.py:6081
 msgid "Execute Command..."
-msgstr "הרצת פקודה..."
+msgstr "הרץ פקודה..."
 
 #. Manage Transport submenu
-#: ../src/roster_window.py:6039
+#: ../src/roster_window.py:6091
 msgid "_Manage Transport"
 msgstr "_נהל מוביל"
 
 #. Modify Transport
-#: ../src/roster_window.py:6048
+#: ../src/roster_window.py:6100
 msgid "_Modify Transport"
 msgstr "ה_תאם מוביל"
 
 #. Rename
-#: ../src/roster_window.py:6058
+#: ../src/roster_window.py:6110
 msgid "_Rename"
 msgstr "_שנה שם"
 
 # Restore שחזר
-#: ../src/roster_window.py:6118
+#: ../src/roster_window.py:6170
 msgid "_Maximize"
 msgstr "ה_גדל"
 
-#: ../src/roster_window.py:6127
+#: ../src/roster_window.py:6179
 msgid "_Reconnect"
-msgstr "הת_חבר מחדש"
+msgstr "הת_חבר מחודשת"
 
-#: ../src/roster_window.py:6134
+#: ../src/roster_window.py:6186
 msgid "_Disconnect"
 msgstr "הת_נתק"
 
 #. History manager
-#: ../src/roster_window.py:6228
+#: ../src/roster_window.py:6275
 msgid "History Manager"
 msgstr "מנהל היסטוריה"
 
-#: ../src/roster_window.py:6243
+#: ../src/roster_window.py:6286
 msgid "_Join New Group Chat"
-msgstr "ה_צטרף אל שיחת קבוצה חדשה"
+msgstr "ה_צטרפות אל שיחת קבוצה חדשה"
 
-#: ../src/roster_window.py:6471
+#: ../src/roster_window.py:6514
 msgid "Change Status Message..."
-msgstr "שינוי הודעת מצב..."
+msgstr "שנה הודעת מצב..."
 
 #: ../src/search_window.py:105
 msgid "Waiting for results"
@@ -11179,11 +11295,12 @@ msgstr "שגיאה בקבלת dataform"
 msgid "No result"
 msgstr "אין תנובה"
 
-#: ../src/session.py:409 ../src/session.py:469
-msgid "Confirm these session options"
-msgstr "אשר את אפשרויות סשן אלו"
-
 #: ../src/session.py:411
+#: ../src/session.py:470
+msgid "Confirm these session options"
+msgstr "וודא את אפשרויות סשן אלו"
+
+#: ../src/session.py:413
 #, python-format
 msgid ""
 "The remote client wants to negotiate a session with these features:\n"
@@ -11198,7 +11315,7 @@ msgstr ""
 "\n"
 "האם אפשרויות אלו מקובלות על דעתך?"
 
-#: ../src/session.py:471
+#: ../src/session.py:472
 #, python-format
 msgid ""
 "The remote client selected these options:\n"
@@ -11214,13 +11331,13 @@ msgstr ""
 "האם להמשיך עם הסשן?"
 
 # לאיש קשר
-#: ../src/session.py:474
+#: ../src/session.py:475
 msgid "Always accept for this contact"
 msgstr "הסכם תמיד עבור איש קשר זה"
 
 #: ../src/statusicon.py:241
 msgid "_Change Status Message..."
-msgstr "_שינוי הודעת מצב..."
+msgstr "_שנה הודעת מצב..."
 
 #: ../src/statusicon.py:355
 msgid "Hide _Roster"
@@ -11230,164 +11347,185 @@ msgstr "הסתר _רשימה"
 msgid "Hide this menu"
 msgstr "הסתר תפריט זה"
 
-#: ../src/tooltips.py:393 ../src/tooltips.py:614
+#: ../src/tooltips.py:393
+#: ../src/tooltips.py:613
 msgid "Jabber ID: "
-msgstr "מזהה Jabber: "
+msgstr "JID: "
 
-#: ../src/tooltips.py:397 ../src/tooltips.py:619
+#: ../src/tooltips.py:396
+#: ../src/tooltips.py:617
 msgid "Resource: "
 msgstr "משאב: "
 
-#: ../src/tooltips.py:403
+#: ../src/tooltips.py:402
 #, python-format
 msgid "%(owner_or_admin_or_member)s of this group chat"
-msgstr "%(owner_or_admin_or_member)s בשיחת קבוצה זו"
+msgstr "%(owner_or_admin_or_member)s בשיחת קבוצה זו"
 
-#: ../src/tooltips.py:511
+#: ../src/tooltips.py:510
 msgid " [blocked]"
 msgstr " [חסומה]"
 
-#: ../src/tooltips.py:515
+# (החדר) ממוזער
+#: ../src/tooltips.py:514
 msgid " [minimized]"
 msgstr " [ממוזערת]"
 
-# מצב חיבור
-#: ../src/tooltips.py:530 ../src/tooltips.py:791
+# מצב־חיבור
+#: ../src/tooltips.py:529
+#: ../src/tooltips.py:789
 msgid "Status: "
 msgstr "מצב: "
 
-#: ../src/tooltips.py:575
+#: ../src/tooltips.py:574
 #, python-format
 msgid "Last status: %s"
 msgstr "מצב אחרון: %s"
 
-#: ../src/tooltips.py:577
+#: ../src/tooltips.py:576
 #, python-format
 msgid " since %s"
 msgstr " מאז %s"
 
-#: ../src/tooltips.py:595
+#: ../src/tooltips.py:594
 msgid "Connected"
 msgstr "מחובר"
 
-#: ../src/tooltips.py:597
+#: ../src/tooltips.py:596
 msgid "Disconnected"
 msgstr "מנותק"
 
 #. ('both' is the normal sub so we don't show it)
-#: ../src/tooltips.py:626
+#: ../src/tooltips.py:624
 msgid "Subscription: "
 msgstr "הרשמה: "
 
-#: ../src/tooltips.py:636
+#: ../src/tooltips.py:634
 msgid "OpenPGP: "
-msgstr "OpenPGP: "
+msgstr "OpenPGP: "
 
 # מצוי/ה בחוסר פעילות
-#: ../src/tooltips.py:659
+#: ../src/tooltips.py:657
 #, python-format
 msgid "Idle since %s"
 msgstr "בחוסר פעילות מאז %s"
 
-#: ../src/tooltips.py:660
+#: ../src/tooltips.py:658
 #, python-format
 msgid "Idle for %s"
 msgstr "בחוסר פעילות במשך %s"
 
-#: ../src/tooltips.py:714
-msgid "Mood: "
-msgstr "מצב רוח: "
+#: ../src/tooltips.py:712
+#, python-format
+msgid "Mood: %s"
+msgstr "מצב רוח: %s"
 
-#: ../src/tooltips.py:718
-msgid "Activity: "
-msgstr "פעילות: "
+#: ../src/tooltips.py:716
+#, python-format
+msgid "Activity: %s"
+msgstr "פעילות: %s"
 
-#: ../src/tooltips.py:722
-msgid "Tune: "
-msgstr "לחן: "
+#: ../src/tooltips.py:720
+#, python-format
+msgid "Tune: %s"
+msgstr "לחן: %s"
 
-#: ../src/tooltips.py:726
-msgid "Location: "
-msgstr "מיקום: "
+#: ../src/tooltips.py:724
+#, python-format
+msgid "Location: %s"
+msgstr "מיקום: %s"
 
-#: ../src/tooltips.py:751
+#: ../src/tooltips.py:749
 msgid "Download"
 msgstr "הורדה"
 
-#: ../src/tooltips.py:757
+#: ../src/tooltips.py:755
 msgid "Upload"
 msgstr "העלאה"
 
-#: ../src/tooltips.py:764
+#: ../src/tooltips.py:762
 msgid "Type: "
-msgstr "טיפוס: "
+msgstr "סוג: "
 
-#: ../src/tooltips.py:770
+#: ../src/tooltips.py:768
 msgid "Transferred: "
 msgstr "הועברו: "
 
-#: ../src/tooltips.py:773 ../src/tooltips.py:790
+# טרם הותחל
+#: ../src/tooltips.py:771
+#: ../src/tooltips.py:788
 msgid "Not started"
 msgstr "לא הותחלה"
 
-#: ../src/tooltips.py:775
+# עוצרה
+#: ../src/tooltips.py:773
 msgid "Stopped"
 msgstr "נעצרה"
 
-#: ../src/tooltips.py:777 ../src/tooltips.py:780
+#: ../src/tooltips.py:775
+#: ../src/tooltips.py:778
 msgid "Completed"
 msgstr "הושלמה"
 
-#: ../src/tooltips.py:783
+#: ../src/tooltips.py:781
 msgid "?transfer status:Paused"
 msgstr "הושהתה"
 
+# מושהה
 #. stalled is not paused. it is like 'frozen' it stopped alone
-#: ../src/tooltips.py:786
+#: ../src/tooltips.py:784
 msgid "Stalled"
 msgstr "מוקפאת"
 
-#: ../src/tooltips.py:788
+# הקובץ מועבר כעת
+# מועבר כעת קובץ
+#: ../src/tooltips.py:786
 msgid "Transferring"
 msgstr "מעביר כעת"
 
 # השיב
-#: ../src/tooltips.py:825
+#: ../src/tooltips.py:823
 msgid "This service has not yet responded with detailed information"
-msgstr "שירות זה טרם הגיב עם מידע מפורט"
+msgstr "שירות זה עדיין לא הגיב עם מידע מפורט"
 
 # שבור, פגום
-#: ../src/tooltips.py:828
+#: ../src/tooltips.py:826
 msgid ""
 "This service could not respond with detailed information.\n"
 "It is most likely legacy or broken"
 msgstr ""
-"לא היה ביכולתו של שירות זה להגיב עם מידע מפורט.\n"
-"נראה כי שירות זה הינו מיושן או מקוטע"
+"אין ביכולת שירות זה להגיב עם מידע מפורט.\n"
+"כנראה שהשירות הינו מיושן או מקוטע"
 
-#: ../src/vcard.py:312
+#: ../src/upower_listener.py:31
+msgid "Machine going to sleep"
+msgstr "מחשב על סף שינה"
+
+#: ../src/vcard.py:296
 msgid "?Client:Unknown"
 msgstr "לא ידוע"
 
-#: ../src/vcard.py:314
+#: ../src/vcard.py:298
 msgid "?OS:Unknown"
 msgstr "לא ידועה"
 
-#: ../src/vcard.py:339
+#: ../src/vcard.py:323
 msgid "?Time:Unknown"
 msgstr "לא ידוע"
 
-#: ../src/vcard.py:363 ../src/vcard.py:373 ../src/vcard.py:581
+#: ../src/vcard.py:347
+#: ../src/vcard.py:357
+#: ../src/vcard.py:565
 #, python-format
 msgid "since %s"
 msgstr "מאז %s"
 
-#: ../src/vcard.py:396
+#: ../src/vcard.py:380
 msgid "?Role in Group Chat:Role: "
 msgstr "תפקיד: "
 
 # שיוך, סיפוח
-#: ../src/vcard.py:400
+#: ../src/vcard.py:384
 msgid "Affiliation: "
 msgstr "השתייכות: "
 
@@ -11395,41 +11533,1103 @@ msgstr "השתייכות: "
 # BUG:?
 # interested at his/her presence
 # interested in his/her presence information
-#: ../src/vcard.py:408
-msgid ""
-"This contact is interested in your presence information, but you are not "
-"interested in his/her presence"
-msgstr ""
-"איש קשר זה מעוניין במידע נוכחותך, אולם אין לך עניין בנוכחותו של איש קשר זה"
+#: ../src/vcard.py:392
+msgid "This contact is interested in your presence information, but you are not interested in his/her presence"
+msgstr "איש קשר זה מעוניין במידע נוכחותך, אולם אינך מגלה עניין בנוכחותו של איש קשר זה"
 
-#: ../src/vcard.py:410
-msgid ""
-"You are interested in the contact's presence information, but he/she is not "
-"interested in yours"
-msgstr ""
-"הינך מגלה עניין במידע הנוכחות איש קשר זה, אולם איש קשר זה אינו מעוניין "
-"בנוכחותך"
+#: ../src/vcard.py:394
+msgid "You are interested in the contact's presence information, but he/she is not interested in yours"
+msgstr "הינך מגלה עניין במידע הנוכחות איש קשר זה, אולם איש קשר זה אינו מעוניין בנוכחותך"
 
 # אחד את השני
-#: ../src/vcard.py:412
+#: ../src/vcard.py:396
 msgid "You and the contact are interested in each other's presence information"
 msgstr "הינך והן איש הקשר מעוניינים במידע הנוכחות של זה את זה"
 
 #. None
-#: ../src/vcard.py:414
-msgid ""
-"You are not interested in the contact's presence, and neither he/she is "
-"interested in yours"
+#: ../src/vcard.py:398
+msgid "You are not interested in the contact's presence, and neither he/she is interested in yours"
 msgstr "אין לך עניין בנוכחות של איש הקשר, וכך גם זה לא מעוניין בנוכחותך"
 
-#: ../src/vcard.py:421
+#: ../src/vcard.py:405
 msgid "You are waiting contact's answer about your subscription request"
 msgstr "הינך מחכה למענה של איש קשר בנוגע לבקשת רישומך"
 
-#: ../src/vcard.py:423
+#: ../src/vcard.py:407
 msgid "There is no pending subscription request."
 msgstr "לא קיימת שום בקשת הרשמה ממתינה."
 
-#: ../src/vcard.py:428 ../src/vcard.py:482 ../src/vcard.py:604
+#: ../src/vcard.py:412
+#: ../src/vcard.py:466
+#: ../src/vcard.py:588
 msgid " resource with priority "
 msgstr " משאב עם עדיפות "
+
+# מיידים - cast ; מידיים - from
+#~ msgid "Gajim Instant Messenger"
+#~ msgstr "Gajim מסרים מיידיים"
+#~ msgid "Fishing"
+#~ msgstr "דג"
+#~ msgid "Continue"
+#~ msgstr "המשך"
+#~ msgid "Requires python-farstream."
+#~ msgstr "יש צורך בהתקנת python-farstream."
+#~ msgid "Contacts"
+#~ msgstr "אנשי־קשר"
+#~ msgid "@"
+#~ msgstr "@"
+#~ msgid "Choose Client Cert"
+#~ msgstr "נא לבחור תעודת לקוח"
+#~ msgid "The path to the client certificate and key in PKCS#12 format"
+#~ msgstr "הנתיב אל תעודת הלקוח והמפתח בתסדיר PKCS#12"
+#~ msgid "Actions "
+#~ msgstr "פעולות "
+#~ msgid "Conditions "
+#~ msgstr "Conditions "
+#~ msgid "Advanced Actions"
+#~ msgstr "פעולות מתקדמות"
+#~ msgid "Advanced Notifications Control"
+#~ msgstr "בקרת התראות מתקדמת"
+#~ msgid "All statuses"
+#~ msgstr "כל המצבים"
+# עסוק (Avahi Discovery: TXT status = dnd)
+# לא להפריע Do not disturb
+#~ msgid "Busy "
+#~ msgstr "נא לא להפריע "
+#~ msgid "Contact Change Status "
+#~ msgstr "איש־הקשר החליף מצב־חיבור "
+#~ msgid "Contact Disconnected "
+#~ msgstr "איש־הקשר מנותק "
+#~ msgid "Don't have "
+#~ msgstr "Don't have "
+#~ msgid "File Transfer Started "
+#~ msgstr "העברת קובץ החלה "
+#~ msgid "Group Chat Message Highlight "
+#~ msgstr "הודעת שיחת קבוצה מובלטות "
+#~ msgid "Group Chat Message Received "
+#~ msgstr "התקבלה הודעה משיחת קבוצה"
+#~ msgid "Have "
+#~ msgstr "Have "
+#~ msgid "Launch a command"
+#~ msgstr "הרצת פקודה"
+#~ msgid "One or more special statuses..."
+#~ msgstr "מצב־חיבור מיוחד אחד או יותר..."
+#~ msgid "Online / Free For Chat"
+#~ msgstr "מקוון \\ פנוי לשיחה"
+#~ msgid "Play a sound"
+#~ msgstr "השמעת צליל"
+#~ msgid "Receive a Message"
+#~ msgstr "קבלת הודעה"
+# מתי או כאשר
+#~ msgid "When "
+#~ msgstr "כאשר "
+#~ msgid "_Disable auto opening chat window"
+#~ msgstr "_נטרול פתיחה אוטומטית של חלון שיחה"
+# what does it mean?
+#~ msgid "_Disable existing popup window"
+#~ msgstr "_נטרול חלון מוקפץ קיים"
+#, fuzzy
+#~ msgid "_Disable existing sound for this event"
+#~ msgstr "_נטרול צלילי existing עבור אירוע זה"
+
+# לוח תורנויות
+#~ msgid "_Disable showing event in roster"
+#~ msgstr "_נטרול הצגת אירוע בלוח החברים"
+#~ msgid "_Disable showing event in systray"
+#~ msgstr "_נטרול הצגת אירוע במגש המערכת"
+#~ msgid "_Inform me with a popup window"
+#~ msgstr "_יידע אותי באמצעות חלון מוקפץ"
+#~ msgid "_Open chat window with user"
+#~ msgstr "_פתיחת חלון שיחה עם משתמש"
+#~ msgid "_Show event in roster"
+#~ msgstr "ה_צגת אירוע בלוח החברים"
+#~ msgid "_Show event in systray"
+#~ msgstr "ה_צגת אירוע במגש המערכת"
+#~ msgid "and I "
+#~ msgstr "ואני "
+#, fuzzy
+#~ msgid "contact(s)"
+#~ msgstr "איש־קשר"
+
+#~ msgid "for "
+#~ msgstr "עבור "
+
+#~ msgid "group(s)"
+#~ msgstr "קבוצה/ות"
+
+# כאשר אני אצל
+#, fuzzy
+#~ msgid "when I'm in"
+#~ msgstr "when I'm in"
+
+#~ msgid "label"
+#~ msgstr "תווית"
+
+#~ msgid "Advanced..."
+#~ msgstr "מתקדם..."
+
+#~ msgid "Always use GNOME default applications"
+#~ msgstr "שימוש תמידי ביישומים המשתמטים של GNOME"
+
+#~ msgid "Always use Xfce default applications"
+#~ msgstr "שימוש תמידי ביישומים המשתמטים של Xfce"
+
+# איתור אוטומטי בכל פעם/עת שהיישום Gajim יאותחל
+#~ msgid "Autodetect on every Gajim startup"
+#~ msgstr "איתור אוטומטי בכל הפעלה של Gajim"
+# BUG: Systray icon
+#~ msgid "Show systray:"
+#~ msgstr "הצגת צלמית מגש המערכת:"
+#~ msgid "_Send Single Message..."
+#~ msgstr "_שליחת הודעה בודדת..."
+#~ msgid "User avatar:"
+#~ msgstr "אווטאר משתמש:"
+# BUG: insterting (TYPO)
+#, fuzzy
+#~ msgid ""
+#~ "If True, Gajim will convert string between $$ and $$ to an image using "
+#~ "dvips and convert before insterting it in chat window."
+#~ msgstr ""
+#~ "במידה והעדפה זו מופעלת, Gajim ימיר מחרוזת בין  $$ לבין $$ אל תמונה "
+#~ "באמצעות dvips וימיר לפני insterting אל חלון שיחה."
+
+#, fuzzy
+#~ msgid "'yes', 'no', or 'both'"
+#~ msgstr "'כן', 'לא', או 'שניהן'"
+
+#, fuzzy
+#~ msgid "'yes', 'no' or ''"
+#~ msgstr "'כן', 'לא' או ''"
+
+#~ msgid "Nickname not allowed: %s"
+#~ msgstr "כינוי לא מורשה: %s"
+
+#~ msgid "we are now subscribed to %s"
+#~ msgstr "אנחנו רשומים כעת אל %s"
+
+#~ msgid "we are now unsubscribed from %s"
+#~ msgstr "אנחנו כבר לא רשומים אל %s"
+
+# Mixed RTL with LTR
+# Needs to be tested
+#~ msgid "Error executing \"%(command)s\": %(error)s"
+#~ msgstr "שגיאה בהרצת \"%(command)s\": %(error)s"
+#~ msgid "error: cannot open %s for reading"
+#~ msgstr "שגיאה: לא ניתן לפתוח את הקובץ %s לקריאה"
+#~ msgid "Unable to bind to port %s."
+#~ msgstr "לא ניתן לכרוך אל פתחה %s."
+# שיש לך
+#~ msgid ""
+#~ "Maybe you have another running instance of Gajim. File Transfer will be "
+#~ "cancelled."
+#~ msgstr "יכול להיות שקיים תהליך אחר של Gajim שמורץ כעת. העברת קובץ תסתיים."
+#~ msgid "A GTK+ jabber client"
+#~ msgstr "A GTK+ jabber client"
+#, fuzzy
+#~ msgid "Condition"
+#~ msgstr "Condition"
+
+#~ msgid "when I am "
+#~ msgstr "כאשר אני "
+
+#~ msgid "Requires pybonjour (http://o2s.csail.mit.edu/o2s-wiki/pybonjour)."
+#~ msgstr ""
+#~ "יש צורך בהתקנת pybonjour \n"
+#~ "http://o2s.csail.mit.edu/o2s-wiki/pybonjour."
+
+#~ msgid "Requires gpg and python-GnuPGInterface."
+#~ msgstr "יש צורך בהתקנת gpg וגם python-GnuPGInterface."
+
+#~ msgid "LaTeX"
+#~ msgstr "LaTeX"
+
+# Transform to?
+# להפוך ל-
+# הפיכה אל
+# between what?
+#, fuzzy
+#~ msgid "Transform LaTeX expressions between $$ $$."
+#~ msgstr "שינוי ביטוי LaTeX בין $$ $$."
+
+# BUG? True >> Activated
+#~ msgid ""
+#~ "Requires texlive-latex-base and dvipng. You have to set 'use_latex' to "
+#~ "True in the Advanced Configuration Editor."
+#~ msgstr ""
+#~ "יש צורך בהתקנת texlive-latex-base וגם dvipng. עליך להגדיר את האפשרות "
+#~ "'use_latex' אל מופעלת בתוך עורך התצורה המתקדם."
+# Is it ok to translate to: All is included in MikTeX
+#~ msgid ""
+#~ "Requires texlive-latex-base and dvipng (All is in MikTeX). You have to "
+#~ "set 'use_latex' to True in the Advanced Configuration Editor."
+#~ msgstr ""
+#~ "יש צורך בהתקנת texlive-latex-base וגם dvipng (הכל כלול בתוך MikTeX). עליך "
+#~ "להגדיר את האפשרות 'use_latex' אל מופעלת בתוך עורך התצורה המתקדם."
+#, fuzzy
+#~ msgid "Disk WriteError"
+#~ msgstr "כונן WriteError"
+
+#~ msgid "Subject: %s"
+#~ msgstr "נושא: %s"
+
+#~ msgid "Account Modification"
+#~ msgstr "Account Modification"
+
+#~ msgid ""
+#~ "Check this so Gajim will connect in port 5223 where legacy servers are "
+#~ "expected to have SSL capabilities. Note that Gajim uses TLS encryption by "
+#~ "default if broadcasted by the server, and with this option enabled TLS "
+#~ "will be disabled"
+#~ msgstr ""
+#~ "Tick this so Gajim will connect in port 5223 where legacy servers are "
+#~ "expected to have SSL capabilities. Note that Gajim uses TLS encryption by "
+#~ "default if broadcasted by the server, and with this option enabled TLS "
+#~ "will be disabled"
+
+#~ msgid "Edit Personal Information..."
+#~ msgstr "Edit Personal Information..."
+
+#~ msgid "Hostname: "
+#~ msgstr "Hostname: "
+
+#~ msgid ""
+#~ "If checked, Gajim will store the password in ~/.gajim/config with 'read' "
+#~ "permission only for you"
+#~ msgstr ""
+#~ "If ticked, Gajim will store the password in ~/.gajim/config with 'read' "
+#~ "permission only for you"
+
+#~ msgid "Port: "
+#~ msgstr "Port: "
+
+#~ msgid "Proxy:"
+#~ msgstr "Proxy:"
+
+#~ msgid "Save _passphrase (insecure)"
+#~ msgstr "Save _passphrase (insecure)"
+
+#~ msgid "Send keep-alive packets"
+#~ msgstr "Send keep-alive packets"
+
+#~ msgid "Use _SSL (legacy)"
+#~ msgstr "Use _SSL (legacy)"
+
+#~ msgid "_Adjust to status"
+#~ msgstr "_Adjust to status"
+
+#~ msgid "gtk-add"
+#~ msgstr "gtk-add"
+
+#~ msgid "gtk-close"
+#~ msgstr "gtk-close"
+
+#~ msgid "gtk-remove"
+#~ msgstr "gtk-remove"
+
+#~ msgid ""
+#~ "Receive a Message\n"
+#~ "Contact Disconnected \n"
+#~ "Contact Change Status \n"
+#~ "Group Chat Message Highlight \n"
+#~ "Group Chat Message Received \n"
+#~ "File Transfer Request \n"
+#~ "File Transfer Started \n"
+#~ "File Transfer Finished"
+#~ msgstr ""
+#~ "Receive a Message\n"
+#~ "Contact Disconnected \n"
+#~ "Contact Change Status \n"
+#~ "Group Chat Message Highlight \n"
+#~ "Group Chat Message Received \n"
+#~ "File Transfer Request \n"
+#~ "File Transfer Started \n"
+#~ "File Transfer Finished"
+
+#~ msgid ""
+#~ "contact(s)\n"
+#~ "group(s)\n"
+#~ "everybody"
+#~ msgstr ""
+#~ "contact(s)\n"
+#~ "group(s)\n"
+#~ "everybody"
+
+#~ msgid ""
+#~ "Account row\n"
+#~ "Group row\n"
+#~ "Contact row\n"
+#~ "Chat Banner"
+#~ msgstr ""
+#~ "Account row\n"
+#~ "Group row\n"
+#~ "Contact row\n"
+#~ "Chat Banner"
+
+#~ msgid ""
+#~ "Enter JID or Contact name\n"
+#~ "Groupchat Histories\n"
+#~ "All Chat Histories"
+#~ msgstr ""
+#~ "Enter JID or Contact name\n"
+#~ "Groupchat Histories\n"
+#~ "All Chat Histories"
+
+#~ msgid "Manage Accounts"
+#~ msgstr "Manage Accounts"
+
+#~ msgid "gtk-delete"
+#~ msgstr "gtk-delete"
+
+#~ msgid "Send a file (Ctrl+F)"
+#~ msgstr "Send a file (Ctrl+F)"
+
+#~ msgid ""
+#~ "All chat states\n"
+#~ "Composing only\n"
+#~ "Disabled"
+#~ msgstr ""
+#~ "All chat states\n"
+#~ "Composing only\n"
+#~ "Disabled"
+
+#~ msgid ""
+#~ "Autodetect on every Gajim startup\n"
+#~ "Always use GNOME default applications\n"
+#~ "Always use KDE default applications\n"
+#~ "Always use Xfce default applications\n"
+#~ "Custom"
+#~ msgstr ""
+#~ "Autodetect on every Gajim startup\n"
+#~ "Always use GNOME default applications\n"
+#~ "Always use KDE default applications\n"
+#~ "Always use Xfce default applications\n"
+#~ "Custom"
+
+#~ msgid ""
+#~ "Detached roster with detached chats\n"
+#~ "Detached roster with single chat\n"
+#~ "Single window for everything\n"
+#~ "Detached roster with chat grouped by account\n"
+#~ "Detached roster with chat grouped by type"
+#~ msgstr ""
+#~ "Detached roster with detached chats\n"
+#~ "Detached roster with single chat\n"
+#~ "Single window for everything\n"
+#~ "Detached roster with chat grouped by account\n"
+#~ "Detached roster with chat grouped by type"
+
+#~ msgid ""
+#~ "Pop it up\n"
+#~ "Notify me about it\n"
+#~ "Show only in roster"
+#~ msgstr ""
+#~ "Pop it up\n"
+#~ "Notify me about it\n"
+#~ "Show only in roster"
+
+#~ msgid ""
+#~ "none\n"
+#~ "both\n"
+#~ "from\n"
+#~ "to"
+#~ msgstr ""
+#~ "none\n"
+#~ "both\n"
+#~ "from\n"
+#~ "to"
+
+#~ msgid "gtk-cancel"
+#~ msgstr "gtk-cancel"
+
+#~ msgid "_Quit"
+#~ msgstr "_Quit"
+
+#~ msgid "Enable"
+#~ msgstr "Enable"
+
+#~ msgid "Wrong host"
+#~ msgstr "Wrong host"
+
+#~ msgid "Invalid local address? :-O"
+#~ msgstr "Invalid local address? :-O"
+
+#~ msgid "pysqlite2 (aka python-pysqlite2) dependency is missing. Exiting..."
+#~ msgstr "pysqlite2 (aka python-pysqlite2) dependency is missing. Exiting..."
+
+#~ msgid "Banners and clickable links"
+#~ msgstr "Banners and clickable links"
+
+#~ msgid "Ability to have clickable URLs in chat and groupchat window banners."
+#~ msgstr ""
+#~ "Ability to have clickable URLs in chat and groupchat window banners."
+
+#~ msgid "Requires python-sexy."
+#~ msgstr "Requires python-sexy."
+
+#~ msgid "GTK+ runtime is missing libglade support"
+#~ msgstr "GTK+ runtime is missing libglade support"
+
+#~ msgid ""
+#~ "Please remove your current GTK+ runtime and install the latest stable "
+#~ "version from %s"
+#~ msgstr ""
+#~ "Please remove your current GTK+ runtime and install the latest stable "
+#~ "version from %s"
+
+#~ msgid ""
+#~ "Please make sure that GTK+ and PyGTK have libglade support in your system."
+#~ msgstr ""
+#~ "Please make sure that GTK+ and PyGTK have libglade support in your system."
+
+#~ msgid "Gajim needs PySQLite2 to run"
+#~ msgstr "Gajim needs PySQLite2 to run"
+
+#~ msgid "_Incoming message:"
+#~ msgstr "_Incoming message:"
+
+#~ msgid "_Outgoing message:"
+#~ msgstr "_Outgoing message:"
+
+#~ msgid ""
+#~ "The host %s you configured as the ft_add_hosts_to_send advanced option is "
+#~ "not valid, so ignored."
+#~ msgstr ""
+#~ "The host %s you configured as the ft_add_hosts_to_send advanced option is "
+#~ "not valid, so ignored."
+
+#~ msgid "OpenPGP passphrase was not given"
+#~ msgstr "OpenPGP passphrase was not given"
+
+#~ msgid ""
+#~ "To continue sending and receiving messages, you will need to reconnect."
+#~ msgstr ""
+#~ "To continue sending and receiving messages, you will need to reconnect."
+
+#~ msgid ""
+#~ "You are not connected or not visible to others. Your message could not be "
+#~ "sent."
+#~ msgstr ""
+#~ "You are not connected or not visible to others. Your message could not be "
+#~ "sent."
+
+#~ msgid "[This message is encrypted]"
+#~ msgstr "[This message is encrypted]"
+
+#~ msgid "%i days ago"
+#~ msgstr "%i days ago"
+
+#~ msgid "Trayicon"
+#~ msgstr "Trayicon"
+
+#~ msgid "A icon in systemtray reflecting the current presence."
+#~ msgstr "A icon in systemtray reflecting the current presence."
+
+#~ msgid ""
+#~ "Requires python-gnome2-extras or compiled trayicon module from Gajim "
+#~ "sources."
+#~ msgstr ""
+#~ "Requires python-gnome2-extras or compiled trayicon module from Gajim "
+#~ "sources."
+
+#~ msgid "Requires PyGTK >= 2.10."
+#~ msgstr "Requires PyGTK >= 2.10."
+
+#~ msgid "gtk-ok"
+#~ msgstr "gtk-ok"
+
+#~ msgid "Add Special _Notification"
+#~ msgstr "Add Special _Notification"
+
+#~ msgid "Assign Open_PGP Key"
+#~ msgstr "Assign Open_PGP Key"
+
+#~ msgid "Commands: %s"
+#~ msgstr "Commands: %s"
+
+#~ msgid ""
+#~ "Usage: /%(command)s , sends action to the current group chat. Use "
+#~ "third person. (e.g. /%(command)s explodes.)"
+#~ msgstr ""
+#~ "Usage: /%(command)s , sends action to the current group chat. Use "
+#~ "third person. (e.g. /%(command)s explodes.)"
+
+#~ msgid "No help info for /%s"
+#~ msgstr "No help info for /%s"
+
+#~ msgid "Enable link-local/zeroconf messaging"
+#~ msgstr "Enable link-local/zeroconf messaging"
+
+#~ msgid "Nickname not found: %s"
+#~ msgstr "Nickname not found: %s"
+
+#~ msgid "This group chat has no subject"
+#~ msgstr "This group chat has no subject"
+
+#~ msgid "Invited %(contact_jid)s to %(room_jid)s."
+#~ msgstr "Invited %(contact_jid)s to %(room_jid)s."
+
+#~ msgid ""
+#~ "There is an ambiguity: %d nicks match.\n"
+#~ " Please use graphical interface "
+#~ msgstr ""
+#~ "There is an ambiguity: %d nicks match.\n"
+#~ " Please use graphical interface "
+
+#~ msgid ""
+#~ "There is an ambiguity: %d nicks match.\n"
+#~ " Please use graphical interface"
+#~ msgstr ""
+#~ "There is an ambiguity: %d nicks match.\n"
+#~ " Please use graphical interface"
+
+#~ msgid ""
+#~ "Usage: /%s  [reason], bans the JID from the group chat. The "
+#~ "nickname of an occupant may be substituted, but not if it contains \"@\". "
+#~ "If the JID is currently in the group chat, he/she/it will also be kicked."
+#~ msgstr ""
+#~ "Usage: /%s  [reason], bans the JID from the group chat. The "
+#~ "nickname of an occupant may be substituted, but not if it contains \"@\". "
+#~ "If the JID is currently in the group chat, he/she/it will also be kicked."
+
+#~ msgid ""
+#~ "Usage: /%s [reason], closes the current window or tab, displaying reason "
+#~ "if specified."
+#~ msgstr ""
+#~ "Usage: /%s [reason], closes the current window or tab, displaying reason "
+#~ "if specified."
+
+#~ msgid ""
+#~ "Usage: /%s  [reason], invites JID to the current group chat, "
+#~ "optionally providing a reason."
+#~ msgstr ""
+#~ "Usage: /%s  [reason], invites JID to the current group chat, "
+#~ "optionally providing a reason."
+
+#~ msgid ""
+#~ "Usage: /%s @[/nickname], offers to join room@server "
+#~ "optionally using specified nickname."
+#~ msgstr ""
+#~ "Usage: /%s @[/nickname], offers to join room@server "
+#~ "optionally using specified nickname."
+
+#~ msgid ""
+#~ "Usage: /%s  [reason], removes the occupant specified by "
+#~ "nickname from the group chat and optionally displays a reason."
+#~ msgstr ""
+#~ "Usage: /%s  [reason], removes the occupant specified by "
+#~ "nickname from the group chat and optionally displays a reason."
+
+#~ msgid ""
+#~ "Usage: /%s  [message], opens a private message window and sends "
+#~ "message to the occupant specified by nickname."
+#~ msgstr ""
+#~ "Usage: /%s  [message], opens a private message window and sends "
+#~ "message to the occupant specified by nickname."
+
+#~ msgid "Usage: /%s , changes your nickname in current group chat."
+#~ msgstr "Usage: /%s , changes your nickname in current group chat."
+
+#~ msgid ""
+#~ "Usage: /%s [topic], displays or updates the current group chat topic."
+#~ msgstr ""
+#~ "Usage: /%s [topic], displays or updates the current group chat topic."
+
+#~ msgid ""
+#~ "Usage: /%s , sends a message without looking for other commands."
+#~ msgstr ""
+#~ "Usage: /%s , sends a message without looking for other commands."
+
+#~ msgid ""
+#~ "Usage: /%s , prevent  to send you messages or private "
+#~ "messages."
+#~ msgstr ""
+#~ "Usage: /%s , prevent  to send you messages or private "
+#~ "messages."
+
+#~ msgid ""
+#~ "Usage: /%s , allow  to send you messages and private "
+#~ "messages."
+#~ msgstr ""
+#~ "Usage: /%s , allow  to send you messages and private "
+#~ "messages."
+
+#~ msgid "Click to see features (like MSN, ICQ transports) of jabber servers"
+#~ msgstr "Click to see features (like MSN, ICQ transports) of jabber servers"
+
+#~ msgid "Servers Features"
+#~ msgstr "Servers Features"
+
+#~ msgid "Your JID:"
+#~ msgstr "Your JID:"
+
+#~ msgid "Name:"
+#~ msgstr "Name:"
+
+#~ msgid "_Host:"
+#~ msgstr "_Host:"
+
+#~ msgid "Select the account with which to synchronise"
+#~ msgstr "Select the account with which to synchronise"
+
+#~ msgid "Modify Account"
+#~ msgstr "Modify Account"
+
+#~ msgid ""
+#~ "%(title)s by %(artist)s\n"
+#~ "from %(source)s"
+#~ msgstr ""
+#~ "%(title)s by %(artist)s\n"
+#~ "from %(source)s"
+
+#~ msgid "Gajim account %s"
+#~ msgstr "Gajim account %s"
+
+#~ msgid "Duplicate Jabber ID"
+#~ msgstr "Duplicate Jabber ID"
+
+#~ msgid "This account is already configured in Gajim."
+#~ msgstr "This account is already configured in Gajim."
+
+#~ msgid "PyOpenSSL"
+#~ msgstr "PyOpenSSL"
+
+#~ msgid "gajim-remote"
+#~ msgstr "gajim-remote"
+
+#~ msgid "OpenGPG"
+#~ msgstr "OpenGPG"
+
+#~ msgid "gnome-keyring"
+#~ msgstr "gnome-keyring"
+
+#~ msgid ""
+#~ "Requires python-gnome2-extras or compilation of gtkspell module from "
+#~ "Gajim sources."
+#~ msgstr ""
+#~ "Requires python-gnome2-extras or compilation of gtkspell module from "
+#~ "Gajim sources."
+
+#~ msgid "Notification-daemon"
+#~ msgstr "Notification-daemon"
+
+#~ msgid "Idle"
+#~ msgstr "Idle"
+
+#~ msgid "Requires compilation of the idle module from Gajim sources."
+#~ msgstr "Requires compilation of the idle module from Gajim sources."
+
+#~ msgid "libsexy"
+#~ msgstr "libsexy"
+
+#~ msgid "File transfer stopped by the contact at the other end"
+#~ msgstr "File transfer stopped by the contact at the other end"
+
+#~ msgid "Generic"
+#~ msgstr "Generic"
+
+#~ msgid "Mood"
+#~ msgstr "Mood"
+
+#~ msgid "Activity"
+#~ msgstr "Activity"
+
+#~ msgid "%s has not broadcast an OpenPGP key, nor has one been assigned"
+#~ msgstr "%s has not broadcast an OpenPGP key, nor has one been assigned"
+
+#~ msgid "No such command: /%s (if you want to send this, prefix it with /say)"
+#~ msgstr ""
+#~ "No such command: /%s (if you want to send this, prefix it with /say)"
+
+#, fuzzy
+#~ msgid ""
+#~ "Usage: /%s , sends action to the current group chat. Use third "
+#~ "person. (e.g. /%s explodes.)"
+#~ msgstr ""
+#~ "Usage: /%(command)s , sends action to the current group chat. Use "
+#~ "third person. (e.g. /%(command)s explodes.)"
+
+#, fuzzy
+#~ msgid "Encryption enabled"
+#~ msgstr "E2E encryption enabled"
+
+#, fuzzy
+#~ msgid "Encryption disabled"
+#~ msgstr "E2E encryption disabled"
+
+#~ msgid ""
+#~ "If checked, Gajim will sort contacts in roster window and groupchats by "
+#~ "their status and not by the shown name"
+#~ msgstr ""
+#~ "If ticked, Gajim will sort contacts in roster window and groupchats by "
+#~ "their status and not by the shown name"
+
+#~ msgid "A_ccounts"
+#~ msgstr "A_ccounts"
+
+#~ msgid "\"%(title)s\"  by "
+#~ msgstr "\"%(title)s\"  by "
+
+#~ msgid "%(title)s by %(artist)s\n"
+#~ msgstr "%(title)s by %(artist)s\n"
+
+#~ msgid "The username used to identify the Last.fm account."
+#~ msgstr "The username used to identify the Last.fm account."
+
+#~ msgid "Thoughtful"
+#~ msgstr "Thoughtful"
+
+#~ msgid "Network Manager support not available"
+#~ msgstr "Network Manager support not available"
+
+#~ msgid "Session Management support not available (missing gnome.ui module)"
+#~ msgstr "Session Management support not available (missing gnome.ui module)"
+
+#~ msgid "_Retype Password:"
+#~ msgstr "_Retype Password:"
+
+#~ msgid ""
+#~ "If checked, all local contacts that use a Bonjour compatible chat client "
+#~ "(like iChat, Trillian or Gaim) will be shown in roster. You don't need to "
+#~ "be connected to a jabber server for it to work.\n"
+#~ "This is only available if python-avahi is installed and avahi-daemon is "
+#~ "running."
+#~ msgstr ""
+#~ "If ticked, all local contacts that use a Bonjour compatible chat client "
+#~ "(like iChat, Trillian or Gaim) will be shown in roster. You don't need to "
+#~ "be connected to a jabber server for it to work.\n"
+#~ "This is only available if python-avahi is installed and avahi-daemon is "
+#~ "running."
+
+#~ msgid ""
+#~ "If you have 2 or more accounts and this is checked, Gajim will list all "
+#~ "contacts as if you had one account"
+#~ msgstr ""
+#~ "If you have two or more accounts and this is ticked, Gajim will list all "
+#~ "contacts as if you had one account"
+
+#~ msgid "_Enable link-local messaging"
+#~ msgstr "_Enable link-local messaging"
+
+#~ msgid "2003-12-13T18:30:02Z"
+#~ msgstr "2003-12-13T18:30:02Z"
+
+#~ msgid "Romeo and Juliet "
+#~ msgstr "Romeo and Juliet "
+
+#~ msgid "Soliloquy"
+#~ msgstr "Soliloquy"
+
+#~ msgid "_Compact View    Alt+C"
+#~ msgstr "_Compact View    Alt+C"
+
+#~ msgid "Click to see past conversation in this room"
+#~ msgstr "Click to see past conversation in this room"
+
+#~ msgid "Build custom query"
+#~ msgstr "Build custom query"
+
+#~ msgid "Query Builder..."
+#~ msgstr "Query Builder..."
+
+#~ msgid "Invitation Received"
+#~ msgstr "Invitation Received"
+
+#~ msgid "Format of a line "
+#~ msgstr "Format of a line "
+
+#~ msgid "Interface Customization "
+#~ msgstr "Interface Customisation "
+
+#~ msgid "Also known as iChat style"
+#~ msgstr "Also known as iChat style"
+
+#~ msgid ""
+#~ "An example: If you have enabled status message for away, Gajim won't ask "
+#~ "you anymore for a status message when you change your status to away; it "
+#~ "will use the default one set here"
+#~ msgstr ""
+#~ "An example: If you have enabled status message for away, Gajim won't ask "
+#~ "you anymore for a status message when you change your status to away; it "
+#~ "will use the default one set here"
+
+#~ msgid "Chat"
+#~ msgstr "Chat"
+
+#~ msgid ""
+#~ "Determined by sender\n"
+#~ "Chat message\n"
+#~ "Single message"
+#~ msgstr ""
+#~ "Determined by sender\n"
+#~ "Chat message\n"
+#~ "Single message"
+
+#~ msgid "E_very 5 minutes"
+#~ msgstr "E_very 5 minutes"
+
+#~ msgid ""
+#~ "Gajim will automatically show new events by popping up the relative window"
+#~ msgstr ""
+#~ "Gajim will automatically show new events by popping up the relative window"
+
+#~ msgid ""
+#~ "Gajim will notify you for new events via a popup in the bottom right of "
+#~ "the screen"
+#~ msgstr ""
+#~ "Gajim will notify you for new events via a pop-up in the bottom right of "
+#~ "the screen"
+
+#~ msgid ""
+#~ "Gajim will notify you via a popup window in the bottom right of the "
+#~ "screen about contacts that just signed in"
+#~ msgstr ""
+#~ "Gajim will notify you via a pop-up window in the bottom right of the "
+#~ "screen about contacts that just signed in"
+
+#~ msgid ""
+#~ "Gajim will only change the icon of the contact that triggered the new "
+#~ "event"
+#~ msgstr ""
+#~ "Gajim will only change the icon of the contact that triggered the new "
+#~ "event"
+
+#~ msgid ""
+#~ "If checked, Gajim will remember the roster and chat window positions in "
+#~ "the screen and the sizes of them next time you run it"
+#~ msgstr ""
+#~ "If ticked, Gajim will remember the roster and chat window positions in "
+#~ "the screen and the sizes of them next time you run it"
+
+#~ msgid ""
+#~ "Never\n"
+#~ "Always\n"
+#~ "Per account\n"
+#~ "Per type"
+#~ msgstr ""
+#~ "Never\n"
+#~ "Always\n"
+#~ "Per account\n"
+#~ "Per type"
+
+#~ msgid "Outgoing Chat state noti_fications:"
+#~ msgstr "Outgoing Chat state noti_fications:"
+
+#~ msgid "Print time:"
+#~ msgstr "Print time:"
+
+#~ msgid "Save _position and size for roster and chat windows"
+#~ msgstr "Save _position and size for roster and chat windows"
+
+#~ msgid "Set status message to reflect currently playing _music track"
+#~ msgstr "Set status message to reflect currently playing _music track"
+
+#~ msgid "The auto away status message"
+#~ msgstr "The auto away status message"
+
+#~ msgid "The auto not available status message"
+#~ msgstr "The auto not available status message"
+
+#~ msgid ""
+#~ "When a new event (message, file transfer request etc..) is received, the "
+#~ "following methods may be used to inform you about it. Please note that "
+#~ "events about new messages only occur if it is a new message from a "
+#~ "contact you are not already chatting with"
+#~ msgstr ""
+#~ "When a new event (message, file transfer request etc..) is received, the "
+#~ "following methods may be used to inform you about it. Please note that "
+#~ "events about new messages only occur if it is a new message from a "
+#~ "contact you are not already chatting with"
+
+#~ msgid ""
+#~ "Works for Rhythmbox and Muine players. For more players, please visit "
+#~ "http://trac.gajim.org/wiki/GajimAndMusicPlayer"
+#~ msgstr ""
+#~ "Works for Rhythmbox and Muine players. For more players, please visit "
+#~ "http://trac.gajim.org/wiki/GajimAndMusicPlayer"
+
+#~ msgid "_Advanced Notifications Control..."
+#~ msgstr "_Advanced Notifications Control..."
+
+#~ msgid "_Player:"
+#~ msgstr "_Player:"
+
+#~ msgid "City:"
+#~ msgstr "City:"
+
+#~ msgid "Company:"
+#~ msgstr "Company:"
+
+#~ msgid "Given:"
+#~ msgstr "Given:"
+
+#~ msgid "Middle:"
+#~ msgstr "Middle:"
+
+#~ msgid "Position:"
+#~ msgstr "Position:"
+
+#~ msgid "Prefix:"
+#~ msgstr "Prefix:"
+
+#~ msgid "Role:"
+#~ msgstr "Role:"
+
+#~ msgid "State:"
+#~ msgstr "State:"
+
+#~ msgid "Suffix:"
+#~ msgstr "Suffix:"
+
+#~ msgid "_Remove from Roster"
+#~ msgstr "_Remove from Roster"
+
+#~ msgid "_Filter:"
+#~ msgstr "_Filter:"
+
+#~ msgid "Ask:"
+#~ msgstr "Ask:"
+
+#~ msgid "Client:"
+#~ msgstr "Client:"
+
+#~ msgid "OS:"
+#~ msgstr "OS:"
+
+#~ msgid "Subscription:"
+#~ msgstr "Subscription:"
+
+#~ msgid ""
+#~ "If that is not your language for which you want to highlight misspelled "
+#~ "words, then please set your $LANG as appropriate. Eg. for French do "
+#~ "export LANG=fr_FR or export LANG=fr_FR.UTF-8 in ~/.bash_profile or to "
+#~ "make it global in /etc/profile.\n"
+#~ "\n"
+#~ "Highlighting misspelled words feature will not be used"
+#~ msgstr ""
+#~ "If that is not your language for which you want to highlight misspelt "
+#~ "words, then please set your $LANG as appropriate. Eg. for French do "
+#~ "export LANG=fr_FR or export LANG=fr_FR.UTF-8 in ~/.bash_profile or to "
+#~ "make it global in /etc/profile.\n"
+#~ "\n"
+#~ "Highlighting misspelt words feature will not be used"
+
+#~ msgid "Every %s _minutes"
+#~ msgstr "Every %s _minutes"
+
+#~ msgid "You must enter a password for the new account."
+#~ msgstr "You must enter a password for the new account."
+
+#~ msgid "You will always see him or her as offline."
+#~ msgstr "You will always see him or her as offline."
+
+#~ msgid "%s is now %s (%s)"
+#~ msgstr "%s is now %s (%s)"
+
+#~ msgid "%s is now %s"
+#~ msgstr "%s is now %s"
+
+#~ msgid ""
+#~ "\n"
+#~ "From: %(from_address)s"
+#~ msgstr ""
+#~ "\n"
+#~ "From: %(from_address)s"
+
+#~ msgid ""
+#~ "Usage: %s %s %s \n"
+#~ "\t %s"
+#~ msgstr ""
+#~ "Usage: %s %s %s \n"
+#~ "\t %s"
+
+#~ msgid "Private Chat"
+#~ msgstr "Private Chat"
+
+#~ msgid "Group Chat"
+#~ msgstr "Group Chat"
+
+#~ msgid "%s does not appear to be a valid JID"
+#~ msgstr "%s does not appear to be a valid JID"
+
+#~ msgid "%s - Gajim"
+#~ msgstr "%s - Gajim"
+
+#~ msgid "_New group chat"
+#~ msgstr "_New group chat"
+
+#~ msgid "_Log on"
+#~ msgstr "_Log on"
+
+#~ msgid "Log _off"
+#~ msgstr "Log _off"
+
+#~ msgid "Save passphrase"
+#~ msgstr "Save passphrase"
+
+#~ msgid "Drop %s in group %s"
+#~ msgstr "Drop %s in group %s"
+
+#~ msgid "Hides the buttons in two persons chat window."
+#~ msgstr "Hides the buttons in two persons chat window."
+
+#~ msgid "Connected to server %s:%s with %s"
+#~ msgstr "Connected to server %s:%s with %s"
+
+#~ msgid "invisible"
+#~ msgstr "invisible"
+
+#~ msgid "offline"
+#~ msgstr "offline"
+
+#~ msgid " %d unread single message"
+
+#~ msgid_plural " %d unread single messages"
+#~ msgstr[0] " %d unread single message"
+#~ msgstr[1] " %d unread single messages"
+
+#~ msgid " %d unread group chat message"
+
+#~ msgid_plural " %d unread group chat messages"
+#~ msgstr[0] " %d unread group chat message"
+#~ msgstr[1] " %d unread group chat messages"
+
+#~ msgid " %d unread private message"
+
+#~ msgid_plural " %d unread private messages"
+#~ msgstr[0] " %d unread private message"
+#~ msgstr[1] " %d unread private messages"
+
+#~ msgid "gtk+"
+#~ msgstr "gtk+"
+
+#~ msgid ""
+#~ "Connection to host could not be established: Incorrect answer from server."
+#~ msgstr ""
+#~ "Connection to host could not be established: Incorrect answer from server."
+
+#~ msgid "Connection to host could not be established"
+#~ msgstr "Connection to host could not be established"
+
+#~ msgid "A_fter nickname:"
+#~ msgstr "A_fter nickname:"
+
+#~ msgid "_After time:"
+#~ msgstr "_After time:"
+
+#~ msgid "_Before time:"
+#~ msgstr "_Before time:"
+
+#~ msgid "_Retrieve"
+#~ msgstr "_Retrieve"
+
+#~ msgid "Information published"
+#~ msgstr "Information published"
+
+#~ msgid "Without a connection, you can not get your contact information."
+#~ msgstr "Without a connection, you can not get your contact information."
+
+#~ msgid "This is result of query."
+#~ msgstr "This is result of query."
+
+#~ msgid "Edit items on the list"
+#~ msgstr "Edit items on the list"
diff --git a/po/ru.po b/po/ru.po
index 5514a3c23..a53408671 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -12,18 +12,17 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ru\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-08-26 09:36+0400\n"
-"PO-Revision-Date: 2013-08-26 10:00+0300\n"
-"Last-Translator: Fomin Denis \n"
+"POT-Creation-Date: 2012-11-15 14:27+0400\n"
+"PO-Revision-Date: 2012-11-15 14:56+0300\n"
+"Last-Translator: Fomin Denis \n"
 "Language-Team: Linux Support LLC\n"
 "Language: ru\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 "X-Poedit-Basepath: /home/test/gajim\n"
-"X-Generator: Poedit 1.5.4\n"
+"X-Generator: Virtaal 0.6.1\n"
 
 #: ../data/gui/account_context_menu.ui.h:1
 #: ../data/gui/zeroconf_context_menu.ui.h:1
@@ -34,11 +33,13 @@ msgstr "_Статус"
 msgid "_Personal Events"
 msgstr "_Расширенный статус"
 
-#: ../data/gui/account_context_menu.ui.h:3 ../data/gui/roster_window.ui.h:3
+#: ../data/gui/account_context_menu.ui.h:3
+#: ../data/gui/roster_window.ui.h:3
 msgid "_Start Chat..."
 msgstr "_Начать беседу..."
 
-#: ../data/gui/account_context_menu.ui.h:4 ../data/gui/roster_window.ui.h:5
+#: ../data/gui/account_context_menu.ui.h:4
+#: ../data/gui/roster_window.ui.h:5
 msgid "Join _Group Chat..."
 msgstr "Войти в _комнату..."
 
@@ -46,7 +47,8 @@ msgstr "Войти в _комнату..."
 msgid "_Add Contact..."
 msgstr "_Добавить контакт..."
 
-#: ../data/gui/account_context_menu.ui.h:6 ../data/gui/roster_window.ui.h:7
+#: ../data/gui/account_context_menu.ui.h:6
+#: ../data/gui/roster_window.ui.h:7
 msgid "_Discover Services"
 msgstr "_Просмотреть сервисы"
 
@@ -180,14 +182,27 @@ msgid "_Finish"
 msgstr "_Закончить"
 
 #: ../data/gui/account_creation_wizard_window.ui.h:30
-#: ../data/gui/accounts_window.ui.h:1 ../data/gui/change_mood_dialog.ui.h:1
-#: ../src/config.py:1253 ../src/config.py:1267 ../src/config.py:1272
-#: ../src/config.py:1320 ../src/config.py:1423 ../src/config.py:1742
-#: ../src/config.py:1747 ../src/config.py:2339 ../src/config.py:2420
-#: ../src/config.py:2435 ../src/config.py:3716 ../src/config.py:3791
-#: ../src/dialogs.py:315 ../src/dialogs.py:317 ../src/dialogs.py:523
-#: ../src/dialogs.py:536 ../src/roster_window.py:3149
-#: ../src/roster_window.py:3155 ../src/roster_window.py:3160
+#: ../data/gui/accounts_window.ui.h:1
+#: ../data/gui/change_mood_dialog.ui.h:1
+#: ../src/config.py:1254
+#: ../src/config.py:1268
+#: ../src/config.py:1273
+#: ../src/config.py:1321
+#: ../src/config.py:1424
+#: ../src/config.py:1739
+#: ../src/config.py:1744
+#: ../src/config.py:2320
+#: ../src/config.py:2399
+#: ../src/config.py:2412
+#: ../src/config.py:3698
+#: ../src/config.py:3773
+#: ../src/dialogs.py:313
+#: ../src/dialogs.py:315
+#: ../src/dialogs.py:521
+#: ../src/dialogs.py:534
+#: ../src/roster_window.py:3214
+#: ../src/roster_window.py:3220
+#: ../src/roster_window.py:3225
 msgid "None"
 msgstr "Нет"
 
@@ -196,24 +211,28 @@ msgid "Accounts"
 msgstr "Учётные записи"
 
 #. Change label for accept_button to action name instead of 'OK'.
-#: ../data/gui/accounts_window.ui.h:3 ../src/dialogs.py:3524
-#: ../src/dialogs.py:3570
+#: ../data/gui/accounts_window.ui.h:3
+#: ../src/dialogs.py:3426
+#: ../src/dialogs.py:3472
 msgid "Add"
 msgstr "Добавить"
 
 #. Change label for accept_button to action name instead of 'OK'.
-#: ../data/gui/accounts_window.ui.h:4 ../src/dialogs.py:3528
-#: ../src/dialogs.py:3625
+#: ../data/gui/accounts_window.ui.h:4
+#: ../src/dialogs.py:3430
+#: ../src/dialogs.py:3527
 msgid "Delete"
 msgstr "Удалить"
 
 #. Rename
-#: ../data/gui/accounts_window.ui.h:5 ../src/roster_window.py:5794
+#: ../data/gui/accounts_window.ui.h:5
+#: ../src/roster_window.py:5844
 msgid "Re_name"
 msgstr "П_ереименовать"
 
 #. XML Console enable checkbutton
-#: ../data/gui/accounts_window.ui.h:6 ../data/gui/xml_console_window.ui.h:3
+#: ../data/gui/accounts_window.ui.h:6
+#: ../data/gui/xml_console_window.ui.h:3
 msgid "_Enable"
 msgstr "_Включить"
 
@@ -222,35 +241,30 @@ msgid "Anonymous authentication"
 msgstr "Анонимная аутентификация"
 
 #: ../data/gui/accounts_window.ui.h:8
-msgid ""
-"Resource is sent to the Jabber server in order to separate the same JID in "
-"two or more parts depending on the number of the clients connected in the "
-"same server with the same account. So you might be connected in the same "
-"account with resource 'Home' and 'Work' at the same time. The resource which "
-"has the highest priority will get the events. (see below)"
-msgstr ""
-"Ресурс отправляется Jabber серверу для того, чтобы различать два и более "
-"клиентов с одинаковой учетной записью, подключенных к одному и тому же "
-"серверу. Таким образом, вы можете одновременно подключиться к одному серверу "
-"с ресурсов 'Дом' или 'Работа'. Ресурс, обладающий большим приоритетом, будет "
-"получать все события. (См. ниже)"
+msgid "Resource is sent to the Jabber server in order to separate the same JID in two or more parts depending on the number of the clients connected in the same server with the same account. So you might be connected in the same account with resource 'Home' and 'Work' at the same time. The resource which has the highest priority will get the events. (see below)"
+msgstr "Ресурс отправляется Jabber серверу для того, чтобы различать два и более клиентов с одинаковой учетной записью, подключенных к одному и тому же серверу. Таким образом, вы можете одновременно подключиться к одному серверу с ресурсов 'Дом' или 'Работа'. Ресурс, обладающий большим приоритетом, будет получать все события. (См. ниже)"
 
 #. No configured account
-#: ../data/gui/accounts_window.ui.h:9 ../data/gui/roster_window.ui.h:1
-#: ../data/gajim.desktop.in.in.h:1 ../src/common/helpers.py:1168
-#: ../src/common/helpers.py:1180 ../src/notify.py:316 ../src/notify.py:339
-#: ../src/notify.py:389 ../src/notify.py:405
+#: ../data/gui/accounts_window.ui.h:9
+#: ../data/gui/roster_window.ui.h:1
+#: ../data/gajim.desktop.in.in.h:1
+#: ../src/common/helpers.py:1168
+#: ../src/common/helpers.py:1180
+#: ../src/notify.py:316
+#: ../src/notify.py:339
+#: ../src/notify.py:389
+#: ../src/notify.py:405
 msgid "Gajim"
 msgstr "Gajim"
 
 #: ../data/gui/accounts_window.ui.h:10
+#, fuzzy
 msgid "Synchronize contacts"
-msgstr "Синхронизировать контакты"
+msgstr "Объединить контакты"
 
 #: ../data/gui/accounts_window.ui.h:11
 msgid "Click to request authorization to all contacts of another account"
-msgstr ""
-"Щелкните, чтобы запросить авторизацию у всех контактов другой учетной записи"
+msgstr "Щелкните, чтобы запросить авторизацию у всех контактов другой учетной записи"
 
 #: ../data/gui/accounts_window.ui.h:12
 msgid "Chan_ge Password"
@@ -265,15 +279,8 @@ msgid "Administration operations"
 msgstr "Административные операции"
 
 #: ../data/gui/accounts_window.ui.h:15
-msgid ""
-"Priority is used in Jabber to determine who gets the events from the jabber "
-"server when two or more clients are connected using the same account; The "
-"client with the highest priority gets the events"
-msgstr ""
-"Приоритет используется в Jabber для определения того, кто будет получать "
-"события от jabber сервера когда подсоединены два и более клиента с одной и "
-"той же учетной записью. Клиент с наибольшим приоритетом будет получать "
-"события"
+msgid "Priority is used in Jabber to determine who gets the events from the jabber server when two or more clients are connected using the same account; The client with the highest priority gets the events"
+msgstr "Приоритет используется в Jabber для определения того, кто будет получать события от jabber сервера когда подсоединены два и более клиента с одной и той же учетной записью. Клиент с наибольшим приоритетом будет получать события"
 
 #: ../data/gui/accounts_window.ui.h:16
 msgid "A_djust to status"
@@ -302,7 +309,7 @@ msgstr "_Просмотреть..."
 #: ../data/gui/accounts_window.ui.h:26
 #, fuzzy
 msgid "Certificate is e_ncrypted"
-msgstr "Недействительный сертификат"
+msgstr "Сертификат отклонен"
 
 #: ../data/gui/accounts_window.ui.h:27
 msgid "Client certificate"
@@ -318,12 +325,8 @@ msgid "C_onnect on Gajim startup"
 msgstr "_Соединяться при запуске Gajim"
 
 #: ../data/gui/accounts_window.ui.h:30
-msgid ""
-"If checked, Gajim, when launched, will automatically connect to jabber using "
-"this account"
-msgstr ""
-"Если отмечено, Gajim после запуска будет автоматически подсоединяться к "
-"jabber серверу с использованием этой учетной записи"
+msgid "If checked, Gajim, when launched, will automatically connect to jabber using this account"
+msgstr "Если отмечено, Gajim после запуска будет автоматически подсоединяться к jabber серверу с использованием этой учетной записи"
 
 #: ../data/gui/accounts_window.ui.h:31
 msgid "Auto-reconnect when connection is lost"
@@ -338,35 +341,29 @@ msgid "Synch_ronize account status with global status"
 msgstr "Син_хронизировать статус учетной записи с глобальным статусом"
 
 #: ../data/gui/accounts_window.ui.h:34
-msgid ""
-"If checked, any change to the global status (handled by the combobox at the "
-"bottom of the roster window) will change the status of this account "
-"accordingly"
-msgstr ""
-"Если отмечено, то любые изменения глобального статуса (управляемого из "
-"выпадающего списка внизу окна ростера) повлекут за собой изменение статуса "
-"этой учетной записи"
+msgid "If checked, any change to the global status (handled by the combobox at the bottom of the roster window) will change the status of this account accordingly"
+msgstr "Если отмечено, то любые изменения глобального статуса (управляемого из выпадающего списка внизу окна ростера) повлекут за собой изменение статуса этой учетной записи"
 
 #: ../data/gui/accounts_window.ui.h:35
 msgid "Use file transfer proxies"
 msgstr "Использовать прокси для передачи файла"
 
 #: ../data/gui/accounts_window.ui.h:36
-msgid ""
-"If checked, Gajim will also broadcast some more IPs except from just your "
-"IP, so file transfer has higher chances of working."
-msgstr ""
-"Если отмечено, Gajim будет передавать еще несколько IP адресов в дополнение "
-"к вашему, так что передача файла имеет больше шансов на успех."
+msgid "If checked, Gajim will also broadcast some more IPs except from just your IP, so file transfer has higher chances of working."
+msgstr "Если отмечено, Gajim будет передавать еще несколько IP адресов в дополнение к вашему, так что передача файла имеет больше шансов на успех."
 
 #. FIXME: Ugly workaround.
 #. FIXME: Ugly workaround.
 #. Maybe we haven't been in any group (defaults to General)
 #. General group cannot be changed
-#: ../data/gui/accounts_window.ui.h:37 ../data/gui/preferences_window.ui.h:41
-#: ../src/common/contacts.py:135 ../src/dialogs.py:115 ../src/dialogs.py:127
-#: ../src/roster_window.py:3091 ../src/roster_window.py:4217
-#: ../src/roster_window.py:5844
+#: ../data/gui/accounts_window.ui.h:37
+#: ../data/gui/preferences_window.ui.h:46
+#: ../src/common/contacts.py:135
+#: ../src/dialogs.py:113
+#: ../src/dialogs.py:125
+#: ../src/roster_window.py:3156
+#: ../src/roster_window.py:4284
+#: ../src/roster_window.py:5894
 msgid "General"
 msgstr "Общие"
 
@@ -374,7 +371,8 @@ msgstr "Общие"
 msgid "_use HTTP__PROXY environment variable"
 msgstr "_использовать переменную HTTP_PROXY"
 
-#: ../data/gui/accounts_window.ui.h:39 ../data/gui/preferences_window.ui.h:134
+#: ../data/gui/accounts_window.ui.h:39
+#: ../data/gui/preferences_window.ui.h:137
 msgid "_Manage..."
 msgstr "_Управление..."
 
@@ -388,24 +386,16 @@ msgid "_Warn before using an insecure connection"
 msgstr "_Предупреждать перед использованием незащищенного соединения"
 
 #: ../data/gui/accounts_window.ui.h:42
-msgid ""
-"Check this so Gajim will ask you before sending your password over an "
-"insecure connection."
-msgstr ""
-"Если отмечено, то Gajim будет спрашивать вас перед отправкой пароля через "
-"незащищенное соединение."
+msgid "Check this so Gajim will ask you before sending your password over an insecure connection."
+msgstr "Если отмечено, то Gajim будет будет спрашивать вас перед отправкой пароля через незащищенное соединение."
 
 #: ../data/gui/accounts_window.ui.h:43
 msgid "Send _keep-alive packets"
 msgstr "Отправлять _пинг"
 
 #: ../data/gui/accounts_window.ui.h:44
-msgid ""
-"If checked, Gajim will send keep-alive packets to prevent connection timeout "
-"which results in disconnection"
-msgstr ""
-"Если отмечено, то Gajim будет пинговать сервер, чтобы избежать разрыва "
-"соединения по таймауту"
+msgid "If checked, Gajim will send keep-alive packets to prevent connection timeout which results in disconnection"
+msgstr "Если отмечено, то Gajim будет пинговать сервер, чтобы избежать разрыва соединения по таймауту"
 
 #: ../data/gui/accounts_window.ui.h:45
 msgid "Use cust_om hostname/port"
@@ -419,7 +409,8 @@ msgstr "_Хост: "
 msgid "_Port: "
 msgstr "_Порт:"
 
-#: ../data/gui/accounts_window.ui.h:48 ../data/gui/preferences_window.ui.h:138
+#: ../data/gui/accounts_window.ui.h:48
+#: ../data/gui/preferences_window.ui.h:141
 msgid "Miscellaneous "
 msgstr "Прочее "
 
@@ -427,8 +418,9 @@ msgstr "Прочее "
 msgid "Connection"
 msgstr "Соединение"
 
-#: ../data/gui/accounts_window.ui.h:50 ../src/config.py:1840
-#: ../src/config.py:2436
+#: ../data/gui/accounts_window.ui.h:50
+#: ../src/config.py:1835
+#: ../src/config.py:2413
 msgid "No key selected"
 msgstr "Не выбран ключ"
 
@@ -460,7 +452,8 @@ msgstr "Информация о вас, сохраненная на сервер
 msgid "Personal Information "
 msgstr "Личная информация "
 
-#: ../data/gui/accounts_window.ui.h:58 ../data/gui/profile_window.ui.h:1
+#: ../data/gui/accounts_window.ui.h:58
+#: ../data/gui/profile_window.ui.h:1
 msgid "Personal Information"
 msgstr "Личная информация"
 
@@ -478,12 +471,10 @@ msgstr "_Другой порт:"
 
 #: ../data/gui/accounts_window.ui.h:62
 msgid ""
-"If the default port that is used for incoming messages is unfitting for your "
-"setup you can select another one here.\n"
+"If the default port that is used for incoming messages is unfitting for your setup you can select another one here.\n"
 "You might consider to change possible firewall settings."
 msgstr ""
-"Если порт по умолчанию, который используется для входящих сообщений вас не "
-"устраивает, вы можете выбрать другой.\n"
+"Если порт по умолчанию, который используется для входящих сообщения вас не устраивает, вы можете выбрать другой.\n"
 "Также, возможно, придется изменить некоторые настройки брандмауэра."
 
 #: ../data/gui/accounts_window.ui.h:64
@@ -502,8 +493,9 @@ msgid "E-Mail:"
 msgstr "Почта:"
 
 #: ../data/gui/accounts_window.ui.h:67
-#: ../data/gui/zeroconf_information_window.ui.h:7 ../src/config.py:1867
-#: ../src/dialogs.py:841
+#: ../data/gui/zeroconf_information_window.ui.h:7
+#: ../src/config.py:1862
+#: ../src/dialogs.py:839
 msgid "Jabber ID:"
 msgstr "Jabber ID:"
 
@@ -568,12 +560,14 @@ msgstr ""
 "Чтобы добавить контакт для этого протокола,\n"
 "нужно соединиться с транспортом."
 
-#: ../data/gui/add_new_contact_window.ui.h:16 ../src/common/helpers.py:1366
+#: ../data/gui/add_new_contact_window.ui.h:16
+#: ../src/common/helpers.py:1363
 msgid "I would like to add you to my contact list."
 msgstr "Вы не возражаете, если я добавлю Вас в контакт-лист?"
 
 #. displaying the window
-#: ../data/gui/adhoc_commands_window.ui.h:1 ../src/adhoc_commands.py:104
+#: ../data/gui/adhoc_commands_window.ui.h:1
+#: ../src/adhoc_commands.py:102
 msgid "Ad-hoc Commands - Gajim"
 msgstr "Специальные команды — Gajim"
 
@@ -590,9 +584,8 @@ msgid "Check once more"
 msgstr "Проверить еще раз"
 
 #: ../data/gui/adhoc_commands_window.ui.h:5
-#, fuzzy
-msgid "Please wait while the command is being sent..."
-msgstr "пожалуйста, подождите, пока будет генерироваться ключ ...\n"
+msgid "Please wait while the command is sending..."
+msgstr "Происходит отправка команды. Подождите..."
 
 #: ../data/gui/adhoc_commands_window.ui.h:6
 msgid "Please wait..."
@@ -629,13 +622,12 @@ msgstr "Описание "
 
 #: ../data/gui/advanced_configuration_window.ui.h:4
 msgid "NOTE:  You should restart Gajim for some settings to take effect"
-msgstr ""
-"ПРИМЕЧАНИЕ:  Необходимо перезапустить Gajim, чтобы некоторые настройки "
-"вступили в силу"
+msgstr "ПРИМЕЧАНИЕ:  Необходимо перезапустить Gajim, чтобы некоторые настройки вступили в силу"
 
 #: ../data/gui/advanced_configuration_window.ui.h:5
+#, fuzzy
 msgid "_Reset to default"
-msgstr "_Сбросить до исходных"
+msgstr "_Вернуться к цветам по умолчанию"
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:1
 msgid "Show _XML Console"
@@ -659,8 +651,7 @@ msgstr "_Отправить сообщение сервера..."
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:6
 msgid "Sends a message to users currently connected to this server"
-msgstr ""
-"Отправляет сообщение пользователям, подсоединенным к серверу в данный момент"
+msgstr "Отправляет сообщение пользователям подсоединенным к серверу в данный момент"
 
 #: ../data/gui/advanced_menuitem_menu.ui.h:7
 msgid "Sets Message of the Day"
@@ -692,49 +683,45 @@ msgid "No"
 msgstr "Нет"
 
 #: ../data/gui/archiving_preferences_window.ui.h:2
-#, fuzzy
 msgid "Yes"
-msgstr "Да"
+msgstr ""
 
 #: ../data/gui/archiving_preferences_window.ui.h:3
 #, fuzzy
 msgid "Prefer"
-msgstr "Предпочитать обычный текст"
+msgstr "Настройки"
 
 #: ../data/gui/archiving_preferences_window.ui.h:4
 msgid "Concede"
 msgstr ""
 
 #: ../data/gui/archiving_preferences_window.ui.h:5
-#, fuzzy
 msgid "Forbid"
-msgstr "^Запретить версию"
+msgstr ""
 
 #: ../data/gui/archiving_preferences_window.ui.h:6
-#, fuzzy
 msgid "Method Manual "
-msgstr "Руководство пользователя Anjuta"
+msgstr ""
 
 #: ../data/gui/archiving_preferences_window.ui.h:7
-#, fuzzy
 msgid "Method Local "
-msgstr "Локальный JID:"
+msgstr ""
 
 #: ../data/gui/archiving_preferences_window.ui.h:8
-#, fuzzy
 msgid "Method Auto "
-msgstr "Авто статус "
+msgstr ""
 
 #: ../data/gui/archiving_preferences_window.ui.h:9
 #, fuzzy
 msgid "Auto"
-msgstr "Авто"
+msgstr "Автоматическое присоединение"
 
 #: ../data/gui/atom_entry_window.ui.h:1
 msgid "New entry received"
 msgstr "Получена новая запись"
 
-#: ../data/gui/atom_entry_window.ui.h:2 ../src/atom_window.py:128
+#: ../data/gui/atom_entry_window.ui.h:2
+#: ../src/atom_window.py:128
 msgid "You have received new entry:"
 msgstr "Получена новая запись:"
 
@@ -751,9 +738,8 @@ msgid "Last modified:"
 msgstr "Последнее изменение:"
 
 #: ../data/gui/atom_entry_window.ui.h:6
-#, fuzzy
 msgid "Next entry"
-msgstr "Неверная запись"
+msgstr ""
 
 #: ../data/gui/blocked_contacts_window.ui.h:1
 msgid "Blocked Contacts"
@@ -761,8 +747,10 @@ msgstr "Заблокированные контакты"
 
 #: ../data/gui/blocked_contacts_window.ui.h:2
 #: ../data/gui/contact_context_menu.ui.h:20
-#: ../data/gui/gc_occupants_menu.ui.h:14 ../src/roster_window.py:5813
-#: ../src/roster_window.py:5940 ../src/roster_window.py:6073
+#: ../data/gui/gc_occupants_menu.ui.h:14
+#: ../src/roster_window.py:5863
+#: ../src/roster_window.py:5990
+#: ../src/roster_window.py:6123
 msgid "_Unblock"
 msgstr "_Разблокировать"
 
@@ -849,86 +837,106 @@ msgstr "Войти в _комнату"
 msgid "_Add to Roster..."
 msgstr "_Добавить в ростер..."
 
-#: ../data/gui/chat_control.ui.h:1 ../data/gui/groupchat_control.ui.h:1
+#: ../data/gui/chat_control.ui.h:1
+#: ../data/gui/groupchat_control.ui.h:1
 msgid "Show a list of emoticons (Alt+M)"
 msgstr "Показать набор смайлов (Alt+M)"
 
 #: ../data/gui/chat_control.ui.h:2
+#: ../data/gui/groupchat_control.ui.h:2
+msgid "Show a list of formattings"
+msgstr "Показать список форматирования"
+
+#: ../data/gui/chat_control.ui.h:3
 msgid "Add this contact to roster (Ctrl+D)"
 msgstr "Добавить контакт в ростер (Ctrl+D)"
 
-#: ../data/gui/chat_control.ui.h:3
+#. change tooltip text for audio and video buttons if python-farstream is
+#. not installed
+#: ../data/gui/chat_control.ui.h:4
+#: ../src/chat_control.py:1724
+#: ../src/command_system/implementation/standard.py:214
+msgid "Toggle audio session"
+msgstr "Переключить аудио сеанс"
+
+#: ../data/gui/chat_control.ui.h:5
+#: ../src/chat_control.py:1725
+#: ../src/command_system/implementation/standard.py:224
+msgid "Toggle video session"
+msgstr "Переключить видео сеанс"
+
+#: ../data/gui/chat_control.ui.h:6
 msgid "Invite contacts to the conversation (Ctrl+G)"
 msgstr "Пригласить к беседе (Ctrl+G)"
 
-#: ../data/gui/chat_control.ui.h:4
-msgid "View contact information (Ctrl+I)"
+#: ../data/gui/chat_control.ui.h:7
+msgid "Show the contact's profile (Ctrl+I)"
 msgstr "Показать информацию о контакте (Ctrl+I)"
 
-#: ../data/gui/chat_control.ui.h:5 ../data/gui/groupchat_control.ui.h:6
+#: ../data/gui/chat_control.ui.h:8
+#: ../data/gui/groupchat_control.ui.h:6
 msgid "Browse the chat history (Ctrl+H)"
 msgstr "Открыть историю чата (Ctrl+H)"
 
-#: ../data/gui/chat_control.ui.h:6 ../data/gui/groupchat_control.ui.h:7
-msgid "Show advanced functions (Alt+D)"
+#: ../data/gui/chat_control.ui.h:9
+#: ../data/gui/groupchat_control.ui.h:7
+msgid "Show a menu of advanced functions (Alt+D)"
 msgstr "Показать меню дополнительных функций (Alt+D)"
 
-#: ../data/gui/chat_control.ui.h:7
+#: ../data/gui/chat_control.ui.h:10
 msgid "#"
 msgstr "№"
 
-#: ../data/gui/chat_control.ui.h:8 ../data/gui/groupchat_control.ui.h:8
-#: ../data/gui/single_message_window.ui.h:6
-msgid "Send message"
-msgstr "Отправить сообщение"
-
 #. Make sure the character after "_" is not M/m (conflicts with Alt+M that is supposed to show the Emoticon Selector)
-#: ../data/gui/chat_control.ui.h:10 ../data/gui/groupchat_control.ui.h:10
-#: ../data/gui/xml_console_window.ui.h:15 ../src/filetransfers_window.py:322
+#: ../data/gui/chat_control.ui.h:12
+#: ../data/gui/groupchat_control.ui.h:9
+#: ../data/gui/xml_console_window.ui.h:15
+#: ../src/filetransfers_window.py:322
 msgid "_Send"
 msgstr "_Отправить"
 
-#: ../data/gui/chat_control.ui.h:11
+#: ../data/gui/chat_control.ui.h:13
 msgid "1"
 msgstr "1"
 
-#: ../data/gui/chat_control.ui.h:12
+#: ../data/gui/chat_control.ui.h:14
 msgid "2"
 msgstr "2"
 
-#: ../data/gui/chat_control.ui.h:13
+#: ../data/gui/chat_control.ui.h:15
 msgid "3"
 msgstr "3"
 
-#: ../data/gui/chat_control.ui.h:14
+#: ../data/gui/chat_control.ui.h:16
 msgid "4"
 msgstr "4"
 
-#: ../data/gui/chat_control.ui.h:15
+#: ../data/gui/chat_control.ui.h:17
 msgid "5"
 msgstr "5"
 
-#: ../data/gui/chat_control.ui.h:16
+#: ../data/gui/chat_control.ui.h:18
 msgid "6"
 msgstr "6"
 
-#: ../data/gui/chat_control.ui.h:17
+#: ../data/gui/chat_control.ui.h:19
 msgid "7"
 msgstr "7"
 
-#: ../data/gui/chat_control.ui.h:18
+#: ../data/gui/chat_control.ui.h:20
 msgid "8"
 msgstr "8"
 
-#: ../data/gui/chat_control.ui.h:19
+#: ../data/gui/chat_control.ui.h:21
 msgid "9"
 msgstr "9"
 
-#: ../data/gui/chat_control.ui.h:20
+#: ../data/gui/chat_control.ui.h:22
 msgid "*"
 msgstr "*"
 
-#: ../data/gui/chat_control.ui.h:21 ../data/gui/single_message_window.ui.h:3
+#: ../data/gui/chat_control.ui.h:23
+#: ../data/gui/single_message_window.ui.h:3
 msgid "0"
 msgstr "0"
 
@@ -960,7 +968,8 @@ msgstr "_Пригласить"
 msgid "Start _Chat"
 msgstr "Начать _беседу"
 
-#: ../data/gui/contact_context_menu.ui.h:2 ../data/gui/roster_window.ui.h:4
+#: ../data/gui/contact_context_menu.ui.h:2
+#: ../data/gui/roster_window.ui.h:4
 msgid "Send Single _Message..."
 msgstr "Отправить одиночное _сообщение..."
 
@@ -971,8 +980,9 @@ msgstr "Отправить _файл..."
 #. Invite to
 #. Invite to Groupchat
 #: ../data/gui/contact_context_menu.ui.h:4
-#: ../data/gui/gc_occupants_menu.ui.h:11 ../src/roster_window.py:5749
-#: ../src/roster_window.py:5908
+#: ../data/gui/gc_occupants_menu.ui.h:11
+#: ../src/roster_window.py:5799
+#: ../src/roster_window.py:5958
 msgid "In_vite to"
 msgstr "_Пригласить в"
 
@@ -988,8 +998,9 @@ msgstr "Включить Open_PGP шифрование"
 msgid "Toggle End to End Encryption"
 msgstr "Включить End to End шифрование"
 
-#: ../data/gui/contact_context_menu.ui.h:8 ../src/roster_window.py:5759
-#: ../src/roster_window.py:5997
+#: ../data/gui/contact_context_menu.ui.h:8
+#: ../src/roster_window.py:5809
+#: ../src/roster_window.py:6047
 msgid "Send Cus_tom Status"
 msgstr "Установи_ть статус"
 
@@ -1026,23 +1037,22 @@ msgid "_Subscription"
 msgstr "_Подписка"
 
 #: ../data/gui/contact_context_menu.ui.h:17
-#, fuzzy
-msgid "_Allow contact to see my status"
+msgid "_Allow him/her to see my status"
 msgstr "_Позволить ему или ей видеть мой статус"
 
 #: ../data/gui/contact_context_menu.ui.h:18
-#, fuzzy
-msgid "A_sk to see contact status"
+msgid "A_sk to see his/her status"
 msgstr "_Попросить возможность видеть его или её статус"
 
 #: ../data/gui/contact_context_menu.ui.h:19
-#, fuzzy
-msgid "_Forbid contact to see my status"
+msgid "_Forbid him/her to see my status"
 msgstr "_Запретить ему или ей видеть мой статус"
 
 #: ../data/gui/contact_context_menu.ui.h:21
-#: ../data/gui/gc_occupants_menu.ui.h:13 ../src/roster_window.py:5821
-#: ../src/roster_window.py:5946 ../src/roster_window.py:6076
+#: ../data/gui/gc_occupants_menu.ui.h:13
+#: ../src/roster_window.py:5871
+#: ../src/roster_window.py:5996
+#: ../src/roster_window.py:6126
 msgid "_Block"
 msgstr "_Блокировать"
 
@@ -1060,8 +1070,9 @@ msgstr "_Удалить"
 
 #: ../data/gui/contact_context_menu.ui.h:26
 #: ../data/gui/gc_control_popup_menu.ui.h:9
-#: ../data/gui/gc_occupants_menu.ui.h:15 ../data/gui/roster_window.ui.h:19
-#: ../src/roster_window.py:6147
+#: ../data/gui/gc_occupants_menu.ui.h:15
+#: ../data/gui/roster_window.ui.h:19
+#: ../src/roster_window.py:6197
 msgid "_History"
 msgstr "_История"
 
@@ -1126,12 +1137,8 @@ msgid "Remove file transfer from the list."
 msgstr "Удалить передачу из списка."
 
 #: ../data/gui/filetransfers.ui.h:9
-msgid ""
-"This action removes single file transfer from the list. If the transfer is "
-"active, it is first stopped and then removed"
-msgstr ""
-"Это действие удаляет единичную передачу из списка. Если передача еще "
-"активна, она сначала останавливается, а затем удаляется"
+msgid "This action removes single file transfer from the list. If the transfer is active, it is first stopped and then removed"
+msgstr "Это действие удаляет единичную передачу из списка. Если передача еще активна, она сначала останавливается, а затем удаляется"
 
 #: ../data/gui/filetransfers.ui.h:10
 msgid "Clean _up"
@@ -1142,7 +1149,7 @@ msgid "_Pause"
 msgstr "_Приостановить"
 
 #: ../data/gui/filetransfers.ui.h:12
-msgid "Cancels the selected file transfer and removes incomplete files"
+msgid "Cancels the selected file transfer and removes incomplete file"
 msgstr "Отменяет выбранную передачу и удаляет неполные файлы"
 
 #: ../data/gui/filetransfers.ui.h:13
@@ -1157,11 +1164,13 @@ msgstr "Отменяет выбранную передачу"
 msgid "Hides the window"
 msgstr "Скрывает окно"
 
-#: ../data/gui/filetransfers.ui.h:16 ../src/filetransfers_window.py:905
+#: ../data/gui/filetransfers.ui.h:16
+#: ../src/filetransfers_window.py:905
 msgid "_Continue"
 msgstr "_Продолжить"
 
-#: ../data/gui/filetransfers.ui.h:17 ../src/chat_control.py:3350
+#: ../data/gui/filetransfers.ui.h:17
+#: ../src/chat_control.py:3256
 #: ../src/filetransfers_window.py:213
 msgid "_Open Containing Folder"
 msgstr "_Открыть папку с принятым файлом"
@@ -1202,11 +1211,13 @@ msgstr "_Шрифт:"
 msgid "Font style:"
 msgstr "Начертание:"
 
-#: ../data/gui/gajim_themes_window.ui.h:10 ../src/chat_control.py:1045
+#: ../data/gui/gajim_themes_window.ui.h:10
+#: ../src/chat_control.py:1049
 msgid "Bold"
 msgstr "Полужирный"
 
-#: ../data/gui/gajim_themes_window.ui.h:11 ../src/chat_control.py:1046
+#: ../data/gui/gajim_themes_window.ui.h:11
+#: ../src/chat_control.py:1050
 msgid "Italic"
 msgstr "Курсив"
 
@@ -1218,7 +1229,8 @@ msgstr "Приостановился"
 msgid "Composing"
 msgstr "Печатает"
 
-#: ../data/gui/gajim_themes_window.ui.h:14 ../src/common/pep.py:150
+#: ../data/gui/gajim_themes_window.ui.h:14
+#: ../src/common/pep.py:150
 msgid "Inactive"
 msgstr "Неактивен"
 
@@ -1272,7 +1284,8 @@ msgstr "_Сворачивать при закрытии"
 msgid "_Request Voice"
 msgstr "_Запросить право говорить"
 
-#: ../data/gui/gc_control_popup_menu.ui.h:8 ../src/disco.py:1843
+#: ../data/gui/gc_control_popup_menu.ui.h:8
+#: ../src/disco.py:1799
 msgid "_Bookmark"
 msgstr "Добавить эту комнату в _закладки"
 
@@ -1320,10 +1333,6 @@ msgstr "_Забанить"
 msgid "_Add to Roster"
 msgstr "_Добавить в ростер"
 
-#: ../data/gui/groupchat_control.ui.h:2 ../src/chat_control.py:1722
-msgid "Show a list of formattings"
-msgstr "Показать список форматирования"
-
 #: ../data/gui/groupchat_control.ui.h:3
 msgid "Change your nickname (Ctrl+N)"
 msgstr "Изменить ник (Ctrl+N)"
@@ -1360,29 +1369,21 @@ msgstr "Добро пожаловать в менеджер истори
 
 #: ../data/gui/history_manager.ui.h:3
 msgid ""
-"This log manager is not intended for log viewing. If you are looking for "
-"such functionality, use the history window instead.\n"
+"This log manager is not intended for log viewing. If you are looking for such functionality, use the history window instead.\n"
 "\n"
-"Use this program to delete or export logs. You can select logs from the left "
-"and/or search database from below."
+"Use this program to delete or export logs. You can select logs from the left and/or search database from below."
 msgstr ""
-"Этот менеджер истории не предназначен для просмотра. Если вы хотите "
-"просматривать историю с большим количеством функций, используйте окно "
-"истории.\n"
+"Этот менеджер истории не предназначен для просмотра. Если вы хотите просматривать историю с большим количеством функций, используйте окно истории.\n"
 "\n"
-"Используйте эту программу для удаления или экспорта истории. Вы можете "
-"выбрать лог слева или воспользоваться поиском в базе."
+"Используйте эту программу для удаления или экспорта истории. Вы можете выбрать лог слева или воспользоваться поиском в базе."
 
 #: ../data/gui/history_manager.ui.h:6
 msgid ""
 "WARNING: \n"
-"If you plan to do massive deletions, please make sure Gajim is not running. "
-"Generally avoid deletions with contacts you currently chat with."
+"If you plan to do massive deletions, please make sure Gajim is not running. Generally avoid deletions with contacts you currently chat with."
 msgstr ""
 "ВНИМАНИЕ: \n"
-"Если вы собираетесь устроить массовую чистку, удостоверьтесь, что Gajim не "
-"запущен. Избегайте удалений из логов контактов, с которыми вы разговариваете "
-"в этот момент."
+"Если вы собираетесь устроить массовую чистку, удостоверьтесь, что Gajim не запущен. Избегайте удалений из логов контактов, с которыми вы разговариваете в этот момент."
 
 #: ../data/gui/history_manager.ui.h:8
 msgid "_Search Database"
@@ -1404,7 +1405,8 @@ msgstr "История конференций"
 msgid "All Chat Histories"
 msgstr "Вся история"
 
-#: ../data/gui/history_window.ui.h:4 ../src/history_window.py:326
+#: ../data/gui/history_window.ui.h:4
+#: ../src/history_window.py:324
 msgid "Conversation History"
 msgstr "История"
 
@@ -1413,33 +1415,25 @@ msgid "Search:"
 msgstr "Поиск:"
 
 #: ../data/gui/history_window.ui.h:6
-#, fuzzy
 msgid "_In date search"
-msgstr "Выполняется поиск..."
+msgstr ""
 
 #: ../data/gui/history_window.ui.h:7
-#, fuzzy
-msgid "Searching only in the selected day "
-msgstr "Использовать только выбранные в диалоге предпросмотра снимки."
+msgid "searching only in the selected day "
+msgstr ""
 
 #: ../data/gui/history_window.ui.h:8
 #: ../data/gui/zeroconf_information_window.ui.h:5
 msgid "_Log conversation history"
 msgstr "_Сохранять историю переписки"
 
-#: ../data/gui/history_window.ui.h:9
-msgid "_Show status changes"
-msgstr "Показывать изменения _статуса"
-
 #: ../data/gui/item_archiving_preferences_window.ui.h:1
-#, fuzzy
 msgid "expire"
-msgstr "Истекает"
+msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:2
-#, fuzzy
 msgid "save"
-msgstr "Сохранить"
+msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:3
 #, fuzzy
@@ -1447,28 +1441,32 @@ msgid "otr"
 msgstr "другое"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:4
-#: ../src/gajim-remote.py:230
+#: ../src/gajim-remote.py:229
 msgid "jid"
 msgstr "JID"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:5
 #, fuzzy
 msgid "body"
-msgstr "_Тело:"
+msgstr "все"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:6
-#, fuzzy
 msgid "false"
-msgstr "false"
+msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:7
+#: ../src/gajim-remote.py:110
+#: ../src/gajim-remote.py:133
+#: ../src/gajim-remote.py:144
+#: ../src/gajim-remote.py:158
+#: ../src/gajim-remote.py:169
+#: ../src/gajim-remote.py:282
 msgid "message"
 msgstr "сообщение"
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:8
-#, fuzzy
 msgid "stream"
-msgstr "&Поток"
+msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:9
 msgid "approve"
@@ -1479,25 +1477,23 @@ msgid "concede"
 msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:11
-#, fuzzy
 msgid "forbid"
-msgstr "^Запретить версию"
+msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:12
 msgid "oppose"
 msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:13
-#, fuzzy
 msgid "prefer"
-msgstr "Предпочитать обычный текст"
+msgstr ""
 
 #: ../data/gui/item_archiving_preferences_window.ui.h:14
-#, fuzzy
 msgid "require"
-msgstr "Требуемый пакет:"
+msgstr ""
 
-#: ../data/gui/join_groupchat_window.ui.h:1 ../src/dialogs.py:2416
+#: ../data/gui/join_groupchat_window.ui.h:1
+#: ../src/dialogs.py:2372
 msgid "Join Group Chat"
 msgstr "Войти в комнату"
 
@@ -1525,7 +1521,8 @@ msgstr "Входить в кон_ференцию при подключении"
 msgid "_Bookmark this room"
 msgstr "Добавить комнату в закладк_и"
 
-#: ../data/gui/join_groupchat_window.ui.h:9 ../src/config.py:1857
+#: ../data/gui/join_groupchat_window.ui.h:9
+#: ../src/config.py:1852
 msgid "Server:"
 msgstr "Сервер:"
 
@@ -1533,8 +1530,10 @@ msgstr "Сервер:"
 msgid "Bro_wse Rooms"
 msgstr "Просмотр конферен_ций"
 
-#: ../data/gui/join_groupchat_window.ui.h:11 ../src/chat_control.py:3385
-#: ../src/disco.py:1396 ../src/disco.py:1847
+#: ../data/gui/join_groupchat_window.ui.h:11
+#: ../src/chat_control.py:3291
+#: ../src/disco.py:1360
+#: ../src/disco.py:1803
 msgid "_Join"
 msgstr "_Присоединиться"
 
@@ -1634,11 +1633,6 @@ msgstr "_Порт прокси:"
 msgid "Settings "
 msgstr "Настройки "
 
-#: ../data/gui/manage_sounds_window.ui.h:1
-#, fuzzy
-msgid "Manage sounds"
-msgstr "Выключить звук"
-
 #: ../data/gui/passphrase_dialog.ui.h:1
 msgid "Passphrase"
 msgstr "Парольная фраза"
@@ -1652,9 +1646,8 @@ msgid "Install from zip"
 msgstr "Установить из zip"
 
 #: ../data/gui/plugins_window.ui.h:3
-#, fuzzy
 msgid "<empty>"
-msgstr "Очистка "
+msgstr ""
 
 #: ../data/gui/plugins_window.ui.h:4
 msgid "Version:"
@@ -1662,7 +1655,7 @@ msgstr "Версия:"
 
 #: ../data/gui/plugins_window.ui.h:5
 msgid ""
-msgstr "пусто"
+msgstr ""
 
 #: ../data/gui/plugins_window.ui.h:6
 msgid "Authors:"
@@ -1693,9 +1686,7 @@ msgid "Installed"
 msgstr "Установленные"
 
 #: ../data/gui/plugins_window.ui.h:13
-msgid ""
-"Plug-in decription should be displayed here. This text will be erased during "
-"PluginsWindow initialization."
+msgid "Plug-in decription should be displayed here. This text will be erased during PluginsWindow initialization."
 msgstr "Описание модуля. Эта строка будет стерта при загрузке модуля."
 
 #: ../data/gui/popup_notification_window.ui.h:1
@@ -1722,8 +1713,9 @@ msgstr "При любых изменениях"
 msgid "Composing only"
 msgstr "Только печатает"
 
-#: ../data/gui/preferences_window.ui.h:5 ../src/config.py:164
-#: ../src/config.py:677
+#: ../data/gui/preferences_window.ui.h:5
+#: ../src/config.py:173
+#: ../src/config.py:689
 msgid "Disabled"
 msgstr "Отключены"
 
@@ -1784,449 +1776,387 @@ msgid "Display a_vatars of contacts in roster"
 msgstr "Показывать а_ватары для контактов в ростере"
 
 #: ../data/gui/preferences_window.ui.h:20
-msgid ""
-"If checked, Gajim will display avatars of contacts in roster window and in "
-"group chats"
-msgstr ""
-"Если отмечено, то Gajim будет показывать аватары контактов в окне ростера и "
-"в окнах комнат"
+msgid "If checked, Gajim will display avatars of contacts in roster window and in group chats"
+msgstr "Если отмечено, то Gajim будет показывать аватары контактов в окне ростера и в окнах комнат"
 
 #: ../data/gui/preferences_window.ui.h:21
 msgid "Display status _messages of contacts in roster"
 msgstr "Показывать _сообщения о статусе контакта в ростере"
 
 #: ../data/gui/preferences_window.ui.h:22
-msgid ""
-"If checked, Gajim will display status messages of contacts under the contact "
-"name in roster window and in group chats"
-msgstr ""
-"Если отмечено, то Gajim будет отображать сообщение о статусе контакта под "
-"его именем в окне ростера и в окнах комнат"
+msgid "If checked, Gajim will display status messages of contacts under the contact name in roster window and in group chats"
+msgstr "Если отмечено, то Gajim будет отображать сообщение о статусе контакта под его именем в окне ростера и в окнах комнат"
 
 #: ../data/gui/preferences_window.ui.h:23
-msgid "Display e_xtra information of contacts in roster (mood, activity, ...)"
-msgstr ""
-"Показывать дополнительную информацию контактов в ростере (занятие, "
-"настроение, ...)"
+msgid "Display m_ood of contacts in roster"
+msgstr "Показывать на_строения для контактов в ростере"
 
 #: ../data/gui/preferences_window.ui.h:24
-msgid ""
-"If checked, Gajim will display the mood of contacts in the roster window"
-msgstr ""
-"Если отмечено, то Gajim будет показывать настроения контактов в окне ростера"
+msgid "If checked, Gajim will display the mood of contacts in the roster window"
+msgstr "Если отмечено, то Gajim будет показывать настроения контактов в окне ростера"
 
 #: ../data/gui/preferences_window.ui.h:25
+msgid "Display _activity of contacts in roster"
+msgstr "Показывать _занятия контактов в ростере"
+
+#: ../data/gui/preferences_window.ui.h:26
+msgid "If checked, Gajim will display the activity of contacts in the roster window"
+msgstr "Если отмечено, то Gajim будет показывать занятия контактов в окне ростера"
+
+#: ../data/gui/preferences_window.ui.h:27
+msgid "Display _tunes of contacts in roster"
+msgstr "Отмечать контакты, слушающие музыку (tunes)"
+
+#: ../data/gui/preferences_window.ui.h:28
+msgid "If checked, Gajim will display the tunes of contacts in the roster window"
+msgstr "Если отмечено, то Gajim будет показывать tunes контактов в окне ростера"
+
+#: ../data/gui/preferences_window.ui.h:29
+msgid "Display _location of contacts in roster"
+msgstr "Показывать местоположение контактов в ростере"
+
+#: ../data/gui/preferences_window.ui.h:30
+msgid "If checked, Gajim will display the location of contacts in the roster window"
+msgstr "Если отмечено, то Gajim будет показывать местоположение контактов в окне ростера"
+
+#: ../data/gui/preferences_window.ui.h:31
 msgid "Sort contacts by status"
 msgstr "Сортировать контакты по статусу"
 
-#: ../data/gui/preferences_window.ui.h:26
+#: ../data/gui/preferences_window.ui.h:32
 msgid "in _roster"
 msgstr "в _ростере"
 
-#: ../data/gui/preferences_window.ui.h:27
+#: ../data/gui/preferences_window.ui.h:33
 msgid "in _group chats"
 msgstr "в _комнатах"
 
-#: ../data/gui/preferences_window.ui.h:28
+#: ../data/gui/preferences_window.ui.h:34
 msgid "Roster Appearance "
 msgstr "Настройки ростера "
 
-#: ../data/gui/preferences_window.ui.h:29
+#: ../data/gui/preferences_window.ui.h:35
 msgid "_Window behavior:"
 msgstr "Поведение _окна:"
 
-#: ../data/gui/preferences_window.ui.h:30
-msgid ""
-"If not disabled, Gajim will replace ascii smilies like ':)' with equivalent "
-"animated or static graphical emoticons"
-msgstr ""
-"Gajim заменяет текстовые смайлики, например ':)', их графическим или "
-"анимированным эквивалентом. Выберите «Отключены», чтобы этого не происходило."
+#: ../data/gui/preferences_window.ui.h:36
+msgid "If not disabled, Gajim will replace ascii smilies like ':)' with equivalent animated or static graphical emoticons"
+msgstr "Gajim заменяет текстовые смайлики, например ':)', их графическим или анимированным эквивалентом. Выберите «Отключены», чтобы этого не происходило."
 
-#: ../data/gui/preferences_window.ui.h:31
+#: ../data/gui/preferences_window.ui.h:37
 msgid "_Emoticons:"
 msgstr "_Смайлики:"
 
-#: ../data/gui/preferences_window.ui.h:32
+#: ../data/gui/preferences_window.ui.h:38
 msgid "Ma_ke message windows compact"
 msgstr "_Компактное окно сообщений"
 
-#: ../data/gui/preferences_window.ui.h:33
+#: ../data/gui/preferences_window.ui.h:39
 msgid "Hide all buttons in chat windows"
 msgstr "Не показывать кнопки в окнах чата"
 
-#: ../data/gui/preferences_window.ui.h:34
+#: ../data/gui/preferences_window.ui.h:40
 msgid "_Ignore rich content in incoming messages"
 msgstr "_Игнорировать форматирование во входящих сообщениях"
 
-#: ../data/gui/preferences_window.ui.h:35
-msgid ""
-"Some messages may include rich content (formatting, colors etc). If checked, "
-"Gajim will just display the raw message text."
-msgstr ""
-"Некоторые сообщения могут содержать форматирование (цвет, шрифт и т.д.). "
-"Если отмечено, Gajim будет отображать только их текст, без форматирования."
+#: ../data/gui/preferences_window.ui.h:41
+msgid "Some messages may include rich content (formatting, colors etc). If checked, Gajim will just display the raw message text."
+msgstr "Некоторые сообщения могут содержать форматирование (цвет, шрифт и т.д.). Если отмечено, Gajim будет отображать только их текст, без форматирования."
 
-#: ../data/gui/preferences_window.ui.h:36
+#: ../data/gui/preferences_window.ui.h:42
 msgid "_Highlight misspelled words"
 msgstr "Выделять _слова с опечатками"
 
-#: ../data/gui/preferences_window.ui.h:37
-msgid ""
-"If checked, Gajim will highlight spelling errors in input fields of chat "
-"windows. If no language is explicitly set via right click on the input "
-"field, the default language will be used for this contact or group chat."
-msgstr ""
-"Если отмечено, Gajim будет выделять орфографические ошибки в полях ввода "
-"окон чата. Если язык проверки явно не задан, будет использован язык по "
-"умолчанию для данного контакта или комнаты."
+#: ../data/gui/preferences_window.ui.h:43
+msgid "If checked, Gajim will highlight spelling errors in input fields of chat windows. If no language is explicitly set via right click on the input field, the default language will be used for this contact or group chat."
+msgstr "Если отмечено, Gajim будет выделять орфографические ошибки в полях ввода окон чата. Если язык проверки явно не задан, будет использован язык по умолчанию для данного контакта или комнаты."
 
-#: ../data/gui/preferences_window.ui.h:38
+#: ../data/gui/preferences_window.ui.h:44
 msgid "_Show roster on startup:"
 msgstr "Показ_ывать ростер при запуске:"
 
-#: ../data/gui/preferences_window.ui.h:39
-msgid "Show icon when your messages are received"
-msgstr "Показывать иконку когда ваше сообщение доставлено."
-
-#: ../data/gui/preferences_window.ui.h:40
+#: ../data/gui/preferences_window.ui.h:45
 msgid "Chat Appearance "
 msgstr "Настройки окна чата "
 
-#: ../data/gui/preferences_window.ui.h:42
+#: ../data/gui/preferences_window.ui.h:47
 msgid "When new event is received:"
 msgstr "Когда получено новое событие:"
 
-#: ../data/gui/preferences_window.ui.h:43
+#: ../data/gui/preferences_window.ui.h:48
 msgid "Notify me about contacts that sign _in"
 msgstr "Уведомлять о контактах, которые _вошли: "
 
-#: ../data/gui/preferences_window.ui.h:44
+#: ../data/gui/preferences_window.ui.h:49
 msgid "Notify me about contacts that sign _out"
 msgstr "Уведомлять о контактах, которые _вышли: "
 
-#: ../data/gui/preferences_window.ui.h:45
-msgid ""
-"Gajim will notify you via a popup window in the bottom right of the screen "
-"about contacts that just signed out"
-msgstr ""
-"Gajim будет уведомлять вас об отсоединившемся контакте с помощью сообщения в "
-"правом нижнем углу экрана"
+#: ../data/gui/preferences_window.ui.h:50
+msgid "Gajim will notify you via a popup window in the bottom right of the screen about contacts that just signed out"
+msgstr "Gajim будет уведомлять вас об отсоединившемся контакте с помощью сообщения в правом нижнем углу экрана"
 
-#: ../data/gui/preferences_window.ui.h:46
+#: ../data/gui/preferences_window.ui.h:51
 msgid "Allow popup/notifications when I'm _away/na/busy/invisible"
 msgstr "Позволять уведомления в режиме _ушел/недоступен/занят/невидимка"
 
-#: ../data/gui/preferences_window.ui.h:47
+#: ../data/gui/preferences_window.ui.h:52
 msgid "Notify on new _GMail email"
 msgstr "Сообщать о новых письмах в _Gmail"
 
-#: ../data/gui/preferences_window.ui.h:48
-msgid ""
-"If checked, Gajim will show a notification when a new e-mail is received via "
-"GMail"
-msgstr ""
-"Если отмечено, то Gajim будет сообщать о новых письмах, полученных в GMail"
+#: ../data/gui/preferences_window.ui.h:53
+msgid "If checked, Gajim will show a notification when a new e-mail is received via GMail"
+msgstr "Если отмечено, то Gajim будет сообщать о новых письмах, полученных в GMail"
 
-#: ../data/gui/preferences_window.ui.h:49
+#: ../data/gui/preferences_window.ui.h:54
 msgid "Display _extra email details"
 msgstr "Отображать _дополнительные данные о почте"
 
-#: ../data/gui/preferences_window.ui.h:50
-#, fuzzy
-msgid ""
-"If checked, Gajim will also include information about the sender of new "
-"emails"
-msgstr ""
-"Если отмечено, то Gajim будет включать информацию об отправителе новых писем."
+#: ../data/gui/preferences_window.ui.h:55
+msgid "If checked, Gajim will also include information about the sender of the new emails"
+msgstr "Если отмечено, то Gajim будет включать информацию об отправителе новых писем."
 
-#: ../data/gui/preferences_window.ui.h:51
+#: ../data/gui/preferences_window.ui.h:56
 msgid "GMail Options "
 msgstr "Настройки GMail "
 
-#: ../data/gui/preferences_window.ui.h:52
+#: ../data/gui/preferences_window.ui.h:57
 msgid "Show notification area icon:"
 msgstr "Отображать значок в области уведомлений:"
 
-#: ../data/gui/preferences_window.ui.h:53
+#: ../data/gui/preferences_window.ui.h:58
 msgid "Visual Notifications "
 msgstr "Уведомления "
 
-#: ../data/gui/preferences_window.ui.h:54
+#: ../data/gui/preferences_window.ui.h:59
 msgid "Play _sounds"
 msgstr "Проигрывать _звук"
 
-#: ../data/gui/preferences_window.ui.h:55
+#: ../data/gui/preferences_window.ui.h:60
 msgid "Ma_nage..."
 msgstr "_Управление..."
 
-#: ../data/gui/preferences_window.ui.h:56
+#: ../data/gui/preferences_window.ui.h:61
 msgid "Allow sound when I'm _busy"
 msgstr "Проигрывать звук, когда я _занят"
 
-#: ../data/gui/preferences_window.ui.h:57
+#: ../data/gui/preferences_window.ui.h:62
 msgid "Sounds "
 msgstr "Звуки "
 
-#: ../data/gui/preferences_window.ui.h:58
+#: ../data/gui/preferences_window.ui.h:63
 msgid "Notifications"
 msgstr "Уведомления"
 
-#: ../data/gui/preferences_window.ui.h:59
-msgid ""
-"Gajim can send and receive meta-information related to a conversation you "
-"may have with a contact. Here you can specify which chatstates you want to "
-"display in chat windows."
-msgstr ""
-"Gajim может отсылать и получать метаданные, относящиеся к беседе с "
-"контактом. Здесь вы можете указать, какие состояние чата вы хотели бы видеть "
-"в окне чата."
+#: ../data/gui/preferences_window.ui.h:64
+msgid "Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to display in chat windows."
+msgstr "Gajim может отсылать и получать метаданные относящиеся к беседе с контактом. Здесь вы можете указать, какие состояние чата вы хотели бы видеть в окне чата."
 
-#: ../data/gui/preferences_window.ui.h:60
+#: ../data/gui/preferences_window.ui.h:65
 msgid "_Display chat state notifications:"
 msgstr "_Отображать уведомления о состоянии чата:"
 
-#: ../data/gui/preferences_window.ui.h:61
-msgid ""
-"Gajim can send and receive meta-information related to a conversation you "
-"may have with a contact. Here you can specify which chatstates you want to "
-"send to the other party."
-msgstr ""
-"Gajim может отсылать и получать метаданные, относящиеся к беседе с "
-"контактом. Здесь вы можете указать, какие состояния чата Gajim будет "
-"отсылать вашему респонденту."
+#: ../data/gui/preferences_window.ui.h:66
+msgid "Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to send to the other party."
+msgstr "Gajim может отсылать и получать метаданные, относящиеся к беседе с контактом. Здесь вы можете указать, какие состояния чата Gajim будет отсылать вашему респонденту."
 
-#: ../data/gui/preferences_window.ui.h:62
+#: ../data/gui/preferences_window.ui.h:67
 msgid "_Send chat state notifications:"
 msgstr "_Отправлять уведомления о состоянии чата:"
 
-#: ../data/gui/preferences_window.ui.h:63
+#: ../data/gui/preferences_window.ui.h:68
 msgid "Chat state notifications "
 msgstr "Уведомления "
 
-#: ../data/gui/preferences_window.ui.h:64
+#: ../data/gui/preferences_window.ui.h:69
 msgid "Personal Events"
 msgstr "Расширенные статусы"
 
-#: ../data/gui/preferences_window.ui.h:65
+#: ../data/gui/preferences_window.ui.h:70
 msgid "_Away after:"
 msgstr "Авто-_отошел после:"
 
-#: ../data/gui/preferences_window.ui.h:66
-msgid ""
-"If checked, Gajim will change status to Away when the computer is unused."
-msgstr ""
-"Если отмечено, то Gajim изменит статус на Away, если компьютер не "
-"используется."
+#: ../data/gui/preferences_window.ui.h:71
+msgid "If checked, Gajim will change status to Away when the computer is unused."
+msgstr "Если отмечено, то Gajim изменит статус на Away, если компьютер не используется."
 
-#: ../data/gui/preferences_window.ui.h:67
+#: ../data/gui/preferences_window.ui.h:72
 msgid "_Not available after:"
 msgstr "Авто-_недоступен после:"
 
-#: ../data/gui/preferences_window.ui.h:68
-msgid ""
-"If checked, Gajim will change status to Not Available when the computer has "
-"not been used even longer"
-msgstr ""
-"Если отмечено, Gajim будет менять статус на Недоступен, если компьютер долго "
-"не используется"
+#: ../data/gui/preferences_window.ui.h:73
+msgid "If checked, Gajim will change status to Not Available when the computer has not been used even longer"
+msgstr "Если отмечено, Gajim будет менять статус на Недоступен, если компьютер долго не используется"
 
-#: ../data/gui/preferences_window.ui.h:69
+#: ../data/gui/preferences_window.ui.h:74
 msgid "minutes"
 msgstr "минут"
 
-#: ../data/gui/preferences_window.ui.h:70
+#: ../data/gui/preferences_window.ui.h:75
 msgid ""
-"The auto away status message. If empty, Gajim will not change the current "
-"status message\n"
+"The auto away status message. If empty, Gajim will not change the current status message\n"
 "$S will be replaced by previous status message\n"
 "$T will be replaced by auto-away timeout"
 msgstr ""
-"Автоматическое сообщение о статусе «Ушел». Если не указано, Gajim не будет "
-"изменять сообщение о статусе\n"
+"Автоматическое сообщение о статусе «Ушел». Если не указано, Gajim не будет изменять сообщение о статусе\n"
 "$S заменяется на предыдущее сообщение о статусе\n"
-"$T заменяется на время срабатывания автоматического сообщения о статусе "
-"«Ушел»"
+"$T заменяется на время срабатывания автоматического сообщения о статусе «Ушел»"
 
-#: ../data/gui/preferences_window.ui.h:73
+#: ../data/gui/preferences_window.ui.h:78
 msgid ""
-"The auto not available status message. If empty, Gajim will not change the "
-"current status message\n"
+"The auto not available status message. If empty, Gajim will not change the current status message\n"
 "$S will be replaced by previous status message\n"
 "$T will be replaced by auto-not-available timeout"
 msgstr ""
-"Автоматическое сообщение о статусе «Недоступен». Если не указано, Gajim не "
-"будет изменять сообщение о статусе\n"
+"Автоматическое сообщение о статусе «Недоступен». Если не указано, Gajim не будет изменять сообщение о статусе\n"
 "$S заменяется на предыдущее сообщение о статусе\n"
-"$T заменяется на время срабатывания автоматического сообщения о статусе "
-"«Недоступен»"
+"$T заменяется на время срабатывания автоматического сообщения о статусе «Недоступен»"
 
-#: ../data/gui/preferences_window.ui.h:76
+#: ../data/gui/preferences_window.ui.h:81
 msgid "Auto Status "
 msgstr "Авто статус "
 
-#: ../data/gui/preferences_window.ui.h:77
+#: ../data/gui/preferences_window.ui.h:82
 msgid "Ask status message when I:"
 msgstr "Запрашивать сообщение о статусе, когда я: "
 
-#: ../data/gui/preferences_window.ui.h:78
+#: ../data/gui/preferences_window.ui.h:83
 msgid "Sign _in"
 msgstr "В_ошел"
 
-#: ../data/gui/preferences_window.ui.h:79
+#: ../data/gui/preferences_window.ui.h:84
 msgid "Sign _out"
 msgstr "В_ышел"
 
-#: ../data/gui/preferences_window.ui.h:80
-msgid ""
-"If enabled, Gajim will not ask for a status message. The specified default "
-"message will be used instead."
-msgstr ""
-"Если включено, Gajim не будет запрашивать сообщение о статусе. Вместо него "
-"будет использовано соответствующее сообщение по умолчанию."
+#: ../data/gui/preferences_window.ui.h:85
+msgid "If enabled, Gajim will not ask for a status message. The specified default message will be used instead."
+msgstr "Если включено, Gajim не будет запрашивать сообщение о статусе. Вместо него будет использовано соответствующее сообщение по умолчанию."
 
-#: ../data/gui/preferences_window.ui.h:81
+#: ../data/gui/preferences_window.ui.h:86
 msgid "Status Messages "
 msgstr "Сообщения о статусе "
 
-#: ../data/gui/preferences_window.ui.h:82
+#: ../data/gui/preferences_window.ui.h:87
 msgid "Preset Status Messages "
 msgstr "Предустановленные сообщения о статусе "
 
-#: ../data/gui/preferences_window.ui.h:83 ../src/config.py:398
+#: ../data/gui/preferences_window.ui.h:88
+#: ../src/config.py:403
 msgid "Status"
 msgstr "Статус"
 
-#: ../data/gui/preferences_window.ui.h:84
+#: ../data/gui/preferences_window.ui.h:89
 msgid "Use system _default"
 msgstr "Использовать _системный шрифт"
 
-#: ../data/gui/preferences_window.ui.h:85
+#: ../data/gui/preferences_window.ui.h:90
 msgid "Chat message:"
 msgstr "Сообщение чата:"
 
-#: ../data/gui/preferences_window.ui.h:86
+#: ../data/gui/preferences_window.ui.h:91
 msgid "Font "
 msgstr "Шрифт "
 
-#: ../data/gui/preferences_window.ui.h:87
+#: ../data/gui/preferences_window.ui.h:92
 msgid "Use _transports icons"
 msgstr "Использовать иконки _транспортов"
 
-#: ../data/gui/preferences_window.ui.h:88
-#, fuzzy
-msgid ""
-"If checked, Gajim will use protocol-specific status icons. (e.g. A contact "
-"from MSN will have the equivalent msn icon for status online, away, busy, "
-"etc...)"
-msgstr ""
-"Если отмечено, то Gajim будет использовать для каждого протокола свои иконки "
-"(например, контакты из MSN будут иметь соответствующие иконки msn для "
-"статусов «в сети», «ушёл», «занят» и т.д.)"
+#: ../data/gui/preferences_window.ui.h:93
+msgid "If checked, Gajim will use protocol-specific status icons. (eg. A contact from MSN will have the equivalent msn icon for status online, away, busy, etc...)"
+msgstr "Если отмечено, то Gajim будет использовать для каждого протокола свои иконки (например, контакты из MSN будут иметь соответствующие иконки msn для статусов «в сети», «ушёл», «занят» и т.д.)"
 
-#: ../data/gui/preferences_window.ui.h:89
+#: ../data/gui/preferences_window.ui.h:94
 msgid "Status _iconset:"
 msgstr "Тема статусных _иконок:"
 
-#: ../data/gui/preferences_window.ui.h:90
+#: ../data/gui/preferences_window.ui.h:95
 msgid "Configure color and font of the interface"
 msgstr "Настроить цвет и шрифт интерфейса"
 
-#: ../data/gui/preferences_window.ui.h:91
+#: ../data/gui/preferences_window.ui.h:96
 msgid "T_heme:"
 msgstr "_Тема:"
 
-#: ../data/gui/preferences_window.ui.h:92
+#: ../data/gui/preferences_window.ui.h:97
 msgid "Themes "
 msgstr "Настройки интерфейса "
 
-#: ../data/gui/preferences_window.ui.h:93
+#: ../data/gui/preferences_window.ui.h:98
 msgid "Contact's nickname:"
 msgstr "Ник собеседника:"
 
-#: ../data/gui/preferences_window.ui.h:94
+#: ../data/gui/preferences_window.ui.h:99
 msgid "Your nickname:"
 msgstr "Ваш ник:"
 
-#: ../data/gui/preferences_window.ui.h:95
+#: ../data/gui/preferences_window.ui.h:100
 msgid "_Status message:"
 msgstr "_Сообщение о статусе:"
 
-#: ../data/gui/preferences_window.ui.h:96
+#: ../data/gui/preferences_window.ui.h:101
 msgid "_URL highlight:"
 msgstr "_Цвет ссылок:"
 
-#: ../data/gui/preferences_window.ui.h:97
+#: ../data/gui/preferences_window.ui.h:102
 msgid "_Reset to Default Colors"
 msgstr "_Вернуться к цветам по умолчанию"
 
-#: ../data/gui/preferences_window.ui.h:98
+#: ../data/gui/preferences_window.ui.h:103
 msgid "Contact's message:"
 msgstr "Сообщение собеседника:"
 
-#: ../data/gui/preferences_window.ui.h:99
+#: ../data/gui/preferences_window.ui.h:104
 msgid "Your message:"
 msgstr "Ваше сообщение:"
 
-#: ../data/gui/preferences_window.ui.h:100
-#, fuzzy
-msgid "Group chat highlight:"
-msgstr "Вас упомянули в комнате"
-
-#: ../data/gui/preferences_window.ui.h:101
+#: ../data/gui/preferences_window.ui.h:105
 msgid "Chat Line Colors "
 msgstr "Цвета вкладок с чатами "
 
-#: ../data/gui/preferences_window.ui.h:102
+#: ../data/gui/preferences_window.ui.h:106
 msgid "Style"
 msgstr "Стиль"
 
-#: ../data/gui/preferences_window.ui.h:103
+#: ../data/gui/preferences_window.ui.h:107
 msgid "Audio input device"
 msgstr "Устройство захвата звука"
 
-#: ../data/gui/preferences_window.ui.h:104
+#: ../data/gui/preferences_window.ui.h:108
 msgid "Audio output device"
 msgstr "Устройство вывода звука"
 
-#: ../data/gui/preferences_window.ui.h:105
+#: ../data/gui/preferences_window.ui.h:109
 msgid "Audio "
 msgstr "Звук "
 
-#: ../data/gui/preferences_window.ui.h:106
+#: ../data/gui/preferences_window.ui.h:110
 msgid "Video input device"
 msgstr "Устройство захвата изображения"
 
-#: ../data/gui/preferences_window.ui.h:107
+#: ../data/gui/preferences_window.ui.h:111
 msgid "Video output device"
 msgstr "Устройство вывода изображения"
 
-#: ../data/gui/preferences_window.ui.h:108
+#: ../data/gui/preferences_window.ui.h:112
 msgid "Video framerate"
 msgstr "Частота кадров видео"
 
-#: ../data/gui/preferences_window.ui.h:109
+#: ../data/gui/preferences_window.ui.h:113
 msgid "Video size"
 msgstr "Разрешение видео"
 
-#: ../data/gui/preferences_window.ui.h:110
-#, fuzzy
-msgid "View own video source"
-msgstr "Источник слоя Мозаика"
-
-#: ../data/gui/preferences_window.ui.h:111
+#: ../data/gui/preferences_window.ui.h:114
 msgid "Video "
 msgstr "Изображение "
 
-#: ../data/gui/preferences_window.ui.h:112
+#: ../data/gui/preferences_window.ui.h:115
 msgid "STUN server:"
 msgstr "STUN сервер:"
 
-#: ../data/gui/preferences_window.ui.h:113
+#: ../data/gui/preferences_window.ui.h:116
 msgid "(example: stunserver.org) "
 msgstr "(например: stunserver.org) "
 
-#: ../data/gui/preferences_window.ui.h:114
+#: ../data/gui/preferences_window.ui.h:117
 msgid ""
 "STUN server hostname. If none given, Gajim will try\n"
 "to discover one from server."
@@ -2234,115 +2164,97 @@ msgstr ""
 "Адрес сервера STUN. Если не указано, Gajim попробует\n"
 "получить адрес с сервера."
 
-#: ../data/gui/preferences_window.ui.h:116
+#: ../data/gui/preferences_window.ui.h:119
 msgid "Connection "
 msgstr "Подключение "
 
-#: ../data/gui/preferences_window.ui.h:117 ../src/features_window.py:102
+#: ../data/gui/preferences_window.ui.h:120
+#: ../src/features_window.py:102
 msgid "Audio / Video"
 msgstr "Звук / Изображение"
 
-#: ../data/gui/preferences_window.ui.h:118
+#: ../data/gui/preferences_window.ui.h:121
 msgid "_File manager:"
 msgstr "_Менеджер файлов:"
 
-#: ../data/gui/preferences_window.ui.h:119
+#: ../data/gui/preferences_window.ui.h:122
 msgid "_Mail client:"
 msgstr "_Почтовый клиент:"
 
-#: ../data/gui/preferences_window.ui.h:120
+#: ../data/gui/preferences_window.ui.h:123
 msgid "_Browser:"
 msgstr "_Браузер:"
 
 #. a header for custom browser/client/file manager. so translate sth like: Custom Settings
-#: ../data/gui/preferences_window.ui.h:122
+#: ../data/gui/preferences_window.ui.h:125
 msgid "Custom "
 msgstr "Пользовательские настройки "
 
-#: ../data/gui/preferences_window.ui.h:123
+#: ../data/gui/preferences_window.ui.h:126
 msgid "Applications "
 msgstr "Приложения "
 
-#: ../data/gui/preferences_window.ui.h:124
+#: ../data/gui/preferences_window.ui.h:127
 msgid "_Ignore events from contacts not in the roster"
 msgstr "_Игнорировать события от контактов не из ростера"
 
-#: ../data/gui/preferences_window.ui.h:125
-msgid ""
-"If checked, Gajim will ignore incoming events from unauthorized contacts. "
-"Use with caution, because it blocks all messages from any contact that is "
-"not in the roster"
-msgstr ""
-"Отметьте эту опцию, только если кто-то не из вашего ростера спамит/достает "
-"вас. Используйте с осторожностью, потому что это заблокирует все сообщения "
-"от контактов не из вашего ростера."
+#: ../data/gui/preferences_window.ui.h:128
+msgid "If checked, Gajim will ignore incoming events from unauthorized contacts. Use with caution, because it blocks all messages from any contact that is not in the roster"
+msgstr "Отметьте эту опцию, только если кто-то не из вашего ростера спамит/достает вас. Используйте с осторожностью, потому что это заблокирует все сообщения от контактов не из вашего ростера."
 
-#: ../data/gui/preferences_window.ui.h:126
+#: ../data/gui/preferences_window.ui.h:129
 msgid "Allow client / _OS information to be sent"
 msgstr "Отсылать информацию о клиенте / _ОС"
 
-#: ../data/gui/preferences_window.ui.h:127
-msgid ""
-"If checked, Gajim will allow others to detect the operation system you are "
-"using"
-msgstr ""
-"Если отмечено, то Gajim будет разрешать определять операционную систему, "
-"которую вы используете"
+#: ../data/gui/preferences_window.ui.h:130
+msgid "If checked, Gajim will allow others to detect the operation system you are using"
+msgstr "Если отмечено, то Gajim будет разрешать определять операционную систему, которую вы используете"
 
-#: ../data/gui/preferences_window.ui.h:128
+#: ../data/gui/preferences_window.ui.h:131
 msgid "Allow local system time information to be sent"
 msgstr "Отсылать информацию о локальном времени"
 
-#: ../data/gui/preferences_window.ui.h:129
+#: ../data/gui/preferences_window.ui.h:132
 msgid "If checked, Gajim will allow others to detect the time on your system"
-msgstr ""
-"Если отмечено, то Gajim будет разрешать определять время в системе, которую "
-"вы используете"
+msgstr "Если отмечено, то Gajim будет разрешать определять время в системе, которую вы используете"
 
-#: ../data/gui/preferences_window.ui.h:130
+#: ../data/gui/preferences_window.ui.h:133
 msgid "Log _encrypted chat session"
 msgstr "Записывать в лог _шифрованные сообщения"
 
-#: ../data/gui/preferences_window.ui.h:131
-msgid ""
-"If checked, Gajim will keep logs for encrypted messages. Please note that "
-"when using E2E encryption the remote party has to agree on logging, else the "
-"messages will not be logged."
-msgstr ""
-"Если отмечено, Gajim будет сохранять историю зашифрованных сообщений. "
-"Помните, что при использовании E2E шифрования удаленная сторона должна дать "
-"согласие на ведение истории, иначе сообщения не будут сохраняться."
+#: ../data/gui/preferences_window.ui.h:134
+msgid "If checked, Gajim will keep logs for encrypted messages. Please note that when using E2E encryption the remote party has to agree on logging, else the messages will not be logged."
+msgstr "Если отмечено, Gajim будет сохранять историю зашифрованных сообщений. Помните, что при использовании E2E шифрования удаленная сторона должна дать согласие на ведение истории, иначе сообщения не будут сохраняться."
 
-#: ../data/gui/preferences_window.ui.h:132
+#: ../data/gui/preferences_window.ui.h:135
 msgid "Allow my _idle time to be sent"
 msgstr "Отправлять время моей неактивности"
 
-#: ../data/gui/preferences_window.ui.h:133
+#: ../data/gui/preferences_window.ui.h:136
 msgid "Global proxy:"
 msgstr "Глобальный прокси:"
 
-#: ../data/gui/preferences_window.ui.h:135
+#: ../data/gui/preferences_window.ui.h:138
 msgid "Privacy "
 msgstr "Уведомления "
 
-#: ../data/gui/preferences_window.ui.h:136
+#: ../data/gui/preferences_window.ui.h:139
 msgid "_Log status changes of contacts"
 msgstr "_Записывать в лог изменения статусов контактов"
 
-#: ../data/gui/preferences_window.ui.h:137
+#: ../data/gui/preferences_window.ui.h:140
 msgid "Check on startup if Gajim is the _default Jabber client"
-msgstr ""
-"_Всегда проверять при запуске, является ли Gajim jabber-клиентом по умолчанию"
+msgstr "_Всегда проверять при запуске, является ли Gajim jabber-клиентом по умолчанию"
 
-#: ../data/gui/preferences_window.ui.h:139
+#: ../data/gui/preferences_window.ui.h:142
 msgid "_Open..."
 msgstr "_Открыть..."
 
-#: ../data/gui/preferences_window.ui.h:140
+#: ../data/gui/preferences_window.ui.h:143
 msgid "Advanced Configuration Editor "
 msgstr "Расширенный редактор настроек "
 
-#: ../data/gui/preferences_window.ui.h:141
+#: ../data/gui/preferences_window.ui.h:144
 msgid "Advanced"
 msgstr "Расширенные"
 
@@ -2350,7 +2262,8 @@ msgstr "Расширенные"
 msgid "Privacy Lists:"
 msgstr "Списки доступа:"
 
-#: ../data/gui/privacy_list_window.ui.h:1 ../src/dialogs.py:4121
+#: ../data/gui/privacy_list_window.ui.h:1
+#: ../src/dialogs.py:4023
 msgid "Privacy List"
 msgstr "Список доступа"
 
@@ -2601,8 +2514,10 @@ msgstr "Что вы хотите сделать? "
 
 #. Remove group
 #. Remove
-#: ../data/gui/remove_account_window.ui.h:4 ../src/roster_window.py:5831
-#: ../src/roster_window.py:5956 ../src/roster_window.py:6086
+#: ../data/gui/remove_account_window.ui.h:4
+#: ../src/roster_window.py:5881
+#: ../src/roster_window.py:6006
+#: ../src/roster_window.py:6136
 msgid "_Remove"
 msgstr "_Удалить"
 
@@ -2611,12 +2526,8 @@ msgid "Roster Item Exchange"
 msgstr "Обмен контактами"
 
 #: ../data/gui/roster_item_exchange_window.ui.h:2
-msgid ""
-"someone@somewhere.com  would like you to add  some contacts in "
-"your roster."
-msgstr ""
-"someone@somewhere.com  хочет добавить  несколько контактов в ваш "
-"список контактов."
+msgid "someone@somewhere.com  would like you to add  some contacts in your roster."
+msgstr "someone@somewhere.com  хочет добавить  несколько контактов в ваш список контактов."
 
 #: ../data/gui/roster_item_exchange_window.ui.h:3
 #: ../data/gui/service_registration_window.ui.h:3
@@ -2625,9 +2536,7 @@ msgstr "_ОК"
 
 #: ../data/gui/roster_item_exchange_window.ui.h:4
 msgid "Message Body "
-msgstr ""
-"Тело сообщения <в данное время не используется, поэтому по умолчанию не "
-"отображается>"
+msgstr "Тело сообщения <в данное время не используется, поэтому по умолчанию не отображается>"
 
 #. Make sure the character after "_" is not M/m (conflicts with Alt+M that is supposed to show the Emoticon Selector)
 #: ../data/gui/roster_window.ui.h:2
@@ -2639,7 +2548,8 @@ msgstr "_Действия"
 msgid "Add _Contact..."
 msgstr "_Добавить контакт..."
 
-#: ../data/gui/roster_window.ui.h:9 ../src/disco.py:1558
+#: ../data/gui/roster_window.ui.h:9
+#: ../src/disco.py:1519
 msgid "_Edit"
 msgstr "_Правка"
 
@@ -2671,7 +2581,8 @@ msgstr "Показать _только активных"
 msgid "Show T_ransports"
 msgstr "Показать Т_ранспорты"
 
-#: ../data/gui/roster_window.ui.h:17 ../src/statusicon.py:359
+#: ../data/gui/roster_window.ui.h:17
+#: ../src/statusicon.py:359
 msgid "Show _Roster"
 msgstr "Показать _ростер"
 
@@ -2701,7 +2612,7 @@ msgstr "Часто задаваемые вопросы (онлайн)"
 
 #: ../data/gui/roster_window.ui.h:25
 msgid "Keyboard Shortcuts"
-msgstr "Сочетания клавиш"
+msgstr "Сочитание клавиш"
 
 #: ../data/gui/roster_window.ui.h:26
 msgid "Fea_tures"
@@ -2720,11 +2631,13 @@ msgid "_Add contact"
 msgstr "Добавить _контакт"
 
 #. Information
-#: ../data/gui/search_window.ui.h:4 ../src/roster_window.py:6098
+#: ../data/gui/search_window.ui.h:4
+#: ../src/roster_window.py:6148
 msgid "_Information"
 msgstr "_Информация о контакте"
 
-#: ../data/gui/search_window.ui.h:5 ../src/disco.py:1408
+#: ../data/gui/search_window.ui.h:5
+#: ../src/disco.py:1372
 msgid "_Search"
 msgstr "_Поиск"
 
@@ -2752,6 +2665,10 @@ msgstr "Кому:"
 msgid "Sen_d"
 msgstr "_Отправить"
 
+#: ../data/gui/single_message_window.ui.h:6
+msgid "Send message"
+msgstr "Отправить сообщение"
+
 #: ../data/gui/single_message_window.ui.h:7
 msgid "_Reply"
 msgstr "_Ответить"
@@ -2777,9 +2694,7 @@ msgid "_Deny"
 msgstr "_Отклонить"
 
 #: ../data/gui/subscription_request_window.ui.h:3
-msgid ""
-"Deny authorization from contact so he or she cannot know when you're "
-"connected"
+msgid "Deny authorization from contact so he or she cannot know when you're connected"
 msgstr "Отклонить авторизацию от контакта (Он не сможет видеть ваш статус)"
 
 #: ../data/gui/subscription_request_window.ui.h:6
@@ -2963,45 +2878,40 @@ msgstr "Jabber-клиент для мгновенных сообщений"
 msgid "A GTK+ Jabber client"
 msgstr "Jabber-клиент на GTK+"
 
-#: ../data/gajim.desktop.in.in.h:4
-msgid "chat;messaging;im;jabber;xmpp;bonjour;voip"
-msgstr ""
-
-#: ../src/adhoc_commands.py:325
+#: ../src/adhoc_commands.py:323
 msgid "Cancel confirmation"
 msgstr "Отменить подтверждение"
 
-#: ../src/adhoc_commands.py:326
-msgid ""
-"You are in process of executing command. Do you really want to cancel it?"
-msgstr ""
-"Команда находится в процессе выполнения. Вы уверены, что хотите её отменить?"
+#: ../src/adhoc_commands.py:324
+msgid "You are in process of executing command. Do you really want to cancel it?"
+msgstr "Команда находится в процессе выполнения. Вы уверены, что хотите её отменить?"
 
-#: ../src/adhoc_commands.py:372
+#: ../src/adhoc_commands.py:370
 #, fuzzy
 msgid "Invalid Form"
-msgstr "Составлять вход"
+msgstr "Неверная комната"
 
-#: ../src/adhoc_commands.py:373
+#: ../src/adhoc_commands.py:371
 #, fuzzy
 msgid "The form is not filled correctly."
-msgstr "Часы установлены неправильно"
+msgstr "В Jabber ID комнаты или сервера содержатся недопустимые символы."
 
-#: ../src/adhoc_commands.py:392 ../src/adhoc_commands.py:416
+#: ../src/adhoc_commands.py:390
+#: ../src/adhoc_commands.py:414
 msgid "Service sent malformed data"
 msgstr "Сервис отправил недопустимые данные"
 
-#: ../src/adhoc_commands.py:401
+#: ../src/adhoc_commands.py:399
 msgid "Service changed the session identifier."
 msgstr "Сервис изменил идентификатор сеанса."
 
-#: ../src/adhoc_commands.py:421
+#: ../src/adhoc_commands.py:419
 #, fuzzy, python-format
 msgid "%s - Ad-hoc Commands - Gajim"
 msgstr "Специальные команды — Gajim"
 
 #. when stanza doesn't have error description
-#: ../src/adhoc_commands.py:516
+#: ../src/adhoc_commands.py:514
 msgid "Service returned an error."
 msgstr "Сервис ответил ошибкой."
 
@@ -3026,7 +2936,8 @@ msgstr "Целое"
 msgid "Text"
 msgstr "Текст"
 
-#: ../src/advanced_configuration_window.py:97 ../src/chat_control.py:1065
+#: ../src/advanced_configuration_window.py:97
+#: ../src/chat_control.py:1069
 msgid "Color"
 msgstr "Цвет"
 
@@ -3059,178 +2970,275 @@ msgstr[0] "Вы получили новую запись (и %d не отобр
 msgstr[1] "Вы получили новые записи (и %d не отображаются):"
 msgstr[2] "Вы получили новые записи (и %d не отображаются):"
 
-#: ../src/chat_control.py:209
+#. the next script, executed in the "po" directory,
+#. generates the following list.
+#. #!/bin/sh
+#. LANG=$(for i in *.po; do j=${i/.po/}; echo -n "_('"$j"')":" '"$j"', " ; done)
+#. echo "{_('en'):'en'",$LANG"}"
+#: ../src/chat_control.py:86
+msgid "English"
+msgstr "Английский"
+
+#: ../src/chat_control.py:86
+msgid "Belarusian"
+msgstr "Белорусский"
+
+#: ../src/chat_control.py:86
+msgid "Bulgarian"
+msgstr "Болгарский"
+
+#: ../src/chat_control.py:87
+msgid "Breton"
+msgstr "Бретонский"
+
+#: ../src/chat_control.py:87
+msgid "Czech"
+msgstr "Чешский"
+
+#: ../src/chat_control.py:87
+msgid "German"
+msgstr "Немецкий"
+
+#: ../src/chat_control.py:88
+msgid "Greek"
+msgstr "Греческий"
+
+#: ../src/chat_control.py:88
+msgid "British"
+msgstr "Британский"
+
+#: ../src/chat_control.py:88
+msgid "Esperanto"
+msgstr "Эсперанто"
+
+#: ../src/chat_control.py:89
+msgid "Spanish"
+msgstr "Испанский"
+
+#: ../src/chat_control.py:89
+msgid "Basque"
+msgstr "Баскский"
+
+#: ../src/chat_control.py:89
+msgid "French"
+msgstr "Французский"
+
+#: ../src/chat_control.py:90
+msgid "Croatian"
+msgstr "Хорватский"
+
+#: ../src/chat_control.py:90
+msgid "Italian"
+msgstr "Итальянский"
+
+#: ../src/chat_control.py:90
+msgid "Norwegian (b)"
+msgstr "Норвежский (букмол)"
+
+#: ../src/chat_control.py:91
+msgid "Dutch"
+msgstr "Голландский"
+
+#: ../src/chat_control.py:91
+msgid "Norwegian"
+msgstr "Норвежский"
+
+#: ../src/chat_control.py:91
+msgid "Polish"
+msgstr "Польский"
+
+#: ../src/chat_control.py:92
+msgid "Portuguese"
+msgstr "Португальский"
+
+#: ../src/chat_control.py:92
+msgid "Brazilian Portuguese"
+msgstr "Португальский (Бразилия)"
+
+#: ../src/chat_control.py:93
+msgid "Russian"
+msgstr "Русский"
+
+#: ../src/chat_control.py:93
+msgid "Serbian"
+msgstr "Сербский"
+
+#: ../src/chat_control.py:93
+msgid "Slovak"
+msgstr "Словацкий"
+
+#: ../src/chat_control.py:94
+msgid "Swedish"
+msgstr "Шведский"
+
+#: ../src/chat_control.py:94
+msgid "Chinese (Ch)"
+msgstr "Китайский"
+
+#: ../src/chat_control.py:94
+msgid "Hebrew"
+msgstr ""
+
+#: ../src/chat_control.py:237
 msgid "Ping?"
 msgstr "Ping?"
 
-#: ../src/chat_control.py:214
+#: ../src/chat_control.py:242
 #, python-format
 msgid "Pong! (%s s.)"
 msgstr "Pong! (%s сек.)"
 
-#: ../src/chat_control.py:219
+#: ../src/chat_control.py:247
 msgid "Error."
 msgstr "Ошибка."
 
+#: ../src/chat_control.py:582
+msgid "Spelling language"
+msgstr "Язык проверки орфографии"
+
 #. we are not connected
-#: ../src/chat_control.py:800
+#: ../src/chat_control.py:614
+#: ../src/chat_control.py:830
 msgid "A connection is not available"
 msgstr "Подключение недоступно"
 
-#: ../src/chat_control.py:801
+#: ../src/chat_control.py:615
+#: ../src/chat_control.py:831
 msgid "Your message can not be sent until you are connected."
 msgstr "Ваше сообщение не может быть отправлено, пока вы не подключитесь."
 
-#: ../src/chat_control.py:1047
+#: ../src/chat_control.py:1051
 msgid "Underline"
 msgstr "Подчеркнутый"
 
-#: ../src/chat_control.py:1048
+#: ../src/chat_control.py:1052
 msgid "Strike"
 msgstr "Зачеркнутый"
 
-#: ../src/chat_control.py:1071
+#: ../src/chat_control.py:1075
 msgid "Font"
 msgstr "Шрифт"
 
-#: ../src/chat_control.py:1080
+#: ../src/chat_control.py:1084
 msgid "Clear formating"
 msgstr "Удалить форматирование"
 
-#: ../src/chat_control.py:1157
+#: ../src/chat_control.py:1161
 msgid "Really send file?"
 msgstr "Отправить файл?"
 
-#: ../src/chat_control.py:1158
+#: ../src/chat_control.py:1162
 #, python-format
 msgid "If you send a file to %s, he/she will know your real Jabber ID."
 msgstr "Если вы пошлете файл %s, он/она узнает ваш настоящий Jabber ID."
 
-#: ../src/chat_control.py:1664 ../src/chat_control.py:2248
-msgid "OpenPGP encryption enabled"
-msgstr "OpenPGP шифрование включено"
-
-#: ../src/chat_control.py:1726
-msgid "Formattings are not available when GPG is active"
-msgstr "Форматирование невозможно если включено GPG"
-
-#: ../src/chat_control.py:1729
-msgid "This contact does not support HTML"
-msgstr "Этот контакт не поддерживает HTML"
+#: ../src/chat_control.py:1645
+#: ../src/chat_control.py:2190
+msgid "GPG encryption enabled"
+msgstr "GPG шифрование включено"
 
 #. Add to roster
-#: ../src/chat_control.py:1734 ../src/common/contacts.py:152
-#: ../src/common/contacts.py:273 ../src/common/helpers.py:67
-#: ../src/common/helpers.py:261 ../src/dialogs.py:1105 ../src/dialogs.py:2310
-#: ../src/dialogs.py:2339 ../src/dialogs.py:3551 ../src/gui_interface.py:485
-#: ../src/gui_menu_builder.py:265 ../src/gui_menu_builder.py:420
-#: ../src/roster_window.py:771 ../src/roster_window.py:1734
-#: ../src/roster_window.py:1736 ../src/roster_window.py:2084
-#: ../src/roster_window.py:3620 ../src/roster_window.py:3647
+#: ../src/chat_control.py:1699
+#: ../src/common/contacts.py:152
+#: ../src/common/contacts.py:273
+#: ../src/common/helpers.py:67
+#: ../src/common/helpers.py:261
+#: ../src/dialogs.py:1101
+#: ../src/dialogs.py:2266
+#: ../src/dialogs.py:2295
+#: ../src/gui_interface.py:484
+#: ../src/gui_menu_builder.py:262
+#: ../src/gui_menu_builder.py:416
+#: ../src/roster_window.py:767
+#: ../src/roster_window.py:1722
+#: ../src/roster_window.py:1724
+#: ../src/roster_window.py:2072
+#: ../src/roster_window.py:3689
+#: ../src/roster_window.py:3716
 msgid "Not in Roster"
 msgstr "Не в ростере"
 
-#. change tooltip text for audio and video buttons if python-farstream is
-#. not installed
-#: ../src/chat_control.py:1759
-#: ../src/command_system/implementation/standard.py:215
-msgid "Toggle audio session"
-msgstr "Переключить аудио сеанс"
-
-#: ../src/chat_control.py:1760
-#: ../src/command_system/implementation/standard.py:225
-msgid "Toggle video session"
-msgstr "Переключить видео сеанс"
-
-#: ../src/chat_control.py:1762
+#: ../src/chat_control.py:1727
+#, fuzzy
 msgid "Feature not available, see Help->Features"
-msgstr "Эта возможность отсутствует, смотрите Помощь->Возможности"
+msgstr "Эта возможность отсутствует в Windows."
 
-#: ../src/chat_control.py:1766
+#: ../src/chat_control.py:1731
 msgid "Feature not supported by remote client"
-msgstr "Клиент на другой стороне не поддерживает данную возможность"
+msgstr ""
 
-#: ../src/chat_control.py:1779
-msgid "Send files"
-msgstr "Отправить файлы"
-
-#: ../src/chat_control.py:1784
+#: ../src/chat_control.py:1748
 msgid "This contact does not support file transfer."
 msgstr "Этот контакт не поддерживает передачу файлов."
 
-#: ../src/chat_control.py:1787
+#: ../src/chat_control.py:1751
 msgid "You need to know the real JID of the contact to send him or her a file."
-msgstr ""
-"Необходимо знать настоящий JID контакта для того, чтобы отправить ему или ей "
-"файл."
+msgstr "Необходимо знать настоящий JID контакта для того, чтобы отправить ему или ей файл."
 
-#: ../src/chat_control.py:1905
+#: ../src/chat_control.py:1869
 #, python-format
 msgid "%(type)s state : %(state)s, reason: %(reason)s"
 msgstr "%(type)s состояние : %(state)s, причина: %(reason)s"
 
-#: ../src/chat_control.py:2097
+#: ../src/chat_control.py:2060
 #, python-format
 msgid "%(nickname)s from group chat %(room_name)s"
 msgstr "%(nickname)s из комнаты %(room_name)s"
 
 #. No key assigned nor a key is used by remote contact
-#: ../src/chat_control.py:2228 ../src/dialogs.py:5194
-msgid "No OpenPGP key assigned"
-msgstr "Ключ OpenPGP не присвоен"
+#: ../src/chat_control.py:2170
+#: ../src/dialogs.py:5092
+msgid "No GPG key assigned"
+msgstr "Ключ GPG не присвоен"
 
-#: ../src/chat_control.py:2229
-msgid ""
-"No OpenPGP key is assigned to this contact. So you cannot encrypt messages "
-"with OpenPGP."
-msgstr ""
-"Этому контакту не присвоен ключ OpenPGP, поэтому вы не можете зашифровать "
-"сообщения с помощью OpenPGP."
+#: ../src/chat_control.py:2171
+msgid "No GPG key is assigned to this contact. So you cannot encrypt messages with GPG."
+msgstr "Этому контакту не присвоен ключ GPG, поэтому вы не можете зашифровать сообщения с помощью GPG."
 
-#: ../src/chat_control.py:2238
-msgid "OpenPGP encryption disabled"
-msgstr "OpenPGP шифрование выключено"
+#: ../src/chat_control.py:2180
+msgid "GPG encryption disabled"
+msgstr "GPG шифрование выключено"
 
-#: ../src/chat_control.py:2264
+#: ../src/chat_control.py:2206
 msgid "Session WILL be logged"
 msgstr "Для сеанса БУДЕТ сохранена история сообщений"
 
-#: ../src/chat_control.py:2266
+#: ../src/chat_control.py:2208
 msgid "Session WILL NOT be logged"
 msgstr "Для сеанса НЕ БУДЕТ сохранена история сообщений"
 
 #. encryption %s active
-#: ../src/chat_control.py:2283
+#: ../src/chat_control.py:2225
 msgid "is"
 msgstr "было"
 
-#: ../src/chat_control.py:2283
+#: ../src/chat_control.py:2225
 msgid "is NOT"
 msgstr "НЕ"
 
 #. chat session %s be logged
-#: ../src/chat_control.py:2285
+#: ../src/chat_control.py:2227
 msgid "will"
 msgstr "будет"
 
-#: ../src/chat_control.py:2285
+#: ../src/chat_control.py:2227
 msgid "will NOT"
 msgstr "НЕ будет"
 
 #. About encrypted chat session
-#: ../src/chat_control.py:2289
+#: ../src/chat_control.py:2231
 msgid "and authenticated"
 msgstr "и заверено"
 
 #. About encrypted chat session
-#: ../src/chat_control.py:2293
+#: ../src/chat_control.py:2235
 msgid "and NOT authenticated"
 msgstr "и НЕ заверено"
 
 #. status will become 'is' or 'is not', authentificaed will become
 #. 'and authentificated' or 'and not authentificated', logged will become
 #. 'will' or 'will not'
-#: ../src/chat_control.py:2300
+#: ../src/chat_control.py:2242
 #, python-format
 msgid ""
 "%(type)s encryption %(status)s active %(authenticated)s.\n"
@@ -3239,81 +3247,75 @@ msgstr ""
 "%(type)s шифрование %(status)s включено %(authenticated)s.\n"
 "Для сеанса %(logged)s сохранена история сообщений."
 
-#: ../src/chat_control.py:2438
+#: ../src/chat_control.py:2370
 msgid "Session negotiation cancelled"
 msgstr "Установление сеанса отменено"
 
-#: ../src/chat_control.py:2448
+#: ../src/chat_control.py:2380
 msgid "This session WILL be archived on server"
 msgstr "История сеанса БУДЕТ сохранена на сервере"
 
-#: ../src/chat_control.py:2450
+#: ../src/chat_control.py:2382
 msgid "This session WILL NOT be archived on server"
 msgstr "История сеанса НЕ БУДЕТ сохранена на сервере"
 
-#: ../src/chat_control.py:2459
+#: ../src/chat_control.py:2391
 msgid "This session is encrypted"
 msgstr "Сеанс зашифрован"
 
-#: ../src/chat_control.py:2462
+#: ../src/chat_control.py:2394
 msgid " and WILL be logged"
 msgstr " и БУДЕТ сохранена история сообщений"
 
-#: ../src/chat_control.py:2464
+#: ../src/chat_control.py:2396
 msgid " and WILL NOT be logged"
 msgstr " и НЕ БУДЕТ сохранена история сообщений"
 
-#: ../src/chat_control.py:2469
-msgid ""
-"Remote contact's identity not verified. Click the shield button for more "
-"details."
-msgstr ""
-"Личность удаленного контакта не подтверждена. Нажмите на кнопку со щитом для "
-"подробностей."
+#: ../src/chat_control.py:2401
+msgid "Remote contact's identity not verified. Click the shield button for more details."
+msgstr "Личность удаленного контакта не подтверждена. Нажмите на кнопке со щитом для подробностей."
 
-#: ../src/chat_control.py:2471
+#: ../src/chat_control.py:2403
 msgid "E2E encryption disabled"
 msgstr "E2E шифрование выключено"
 
-#: ../src/chat_control.py:2519 ../src/chat_control.py:2533
+#: ../src/chat_control.py:2451
+#: ../src/chat_control.py:2465
 msgid "The following message was NOT encrypted"
 msgstr "Последнее сообщение НЕ БЫЛО зашифровано"
 
-#: ../src/chat_control.py:2525
+#: ../src/chat_control.py:2457
 msgid "The following message was encrypted"
 msgstr "Последнее сообщение зашифровано"
 
 #. %s is being replaced in the code with JID
-#: ../src/chat_control.py:2796
+#: ../src/chat_control.py:2728
 #, python-format
 msgid "You just received a new message from \"%s\""
 msgstr "Получено новое сообщение от «%s»"
 
-#: ../src/chat_control.py:2798
-msgid ""
-"If you close this tab and you have history disabled, this message will be "
-"lost."
-msgstr ""
-"Если вы закроете эту вкладку и у вас отключена функция ведения истории "
-"сообщений, то это сообщение будет утеряно."
+#: ../src/chat_control.py:2729
+msgid "If you close this tab and you have history disabled, this message will be lost."
+msgstr "Если вы закроете эту вкладку и у вас отключена функция ведения истории сообщений, то это сообщение будет утеряно."
 
-#: ../src/chat_control.py:2966 ../src/common/connection_handlers_events.py:913
-#: ../src/common/connection_handlers.py:1145
-#: ../src/common/connection_handlers.py:1269 ../src/common/connection.py:523
-#: ../src/common/logger.py:1161 ../src/gajim.py:229 ../src/session.py:98
+#: ../src/chat_control.py:2896
+#: ../src/common/connection_handlers_events.py:911
+#: ../src/common/connection_handlers.py:955
+#: ../src/common/connection_handlers.py:1077
+#: ../src/common/connection.py:462
+#: ../src/common/logger.py:1155
+#: ../src/gajim.py:208
+#: ../src/session.py:100
 msgid "Database Error"
 msgstr "Ошибка базы данных"
 
-#: ../src/chat_control.py:2967
+#: ../src/chat_control.py:2897
 #, python-format
-msgid ""
-"The database file (%s) cannot be read. Try to repair it or remove it (all "
-"history will be lost)."
-msgstr ""
-"Файл базы данных (%s) не может быть прочитан. Попробуйте восстановить его "
-"или удалить (вся история будет утеряна)."
+msgid "The database file (%s) cannot be read. Try to repair it or remove it (all history will be lost)."
+msgstr "Файл базы данных (%s) не может быть прочитан. Попробуйте восстановить его или удалить (вся история будет утеряна)."
 
-#: ../src/chat_control.py:3204 ../src/gui_interface.py:1161
+#: ../src/chat_control.py:3134
+#: ../src/gui_interface.py:1151
 #, python-format
 msgid ""
 "Unable to decrypt message from %s\n"
@@ -3322,52 +3324,60 @@ msgstr ""
 "Не удалось расшифровать сообщение от %s\n"
 "Возможно, оно было испорчено."
 
-#: ../src/chat_control.py:3261
+#: ../src/chat_control.py:3167
 #, python-format
 msgid "%(name)s is now %(status)s"
 msgstr "%(name)s теперь %(status)s"
 
-#: ../src/chat_control.py:3320
+#: ../src/chat_control.py:3226
 msgid "File transfer"
 msgstr "Передача файлов"
 
-#: ../src/chat_control.py:3323
+#: ../src/chat_control.py:3229
 msgid "Size"
 msgstr "Размер"
 
-#: ../src/chat_control.py:3325
+#: ../src/chat_control.py:3231
 msgid "_Accept"
 msgstr "_Принять"
 
-#: ../src/chat_control.py:3346 ../src/filetransfers_window.py:211
+#: ../src/chat_control.py:3252
+#: ../src/filetransfers_window.py:211
 msgid "File transfer completed"
 msgstr "Передача завершена"
 
-#: ../src/chat_control.py:3382 ../src/dialogs.py:2927 ../src/dialogs.py:4614
-#: ../src/gui_interface.py:646 ../src/notify.py:278
+#: ../src/chat_control.py:3288
+#: ../src/dialogs.py:2828
+#: ../src/gui_interface.py:645
+#: ../src/notify.py:278
 msgid "Groupchat Invitation"
 msgstr "Приглашение в комнату"
 
-#: ../src/chat_control.py:3404 ../src/gui_interface.py:1019
-#: ../src/roster_window.py:1993
+#: ../src/chat_control.py:3310
+#: ../src/gui_interface.py:1009
+#: ../src/roster_window.py:1981
 msgid "Remote contact stopped transfer"
 msgstr "Удаленный контакт остановил передачу"
 
-#: ../src/chat_control.py:3406 ../src/gui_interface.py:1022
-#: ../src/roster_window.py:1995
+#: ../src/chat_control.py:3312
+#: ../src/gui_interface.py:1012
+#: ../src/roster_window.py:1983
 msgid "Error opening file"
 msgstr "Ошибка открытия файла"
 
-#: ../src/chat_control.py:3408 ../src/filetransfers_window.py:247
+#: ../src/chat_control.py:3314
+#: ../src/filetransfers_window.py:247
 msgid "File transfer stopped"
 msgstr "Передача файла остановлена"
 
-#: ../src/chat_control.py:3411 ../src/filetransfers_window.py:226
+#: ../src/chat_control.py:3317
+#: ../src/filetransfers_window.py:226
 #: ../src/filetransfers_window.py:233
 msgid "File transfer cancelled"
 msgstr "Передача отменена"
 
-#: ../src/chat_control.py:3412 ../src/filetransfers_window.py:226
+#: ../src/chat_control.py:3318
+#: ../src/filetransfers_window.py:226
 #: ../src/filetransfers_window.py:234
 msgid "Connection with peer cannot be established."
 msgstr "Соединение не может быть установлено."
@@ -3385,17 +3395,15 @@ msgid "Execute expression inside a shell, send output"
 msgstr ""
 
 #: ../src/command_system/implementation/middleware.py:74
-#, fuzzy
 msgid "Error during command execution!"
-msgstr "Не удалось исполнить команду!"
+msgstr ""
 
 #: ../src/command_system/implementation/standard.py:50
 msgid "Hide the chat buttons"
 msgstr "Скрыть кнопки в окне беседы"
 
 #: ../src/command_system/implementation/standard.py:56
-msgid ""
-"Show help on a given command or a list of available commands if -a is given"
+msgid "Show help on a given command or a list of available commands if -a is given"
 msgstr ""
 
 #: ../src/command_system/implementation/standard.py:83
@@ -3411,17 +3419,15 @@ msgid "Show logged messages which mention given text"
 msgstr ""
 
 #: ../src/command_system/implementation/standard.py:99
-#, python-format
+#, fuzzy, python-format
 msgid "%s: Nothing found"
-msgstr "%s: Ничего не найдено"
+msgstr "%s не найден"
 
 #: ../src/command_system/implementation/standard.py:105
-#, fuzzy
 msgid "Limit must be an integer"
-msgstr "Аргумент предела должен быть целым числом."
+msgstr ""
 
-#. Do not translate online, away, chat, xa, dnd
-#: ../src/command_system/implementation/standard.py:130
+#: ../src/command_system/implementation/standard.py:129
 msgid ""
 "\n"
 "    Set the current status\n"
@@ -3431,130 +3437,124 @@ msgid ""
 "    "
 msgstr ""
 
-#: ../src/command_system/implementation/standard.py:148
-#, fuzzy
+#: ../src/command_system/implementation/standard.py:147
 msgid "Set the current status to away"
-msgstr "Установлен статус «не в сети»"
+msgstr ""
 
-#: ../src/command_system/implementation/standard.py:151
-#: ../src/common/commands.py:110 ../src/common/helpers.py:249
+#: ../src/command_system/implementation/standard.py:150
+#: ../src/common/commands.py:109
+#: ../src/common/helpers.py:249
 #: ../src/tooltips.py:189
 msgid "Away"
 msgstr "Ушел"
 
-#: ../src/command_system/implementation/standard.py:162
-#, fuzzy
+#: ../src/command_system/implementation/standard.py:161
 msgid "Set the current status to online"
-msgstr "Установлен статус «не в сети»"
+msgstr ""
 
-#: ../src/command_system/implementation/standard.py:165
+#: ../src/command_system/implementation/standard.py:164
 msgid "Available"
 msgstr "Доступен"
 
-#: ../src/command_system/implementation/standard.py:185
-#: ../src/command_system/implementation/standard.py:267
+#: ../src/command_system/implementation/standard.py:184
+#: ../src/command_system/implementation/standard.py:266
 msgid "Clear the text window"
 msgstr "Очистить текстовое окно"
 
-#: ../src/command_system/implementation/standard.py:190
-#, fuzzy
-msgid "Toggle the OpenPGP encryption"
-msgstr "OpenPGP шифрование включено"
+#: ../src/command_system/implementation/standard.py:189
+msgid "Toggle the GPG encryption"
+msgstr "Включить GPG шифрование"
 
-#: ../src/command_system/implementation/standard.py:195
+#: ../src/command_system/implementation/standard.py:194
 msgid "Send a ping to the contact"
 msgstr "Послать пинг контакту"
 
-#: ../src/command_system/implementation/standard.py:198
+#: ../src/command_system/implementation/standard.py:197
+#, fuzzy
 msgid "Command is not supported for zeroconf accounts"
-msgstr "Команда не поддерживается учетной записью zeroconf"
+msgstr "Команда не поддерживается учетной записью zeroconf."
 
-#: ../src/command_system/implementation/standard.py:202
+#: ../src/command_system/implementation/standard.py:201
 msgid "Send DTMF sequence through an open audio session"
 msgstr ""
 
-#: ../src/command_system/implementation/standard.py:205
+#: ../src/command_system/implementation/standard.py:204
 #, fuzzy
 msgid "No open audio sessions with the contact"
 msgstr "Щелкните для просмотра последних бесед с этим человеком"
 
-#: ../src/command_system/implementation/standard.py:208
+#: ../src/command_system/implementation/standard.py:207
 #, fuzzy, python-format
 msgid "%s is not a valid tone"
 msgstr "%s не является допустимым loglevel"
 
-#: ../src/command_system/implementation/standard.py:218
+#: ../src/command_system/implementation/standard.py:217
 #, fuzzy
 msgid "Audio sessions are not available"
-msgstr "Недоступны заголовки раздела!\n"
+msgstr "Подключение недоступно"
 
-#: ../src/command_system/implementation/standard.py:228
+#: ../src/command_system/implementation/standard.py:227
 #, fuzzy
 msgid "Video sessions are not available"
-msgstr "Недоступны заголовки раздела!\n"
+msgstr "Соединение недоступно"
 
-#: ../src/command_system/implementation/standard.py:235
+#: ../src/command_system/implementation/standard.py:234
 #, fuzzy
 msgid "Send a message to the contact that will attract his (her) attention"
 msgstr "Использование: /%s, посылает сообщение контакту"
 
-#: ../src/command_system/implementation/standard.py:274
+#: ../src/command_system/implementation/standard.py:273
 #, fuzzy
 msgid "Change your nickname in a group chat"
-msgstr "Комната «%s» уже есть в ваших закладках."
+msgstr "Изменить ник (Ctrl+N)"
 
 #. invalid char
-#: ../src/command_system/implementation/standard.py:279 ../src/config.py:3405
-#: ../src/dialogs.py:2154
+#: ../src/command_system/implementation/standard.py:278
+#: ../src/config.py:3387
+#: ../src/dialogs.py:2113
 msgid "Invalid nickname"
 msgstr "Неверное имя пользователя"
 
-#: ../src/command_system/implementation/standard.py:284
+#: ../src/command_system/implementation/standard.py:283
 #, fuzzy
 msgid "Open a private chat window with a specified occupant"
-msgstr ""
-"Использование: /%s <ник>, открывает окно привата с указанным посетителем."
+msgstr "Использование: /%s <ник>, открывает окно привата с указанным посетителем."
 
-#: ../src/command_system/implementation/standard.py:290
-#: ../src/command_system/implementation/standard.py:299
-#: ../src/command_system/implementation/standard.py:353
-#: ../src/command_system/implementation/standard.py:365
-#: ../src/command_system/implementation/standard.py:377
+#: ../src/command_system/implementation/standard.py:289
+#: ../src/command_system/implementation/standard.py:298
+#: ../src/command_system/implementation/standard.py:352
+#: ../src/command_system/implementation/standard.py:363
+#: ../src/command_system/implementation/standard.py:374
 msgid "Nickname not found"
 msgstr "Ник не обнаружен"
 
-#: ../src/command_system/implementation/standard.py:293
+#: ../src/command_system/implementation/standard.py:292
 #, fuzzy
-msgid ""
-"Open a private chat window with a specified occupant and send him a message"
-msgstr ""
-"Использование: /%s <ник>, открывает окно привата с указанным посетителем."
+msgid "Open a private chat window with a specified occupant and send him a message"
+msgstr "Использование: /%s <ник>, открывает окно привата с указанным посетителем."
 
-#: ../src/command_system/implementation/standard.py:302
+#: ../src/command_system/implementation/standard.py:301
 msgid "Display or change a group chat topic"
 msgstr "Показать или изменить тему комнаты"
 
-#: ../src/command_system/implementation/standard.py:310
-#, fuzzy
+#: ../src/command_system/implementation/standard.py:309
 msgid "Invite a user to a room for a reason"
 msgstr ""
-"invite <пользователь> [сообщение]:  Пригласить пользователя в комнату."
 
-#: ../src/command_system/implementation/standard.py:313
+#: ../src/command_system/implementation/standard.py:312
 #, fuzzy, python-format
 msgid "Invited %s to %s"
-msgstr "Приглашен %s в %s"
+msgstr "Отправить %s контакту %s"
 
-#: ../src/command_system/implementation/standard.py:316
+#: ../src/command_system/implementation/standard.py:315
 msgid "Join a group chat given by a jid, optionally using given nickname"
 msgstr ""
 
-#: ../src/command_system/implementation/standard.py:333
-msgid ""
-"Leave the groupchat, optionally giving a reason, and close tab or window"
+#: ../src/command_system/implementation/standard.py:332
+msgid "Leave the groupchat, optionally giving a reason, and close tab or window"
 msgstr ""
 
-#: ../src/command_system/implementation/standard.py:338
+#: ../src/command_system/implementation/standard.py:337
 msgid ""
 "\n"
 "    Ban user by a nick or a jid from a groupchat\n"
@@ -3563,61 +3563,48 @@ msgid ""
 "    "
 msgstr ""
 
-#: ../src/command_system/implementation/standard.py:350
+#: ../src/command_system/implementation/standard.py:349
 #, fuzzy
 msgid "Kick user by a nick from a groupchat"
 msgstr "Вы приглашены в конференцию"
 
-#. Do not translate moderator, participant, visitor, none
-#: ../src/command_system/implementation/standard.py:358
+#: ../src/command_system/implementation/standard.py:356
 msgid ""
 "Set occupant role in group chat.\n"
 "    Role can be given as one of the following values:\n"
 "    moderator, participant, visitor, none"
 msgstr ""
 
-#: ../src/command_system/implementation/standard.py:363
+#: ../src/command_system/implementation/standard.py:361
 #, fuzzy
 msgid "Invalid role given"
-msgstr "задана неверная кодировка"
+msgstr "Неверный сервер"
 
-#. Do not translate owner, admin, member, outcast, none
-#: ../src/command_system/implementation/standard.py:370
+#: ../src/command_system/implementation/standard.py:367
 msgid ""
 "Set occupant affiliation in group chat.\n"
 "    Affiliation can be given as one of the following values:\n"
 "    owner, admin, member, outcast, none"
 msgstr ""
 
-#: ../src/command_system/implementation/standard.py:375
+#: ../src/command_system/implementation/standard.py:372
 #, fuzzy
 msgid "Invalid affiliation given"
-msgstr "задана неверная кодировка"
+msgstr "ранг изменен"
 
-#: ../src/command_system/implementation/standard.py:383
+#: ../src/command_system/implementation/standard.py:380
 #, fuzzy
 msgid "Display names of all group chat occupants"
 msgstr "Использование: /%s, показывает список присутствующих в комнате."
 
-#: ../src/command_system/implementation/standard.py:405
+#: ../src/command_system/implementation/standard.py:402
 msgid "Forbid an occupant to send you public or private messages"
 msgstr ""
 
-#: ../src/command_system/implementation/standard.py:410
+#: ../src/command_system/implementation/standard.py:407
 msgid "Allow an occupant to send you public or private messages"
 msgstr ""
 
-#: ../src/command_system/mapping.py:165 ../src/command_system/mapping.py:175
-#: ../src/command_system/mapping.py:195
-#, fuzzy
-msgid "Missing arguments"
-msgstr "необходимо задать аргументы"
-
-#: ../src/command_system/mapping.py:262
-#, fuzzy
-msgid "Excessive arguments"
-msgstr "Аргументы инициализатора:"
-
 #: ../src/common/check_paths.py:39
 msgid "creating logs database"
 msgstr "создается БД истории"
@@ -3626,23 +3613,33 @@ msgstr "создается БД истории"
 msgid "creating cache database"
 msgstr "создается БД истории"
 
-#: ../src/common/check_paths.py:278 ../src/common/check_paths.py:285
-#: ../src/common/check_paths.py:292 ../src/common/check_paths.py:299
-#: ../src/common/check_paths.py:306 ../src/common/check_paths.py:313
-#: ../src/common/check_paths.py:320 ../src/common/check_paths.py:327
+#: ../src/common/check_paths.py:278
+#: ../src/common/check_paths.py:285
+#: ../src/common/check_paths.py:292
+#: ../src/common/check_paths.py:299
+#: ../src/common/check_paths.py:306
+#: ../src/common/check_paths.py:313
+#: ../src/common/check_paths.py:320
+#: ../src/common/check_paths.py:327
 #, python-format
 msgid "%s is a file but it should be a directory"
 msgstr "%s должен быть директорией, а не файлом"
 
-#: ../src/common/check_paths.py:279 ../src/common/check_paths.py:286
-#: ../src/common/check_paths.py:293 ../src/common/check_paths.py:300
-#: ../src/common/check_paths.py:307 ../src/common/check_paths.py:314
-#: ../src/common/check_paths.py:321 ../src/common/check_paths.py:328
-#: ../src/common/check_paths.py:338 ../src/common/check_paths.py:346
+#: ../src/common/check_paths.py:279
+#: ../src/common/check_paths.py:286
+#: ../src/common/check_paths.py:293
+#: ../src/common/check_paths.py:300
+#: ../src/common/check_paths.py:307
+#: ../src/common/check_paths.py:314
+#: ../src/common/check_paths.py:321
+#: ../src/common/check_paths.py:328
+#: ../src/common/check_paths.py:338
+#: ../src/common/check_paths.py:346
 msgid "Gajim will now exit"
 msgstr "Закончить работу"
 
-#: ../src/common/check_paths.py:337 ../src/common/check_paths.py:345
+#: ../src/common/check_paths.py:337
+#: ../src/common/check_paths.py:345
 #, python-format
 msgid "%s is a directory but should be a file"
 msgstr "%s должен быть файлом, а не директорией"
@@ -3652,84 +3649,90 @@ msgstr "%s должен быть файлом, а не директорией"
 msgid "creating %s directory"
 msgstr "создается директория %s"
 
-#: ../src/common/commands.py:86
+#: ../src/common/commands.py:85
 msgid "Change status information"
 msgstr "Изменить информацию о статусе"
 
-#: ../src/common/commands.py:101
+#: ../src/common/commands.py:100
 msgid "Change status"
 msgstr "Контакт изменит статус"
 
-#: ../src/common/commands.py:102
+#: ../src/common/commands.py:101
 msgid "Set the presence type and description"
 msgstr "Установка статуса и статусного сообщения"
 
-#: ../src/common/commands.py:108
+#: ../src/common/commands.py:107
 msgid "Free for chat"
 msgstr "Готов поболтать"
 
-#: ../src/common/commands.py:109
+#: ../src/common/commands.py:108
 msgid "Online"
 msgstr "В сети"
 
-#: ../src/common/commands.py:111
+#: ../src/common/commands.py:110
 msgid "Extended away"
 msgstr "Недоступен (расширенный)"
 
-#: ../src/common/commands.py:112
+#: ../src/common/commands.py:111
 msgid "Do not disturb"
 msgstr "Не беспокоить."
 
-#: ../src/common/commands.py:113
+#: ../src/common/commands.py:112
 msgid "Offline - disconnect"
 msgstr "Не в сети — отключен"
 
-#: ../src/common/commands.py:118
+#: ../src/common/commands.py:117
 msgid "Presence description:"
 msgstr "Описание присутствия:"
 
-#: ../src/common/commands.py:153 ../src/common/commands.py:330
+#: ../src/common/commands.py:152
+#: ../src/common/commands.py:324
 msgid "The status has been changed."
 msgstr "Статус изменён."
 
-#: ../src/common/commands.py:185 ../src/common/commands.py:211
+#: ../src/common/commands.py:184
+#: ../src/common/commands.py:210
 msgid "Leave Groupchats"
 msgstr "Покинуть конференции"
 
-#: ../src/common/commands.py:201
+#: ../src/common/commands.py:200
 #, python-format
 msgid "%(nickname)s on %(room_jid)s"
 msgstr "%(nickname)s из комнаты %(room_jid)s"
 
-#: ../src/common/commands.py:205
+#: ../src/common/commands.py:204
 msgid "You have not joined a groupchat."
 msgstr "Вы не вошли в комнату."
 
-#: ../src/common/commands.py:212
+#: ../src/common/commands.py:211
 msgid "Choose the groupchats you want to leave"
 msgstr "Выберите конференции, которые вы хотите покинуть"
 
 #. Make special context menu if group is Groupchats
-#: ../src/common/commands.py:216 ../src/common/contacts.py:131
-#: ../src/common/helpers.py:67 ../src/roster_window.py:824
-#: ../src/roster_window.py:1738 ../src/roster_window.py:1740
-#: ../src/roster_window.py:2623 ../src/roster_window.py:5716
+#: ../src/common/commands.py:215
+#: ../src/common/contacts.py:131
+#: ../src/common/helpers.py:67
+#: ../src/roster_window.py:820
+#: ../src/roster_window.py:1726
+#: ../src/roster_window.py:1728
+#: ../src/roster_window.py:2611
+#: ../src/roster_window.py:5766
 msgid "Groupchats"
 msgstr "Комнаты"
 
-#: ../src/common/commands.py:257
+#: ../src/common/commands.py:256
 msgid "You left the following groupchats:"
 msgstr "Вы покинули следующие комнаты:"
 
-#: ../src/common/commands.py:269
+#: ../src/common/commands.py:268
 msgid "Forward unread messages"
 msgstr "Переслать непрочитанные сообщения"
 
-#: ../src/common/commands.py:296
+#: ../src/common/commands.py:294
 msgid "All unread messages have been forwarded."
 msgstr "Все непрочитанные сообщения отправлены."
 
-#: ../src/common/commands.py:304
+#: ../src/common/commands.py:302
 msgid "Forward unread message then disconnect"
 msgstr "Переслать непрочитанные сообщения при отключении"
 
@@ -3743,9 +3746,7 @@ msgstr "Использовать DBus и Notification Daemon для показа
 
 #: ../src/common/config.py:79
 msgid "Show only online and free for chat contacts in roster."
-msgstr ""
-"Показывать в ростере только контакты со статусами «Доступен» и «Готов "
-"поболтать»."
+msgstr "Показывать в ростере только контакты со статусами «Доступен» и «Готов поболтать»."
 
 #: ../src/common/config.py:82
 msgid "Time in minutes, after which your status changes to away."
@@ -3756,8 +3757,7 @@ msgid "$S (Away as a result of being idle more than $T min)"
 msgstr "$S (Автостатус 'Отошел' по причине бездействия более $T мин)"
 
 #: ../src/common/config.py:83
-#, fuzzy
-msgid "$S will be replaced by current status message, $T by autoawaytime."
+msgid "$S will be replaced by current status message, $T by autoaway time."
 msgstr "$S будет замещено текущим сообщением о статусе, $T — временем простоя."
 
 #: ../src/common/config.py:85
@@ -3769,16 +3769,12 @@ msgid "$S (Not available as a result of being idle more than $T min)"
 msgstr "$S (Автостатус 'Недоступен' по причине бездействия более $T мин)"
 
 #: ../src/common/config.py:86
-#, fuzzy
-msgid "$S will be replaced by current status message, $T by autoxatime."
+msgid "$S will be replaced by current status message, $T by autoxa time."
 msgstr "$S будет замещено текущим сообщением о статусе, $T — временем простоя."
 
 #: ../src/common/config.py:89
-msgid ""
-"When to show notification area icon. Can be 'never', 'on_event', 'always'."
-msgstr ""
-"Когда показывать иконку в области уведомлений. Возможные значения 'never', "
-"'on_event', 'always'."
+msgid "When to show notification area icon. Can be 'never', 'on_event', 'always'."
+msgstr "Когда показывать иконку в области уведомлений. Возможные значения 'never', 'on_event', 'always'."
 
 #: ../src/common/config.py:90
 msgid "Allow to hide the roster window even if the tray icon is not shown."
@@ -3813,19 +3809,19 @@ msgstr "_Показывать событие в области уведомле
 #: ../src/common/config.py:103
 #, fuzzy
 msgid "Contact signout notification color"
-msgstr "Цвет фона контакта/переписки"
+msgstr "_Показывать событие в области уведомлений"
 
 #. red
 #: ../src/common/config.py:104
 #, fuzzy
 msgid "New message/email notification color."
-msgstr "Показывать _уведомления при получении сообщений"
+msgstr "Предпросмотр новых сообщений во всплывающем окне?"
 
 #. dodgerblue
 #: ../src/common/config.py:105
 #, fuzzy
 msgid "File transfer request notification color."
-msgstr "Удовлетворить запрос передачи файлов от %s?"
+msgstr "Запрос передачи файлов"
 
 #. khaki
 #: ../src/common/config.py:106
@@ -3841,8 +3837,9 @@ msgstr "Показать уведомление по окончании загр
 
 #. yellowgreen
 #: ../src/common/config.py:108
+#, fuzzy
 msgid "Groupchat invitation notification color"
-msgstr "Цвет, использующийся для шрифта уведомления о наборе"
+msgstr "Приглашение в комнату"
 
 #. tan1
 #: ../src/common/config.py:109
@@ -3851,9 +3848,8 @@ msgstr ""
 
 #. thistle2
 #: ../src/common/config.py:110
-#, fuzzy
 msgid "Other dialogs color."
-msgstr "Цвет ника собеседника."
+msgstr ""
 
 #. white
 #: ../src/common/config.py:111
@@ -3877,15 +3873,16 @@ msgid "Status message text font."
 msgstr "Шрифт сообщения о статусе"
 
 #: ../src/common/config.py:116
-msgid ""
-"List (space separated) of rows (accounts and groups) that are collapsed."
-msgstr ""
-"Список (через пробел) строк (учётных записей и групп), которые свёрнуты."
+msgid "List (space separated) of rows (accounts and groups) that are collapsed."
+msgstr "Список (через пробел) строк (учётных записей и групп), которые свёрнуты."
 
 #. sorted alphanum
-#: ../src/common/config.py:117 ../src/common/config.py:533
-#: ../src/common/optparser.py:295 ../src/common/optparser.py:491
-#: ../src/common/optparser.py:525 ../src/gui_interface.py:2790
+#: ../src/common/config.py:117
+#: ../src/common/config.py:528
+#: ../src/common/optparser.py:295
+#: ../src/common/optparser.py:491
+#: ../src/common/optparser.py:525
+#: ../src/gui_interface.py:2761
 msgid "default"
 msgstr "По_умолчанию"
 
@@ -3904,414 +3901,249 @@ msgstr ""
 "«never» — не печатать время."
 
 #: ../src/common/config.py:125
-msgid ""
-"Print time in chats using Fuzzy Clock. Value of fuzziness from 1 to 4, or 0 "
-"to disable fuzzyclock. 1 is the most precise clock, 4 the least precise one. "
-"This is used only if print_time is 'sometimes'."
-msgstr ""
-"Печатать время в беседе как в неточных часах. Степень неточности может быть "
-"от 1 до 4, 0 отключает эту функцию. 1 самые точные часы, 4 самые неточные. "
-"Используется только если режим печати времени установлен на "
-"«sometimes» (иногда)."
+msgid "Print time in chats using Fuzzy Clock. Value of fuzziness from 1 to 4, or 0 to disable fuzzyclock. 1 is the most precise clock, 4 the least precise one. This is used only if print_time is 'sometimes'."
+msgstr "Печатать время в беседе как в неточных часах. Степень неточности может быть от 1 до 4, 0 отключает эту функцию. 1 самые точные часы, 4 самые неточные. Используется только если режим печати времени установлен на «sometimes» (иногда)."
 
 #: ../src/common/config.py:128
 msgid "Treat * / _ pairs as possible formatting characters."
 msgstr "Обрабатывать пары * / _ как возможные форматирующие символы."
 
 #: ../src/common/config.py:129
-msgid ""
-"If True, do not remove */_ . So *abc* will be bold but with * * not removed."
-msgstr ""
-"Если активно, то не будут удаляться */_. Так что *фыва* будет написано "
-"полужирным шрифтом, но * * удалены не будут"
+msgid "If True, do not remove */_ . So *abc* will be bold but with * * not removed."
+msgstr "Если активно, то не будут удаляться */_. Так что *фыва* будет написано полужирным шрифтом, но * * удалены не будут"
 
 #: ../src/common/config.py:132
-msgid ""
-"Uses ReStructured text markup to send HTML, plus ascii formatting if "
-"selected. For syntax, see http://docutils.sourceforge.net/docs/ref/rst/"
-"restructuredtext.html (If you want to use this, install docutils)"
-msgstr ""
-"Использовать разметку ReStructuredText для отправки HTML, плюс ascii "
-"форматирование, если оно выбрано. Синтаксис описан на http://docutils."
-"sourceforge.net/docs/ref/rst/restructuredtext.htm (Если вы хотите "
-"воспользоваться этой опцией, установите docutils)"
+msgid "Uses ReStructured text markup to send HTML, plus ascii formatting if selected. For syntax, see http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html (If you want to use this, install docutils)"
+msgstr "Использовать разметку ReStructuredText для отправки HTML, плюс ascii форматирование, если оно выбрано. Синтаксис описан на http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.htm (Если вы хотите воспользоваться этой опцией, установите docutils)"
 
 #: ../src/common/config.py:141
-msgid ""
-"Character to add after nickname when using nick completion (tab) in group "
-"chat."
-msgstr ""
-"Символ, который нужно добавлять к нику, когда используется дополнение (tab) "
-"в комнате."
+msgid "Character to add after nickname when using nick completion (tab) in group chat."
+msgstr "Символ, который нужно добавлять к нику, когда используется дополнение (tab) в комнате."
 
 #: ../src/common/config.py:142
-msgid ""
-"Character to propose to add after desired nickname when desired nickname is "
-"used by someone else in group chat."
-msgstr ""
-"Символ, который будет добавляться после ника, когда желаемый ник уже занят "
-"кем-нибудь в комнате."
+msgid "Character to propose to add after desired nickname when desired nickname is used by someone else in group chat."
+msgstr "Символ, который будет добавляться после ника, когда желаемый ник уже занят кем-нибудь в комнате."
 
 #: ../src/common/config.py:160
-msgid ""
-"If True, Gajim will save roster position when hiding roster, and restore it "
-"when showing roster."
+msgid "If true, Gajim will save roster position when hiding roster, and restore it when showing roster."
 msgstr ""
 
+#: ../src/common/config.py:171
+msgid "This option let you customize timestamp that is printed in conversation. For exemple \"[%H:%M] \" will show \"[hour:minute] \". See python doc on strftime for full documentation: http://docs.python.org/lib/module-time.html"
+msgstr "Эта опция позволяет настроить отпечаток времени, который печатается в чатах. К примеру «[%H:%M]» будет показано как «[чч:мм]». Смотрите дополнительно документацию python к strftime (http://docs.python.org/lib/module-time.html)"
+
 #: ../src/common/config.py:172
-msgid ""
-"This option let you customize timestamp that is printed in conversation. For "
-"exemple \"[%H:%M] \" will show \"[hour:minute] \". See python doc on "
-"strftime for full documentation: http://docs.python.org/lib/module-time.html"
-msgstr ""
-"Эта опция позволяет настроить отпечаток времени, который печатается в чатах. "
-"К примеру «[%H:%M]» будет показано как «[чч:мм]». Смотрите дополнительно "
-"документацию python к strftime (http://docs.python.org/lib/module-time.html)"
-
-#: ../src/common/config.py:173
 msgid "Characters that are printed before the nickname in conversations"
 msgstr "Символы, которые будут отображаться перед никами в чате."
 
-#: ../src/common/config.py:174
+#: ../src/common/config.py:173
 msgid "Characters that are printed after the nickname in conversations"
 msgstr "Символы, которые будут отображаться после ников в чате"
 
-#: ../src/common/config.py:177
-msgid ""
-"Specify the command to run when new mail arrives, e.g.: /usr/bin/getmail -q"
-msgstr ""
-"Определение команды для запуска при получении нового письма, например: /usr/"
-"bin/getmail -q"
+#: ../src/common/config.py:176
+msgid "Specify the command to run when new mail arrives, e.g.: /usr/bin/getmail -q"
+msgstr "Определение команды для запуска при получении нового письма, например: /usr/bin/getmail -q"
 
-#: ../src/common/config.py:179
+#: ../src/common/config.py:178
 msgid "Add * and [n] in roster title?"
 msgstr "Добавлять * и [n] в окно ростера?"
 
-#: ../src/common/config.py:180
-msgid ""
-"How many lines to remember from previous conversation when a chat tab/window "
-"is reopened?"
-msgstr ""
-"Сколько строк из предыдущей беседы выводить, когда вкладка/окно открываются "
-"вновь."
+#: ../src/common/config.py:179
+msgid "How many lines to remember from previous conversation when a chat tab/window is reopened."
+msgstr "Сколько строк из предыдущей беседы выводить, когда вкладка/окно открываются вновь."
 
-#: ../src/common/config.py:181
+#: ../src/common/config.py:180
 msgid "How many minutes should last lines from previous conversation last."
 msgstr "Сколько минут должны оставаться последние строки из предыдущей беседы."
 
+#: ../src/common/config.py:181
+#, fuzzy
+msgid "How many lines to request from server when entering a groupchat. -1 means no limit"
+msgstr "Количество строк истории сообщений, запрашиваемых при входе в комнату. -1 - не ограничено"
+
 #: ../src/common/config.py:182
-msgid ""
-"How many lines to request from server when entering a groupchat. -1 means no "
-"limit"
-msgstr ""
-"Количество строк истории сообщений, запрашиваемых при входе в комнату. -1 - "
-"не ограничено"
+msgid "How many minutes back to request logs when a entering a groupchat. -1 means no limit"
+msgstr "За какой период (минут назад) запрашивать историю сообщений при входе в комнату. -1 - не ограничено"
 
 #: ../src/common/config.py:183
-msgid ""
-"How many minutes back to request logs when entering a groupchat. -1 means no "
-"limit"
-msgstr ""
-"За какой период (минут назад) запрашивать историю сообщений при входе в "
-"комнату. -1 - не ограничено"
+msgid "How many seconds to wait before trying to autorejoin to a conference you are being disconnected from. Set to 0 to disable autorejoining."
+msgstr "Время ожидания в секундах перед попыткой снова автоматически войти в комнату, от которой вы были отключены. Чтобы отключить автоматический вход в этом случае, установите значение 0."
 
 #: ../src/common/config.py:184
-msgid ""
-"How many seconds to wait before trying to autorejoin to a conference you are "
-"being disconnected from. Set to 0 to disable autorejoining."
+msgid "Should autorejoin be activated when we are being kicked from a conference?"
 msgstr ""
-"Время ожидания в секундах перед попыткой снова автоматически войти в "
-"комнату, от которой вы были отключены. Чтобы отключить автоматический вход в "
-"этом случае, установите значение 0."
 
 #: ../src/common/config.py:185
-msgid ""
-"Should autorejoin be activated when we are being kicked from a conference?"
-msgstr ""
+msgid "Send message on Ctrl+Enter and with Enter make new line (Mirabilis ICQ Client default behaviour)."
+msgstr "Оправлять сообщения по Ctrl+Enter и Enter создает новую строку (как в Mirabilis ICQ)"
 
-#: ../src/common/config.py:186
-msgid ""
-"Send message on Ctrl+Enter and with Enter make new line (Mirabilis ICQ "
-"Client default behaviour)."
-msgstr ""
-"Оправлять сообщения по Ctrl+Enter и Enter создает новую строку (как в "
-"Mirabilis ICQ)"
-
-#: ../src/common/config.py:188
+#: ../src/common/config.py:187
 msgid "How many lines to store for Ctrl+KeyUP."
 msgstr "Сколько строк хранить для Ctrl+Стрелка вверх"
 
-#: ../src/common/config.py:191
+#: ../src/common/config.py:190
 #, python-format
-msgid ""
-"Either custom url with %s in it where %s is the word/phrase or 'WIKTIONARY' "
-"which means use wiktionary."
-msgstr ""
-"Введите свою ссылку с %s, в которой %s подменяет слово/фразу, или "
-"«WIKTIONARY», чтобы использовать Викисловарь."
+msgid "Either custom url with %s in it where %s is the word/phrase or 'WIKTIONARY' which means use wiktionary."
+msgstr "Введите свою ссылку с %s, в которой %s подменяет слово/фразу, или «WIKTIONARY», чтобы использовать Викисловарь."
+
+#: ../src/common/config.py:193
+msgid "If checked, Gajim can be controlled remotely using gajim-remote."
+msgstr "Если отмечено, то Gajim'ом можно будет управлять удаленно с использованием gajim-remote."
 
 #: ../src/common/config.py:194
-msgid "If checked, Gajim can be controlled remotely using gajim-remote."
-msgstr ""
-"Если отмечено, то Gajim'ом можно будет управлять удаленно с использованием "
-"gajim-remote."
+msgid "If True, listen to D-Bus signals from NetworkManager and change the status of accounts (provided they do not have listen_to_network_manager set to False and they sync with global status) based upon the status of the network connection."
+msgstr "Если активно, тогда «слушать» сообщения от NetworkManager по D-Bus и изменять статус учетных записей в зависимости от состояния сетевого соединения (необходимо, чтобы учетные записи не имели установленной в «Неактивно» опции listen_to_network_manager и они должны синхронизировать свой статус с глобальным)"
 
 #: ../src/common/config.py:195
-msgid ""
-"If True, listen to D-Bus signals from NetworkManager and change the status "
-"of accounts (provided they do not have listen_to_network_manager set to "
-"False and they sync with global status) based upon the status of the network "
-"connection."
-msgstr ""
-"Если активно, тогда «слушать» сообщения от NetworkManager по D-Bus и "
-"изменять статус учетных записей в зависимости от состояния сетевого "
-"соединения (необходимо, чтобы учетные записи не имели установленной в "
-"«Неактивно» опции listen_to_network_manager и они должны синхронизировать "
-"свой статус с глобальным)"
+msgid "Sent chat state notifications. Can be one of all, composing_only, disabled."
+msgstr "Отсылать уведомления о состоянии беседы. Варианты: all (все), composing_only (только печать), disabled (никаких уведомлений)."
 
 #: ../src/common/config.py:196
-msgid ""
-"Sent chat state notifications. Can be one of all, composing_only, disabled."
-msgstr ""
-"Отсылать уведомления о состоянии беседы. Варианты: all (все), composing_only "
-"(только печать), disabled (никаких уведомлений)."
+msgid "Displayed chat state notifications in chat windows. Can be one of all, composing_only, disabled."
+msgstr "Отображать состояния беседы в окне беседы. Варианты: all (все), composing_only (только печать), disabled (никаких уведомлений)."
 
-#: ../src/common/config.py:197
-msgid ""
-"Displayed chat state notifications in chat windows. Can be one of all, "
-"composing_only, disabled."
-msgstr ""
-"Отображать состояния беседы в окне беседы. Варианты: all (все), "
-"composing_only (только печать), disabled (никаких уведомлений)."
+#: ../src/common/config.py:198
+msgid "When not printing time for every message (print_time==sometimes), print it every x minutes."
+msgstr "Если отключена печать времени для каждого сообщения, то печатать его каждые X минут."
 
 #: ../src/common/config.py:199
-msgid ""
-"When not printing time for every message (print_time==sometimes), print it "
-"every x minutes."
-msgstr ""
-"Если отключена печать времени для каждого сообщения, то печатать его каждые "
-"X минут."
-
-#: ../src/common/config.py:200
 msgid "Ask before closing a group chat tab/window."
 msgstr "Спрашивать перед закрытием окна/вкладки комнаты."
 
+#: ../src/common/config.py:200
+msgid "Always ask before closing group chat tab/window in this space separated list of group chat jids."
+msgstr "Всегда спрашивать перед закрытием окна/вкладки комнаты из этого списка. Комнаты в списке разделяются пробелом."
+
 #: ../src/common/config.py:201
-msgid ""
-"Always ask before closing group chat tab/window in this space separated list "
-"of group chat JIDs."
-msgstr ""
-"Всегда спрашивать перед закрытием окна/вкладки комнаты из этого списка. "
-"Комнаты в списке разделяются пробелом."
+msgid "Never ask before closing group chat tab/window in this space separated list of group chat jids."
+msgstr "Никогда не спрашивать перед закрытием окна/вкладки комнаты из этого списка. Комнаты в списке разделяются пробелом."
 
 #: ../src/common/config.py:202
-msgid ""
-"Never ask before closing group chat tab/window in this space separated list "
-"of group chat JIDs."
-msgstr ""
-"Никогда не спрашивать перед закрытием окна/вкладки комнаты из этого списка. "
-"Комнаты в списке разделяются пробелом."
+msgid "Ask before closing tabbed chat window if there are control that can loose data (chat, private chat, groupchat that will not be minimized)"
+msgstr "Спрашивать перед закрытием окна разговора с вкладками, если существует элемент, который может потерять данные (разговор, личный разговор, разговор в комнате, которые не будут свёрнуты)"
 
-#: ../src/common/config.py:203
-msgid ""
-"Ask before closing tabbed chat window if there are controls that can lose "
-"data (chat, private chat, groupchat that will not be minimized)"
-msgstr ""
-"Спрашивать перед закрытием окна разговора с вкладками, если существует "
-"элемент, который может потерять данные (разговор, личный разговор, разговор "
-"в комнате, которые не будут свёрнуты)"
+#: ../src/common/config.py:205
+msgid "Comma separated list of hosts that we send, in addition of local interfaces, for File Transfer in case of address translation/port forwarding."
+msgstr "Разделенный запятыми список хостов, который мы отсылаем в дополнение к локальным интерфейсам при передаче файлов в случае, если мы за NAT или используется перенаправление портов."
 
-#: ../src/common/config.py:206
-msgid ""
-"Comma separated list of hosts that we send, in addition of local interfaces, "
-"for File Transfer in case of address translation/port forwarding."
-msgstr ""
-"Разделенный запятыми список хостов, который мы отсылаем в дополнение к "
-"локальным интерфейсам при передаче файлов в случае, если мы за NAT или "
-"используется перенаправление портов."
-
-#: ../src/common/config.py:208
+#: ../src/common/config.py:207
 msgid "IEC standard says KiB = 1024 bytes, KB = 1000 bytes."
 msgstr "IEC стандарт утверждает, что KiB = 1024 байт, KB = 1000 байт"
 
-#: ../src/common/config.py:210
+#: ../src/common/config.py:209
 msgid "Notify of events in the notification area."
 msgstr "Уведомлять о событиях в области уведомлений."
 
-#: ../src/common/config.py:211
-msgid ""
-"If False, Gajim will display a static event icon instead of the blinking "
-"status icon in the notification area when notifying on event."
+#: ../src/common/config.py:210
+msgid "If False, Gajim will display a static event icon instead of the blinking status icon in the notification area when notifying on event."
 msgstr ""
 
-#: ../src/common/config.py:217
+#: ../src/common/config.py:216
 msgid "Show tab when only one conversation?"
 msgstr "Показывать вкладку при одном чат-окне?"
 
-#: ../src/common/config.py:218
+#: ../src/common/config.py:217
 msgid "Show tabbed notebook border in chat windows?"
 msgstr "Показывать границу вкладки в окне чата?"
 
-#: ../src/common/config.py:219
+#: ../src/common/config.py:218
 msgid "Show close button in tab?"
 msgstr "Показывать кнопку закрытия на вкладке?"
 
-#: ../src/common/config.py:220
-msgid ""
-"A list of modp groups to use in a Diffie-Hellman, highest preference first, "
-"separated by commas. Valid groups are 1, 2, 5, 14, 15, 16, 17 and 18. Higher "
-"numbers are more secure, but take longer to calculate when you start a "
-"session."
-msgstr ""
-"Список modp групп (через запятую) для использования в алгоритме Диффи-"
-"Хеллмана, начиная с наиболее предпочтительной. Допустимые группы: 1, 2, 5, "
-"14, 15, 16, 17 и 18. Более высокие числа безопаснее, но требуют более "
-"длительных вычислений при начале сеанса."
+#: ../src/common/config.py:219
+msgid "A list of modp groups to use in a Diffie-Hellman, highest preference first, separated by commas. Valid groups are 1, 2, 5, 14, 15, 16, 17 and 18. Higher numbers are more secure, but take longer to calculate when you start a session."
+msgstr "Список modp групп (через запятую) для использования в алгоритме Диффи-Хеллмана, начиная с наиболее предпочтительной. Допустимые группы: 1, 2, 5, 14, 15, 16, 17 и 18. Более высокие числа безопаснее, но требуют более длительных вычислений при начале сеанса."
 
-#: ../src/common/config.py:241
+#: ../src/common/config.py:240
 msgid "Preview new messages in notification popup?"
 msgstr "Предпросмотр новых сообщений во всплывающем окне?"
 
+#: ../src/common/config.py:245
+msgid "A semicolon-separated list of words that will be highlighted in group chats."
+msgstr "Список слов (через точку с запятой), которые будут подсвечиваться в комнатах."
+
 #: ../src/common/config.py:246
-msgid ""
-"A semicolon-separated list of words that will be highlighted in group chats."
-msgstr ""
-"Список слов (через точку с запятой), которые будут подсвечиваться в комнатах."
+msgid "If True, quits Gajim when X button of Window Manager is clicked. This setting is taken into account only if notification icon is used."
+msgstr "Если активно, то Gajim будет завершаться при нажатии на кнопку закрытия окна. Эта опция учитывается, только если используется иконка в области уведомлений."
 
 #: ../src/common/config.py:247
-msgid ""
-"If True, quits Gajim when X button of Window Manager is clicked. This "
-"setting is taken into account only if notification icon is used."
-msgstr ""
-"Если активно, то Gajim будет завершаться при нажатии на кнопку закрытия "
-"окна. Эта опция учитывается, только если используется иконка в области "
-"уведомлений."
+msgid "If True, Gajim will check if it's the default jabber client on each startup."
+msgstr "Если активно, то Gajim будет проверять при запуске, является ли он jabber-клиентом по умолчанию."
 
 #: ../src/common/config.py:248
-msgid ""
-"If True, Gajim will check if it's the default jabber client on each startup."
-msgstr ""
-"Если активно, то Gajim будет проверять при запуске, является ли он jabber-"
-"клиентом по умолчанию."
+msgid "If True, Gajim will display an icon on each tab containing unread messages. Depending on the theme, this icon may be animated."
+msgstr "Если активно, то Gajim отображает иконку на каждой вкладке, которая содержит непрочитанные сообщения. В зависимости от темы, она может быть анимированной."
 
 #: ../src/common/config.py:249
-msgid ""
-"If True, Gajim will display an icon on each tab containing unread messages. "
-"Depending on the theme, this icon may be animated."
-msgstr ""
-"Если активно, то Gajim отображает иконку на каждой вкладке, которая содержит "
-"непрочитанные сообщения. В зависимости от темы, она может быть анимированной."
+msgid "If True, Gajim will display the status message, if not empty, for every contact under the contact name in roster window."
+msgstr "Если активно то Gajim будет отображать сообщение о статусе, если оно не пустое, для каждого контакта под именем контакта в окне ростера"
 
-#: ../src/common/config.py:250
-msgid ""
-"If True, Gajim will display the status message, if not empty, for every "
-"contact under the contact name in roster window."
-msgstr ""
-"Если активно то Gajim будет отображать сообщение о статусе, если оно не "
-"пустое, для каждого контакта под именем контакта в окне ростера"
-
-#: ../src/common/config.py:256
+#: ../src/common/config.py:255
 msgid "Define the position of the avatar in roster. Can be left or right"
 msgstr "Определяет позицию аватар в ростере. Может быть left или right"
 
+#: ../src/common/config.py:256
+msgid "If True, Gajim will ask for avatar each contact that did not have an avatar last time or has one cached that is too old."
+msgstr "Если активно, то Gajim будет запрашивать аватару для каждого контакта, у которого её не было в последний раз или она уже слишком старая."
+
 #: ../src/common/config.py:257
-msgid ""
-"If True, Gajim will ask for avatar each contact that did not have an avatar "
-"last time or has one cached that is too old."
-msgstr ""
-"Если активно, то Gajim будет запрашивать аватару для каждого контакта, у "
-"которого её не было в последний раз или она уже слишком старая."
+msgid "If False, Gajim will no longer print status line in chats when a contact changes his or her status and/or his or her status message."
+msgstr "Если неактивно, то Gajim больше не будет показывать строку статуса в окне беседы, когда контакт меняет его или её статус и/или сообщение о статусе."
 
 #: ../src/common/config.py:258
-msgid ""
-"If False, Gajim will no longer print status line in chats when a contact "
-"changes his or her status and/or his or her status message."
-msgstr ""
-"Если неактивно, то Gajim больше не будет показывать строку статуса в окне "
-"беседы, когда контакт меняет его или её статус и/или сообщение о статусе."
+msgid "can be \"none\", \"all\" or \"in_and_out\". If \"none\", Gajim will no longer print status line in groupchats when a member changes his or her status and/or his or her status message. If \"all\" Gajim will print all status messages. If \"in_and_out\", Gajim will only print FOO enters/leaves group chat."
+msgstr "может быть «none», «all» или «in_and_out». Если установлено «none», то Gajim больше не будет выводить сообщения о статусе в комнатах, когда участник меняет свой статус или сообщение о статусе. Если установлено в «all», то Gajim будет выводить все сообщения о статусе. Если установлено в «in_and_out», то Gajim будет выводить сообщение только когда кто-то входит или выходит из комнаты."
 
-#: ../src/common/config.py:259
-msgid ""
-"Can be \"none\", \"all\" or \"in_and_out\". If \"none\", Gajim will no "
-"longer print status line in groupchats when a member changes his or her "
-"status and/or his or her status message. If \"all\" Gajim will print all "
-"status messages. If \"in_and_out\", Gajim will only print FOO enters/leaves "
-"group chat."
-msgstr ""
-"может быть «none», «all» или «in_and_out». Если установлено «none», то Gajim "
-"больше не будет выводить сообщения о статусе в комнатах, когда участник "
-"меняет свой статус или сообщение о статусе. Если установлено в «all», то "
-"Gajim будет выводить все сообщения о статусе. Если установлено в "
-"«in_and_out», то Gajim будет выводить сообщение только когда кто-то входит "
-"или выходит из комнаты."
-
-#: ../src/common/config.py:261
+#: ../src/common/config.py:260
 msgid "Log XHTML messages instead of plain text messages."
 msgstr "Сохранять XHTML сообщения вместо простых текстовых сообщений"
 
-#: ../src/common/config.py:262
+#: ../src/common/config.py:261
 msgid "Background color of contacts when they just signed in."
 msgstr "Фоновый цвет контакта, который только что вошел."
 
-#: ../src/common/config.py:263
+#: ../src/common/config.py:262
 msgid "Background color of contacts when they just signed out."
 msgstr "Фоновый цвет контакта, который только что вышел."
 
-#: ../src/common/config.py:265
-msgid ""
-"If True, restored messages will use a smaller font than the default one."
+#: ../src/common/config.py:264
+msgid "If True, restored messages will use a smaller font than the default one."
 msgstr "Если активно, то восстановленные сообщения будут иметь меньший шрифт."
 
-#: ../src/common/config.py:266
+#: ../src/common/config.py:265
 msgid "Don't show avatar for the transport itself."
 msgstr "Не показывать аватар для транспорта."
 
-#: ../src/common/config.py:267
+#: ../src/common/config.py:266
 msgid "Don't show roster in the system taskbar."
 msgstr "Не показывать ростер в панели задач."
 
-#: ../src/common/config.py:268
-msgid ""
-"If True and installed GTK+ and PyGTK versions are at least 2.8, make the "
-"window flash (the default behaviour in most Window Managers) when holding "
-"pending events."
-msgstr ""
-"Если активно и установлены GTK+ и PyGTK версий 2.8 и выше, то окно будет "
-"мигать (поведение по умолчанию для большинства менеджеров окон) когда "
-"присутствуют не просмотренные события."
+#: ../src/common/config.py:267
+msgid "If True and installed GTK+ and PyGTK versions are at least 2.8, make the window flash (the default behaviour in most Window Managers) when holding pending events."
+msgstr "Если активно и установлены GTK+ и PyGTK версий 2.8 и выше, то окно будет мигать (поведение по умолчанию для большинства менеджеров окон) когда присутствуют не просмотренные события."
 
-#: ../src/common/config.py:270
-msgid ""
-"Jabberd1.4 does not like sha info when one join a password protected group "
-"chat. Turn this option to False to stop sending sha info in group chat "
-"presences."
-msgstr ""
-"Jabberd1.4 не понимает sha данные при входе в комнату, защищенную паролем. "
-"Установите эту опцию в «Неактивно» для того, чтобы запретить отсылку sha "
-"данных в информации для комнат"
+#: ../src/common/config.py:269
+msgid "Jabberd1.4 does not like sha info when one join a password protected group chat. Turn this option to False to stop sending sha info in group chat presences."
+msgstr "Jabberd1.4 не понимает sha данные при входе в комнату, защищенную паролем. Установите эту опцию в «Неактивно» для того, чтобы запретить отсылку sha данных в информации для комнат"
 
 #. always, never, peracct, pertype should not be translated
-#: ../src/common/config.py:273
+#: ../src/common/config.py:272
 msgid ""
 "Controls the window where new messages are placed.\n"
 "'always' - All messages are sent to a single window.\n"
-"'always_with_roster' - Like 'always' but the messages are in a single window "
-"along with the roster.\n"
+"'always_with_roster' - Like 'always' but the messages are in a single window along with the roster.\n"
 "'never' - All messages get their own window.\n"
 "'peracct' - Messages for each account are sent to a specific window.\n"
-"'pertype' - Each message type (e.g. chats vs. groupchats) is sent to a "
-"specific window."
+"'pertype' - Each message type (e.g., chats vs. groupchats) are sent to a specific window."
 msgstr ""
 "Управляет окном, где помещаются новые сообщения.\n"
 "«always» — Все сообщения отправляются в одно окно.\n"
 "«always_with_roster» — Как «always», но сообщения в одном окне с ростером.\n"
 "«never» — Все сообщения приходят в свои отдельные окна.\n"
 "«peracct» — Сообщения для каждой учетной записи отсылаются в свои окна.\n"
-"«pertype» — Каждый тип сообщения (например, беседа или комната) отсылается в "
-"свое окно. Заметьте, что при изменении этого параметра требуется перезапуск "
-"Gajim, чтобы изменения вступили в силу."
+"«pertype» — Каждый тип сообщения (например, беседа или комната) отсылается в свое окно. Заметьте, что при изменении этого параметра требуется перезапуск Gajim, чтобы изменения вступили в силу."
 
-#: ../src/common/config.py:274
+#: ../src/common/config.py:273
 msgid ""
 "Show roster on startup.\n"
 "'always' - Always show roster.\n"
@@ -4323,793 +4155,618 @@ msgstr ""
 "'never' - Никогда не показывать ростер.\n"
 "'last_state' - Восстанавливать последнее состояние ростера."
 
-#: ../src/common/config.py:275
+#: ../src/common/config.py:274
 msgid "If False, you will no longer see the avatar in the chat window."
 msgstr "Если неактивно, вы больше не будете видеть аватары в окне беседы."
 
-#: ../src/common/config.py:276
+#: ../src/common/config.py:275
 msgid "If True, pressing the escape key closes a tab/window."
 msgstr "Если активно, то нажатие клавиши Escape будет закрывать вкладку/окно."
 
-#: ../src/common/config.py:277
+#: ../src/common/config.py:276
 msgid "Hides the buttons in chat windows."
 msgstr "Скрывает кнопки в окнах чата."
 
-#: ../src/common/config.py:278
+#: ../src/common/config.py:277
 msgid "Hides the banner in a group chat window"
 msgstr "Скрывает баннер в окне комнаты"
 
-#: ../src/common/config.py:279
+#: ../src/common/config.py:278
 msgid "Hides the banner in two persons chat window"
 msgstr "Скрывает баннер в окне чата"
 
-#: ../src/common/config.py:280
+#: ../src/common/config.py:279
 msgid "Hides the group chat occupants list in group chat window."
 msgstr "Скрывает список посетителей в окне комнаты."
 
+#: ../src/common/config.py:280
+msgid "In a chat, show the nickname at the beginning of a line only when it's not the same person talking than in previous message."
+msgstr "Показывать ник в начале строки в чате только если предыдущее сообщение было написано другим участником."
+
 #: ../src/common/config.py:281
-msgid ""
-"In a chat, show the nickname at the beginning of a line only when it's not "
-"the same person talking than in previous message."
-msgstr ""
-"Показывать ник в начале строки в чате только если предыдущее сообщение было "
-"написано другим участником."
+msgid "Indentation when using merge consecutive nickname."
+msgstr "Разделитель, используемый при активированной настройке chat_merge_consecutive_nickname."
 
 #: ../src/common/config.py:282
-msgid "Indentation when using merge consecutive nickname."
-msgstr ""
-"Разделитель, используемый при активированной настройке "
-"chat_merge_consecutive_nickname."
-
-#: ../src/common/config.py:283
 msgid "Smooth scroll message in conversation window"
 msgstr "Плавно прокручивать сообщения в окне чата"
 
+#: ../src/common/config.py:283
+msgid "List of colors, separated by \":\", that will be used to color nicknames in group chats."
+msgstr "Список цветов, разделенных «:», которые будут использоваться для раскраски ников в комнатах."
+
 #: ../src/common/config.py:284
-msgid ""
-"List of colors, separated by \":\", that will be used to color nicknames in "
-"group chats."
-msgstr ""
-"Список цветов, разделенных «:», которые будут использоваться для раскраски "
-"ников в комнатах."
+msgid "Ctrl-Tab go to next composing tab when none is unread."
+msgstr "Использовать Ctrl-Tab, чтобы перейти к следующей вкладке с составляемым сообщением, когда нет непрочитанных сообщений."
 
 #: ../src/common/config.py:285
-msgid "Ctrl-Tab go to next composing tab when none is unread."
-msgstr ""
-"Использовать Ctrl-Tab, чтобы перейти к следующей вкладке с составляемым "
-"сообщением, когда нет непрочитанных сообщений."
+msgid "Should we show the confirm metacontacts creation dialog or not? Empty string means we never show the dialog."
+msgstr "Следует ли показывать диалог подтверждения о создании метаконтакта? Пустая строка означает, что сообщение не будет показываться вообще."
 
 #: ../src/common/config.py:286
-msgid ""
-"Should we show the confirm metacontacts creation dialog or not? Empty string "
-"means we never show the dialog."
-msgstr ""
-"Следует ли показывать диалог подтверждения о создании метаконтакта? Пустая "
-"строка означает, что сообщение не будет показываться вообще."
+msgid "Should we show the confirm block contact dialog or not? Empty string means we never show the dialog."
+msgstr "Следует ли показывать диалог подтверждения блокировки контакта? Пустая строка означает, что сообщение не будет показываться вообще."
 
 #: ../src/common/config.py:287
-msgid ""
-"Should we show the confirm block contact dialog or not? Empty string means "
-"we never show the dialog."
-msgstr ""
-"Следует ли показывать диалог подтверждения блокировки контакта? Пустая "
-"строка означает, что сообщение не будет показываться вообще."
+msgid "Should we show the confirm custom status dialog or not? Empty string means we never show the dialog."
+msgstr "Следует ли показывать диалог подтверждения блокировки контакта? Пустая строка означает, что сообщение не будет показываться вообще."
 
 #: ../src/common/config.py:288
-msgid ""
-"Should we show the confirm custom status dialog or not? Empty string means "
-"we never show the dialog."
-msgstr ""
-"Следует ли показывать диалог подтверждения блокировки контакта? Пустая "
-"строка означает, что сообщение не будет показываться вообще."
+msgid "If True, you will be able to set a negative priority to your account in account modification window. BE CAREFUL, when you are logged in with a negative priority, you will NOT receive any message from your server."
+msgstr "Если активно, то у вас появится возможность назначить для учетной записи приоритет меньше нуля в окне настройки учетной записи. БУДЬТЕ ОСТОРОЖНЫ, если вы подключитесь с отрицательным приоритетом, то вы НЕ получите никаких сообщений от сервера."
 
 #: ../src/common/config.py:289
-msgid ""
-"If True, you will be able to set a negative priority to your account in "
-"account modification window. BE CAREFUL, when you are logged in with a "
-"negative priority, you will NOT receive any message from your server."
-msgstr ""
-"Если активно, то у вас появится возможность назначить для учетной записи "
-"приоритет меньше нуля в окне настройки учетной записи. БУДЬТЕ ОСТОРОЖНЫ, "
-"если вы подключитесь с отрицательным приоритетом, то вы НЕ получите никаких "
-"сообщений от сервера."
+msgid "If True, Gajim will use Gnome Keyring (if available) to store account passwords."
+msgstr "Если активно, Gajim будет использовать (если возможно) Gnome Keyring для хранения паролей учетных записей."
 
 #: ../src/common/config.py:290
-msgid ""
-"If True, Gajim will use Gnome Keyring (if available) to store account "
-"passwords."
-msgstr ""
-"Если активно, Gajim будет использовать (если возможно) Gnome Keyring для "
-"хранения паролей учетных записей."
+msgid "If True, Gajim will use KDE Wallet (if kwalletcli is available) to store account passwords."
+msgstr "Если активно, Gajim будет использовать (если возможно) KDE Wallet для хранения паролей учетных записей."
 
 #: ../src/common/config.py:291
-msgid ""
-"If True, Gajim will use KDE Wallet (if kwalletcli is available) to store "
-"account passwords."
-msgstr ""
-"Если активно, Gajim будет использовать (если возможно) KDE Wallet для "
-"хранения паролей учетных записей."
+msgid "If True, Gajim will show number of online and total contacts in account and group rows."
+msgstr "Если активно, Gajim будет показывать количество контактов онлайн/всего в строках с названием учетной записи и групп."
 
 #: ../src/common/config.py:292
-msgid ""
-"If True, Gajim will show number of online and total contacts in account and "
-"group rows."
-msgstr ""
-"Если активно, Gajim будет показывать количество контактов онлайн/всего в "
-"строках с названием учетной записи и групп."
+msgid "Can be empty, 'chat' or 'normal'. If not empty, treat all incoming messages as if they were of this type"
+msgstr "Может быть пусто, 'chat' или 'normal'. Если не пусто — обрабатывать все входящие сообщения так, как будто бы они были этого типа."
 
 #: ../src/common/config.py:293
-msgid ""
-"Can be empty, 'chat' or 'normal'. If not empty, treat all incoming messages "
-"as if they were of this type"
-msgstr ""
-"Может быть пусто, 'chat' или 'normal'. Если не пусто — обрабатывать все "
-"входящие сообщения так, как будто бы они были этого типа."
+msgid "If True, Gajim will scroll and select the contact who sent you the last message, if chat window is not already opened."
+msgstr "Если активно, Gajim прокрутит ростер и выделит контакт, который написал вам сообщение последним, если окно чата еще небыло открыто."
 
 #: ../src/common/config.py:294
-msgid ""
-"If True, Gajim will scroll and select the contact who sent you the last "
-"message, if chat window is not already opened."
-msgstr ""
-"Если активно, Gajim прокрутит ростер и выделит контакт, который написал вам "
-"сообщение последним, если окно чата еще небыло открыто."
-
-#: ../src/common/config.py:295
 msgid "Time of inactivity needed before the change status window closes down."
 msgstr "Время не активности прежде чем окно изменения статуса закроется."
 
-#: ../src/common/config.py:296
-msgid ""
-"Maximum number of lines that are printed in conversations. Oldest lines are "
-"cleared."
+#: ../src/common/config.py:295
+msgid "Maximum number of lines that are printed in conversations. Oldest lines are cleared."
 msgstr "Максимальное количество строк в окне. Старые строки будут удалены."
 
-#: ../src/common/config.py:297
-msgid ""
-"If True, notification windows from notification-daemon will be attached to "
-"notification icon."
-msgstr ""
-"Если активно, окно уведомления от notification-daemon будет прикреплено к "
-"области уведомлений."
+#: ../src/common/config.py:296
+msgid "If True, notification windows from notification-daemon will be attached to notification icon."
+msgstr "Если активно, окно уведомления от notification-daemon будет прикреплено к области уведомлений."
 
-#: ../src/common/config.py:298
+#: ../src/common/config.py:297
 msgid "Choose interval between 2 checks of idleness."
 msgstr "Выберите интервал между 2 проверками на бездействие."
 
+#: ../src/common/config.py:298
+msgid "Valid uri schemes. Only schemes in this list will be accepted as \"real\" uri. (mailto and xmpp are handled separately)"
+msgstr "Допустимые uri схемы. Только схемы из этого списка будут приняты как «real» uri.(mailto и xmpp обрабатываются отдельно)"
+
 #: ../src/common/config.py:299
-msgid ""
-"Valid uri schemes. Only schemes in this list will be accepted as \"real\" "
-"uri. (mailto and xmpp are handled separately)"
-msgstr ""
-"Допустимые uri схемы. Только схемы из этого списка будут приняты как «real» "
-"uri.(mailto и xmpp обрабатываются отдельно)"
+msgid "Ask offline status message to all offline contacts when connection to an accoutn is established. WARNING: This causes a lot of requests to be sent!"
+msgstr "Запрашивать сообщение о статусе «отключен» у всех отключенных контактов при установлении соединения с учетной записью. ВНИМАНИЕ: Данная опция приводит к большому количеству посылаемых запросов!"
 
 #: ../src/common/config.py:300
-msgid ""
-"Ask offline status message to all offline contacts when connection to an "
-"account is established. WARNING: This causes a lot of requests to be sent!"
-msgstr ""
-"Запрашивать сообщение о статусе «отключен» у всех отключенных контактов при "
-"установлении соединения с учетной записью. ВНИМАНИЕ: Данная опция приводит к "
-"большому количеству посылаемых запросов!"
+msgid "If True, completion in groupchats will be like a shell auto-completion"
+msgstr "Если Активно, автодополнение ников в конференциях будет работать как автодополнение в командной оболочке"
 
 #: ../src/common/config.py:301
-msgid "If True, completion in groupchats will be like a shell auto-completion"
-msgstr ""
-"Если Активно, автодополнение ников в конференциях будет работать как "
-"автодополнение в командной оболочке"
+msgid "When is self contact row displayed. Can be \"always\", \"when_other_resource\" or \"never\""
+msgstr "В каких случаях показывать список своих собственных контактов. Может принимать значения «always» (всегда), «when_other_resource» (если другой ресурс) и «never» (никогда)."
 
-#: ../src/common/config.py:302
-msgid ""
-"When is self contact row displayed. Can be \"always\", \"when_other_resource"
-"\" or \"never\""
-msgstr ""
-"В каких случаях показывать список своих собственных контактов. Может "
-"принимать значения «always» (всегда), «when_other_resource» (если другой "
-"ресурс) и «never» (никогда)."
+#: ../src/common/config.py:306
+msgid "Optionally fix jingle output video framerate. Example: 10/1 or 25/2"
+msgstr "Опциональное изменение частоты кадров видео в jingle. Например: 10/1 или 25/2"
 
 #: ../src/common/config.py:307
-msgid "Optionally fix jingle output video framerate. Example: 10/1 or 25/2"
-msgstr ""
-"Опциональное изменение частоты кадров видео в jingle. Например: 10/1 или 25/2"
-
-#: ../src/common/config.py:308
 msgid "Optionally resize jingle output video. Example: 320x240"
 msgstr "Опциональное изменение размера кадра видео в jingle. Например: 320x240"
 
-#: ../src/common/config.py:309
-msgid "If True, You will also see your webcam"
-msgstr ""
+#: ../src/common/config.py:310
+msgid "If True, Gajim will try to use a STUN server when using jingle. The one in \"stun_server\" option, or the one given by the jabber server."
+msgstr "Если включено, Gajim попробует использовать STUN сервер с jingle. Либо указанный опцией \"stun_server\", либо предоставленный jabber сервером."
 
-#: ../src/common/config.py:312
-msgid ""
-"If True, Gajim will try to use a STUN server when using jingle. The one in "
-"\"stun_server\" option, or the one given by the jabber server."
-msgstr ""
-"Если включено, Gajim попробует использовать STUN сервер с jingle. Либо "
-"указанный опцией \"stun_server\", либо предоставленный jabber сервером."
-
-#: ../src/common/config.py:313
+#: ../src/common/config.py:311
 msgid "STUN server to use when using jingle"
 msgstr "Сервер STUN для использования с jingle"
 
+#: ../src/common/config.py:312
+msgid "If True, Gajim will show affiliation of groupchat occupants by adding a colored square to the status icon"
+msgstr "Если включено, Gajim покажет принадлежность пользователей группового чата, добавив цветные квадраты к значку статуса"
+
+#: ../src/common/config.py:313
+msgid "Proxy used for all outgoing connections if the account does not have a specific proxy configured"
+msgstr "Прокси используется для всех исходящих соединений, если в настройках учетной записи не задан прокси "
+
 #: ../src/common/config.py:314
-msgid ""
-"If True, Gajim will show affiliation of groupchat occupants by adding a "
-"colored square to the status icon"
-msgstr ""
-"Если включено, Gajim покажет принадлежность пользователей группового чата, "
-"добавив цветные квадраты к значку статуса"
-
-#: ../src/common/config.py:315
-msgid ""
-"Proxy used for all outgoing connections if the account does not have a "
-"specific proxy configured"
-msgstr ""
-"Прокси используется для всех исходящих соединений, если в настройках учетной "
-"записи не задан прокси "
-
-#: ../src/common/config.py:316
 msgid "If True, Gajim will ignore incoming attention requestd (\"wizz\")."
 msgstr ""
 
-#: ../src/common/config.py:317
-msgid ""
-"If enabled, Gajim will reopen chat windows that were opened last time Gajim "
-"was closed."
+#: ../src/common/config.py:315
+msgid "If enabled, Gajim will reopen chat windows that were opened last time Gajim was closed."
 msgstr ""
 
-#: ../src/common/config.py:318
-#, fuzzy
-msgid ""
-"If enabled, Gajim will show an icon to show that sent message has been "
-"received by your contact"
-msgstr ""
-"Если включено, Gajim не будет запрашивать сообщение о статусе. Вместо него "
-"будет использовано соответствующее сообщение по умолчанию."
+#: ../src/common/config.py:329
+msgid "Priority will change automatically according to your status. Priorities are defined in autopriority_* options."
+msgstr "Приоритет будет изменяться автоматически согласно вашему статусу. Приоритеты для статусов задаются в пункте autopriority_* ."
 
-#: ../src/common/config.py:332
-msgid ""
-"Priority will change automatically according to your status. Priorities are "
-"defined in autopriority_* options."
-msgstr ""
-"Приоритет будет изменяться автоматически согласно вашему статусу. Приоритеты "
-"для статусов задаются в пункте autopriority_* ."
+#: ../src/common/config.py:337
+msgid "Status used to autoconnect as. Can be online, chat, away, xa, dnd, invisible. NOTE: this option is used only if restore_last_status is disabled"
+msgstr "Статус, используемый при автоподключении. Варианты: отключен, в сети, готов поболтать, отошел, недоступен, не беспокоить, невидимка"
 
-#: ../src/common/config.py:340
-msgid ""
-"Status used to autoconnect as. Can be online, chat, away, xa, dnd, "
-"invisible. NOTE: this option is used only if restore_last_status is disabled"
-msgstr ""
-"Статус, используемый при автоподключении. Варианты: отключен, в сети, готов "
-"поболтать, отошел, недоступен, не беспокоить, невидимка"
-
-#: ../src/common/config.py:341
+#: ../src/common/config.py:338
 msgid "If enabled, restore the last status that was used."
 msgstr "Если включено, восстанавливать последний использованный статус."
 
-#: ../src/common/config.py:343
-msgid ""
-"If True, Contacts requesting authorization will be automatically accepted."
-msgstr ""
-"Если активно, контакты, запрашивающие авторизацию, будут автоматически её "
-"получать."
+#: ../src/common/config.py:340
+msgid "If True, Contacts requesting authorization will be automatically accepted."
+msgstr "Если активно, контакты, запрашивающие авторизацию, будут автоматически её получать."
+
+#: ../src/common/config.py:341
+msgid "If False, this account will be disabled and will not appear in roster window."
+msgstr "Если неактивно, эта учетная запись будет отключена и не будет отображаться в окне ростера."
 
 #: ../src/common/config.py:344
-msgid ""
-"If False, this account will be disabled and will not appear in roster window."
-msgstr ""
-"Если неактивно, эта учетная запись будет отключена и не будет отображаться в "
-"окне ростера."
+msgid "If disabled, don't sign presences with GPG key, even if GPG is configured."
+msgstr "Если отключено, не подписывать присутствие ключом GPG, даже если GPG настроен."
 
-#: ../src/common/config.py:347
-msgid ""
-"If disabled, don't sign presences with GPG key, even if GPG is configured."
-msgstr ""
-"Если отключено, не подписывать присутствие ключом GPG, даже если GPG "
-"настроен."
-
-#: ../src/common/config.py:349
+#: ../src/common/config.py:346
 msgid "Enable ESessions encryption for this account."
 msgstr "Включить ESessions шифрование для данной учетной записи."
 
-#: ../src/common/config.py:350
+#: ../src/common/config.py:347
 msgid "Should Gajim automatically start an encrypted session when possible?"
-msgstr ""
-"Должен ли Gajim по возможности автоматически начинать зашифрованный сеанс?"
+msgstr "Должен ли Gajim по возможности автоматически начинать зашифрованный сеанс?"
 
-#: ../src/common/config.py:351
-msgid ""
-"Ordered list (space separated) of connection type to try. Can contain tls, "
-"ssl or plain"
-msgstr ""
-"Упорядоченный список (разделённый пробелами) типов подключения, которые "
-"будут перепробованы. Может включать tls, ssl или plain"
+#: ../src/common/config.py:348
+msgid "Ordered list (space separated) of connection type to try. Can contain tls, ssl or plain"
+msgstr "Упорядоченный список (разделённый пробелами) типов подключения, которые будут перепробованы. Может включать tls, ssl или plain"
 
-#: ../src/common/config.py:352
-msgid ""
-"Show a warning dialog before sending password on an plaintext connection. "
-"Can be 'warn', 'connect', 'disconnect'"
-msgstr ""
-"Если отмечено, то Gajim будет будет спрашивать вас перед отправкой пароля "
-"через незащищенное соединение. Может быть 'warn', 'connect', 'disconnect'"
+#: ../src/common/config.py:349
+msgid "Show a warning dialog before sending password on an plaintext connection. Can be 'warn', 'connect', 'disconnect'"
+msgstr "Если отмечено, то Gajim будет будет спрашивать вас перед отправкой пароля через незащищенное соединение. Может быть 'warn', 'connect', 'disconnect'"
 
-#: ../src/common/config.py:353
+#: ../src/common/config.py:350
 msgid "Show a warning dialog before using standard SSL library."
 msgstr "Предупреждать, прежде чем использовать стандартную библиотеку SSL."
 
-#: ../src/common/config.py:354
-msgid ""
-"Show a warning dialog before sending PLAIN password over a plain connection."
-msgstr ""
-"Показывать предупреждение перед отправкой пароля через незащищенное "
-"соединение."
+#: ../src/common/config.py:351
+msgid "Show a warning dialog before sending PLAIN password over a plain connection."
+msgstr "Показывать предупреждение перед отправкой пароля через незащищенное соединение."
 
-#: ../src/common/config.py:356
+#: ../src/common/config.py:353
 msgid "Space separated list of ssl errors to ignore."
 msgstr "Разделенный пробелами список игнорирования ошибок ssl"
 
-#: ../src/common/config.py:362
-msgid ""
-"Space separated list of JIDs for which you do not want to store logs. You "
-"can also add account name to log nothing for this account."
+#: ../src/common/config.py:359
+msgid "Space separated list of JIDs for which you do not want to store logs. You can also add account name to log nothing for this account."
+msgstr ""
+
+#: ../src/common/config.py:360
+msgid "Space separated list of JIDs for which you accept to not log conversations if he does not want to."
 msgstr ""
 
 #: ../src/common/config.py:363
-msgid ""
-"Space separated list of JIDs for which you accept to not log conversations "
-"if he does not want to."
-msgstr ""
-
-#: ../src/common/config.py:366
 msgid "Whitespace sent after inactivity"
 msgstr "Пробел, посылаемый после бездействия"
 
 # дословно: пинг XMPP послал после бездействия. Возможно, ошибка в оригинале.
-#: ../src/common/config.py:367
+#: ../src/common/config.py:364
 msgid "XMPP ping sent after inactivity"
 msgstr "пинг XMPP, посылаемый после бездействия"
 
-#: ../src/common/config.py:371
-msgid ""
-"How many seconds to wait for the answer of ping alive packet before we try "
-"to reconnect?"
-msgstr ""
-"Время ожидания (в секундах) ответа на пинг перед повторной попыткой "
-"соединения."
+#: ../src/common/config.py:368
+msgid "How many seconds to wait for the answer of ping alive packet before we try to reconnect."
+msgstr "Время ожидания (в секундах) ответа на пинг перед повторной попыткой соединения."
 
 #. yes, no, ask
-#: ../src/common/config.py:375
+#: ../src/common/config.py:372
 msgid "Jabberd2 workaround"
 msgstr "Костыль для jabberd2"
 
-#: ../src/common/config.py:378
-msgid ""
-"If checked, Gajim will use your IP and proxies defined in "
-"file_transfer_proxies option for file transfer."
-msgstr ""
-"Если отмечено, Gajim будет использовать ваш IP и прокси, определенные в "
-"параметре file_transfer_proxies для передачи файлов"
+#: ../src/common/config.py:375
+msgid "If checked, Gajim will use your IP and proxies defined in file_transfer_proxies option for file transfer."
+msgstr "Если отмечено, Gajim будет использовать ваш IP и прокси, определенные в параметре file_transfer_proxies для передачи файлов"
 
-#: ../src/common/config.py:379
-msgid ""
-"If True, Gajim will test file transfer proxies on startup to be sure it "
-"works. Openfire's proxies are known to fail this test even if they work."
+#: ../src/common/config.py:376
+msgid "If True, Gajim will test file transfer proxies on startup to be sure it works. Openfire's proxies are known to fail this test even if they work."
 msgstr ""
 
-#: ../src/common/config.py:393
+#: ../src/common/config.py:390
 msgid "Answer to receipt requests"
 msgstr "Отвечать на запросы уведомления"
 
-#: ../src/common/config.py:394
+#: ../src/common/config.py:391
 msgid "Sent receipt requests"
 msgstr "Посылать запросы уведомления"
 
-#: ../src/common/config.py:403
-msgid ""
-"Allow Gajim to send information about the operating system you are running."
-msgstr ""
-"Разрешить Gajim отправлять информацию о операционной системе, которую вы "
-"используете"
+#: ../src/common/config.py:400
+msgid "Allow Gajim to send information about the operating system you are running."
+msgstr "Разрешить Gajim отправлять информацию о операционной системе, которую вы используете"
 
-#: ../src/common/config.py:404
+#: ../src/common/config.py:401
 msgid "Allow Gajim to send your local time."
 msgstr "Разрешить Gajim отправлять ваше локальное время."
 
-#: ../src/common/config.py:405
-msgid ""
-"When negotiating an encrypted session, should Gajim assume you want your "
-"messages to be logged?"
-msgstr ""
-"Когда устанавливается зашифрованный сеанс, должен ли Gajim предположить, что "
-"вы хотите сохранить историю сообщений?"
+#: ../src/common/config.py:402
+msgid "When negotiating an encrypted session, should Gajim assume you want your messages to be logged?"
+msgstr "Когда устанавливается зашифрованный сеанс, должен ли Gajim предположить, что вы хотите сохранить историю сообщений?"
 
-#: ../src/common/config.py:408
+#: ../src/common/config.py:405
 msgid "Message that is sent to contacts you want to add"
 msgstr "Сообщение отправляемое контактам, которых вы хотите добавить"
 
-#: ../src/common/config.py:409
+#: ../src/common/config.py:406
 msgid "Last time we syncronized with logs from server."
 msgstr "Время последней синхронизации с сервером."
 
-#: ../src/common/config.py:410
-msgid ""
-"If enabled and if server supports this feature, Gajim will receive messages "
-"sent and received by other resources."
+#: ../src/common/config.py:407
+msgid "If enabled and if server supports this feature, Gajim will receive messages sent and received by other resources."
 msgstr ""
 
-#: ../src/common/config.py:411
-msgid ""
-"If enabled, Gajim will send your local IPs so your contact can connect to "
-"your machine to transfer files."
+#: ../src/common/config.py:408
+msgid "If enabled, Gajim will send your local IPs so your contact can connect to your machine to transfer files."
 msgstr ""
 
-#: ../src/common/config.py:412
+#: ../src/common/config.py:409
 #, fuzzy
 msgid "Latest token for Oauth2 authentication."
 msgstr "Анонимная аутентификация"
 
-#: ../src/common/config.py:413
+#: ../src/common/config.py:410
 #, fuzzy
 msgid "client_id for Oauth2 authentication."
 msgstr "Анонимная аут_ентификация"
 
-#: ../src/common/config.py:414
+#: ../src/common/config.py:411
 msgid "redirect_url for Oauth2 authentication."
 msgstr ""
 
-#: ../src/common/config.py:415
-msgid ""
-"Space separated list of JIDs for which we want to re-open a chat window on "
-"next startup."
+#: ../src/common/config.py:412
+msgid "Space separated list of jid for which we want to re-open a chat window on next startup."
 msgstr ""
 
-#: ../src/common/config.py:477
+#: ../src/common/config.py:474
 msgid "Is OpenPGP enabled for this contact?"
 msgstr "Используется ли для этого контакта OpenPGP?"
 
-#: ../src/common/config.py:478
-msgid ""
-"Should Gajim automatically start an encrypted session with this contact when "
-"possible?"
-msgstr ""
-"Должен ли Gajim по возможности автоматически начинать для данного контакта "
-"зашифрованный сеанс?"
+#: ../src/common/config.py:475
+msgid "Should Gajim automatically start an encrypted session with this contact when possible?"
+msgstr "Должен ли Gajim по возможности автоматически начинать для данного контакта зашифрованный сеанс?"
 
-#: ../src/common/config.py:479 ../src/common/config.py:482
+#: ../src/common/config.py:476
+#: ../src/common/config.py:479
 msgid "Language for which we want to check misspelled words"
 msgstr "Язык, который используется при проверке правописания"
 
-#: ../src/common/config.py:483
-msgid ""
-"How many lines to request from server when entering a groupchat. -1 means no "
-"limit, -2 means global value"
-msgstr ""
-"Количество строк истории сообщений, запрашиваемых при входе в комнату. -1 - "
-"не ограничено, -2 - глобальное значение"
-
-#: ../src/common/config.py:484
-msgid ""
-"How many minutes back to request logs when entering a groupchat. -1 means no "
-"limit, -2 means global value"
-msgstr ""
-"За какой период (минут назад) запрашивать историю сообщений при входе в "
-"комнату. -1 - не ограничено, -2 -  глобальное значение"
+#: ../src/common/config.py:482
+#, fuzzy
+msgid "State whether plugins should be activated on startup (this is saved on Gajim exit). This option SHOULD NOT be used to (de)activate plug-ins. Use GUI instead."
+msgstr "Состояние модулей при выходе(это сохраняется при выключении Gajim). Эта опция НЕ ДОЛЖНА использоваться для включения или выключения модулей. Используйте графический интерфейс для этого."
 
 #: ../src/common/config.py:487
-msgid ""
-"State whether plugins should be activated on startup (this is saved on Gajim "
-"exit). This option SHOULD NOT be used to (de)activate plug-ins. Use GUI "
-"instead."
-msgstr ""
-"Состояние модулей при выходе (это сохраняется при выключении Gajim). Эта "
-"опция НЕ ДОЛЖНА использоваться для включения или выключения модулей. "
-"Используйте графический интерфейс для этого."
-
-#: ../src/common/config.py:492 ../src/common/pep.py:157
+#: ../src/common/pep.py:157
 msgid "Sleeping"
 msgstr "Сплю"
 
-#: ../src/common/config.py:493
+#: ../src/common/config.py:488
 msgid "Back soon"
 msgstr "Скоро буду"
 
-#: ../src/common/config.py:493
+#: ../src/common/config.py:488
 msgid "Back in some minutes."
 msgstr "Вернусь через несколько минут"
 
-#: ../src/common/config.py:494 ../src/common/pep.py:127
+#: ../src/common/config.py:489
+#: ../src/common/pep.py:127
 msgid "Eating"
 msgstr "Ем"
 
-#: ../src/common/config.py:494
+#: ../src/common/config.py:489
 msgid "I'm eating, so leave me a message."
 msgstr "Кушаю, так что оставьте сообщение секретарю."
 
-#: ../src/common/config.py:495
+#: ../src/common/config.py:490
 msgid "Movie"
 msgstr "В кино"
 
-#: ../src/common/config.py:495
+#: ../src/common/config.py:490
 msgid "I'm watching a movie."
 msgstr "Смотрю кино"
 
-#: ../src/common/config.py:496 ../src/common/pep.py:186
+#: ../src/common/config.py:491
+#: ../src/common/pep.py:185
 msgid "Working"
 msgstr "Работаю"
 
-#: ../src/common/config.py:496
+#: ../src/common/config.py:491
 msgid "I'm working."
 msgstr "Работаю"
 
-#: ../src/common/config.py:497
+#: ../src/common/config.py:492
 msgid "Phone"
 msgstr "Телефон"
 
-#: ../src/common/config.py:497
+#: ../src/common/config.py:492
 msgid "I'm on the phone."
 msgstr "Говорю по телефону"
 
-#: ../src/common/config.py:498
+#: ../src/common/config.py:493
 msgid "Out"
 msgstr "Вышел"
 
-#: ../src/common/config.py:498
+#: ../src/common/config.py:493
 msgid "I'm out enjoying life."
 msgstr "Наслаждаюсь жизнью, чего и вам желаю."
 
-#: ../src/common/config.py:509
+#: ../src/common/config.py:504
 msgid "I'm available."
 msgstr "Я здесь."
 
-#: ../src/common/config.py:510
+#: ../src/common/config.py:505
 msgid "I'm free for chat."
 msgstr "Я готов поболтать."
 
-#: ../src/common/config.py:511 ../src/config.py:1646
+#: ../src/common/config.py:506
+#: ../src/config.py:1645
 msgid "Be right back."
 msgstr "Скоро буду."
 
-#: ../src/common/config.py:512
+#: ../src/common/config.py:507
 msgid "I'm not available."
 msgstr "Меня нет."
 
-#: ../src/common/config.py:513
+#: ../src/common/config.py:508
 msgid "Do not disturb."
 msgstr "Не беспокоить."
 
-#: ../src/common/config.py:514 ../src/common/config.py:515
+#: ../src/common/config.py:509
+#: ../src/common/config.py:510
 msgid "Bye!"
 msgstr "Пока!"
 
-#: ../src/common/config.py:526
-msgid ""
-"Sound to play when a group chat message contains one of the words in "
-"muc_highlight_words, or when a group chat message contains your nickname."
-msgstr ""
-"Звук, который нужно воспроизвести, когда в MUC появляется сообщение, которое "
-"содержит слово из списка muc_highlight_words, или когда сообщение содержит "
-"ваш ник."
+#: ../src/common/config.py:521
+msgid "Sound to play when a group chat message contains one of the words in muc_highlight_words, or when a group chat message contains your nickname."
+msgstr "Звук, который нужно воспроизвести, когда в MUC появляется сообщение, которое содержит слово из списка muc_highlight_words, или когда сообщение содержит ваш ник."
 
-#: ../src/common/config.py:527
+#: ../src/common/config.py:522
 msgid "Sound to play when any MUC message arrives."
 msgstr "Звук, который нужно проигрывать, когда приходит любое сообщение MUC."
 
-#: ../src/common/config.py:536 ../src/common/optparser.py:309
+#: ../src/common/config.py:531
+#: ../src/common/optparser.py:309
 msgid "green"
 msgstr "зеленый"
 
-#: ../src/common/config.py:540 ../src/common/optparser.py:295
+#: ../src/common/config.py:535
+#: ../src/common/optparser.py:295
 msgid "grocery"
 msgstr "овощной"
 
-#: ../src/common/config.py:544
+#: ../src/common/config.py:539
 msgid "human"
 msgstr "телесный"
 
-#: ../src/common/config.py:548
+#: ../src/common/config.py:543
 msgid "marine"
 msgstr "морской"
 
-#: ../src/common/config.py:555
+#: ../src/common/config.py:550
+#, fuzzy
 msgid "Tor"
-msgstr "Tor"
+msgstr "К"
 
-#: ../src/common/connection_handlers_events.py:370
+#: ../src/common/connection_handlers_events.py:369
 #, python-format
-msgid ""
-"JID %s is not RFC compliant. It will not be added to your roster. Use roster "
-"management tools such as http://jru.jabberstudio.org/ to remove it"
-msgstr ""
-"JID %s не соответствует RFC. Он не будет добавлен в ваш ростер. Используйте "
-"средство управления ростера, например http://jru.jabberstudio.org/, чтобы "
-"удалить его"
+msgid "JID %s is not RFC compliant. It will not be added to your roster. Use roster management tools such as http://jru.jabberstudio.org/ to remove it"
+msgstr "JID %s не соответствует RFC. Он не будет добавлен в ваш ростер. Используйте средство управления ростера, например http://jru.jabberstudio.org/, чтобы удалить его"
 
-#: ../src/common/connection_handlers_events.py:825
+#: ../src/common/connection_handlers_events.py:823
 #, python-format
 msgid "unsubscribe request from %s"
 msgstr "%s хочет отменить подписку"
 
-#: ../src/common/connection_handlers_events.py:910
-#: ../src/common/connection_handlers.py:343
-#: ../src/common/connection_handlers.py:1143
-#: ../src/common/connection_handlers.py:1267 ../src/common/connection.py:520
-#: ../src/common/logger.py:1159 ../src/gajim.py:435 ../src/session.py:95
+#: ../src/common/connection_handlers_events.py:908
+#: ../src/common/connection_handlers.py:338
+#: ../src/common/connection_handlers.py:953
+#: ../src/common/connection_handlers.py:1075
+#: ../src/common/connection.py:459
+#: ../src/common/logger.py:1153
+#: ../src/gajim.py:390
+#: ../src/session.py:97
 msgid "Disk Write Error"
 msgstr "Ошибка записи на диск"
 
-#: ../src/common/connection_handlers_events.py:914
-#: ../src/common/connection_handlers.py:1146
-#: ../src/common/connection_handlers.py:1270 ../src/common/connection.py:524
-#: ../src/common/logger.py:1162 ../src/gajim.py:230 ../src/session.py:99
+#: ../src/common/connection_handlers_events.py:912
+#: ../src/common/connection_handlers.py:956
+#: ../src/common/connection_handlers.py:1078
+#: ../src/common/connection.py:463
+#: ../src/common/logger.py:1156
+#: ../src/gajim.py:209
+#: ../src/session.py:101
 #, python-format
-msgid ""
-"The database file (%s) cannot be read. Try to repair it (see http://trac."
-"gajim.org/wiki/DatabaseBackup) or remove it (all history will be lost)."
-msgstr ""
-"Файл базы данных (%s) не может быть прочитан. Попробуйте восстановить его "
-"(см. http://trac.gajim.org/wiki/DatabaseBackup) или удалить (вся история "
-"будет утеряна)."
+msgid "The database file (%s) cannot be read. Try to repair it (see http://trac.gajim.org/wiki/DatabaseBackup) or remove it (all history will be lost)."
+msgstr "Файл базы данных (%s) не может быть прочитан. Попробуйте восстановить его(см. http://trac.gajim.org/wiki/DatabaseBackup) или удалить (вся история будет утеряна)."
 
 #. Room has been destroyed. see
 #. http://www.xmpp.org/extensions/xep-0045.html#destroyroom
-#: ../src/common/connection_handlers_events.py:935
+#: ../src/common/connection_handlers_events.py:933
 msgid "Room has been destroyed"
 msgstr "Комната была удалена"
 
-#: ../src/common/connection_handlers_events.py:943
+#: ../src/common/connection_handlers_events.py:941
 #, python-format
 msgid "You can join this room instead: %s"
 msgstr "Взамен, вы можете присоединиться к комнате: %s"
 
-#: ../src/common/connection_handlers_events.py:1027
-#: ../src/common/connection_handlers_events.py:1070
-#: ../src/common/connection.py:270 ../src/common/connection.py:280
-#: ../src/config.py:2157 ../src/config.py:2166 ../src/config.py:2236
-#: ../src/config.py:3680 ../src/dataforms_widget.py:633 ../src/dialogs.py:3244
+#: ../src/common/connection_handlers_events.py:1025
+#: ../src/common/connection_handlers_events.py:1062
+#: ../src/common/connection.py:263
+#: ../src/config.py:2142
+#: ../src/config.py:2151
+#: ../src/config.py:2219
+#: ../src/config.py:3662
+#: ../src/dataforms_widget.py:633
+#: ../src/dialogs.py:3133
 msgid "Invalid Jabber ID"
 msgstr "Неверный Jabber ID"
 
-#: ../src/common/connection_handlers_events.py:1028
-#: ../src/common/connection_handlers_events.py:1071
+#: ../src/common/connection_handlers_events.py:1026
+#: ../src/common/connection_handlers_events.py:1063
 msgid "A message from a non-valid JID arrived, it has been ignored."
 msgstr "Было получено сообщение от неверного JID, оно было проигнорировано."
 
 #. ('MSGNOTSENT', account, (jid, ierror_msg, msg, time, session))
-#: ../src/common/connection_handlers_events.py:1102
-#: ../src/gui_interface.py:433 ../src/gui_interface.py:447
+#: ../src/common/connection_handlers_events.py:1094
+#: ../src/gui_interface.py:432
+#: ../src/gui_interface.py:446
 #, python-format
 msgid "error while sending %(message)s ( %(error)s )"
 msgstr "ошибка при отправке %(message)s ( %(error)s )"
 
-#: ../src/common/connection_handlers_events.py:1298
-#, fuzzy
-msgid "URL:"
-msgstr "URL:"
-
-#: ../src/common/connection_handlers_events.py:1599
+#: ../src/common/connection_handlers_events.py:1565
 #, python-format
 msgid "Unknown SSL error: %d"
 msgstr "Неизвестная ошибка SSL: %d"
 
-#: ../src/common/connection_handlers_events.py:2202 ../src/dialogs.py:2917
+#: ../src/common/connection_handlers_events.py:2157
+#: ../src/dialogs.py:2818
 #: ../src/notify.py:266
 msgid "New Single Message"
 msgstr "Новое одиночное сообщение"
 
-#: ../src/common/connection_handlers_events.py:2204
+#: ../src/common/connection_handlers_events.py:2159
 #, python-format
 msgid "New Single Message from %(nickname)s"
 msgstr "Новое сообщение от %(nickname)s"
 
-#: ../src/common/connection_handlers_events.py:2208 ../src/dialogs.py:2918
+#: ../src/common/connection_handlers_events.py:2163
+#: ../src/dialogs.py:2819
 #: ../src/notify.py:267
 msgid "New Private Message"
 msgstr "Новое личное сообщение"
 
-#: ../src/common/connection_handlers_events.py:2210
+#: ../src/common/connection_handlers_events.py:2165
 #, python-format
 msgid "New Private Message from group chat %s"
 msgstr "Новое личное сообщение из комнаты %s"
 
-#: ../src/common/connection_handlers_events.py:2213
+#: ../src/common/connection_handlers_events.py:2168
 #, python-format
 msgid "%(nickname)s: %(message)s"
 msgstr "%(nickname)s: %(message)s"
 
-#: ../src/common/connection_handlers_events.py:2216
+#: ../src/common/connection_handlers_events.py:2171
 #, python-format
 msgid "Messaged by %(nickname)s"
 msgstr "Новое сообщение от %(nickname)s"
 
-#: ../src/common/connection_handlers_events.py:2220 ../src/dialogs.py:2917
+#: ../src/common/connection_handlers_events.py:2175
+#: ../src/dialogs.py:2818
 #: ../src/notify.py:266
 msgid "New Message"
 msgstr "Новое сообщение"
 
-#: ../src/common/connection_handlers_events.py:2222
+#: ../src/common/connection_handlers_events.py:2177
 #, python-format
 msgid "New Message from %(nickname)s"
 msgstr "Новое сообщение от %(nickname)s"
 
-#: ../src/common/connection_handlers_events.py:2366
+#: ../src/common/connection_handlers_events.py:2320
 #, python-format
 msgid "%(nick)s Changed Status"
 msgstr "%(nick)s меняет статус"
 
-#: ../src/common/connection_handlers_events.py:2368
-#: ../src/groupchat_control.py:207 ../src/groupchat_control.py:1855
-#: ../src/history_window.py:455
+#: ../src/common/connection_handlers_events.py:2322
+#: ../src/groupchat_control.py:205
+#: ../src/groupchat_control.py:1767
+#: ../src/history_window.py:448
 #, python-format
 msgid "%(nick)s is now %(status)s"
 msgstr "%(nick)s теперь %(status)s"
 
-#: ../src/common/connection_handlers_events.py:2372 ../src/dialogs.py:2929
+#: ../src/common/connection_handlers_events.py:2327
+#: ../src/dialogs.py:2830
 #: ../src/notify.py:280
 msgid "Contact Changed Status"
 msgstr "Контакт изменит статус"
 
-#: ../src/common/connection_handlers_events.py:2374
+#: ../src/common/connection_handlers_events.py:2329
 #, python-format
 msgid "%(nickname)s Signed In"
 msgstr "%(nickname)s подключается"
 
 #. default value
-#: ../src/common/connection_handlers_events.py:2378 ../src/dialogs.py:2913
+#: ../src/common/connection_handlers_events.py:2334
+#: ../src/dialogs.py:2814
 #: ../src/notify.py:262
 msgid "Contact Signed In"
 msgstr "Контакт подключился"
 
-#: ../src/common/connection_handlers_events.py:2380
+#: ../src/common/connection_handlers_events.py:2336
 #, python-format
 msgid "%(nickname)s Signed Out"
 msgstr "%(nickname)s отключается"
 
-#: ../src/common/connection_handlers_events.py:2384 ../src/dialogs.py:2915
+#: ../src/common/connection_handlers_events.py:2341
+#: ../src/dialogs.py:2816
 #: ../src/notify.py:264
 msgid "Contact Signed Out"
 msgstr "Контакт отключился"
 
-#: ../src/common/connection_handlers.py:92
-#: ../src/common/zeroconf/connection_handlers_zeroconf.py:53
+#: ../src/common/connection_handlers.py:89
+#: ../src/common/zeroconf/connection_handlers_zeroconf.py:54
 msgid "Unable to load idle module"
 msgstr "Не могу загрузить модуль «idle»"
 
-#: ../src/common/connection_handlers.py:127
+#: ../src/common/connection_handlers.py:122
 #, python-format
 msgid "Registration information for transport %s has not arrived in time"
 msgstr "Данные о регистрации для транспорта %s не пришли вовремя."
 
-#: ../src/common/connection_handlers.py:135
+#: ../src/common/connection_handlers.py:130
 msgid "Registration succeeded"
 msgstr "Регистрация завершена"
 
-#: ../src/common/connection_handlers.py:136
+#: ../src/common/connection_handlers.py:131
 #, python-format
 msgid "Registration with agent %s succeeded"
 msgstr "Регистрация сервиса %s завершена успешно"
 
-#: ../src/common/connection_handlers.py:145
+#: ../src/common/connection_handlers.py:140
 msgid "Registration failed"
 msgstr "Ошибка регистрации"
 
-#: ../src/common/connection_handlers.py:146
+#: ../src/common/connection_handlers.py:141
 #, python-format
-msgid ""
-"Registration with agent %(agent)s failed with error %(error)s: %(error_msg)s"
-msgstr ""
-"Регистрация сервиса %(agent)s завершилась ошибкой: %(error)s: %(error_msg)s"
+msgid "Registration with agent %(agent)s failed with error %(error)s: %(error_msg)s"
+msgstr "Регистрация сервиса %(agent)s завершилась ошибкой: %(error)s: %(error_msg)s"
 
-#: ../src/common/connection_handlers.py:591 ../src/common/connection.py:1770
+#: ../src/common/connection_handlers.py:575
+#: ../src/common/connection.py:1576
 msgid "Invisibility not supported"
 msgstr "Невидимость не поддерживается"
 
-#: ../src/common/connection_handlers.py:592 ../src/common/connection.py:1771
+#: ../src/common/connection_handlers.py:576
+#: ../src/common/connection.py:1577
 #, python-format
 msgid "Account %s doesn't support invisibility."
 msgstr "Учетная запись %s не поддерживает невидимость."
 
-#: ../src/common/connection_handlers.py:1945
+#: ../src/common/connection_handlers.py:1742
 msgid "I would like to add you to my roster."
 msgstr "Вы не возражаете, если я добавлю Вас в свой ростер?"
 
@@ -5241,27 +4898,27 @@ msgstr "Назначение ключа не включает подписыва
 msgid "Application verification failure"
 msgstr "Ошибка при проверке приложения"
 
-#: ../src/common/connection.py:271 ../src/common/connection.py:281
-#: ../src/dialogs.py:3245
+#: ../src/common/connection.py:264
+#: ../src/dialogs.py:3134
 #, python-format
 msgid "It is not possible to send a message to %s, this JID is not valid."
 msgstr "Не удалось передать сообщение %s — этот JID неверен."
 
-#: ../src/common/connection.py:304
+#: ../src/common/connection.py:286
 msgid "Neither the remote presence is signed, nor a key was assigned."
 msgstr "Ни удаленное присутствие не подписано, ни ключ не присвоен."
 
-#: ../src/common/connection.py:307
+#: ../src/common/connection.py:289
 #, python-format
 msgid "The contact's key (%s) does not match the key assigned in Gajim."
 msgstr "Ключ (%s) контакта не соответствует ключу, присвоенному в Gajim."
 
 #. we're not english: one in locale and one en
-#: ../src/common/connection.py:363
+#: ../src/common/connection.py:343
 msgid "[This message is *encrypted* (See :XEP:`27`]"
 msgstr "[Это сообщение *зашифровано* (см. :XEP:`27`]"
 
-#: ../src/common/connection.py:507
+#: ../src/common/connection.py:446
 #, python-format
 msgid ""
 "Subject: %(subject)s\n"
@@ -5270,77 +4927,77 @@ msgstr ""
 "Тема: %(subject)s\n"
 "%(message)s"
 
-#: ../src/common/connection.py:930
+#: ../src/common/connection.py:866
 #, python-format
 msgid "Connection with account \"%s\" has been lost"
 msgstr "Связь с учетной записью «%s» была потеряна"
 
-#: ../src/common/connection.py:931
+#: ../src/common/connection.py:867
 msgid "Reconnect manually."
 msgstr "Переподключаться вручную."
 
 #. it's a new account
 #. wrong answer
-#: ../src/common/connection.py:942
+#: ../src/common/connection.py:878
 #, python-format
 msgid "Server %(name)s answered wrongly to register request: %(error)s"
 msgstr "Сервер %(name)s неверно ответил на запрос о регистрации: %(error)s"
 
 #. requested config has changed since first connection
-#: ../src/common/connection.py:984
+#: ../src/common/connection.py:920
 #, python-format
 msgid "Server %s provided a different registration form"
 msgstr "Сервер %s предоставил другую регистрационную форму"
 
-#: ../src/common/connection.py:1001
+#: ../src/common/connection.py:937
 msgid "Invalid answer"
 msgstr "Неверный ответ"
 
-#: ../src/common/connection.py:1002
+#: ../src/common/connection.py:938
 #, python-format
 msgid "Transport %(name)s answered wrongly to register request: %(error)s"
 msgstr "Транспорт %(name)s неверно ответил на запрос о регистрации: %(error)s"
 
-#: ../src/common/connection.py:1297
-#, fuzzy, python-format
-msgid "Could not connect to \"%(host)s\" via proxy \"%(proxy)s\""
+#: ../src/common/connection.py:1230
+#: ../src/common/connection.py:1385
+#: ../src/common/connection.py:2016
+#: ../src/common/zeroconf/connection_zeroconf.py:205
+#, python-format
+msgid "Could not connect to \"%s\""
 msgstr "Не могу соединиться с «%s»"
 
-#: ../src/common/connection.py:1300
-#, fuzzy, python-format
-msgid "Could not connect to \"%(host)s\""
-msgstr "Не могу соединиться с %s"
-
-#: ../src/common/connection.py:1302 ../src/common/connection.py:1463
-#: ../src/gui_interface.py:542
+#: ../src/common/connection.py:1231
+#: ../src/gui_interface.py:541
 msgid "Check your connection or try again later."
 msgstr "Проверьте настройки сети или попробуйте еще раз позже."
 
-#: ../src/common/connection.py:1307
+#: ../src/common/connection.py:1236
 #, python-format
 msgid "Server replied: %s"
 msgstr "Сервер ответил: %s"
 
-#: ../src/common/connection.py:1322
+#: ../src/common/connection.py:1251
 msgid "Connection to proxy failed"
 msgstr "Соединение с прокси разорвалось"
 
-#: ../src/common/connection.py:1360 ../src/common/connection.py:1438
+#: ../src/common/connection.py:1289
+#: ../src/common/connection.py:1361
 #, python-format
 msgid "Could not connect to account %s"
 msgstr "Не могу соединиться с %s"
 
-#: ../src/common/connection.py:1361 ../src/common/connection.py:1439
+#: ../src/common/connection.py:1290
+#: ../src/common/connection.py:1362
 #, python-format
 msgid "Connection with account %s has been lost. Retry connecting."
 msgstr "Связь с учетной записью %s была потеряна. Попытка подключения."
 
-#: ../src/common/connection.py:1388
+#: ../src/common/connection.py:1315
 #, python-format
 msgid "The authenticity of the %s certificate could be invalid."
 msgstr "Достоверность сертификата %s может быть недействительной."
 
-#: ../src/common/connection.py:1391
+#: ../src/common/connection.py:1318
 #, python-format
 msgid ""
 "\n"
@@ -5349,7 +5006,7 @@ msgstr ""
 "\n"
 "Ошибка SSL: %s "
 
-#: ../src/common/connection.py:1393
+#: ../src/common/connection.py:1320
 #, python-format
 msgid ""
 "\n"
@@ -5358,75 +5015,76 @@ msgstr ""
 "\n"
 "Неизвестная ошибка SSL: %d"
 
-#: ../src/common/connection.py:1420
+#: ../src/common/connection.py:1343
 #, fuzzy, python-format
 msgid ""
 "The authenticity of the %s certificate could be invalid.\n"
 "The certificate does not cover this domain."
 msgstr "Достоверность сертификата %s может быть недействительной."
 
-#: ../src/common/connection.py:1462 ../src/common/connection.py:2203
-#: ../src/common/zeroconf/connection_zeroconf.py:205
-#, python-format
-msgid "Could not connect to \"%s\""
-msgstr "Не могу соединиться с «%s»"
+#: ../src/common/connection.py:1386
+msgid "Check your connection or try again later"
+msgstr "Проверьте настройки сети или попробуйте еще раз позже"
 
-#: ../src/common/connection.py:1498
+#: ../src/common/connection.py:1421
 #, python-format
 msgid "Authentication failed with \"%s\""
 msgstr "Ошибка аутентификации с «%s»"
 
-#: ../src/common/connection.py:1499
+#: ../src/common/connection.py:1422
 msgid "Please check your login and password for correctness."
 msgstr "Проверьте правильность логина и пароля."
 
-#: ../src/common/connection.py:1574
+#: ../src/common/connection.py:1497
 msgid "Error while removing privacy list"
 msgstr "Ошибка при удалении списка доступа"
 
-#: ../src/common/connection.py:1575
+#: ../src/common/connection.py:1498
 #, python-format
-msgid ""
-"Privacy list %s has not been removed. It is maybe active in one of your "
-"connected resources. Deactivate it and try again."
-msgstr ""
-"Список доступа %s не может быть удален. Возможно, он используется одним из "
-"ваших активных ресурсов. Отключите ресурс и попробуйте снова."
+msgid "Privacy list %s has not been removed. It is maybe active in one of your connected resources. Deactivate it and try again."
+msgstr "Список доступа %s не может быть удален. Возможно, он используется одним из ваших активных ресурсов. Отключите ресурс и попробуйте снова."
 
-#: ../src/common/connection.py:2067
+#: ../src/common/connection.py:1883
 #, python-format
 msgid "Sent contact: \"%s\" (%s)"
 msgstr "Контакт для отправки: «%s» (%s)"
 
-#: ../src/common/connection.py:2070
+#: ../src/common/connection.py:1886
 msgid "Sent contacts:"
 msgstr "Контакты для отправки:"
 
-#: ../src/common/connection.py:2220 ../src/common/connection.py:2242
+#: ../src/common/connection.py:2033
+#: ../src/common/connection.py:2056
 msgid "Not fetched because of invisible status"
 msgstr "Нельзя получить из-за невидимости"
 
-#: ../src/common/connection.py:2826
+#: ../src/common/connection.py:2616
 msgid "Unregister failed"
 msgstr "Ошибка отказа от регистрации"
 
-#: ../src/common/connection.py:2827
+#: ../src/common/connection.py:2617
 #, python-format
 msgid "Unregistration with server %(server)s failed: %(error)s"
-msgstr ""
-"Отказ от регистрации на сервере %(server)s завершился ошибкой: %(error)s"
+msgstr "Отказ от регистрации на сервере %(server)s завершился ошибкой: %(error)s"
 
-#: ../src/common/contacts.py:129 ../src/common/helpers.py:67
-#: ../src/gui_interface.py:485
+#: ../src/common/contacts.py:129
+#: ../src/common/helpers.py:67
+#: ../src/gui_interface.py:484
 msgid "Observers"
 msgstr "Наблюдатели"
 
-#: ../src/common/contacts.py:133 ../src/common/contacts.py:361
-#: ../src/common/helpers.py:67 ../src/disco.py:121 ../src/disco.py:122
-#: ../src/disco.py:1554 ../src/roster_window.py:863
-#: ../src/roster_window.py:1616 ../src/roster_window.py:1730
-#: ../src/roster_window.py:1732 ../src/roster_window.py:1894
-#: ../src/roster_window.py:2591
+#: ../src/common/contacts.py:133
+#: ../src/common/contacts.py:361
+#: ../src/common/helpers.py:67
+#: ../src/disco.py:120
+#: ../src/disco.py:121
+#: ../src/disco.py:1516
+#: ../src/roster_window.py:859
+#: ../src/roster_window.py:1608
+#: ../src/roster_window.py:1718
+#: ../src/roster_window.py:1720
+#: ../src/roster_window.py:1882
+#: ../src/roster_window.py:2579
 msgid "Transports"
 msgstr "Транспорты"
 
@@ -5439,7 +5097,8 @@ msgstr "Не в ростере"
 msgid "D-Bus python bindings are missing in this computer"
 msgstr "На компьютере не установлена библиотека D-Bus для Python"
 
-#: ../src/common/dbus_support.py:42 ../src/common/dbus_support.py:53
+#: ../src/common/dbus_support.py:42
+#: ../src/common/dbus_support.py:53
 msgid "D-Bus capabilities of Gajim cannot be used"
 msgstr "Возможности работы Gajim с D-Bus не могут быть использованы"
 
@@ -5462,11 +5121,10 @@ msgstr "База данных не может быть загружена."
 
 #: ../src/common/exceptions.py:56
 msgid "Service not available: Gajim is not running, or remote_control is False"
-msgstr ""
-"Сервис недоступен: Gajim не запущен или отключена функция удаленного "
-"управления (настройка remote_control)"
+msgstr "Сервис недоступен: Gajim не запущен или отключена функция удаленного управления (настройка remote_control)"
 
-#: ../src/common/exceptions.py:67 ../src/gajim-remote.py:56
+#: ../src/common/exceptions.py:67
+#: ../src/gajim-remote.py:55
 msgid "D-Bus is not present on this machine or python module is missing"
 msgstr "На машине отсутствует D-Bus или модуль питона для нее"
 
@@ -5603,7 +5261,8 @@ msgstr "без пяти %(1)s"
 msgid "%(1)s o'clock"
 msgstr "%(1)s"
 
-#: ../src/common/fuzzyclock.py:49 ../src/common/fuzzyclock.py:51
+#: ../src/common/fuzzyclock.py:49
+#: ../src/common/fuzzyclock.py:51
 msgid "Night"
 msgstr "Ночь"
 
@@ -5639,7 +5298,8 @@ msgstr "Поздний вечер"
 msgid "Start of week"
 msgstr "Начало недели"
 
-#: ../src/common/fuzzyclock.py:53 ../src/common/fuzzyclock.py:54
+#: ../src/common/fuzzyclock.py:53
+#: ../src/common/fuzzyclock.py:54
 msgid "Middle of week"
 msgstr "Середина недели"
 
@@ -5683,7 +5343,8 @@ msgstr "Неверный символ в ресурсе"
 msgid "_Busy"
 msgstr "_Занят"
 
-#: ../src/common/helpers.py:227 ../src/tooltips.py:191
+#: ../src/common/helpers.py:227
+#: ../src/tooltips.py:191
 msgid "Busy"
 msgstr "Занят"
 
@@ -5691,7 +5352,8 @@ msgstr "Занят"
 msgid "_Not Available"
 msgstr "_Недоступен"
 
-#: ../src/common/helpers.py:232 ../src/tooltips.py:193
+#: ../src/common/helpers.py:232
+#: ../src/tooltips.py:193
 msgid "Not Available"
 msgstr "Недоступен"
 
@@ -5699,7 +5361,8 @@ msgstr "Недоступен"
 msgid "_Free for Chat"
 msgstr "_Готов поболтать"
 
-#: ../src/common/helpers.py:237 ../src/tooltips.py:187
+#: ../src/common/helpers.py:237
+#: ../src/tooltips.py:187
 msgid "Free for Chat"
 msgstr "Готов поболтать"
 
@@ -5707,7 +5370,8 @@ msgstr "Готов поболтать"
 msgid "?user status:_Available"
 msgstr "Д_оступен"
 
-#: ../src/common/helpers.py:242 ../src/tooltips.py:185
+#: ../src/common/helpers.py:242
+#: ../src/tooltips.py:185
 msgid "?user status:Available"
 msgstr "Доступен"
 
@@ -5723,7 +5387,8 @@ msgstr "_Ушел"
 msgid "_Offline"
 msgstr "_Отключен"
 
-#: ../src/common/helpers.py:254 ../src/tooltips.py:195
+#: ../src/common/helpers.py:254
+#: ../src/tooltips.py:195
 msgid "Offline"
 msgstr "Отключен"
 
@@ -5795,19 +5460,23 @@ msgstr "Посетители"
 msgid "Visitor"
 msgstr "Посетитель"
 
-#: ../src/common/helpers.py:316 ../src/tooltips.py:209
+#: ../src/common/helpers.py:316
+#: ../src/tooltips.py:209
 msgid "?Group Chat Contact Affiliation:None"
 msgstr "?Group Chat Contact Affiliation:Отсутствует"
 
-#: ../src/common/helpers.py:318 ../src/tooltips.py:215
+#: ../src/common/helpers.py:318
+#: ../src/tooltips.py:215
 msgid "Owner"
 msgstr "Владелец"
 
-#: ../src/common/helpers.py:320 ../src/tooltips.py:213
+#: ../src/common/helpers.py:320
+#: ../src/tooltips.py:213
 msgid "Administrator"
 msgstr "Администратор"
 
-#: ../src/common/helpers.py:322 ../src/tooltips.py:211
+#: ../src/common/helpers.py:322
+#: ../src/tooltips.py:211
 msgid "Member"
 msgstr "Участник"
 
@@ -5874,7 +5543,8 @@ msgstr "%s KB"
 msgid "%s B"
 msgstr "%s B"
 
-#: ../src/common/helpers.py:1119 ../src/common/helpers.py:1126
+#: ../src/common/helpers.py:1119
+#: ../src/common/helpers.py:1126
 #, python-format
 msgid "%d message pending"
 msgid_plural "%d messages pending"
@@ -5887,7 +5557,8 @@ msgstr[2] "%d пропущенных сообщений"
 msgid " from room %s"
 msgstr " в комнате %s"
 
-#: ../src/common/helpers.py:1135 ../src/common/helpers.py:1152
+#: ../src/common/helpers.py:1135
+#: ../src/common/helpers.py:1152
 #, python-format
 msgid " from user %s"
 msgstr " от пользователя %s"
@@ -5897,7 +5568,8 @@ msgstr " от пользователя %s"
 msgid " from %s"
 msgstr " от %s"
 
-#: ../src/common/helpers.py:1144 ../src/common/helpers.py:1150
+#: ../src/common/helpers.py:1144
+#: ../src/common/helpers.py:1150
 #, python-format
 msgid "%d event pending"
 msgid_plural "%d events pending"
@@ -5910,33 +5582,35 @@ msgstr[2] "%d событий пропущено"
 msgid "Gajim - %s"
 msgstr "Gajim — %s"
 
-#: ../src/common/helpers.py:1368
+#: ../src/common/helpers.py:1365
 msgid "Hello, I am $name."
 msgstr "Привет, я $name."
 
-#: ../src/common/helpers.py:1478 ../src/common/helpers.py:1487
-#: ../src/common/helpers.py:1541
+#: ../src/common/helpers.py:1475
+#: ../src/common/helpers.py:1484
+#: ../src/common/helpers.py:1538
 msgid "Timeout loading image"
 msgstr "Не могу загрузить изображение"
 
-#: ../src/common/helpers.py:1497 ../src/common/helpers.py:1539
+#: ../src/common/helpers.py:1494
+#: ../src/common/helpers.py:1536
 msgid "Image is too big"
 msgstr "Изображение слишком большое"
 
-#: ../src/common/helpers.py:1507
+#: ../src/common/helpers.py:1504
 msgid "PyCURL is not installed"
 msgstr "PyCURL не установлен"
 
-#: ../src/common/helpers.py:1543
+#: ../src/common/helpers.py:1540
 msgid "Error loading image"
 msgstr "Ошибка загрузки изображения"
 
-#: ../src/common/jingle_rtp.py:114
+#: ../src/common/jingle_rtp.py:110
 #, python-format
 msgid "%s configuration error"
 msgstr "ошибка конфигурации %s"
 
-#: ../src/common/jingle_rtp.py:115
+#: ../src/common/jingle_rtp.py:111
 #, python-format
 msgid ""
 "Couldn't setup %s. Check your configuration.\n"
@@ -5955,11 +5629,11 @@ msgstr ""
 "Ошибка:\n"
 "%s"
 
-#: ../src/common/jingle_rtp.py:220
+#: ../src/common/jingle_rtp.py:207
 msgid "GStreamer error"
 msgstr "Ошибка GStreamer"
 
-#: ../src/common/jingle_rtp.py:220
+#: ../src/common/jingle_rtp.py:207
 #, python-format
 msgid ""
 "Error: %s\n"
@@ -5968,19 +5642,19 @@ msgstr ""
 "Ошибка: %s\n"
 "Отладка: %s"
 
-#: ../src/common/jingle_rtp.py:354
+#: ../src/common/jingle_rtp.py:337
 msgid "audio input"
 msgstr "звуковой вход"
 
-#: ../src/common/jingle_rtp.py:357
+#: ../src/common/jingle_rtp.py:340
 msgid "audio output"
 msgstr "звуковой выход"
 
-#: ../src/common/jingle_rtp.py:412
+#: ../src/common/jingle_rtp.py:382
 msgid "video input"
 msgstr "видео вход"
 
-#: ../src/common/jingle_rtp.py:421
+#: ../src/common/jingle_rtp.py:391
 msgid "video output"
 msgstr "видео выход"
 
@@ -5989,89 +5663,87 @@ msgstr "видео выход"
 msgid "%s is not a valid loglevel"
 msgstr "%s не является допустимым loglevel"
 
-#: ../src/common/multimedia_helpers.py:41
+#: ../src/common/multimedia_helpers.py:39
 msgid " Default device"
 msgstr "Устройство по умолчанию"
 
 #. Test src
-#: ../src/common/multimedia_helpers.py:62
+#: ../src/common/multimedia_helpers.py:60
 msgid "Audio test"
 msgstr "Тест звука"
 
 #. Auto src
 #. Auto sink
 #. Auto src
-#: ../src/common/multimedia_helpers.py:65
-#: ../src/common/multimedia_helpers.py:81
-#: ../src/common/multimedia_helpers.py:95
-#: ../src/common/multimedia_helpers.py:113
+#: ../src/common/multimedia_helpers.py:63
+#: ../src/common/multimedia_helpers.py:79
+#: ../src/common/multimedia_helpers.py:93
+#: ../src/common/multimedia_helpers.py:111
 msgid "Autodetect"
 msgstr "Автоопределение"
 
 #. Alsa src
 #. Alsa sink
-#: ../src/common/multimedia_helpers.py:68
-#: ../src/common/multimedia_helpers.py:83
+#: ../src/common/multimedia_helpers.py:66
+#: ../src/common/multimedia_helpers.py:81
 #, python-format
 msgid "ALSA: %s"
 msgstr "ALSA: %s"
 
 #. Pulseaudio src
 #. Pulseaudio sink
-#: ../src/common/multimedia_helpers.py:71
-#: ../src/common/multimedia_helpers.py:85
+#: ../src/common/multimedia_helpers.py:69
+#: ../src/common/multimedia_helpers.py:83
 #, fuzzy, python-format
 msgid "Pulse: %s"
-msgstr "Пульс"
+msgstr "Файл: %s"
 
 #. Fake sink
-#: ../src/common/multimedia_helpers.py:79
+#. Fake video output
+#: ../src/common/multimedia_helpers.py:77
+#: ../src/common/multimedia_helpers.py:105
 msgid "Fake audio output"
 msgstr "Виртуальный аудио выход"
 
 #. Test src
-#: ../src/common/multimedia_helpers.py:92
+#: ../src/common/multimedia_helpers.py:90
 msgid "Video test"
 msgstr "Тест видео"
 
 #. V4L2 src
-#: ../src/common/multimedia_helpers.py:97
+#: ../src/common/multimedia_helpers.py:95
 #, python-format
 msgid "V4L2: %s"
 msgstr "V4L2: %s"
 
 #. Funny things, just to test...
 #. self.devices['GOOM'] = 'audiotestsrc ! goom'
-#: ../src/common/multimedia_helpers.py:100
+#: ../src/common/multimedia_helpers.py:98
 #, fuzzy
 msgid "Screen"
-msgstr "Экран"
+msgstr "зеленый"
 
-#. Fake video output
-#: ../src/common/multimedia_helpers.py:107
-#, fuzzy
-msgid "Fake video output"
-msgstr "Устройство вывода изображения"
-
-#: ../src/common/multimedia_helpers.py:110
+#: ../src/common/multimedia_helpers.py:108
 #, python-format
 msgid "X Window System (X11/XShm/Xv): %s"
 msgstr "Система X Window (X11/XShm/Xv): %s"
 
 #. ximagesink
-#: ../src/common/multimedia_helpers.py:112
+#: ../src/common/multimedia_helpers.py:110
 msgid "X Window System (without Xv)"
 msgstr "Система X Window (без Xv)"
 
 #. we talk about a file
 #. we talk about file
-#: ../src/common/optparser.py:53 ../src/gtkgui_helpers.py:203
+#: ../src/common/optparser.py:53
+#: ../src/gtkgui_helpers.py:203
 #: ../src/gtkgui_helpers.py:219
 #, python-format
 msgid "Error: cannot open %s for reading"
 msgstr "Ошибка: не могу открыть %s для чтения"
 
-#: ../src/common/optparser.py:304 ../src/common/optparser.py:305
+#: ../src/common/optparser.py:304
+#: ../src/common/optparser.py:305
 msgid "cyan"
 msgstr "синий"
 
@@ -6496,7 +6168,8 @@ msgstr "Ланч"
 msgid "Exercising"
 msgstr "Занимаюсь спортом"
 
-#: ../src/common/pep.py:133 ../src/common/pep.py:178
+#: ../src/common/pep.py:133
+#: ../src/common/pep.py:177
 msgid "Cycling"
 msgstr "На велосипеде"
 
@@ -6597,224 +6270,221 @@ msgid "Relaxing"
 msgstr "Отдыхаю"
 
 #: ../src/common/pep.py:160
-msgid "Fishing"
-msgstr "Рыбалка"
-
-#: ../src/common/pep.py:161
 msgid "Gaming"
 msgstr "Играю"
 
-#: ../src/common/pep.py:162
+#: ../src/common/pep.py:161
 msgid "Going out"
 msgstr "Вышел"
 
-#: ../src/common/pep.py:163
+#: ../src/common/pep.py:162
 msgid "Partying"
 msgstr "На вечеринке"
 
-#: ../src/common/pep.py:164
+#: ../src/common/pep.py:163
 msgid "Reading"
 msgstr "Читаю"
 
-#: ../src/common/pep.py:165
+#: ../src/common/pep.py:164
 msgid "Rehearsing"
 msgstr "Репетиция"
 
-#: ../src/common/pep.py:166
+#: ../src/common/pep.py:165
 msgid "Shopping"
 msgstr "Покупки"
 
-#: ../src/common/pep.py:167
+#: ../src/common/pep.py:166
 msgid "Smoking"
 msgstr "Курю"
 
-#: ../src/common/pep.py:168
+#: ../src/common/pep.py:167
 msgid "Socializing"
 msgstr "Общаюсь"
 
-#: ../src/common/pep.py:169
+#: ../src/common/pep.py:168
 msgid "Sunbathing"
 msgstr "Загораю"
 
-#: ../src/common/pep.py:170
+#: ../src/common/pep.py:169
 msgid "Watching TV"
 msgstr "Смотрю ТВ"
 
-#: ../src/common/pep.py:171
+#: ../src/common/pep.py:170
 msgid "Watching a Movie"
 msgstr "Смотрю кино"
 
-#: ../src/common/pep.py:172
+#: ../src/common/pep.py:171
 msgid "Talking"
 msgstr "Разговариваю"
 
-#: ../src/common/pep.py:173
+#: ../src/common/pep.py:172
 msgid "In Real Life"
 msgstr "В реальной жизни"
 
-#: ../src/common/pep.py:174
+#: ../src/common/pep.py:173
 msgid "On the Phone"
 msgstr "Говорю по телефону"
 
-#: ../src/common/pep.py:175
+#: ../src/common/pep.py:174
 msgid "On Video Phone"
 msgstr "Говорю по видео телефону"
 
-#: ../src/common/pep.py:176
+#: ../src/common/pep.py:175
 msgid "Traveling"
 msgstr "Путешествую"
 
-#: ../src/common/pep.py:177
+#: ../src/common/pep.py:176
 msgid "Commuting"
 msgstr "Еду с работы/на работу"
 
-#: ../src/common/pep.py:179
+#: ../src/common/pep.py:178
 msgid "Driving"
 msgstr "Вождение"
 
-#: ../src/common/pep.py:180
+#: ../src/common/pep.py:179
 msgid "In a Car"
 msgstr "В машине"
 
-#: ../src/common/pep.py:181
+#: ../src/common/pep.py:180
 msgid "On a Bus"
 msgstr "В автобусе"
 
-#: ../src/common/pep.py:182
+#: ../src/common/pep.py:181
 msgid "On a Plane"
 msgstr "В самолёте"
 
-#: ../src/common/pep.py:183
+#: ../src/common/pep.py:182
 msgid "On a Train"
 msgstr "В поезде"
 
-#: ../src/common/pep.py:184
+#: ../src/common/pep.py:183
 msgid "On a Trip"
 msgstr "В поездке"
 
-#: ../src/common/pep.py:185
+#: ../src/common/pep.py:184
 msgid "Walking"
 msgstr "Прогулка"
 
-#: ../src/common/pep.py:187
+#: ../src/common/pep.py:186
 msgid "Coding"
 msgstr "Пишу программу"
 
-#: ../src/common/pep.py:188
+#: ../src/common/pep.py:187
 msgid "In a Meeting"
 msgstr "На совещании"
 
-#: ../src/common/pep.py:189
+#: ../src/common/pep.py:188
 msgid "Studying"
 msgstr "Учусь"
 
-#: ../src/common/pep.py:190
+#: ../src/common/pep.py:189
 msgid "Writing"
 msgstr "Пишу"
 
-#: ../src/common/pep.py:195
-#, fuzzy
+#: ../src/common/pep.py:194
 msgid "accuracy"
-msgstr "Точность значения"
+msgstr ""
 
-#: ../src/common/pep.py:196
+#: ../src/common/pep.py:195
 msgid "alt"
 msgstr "высота"
 
-#: ../src/common/pep.py:197
+#: ../src/common/pep.py:196
 msgid "area"
 msgstr "район"
 
-#: ../src/common/pep.py:198
+#: ../src/common/pep.py:197
 msgid "bearing"
 msgstr "направление"
 
-#: ../src/common/pep.py:199
+#: ../src/common/pep.py:198
 msgid "building"
 msgstr "строение"
 
-#: ../src/common/pep.py:200
+#: ../src/common/pep.py:199
 msgid "country"
 msgstr "страна"
 
-#: ../src/common/pep.py:201
+#: ../src/common/pep.py:200
 msgid "countrycode"
 msgstr "код страны"
 
-#: ../src/common/pep.py:202
+#: ../src/common/pep.py:201
 msgid "datum"
 msgstr ""
 
-#: ../src/common/pep.py:203
+#: ../src/common/pep.py:202
 msgid "description"
 msgstr "описание"
 
-#: ../src/common/pep.py:204
+#: ../src/common/pep.py:203
 #, fuzzy
 msgid "error"
-msgstr "error"
+msgstr "Ошибка"
 
-#: ../src/common/pep.py:205
+#: ../src/common/pep.py:204
 msgid "floor"
 msgstr "этаж"
 
-#: ../src/common/pep.py:206
+#: ../src/common/pep.py:205
 msgid "lat"
 msgstr "широта"
 
-#: ../src/common/pep.py:207
+#: ../src/common/pep.py:206
 msgid "locality"
 msgstr "населенный пункт"
 
-#: ../src/common/pep.py:208
+#: ../src/common/pep.py:207
 msgid "lon"
 msgstr "долгота"
 
-#: ../src/common/pep.py:209
+#: ../src/common/pep.py:208
 msgid "postalcode"
 msgstr "индекс"
 
-#: ../src/common/pep.py:210
+#: ../src/common/pep.py:209
 msgid "region"
 msgstr "область"
 
-#: ../src/common/pep.py:211
+#: ../src/common/pep.py:210
+#: ../src/gajim-remote.py:288
 msgid "room"
 msgstr "комната"
 
-#: ../src/common/pep.py:212
+#: ../src/common/pep.py:211
 msgid "speed"
 msgstr "скорость"
 
-#: ../src/common/pep.py:213
+#: ../src/common/pep.py:212
 msgid "street"
 msgstr "улица"
 
-#: ../src/common/pep.py:214
+#: ../src/common/pep.py:213
 msgid "text"
 msgstr "текст"
 
-#: ../src/common/pep.py:215
+#: ../src/common/pep.py:214
 msgid "timestamp"
 msgstr "время установки"
 
-#: ../src/common/pep.py:216
+#: ../src/common/pep.py:215
+#: ../src/gajim-remote.py:279
 msgid "uri"
 msgstr "uri"
 
-#: ../src/common/pep.py:349
+#: ../src/common/pep.py:357
 msgid "Unknown Artist"
 msgstr "Неизвестный исполнитель"
 
-#: ../src/common/pep.py:352
+#: ../src/common/pep.py:360
 msgid "Unknown Title"
 msgstr "Неизвестная песня"
 
-#: ../src/common/pep.py:355
+#: ../src/common/pep.py:363
 msgid "Unknown Source"
 msgstr "Неизвестный альбом"
 
-#: ../src/common/pep.py:358
+#: ../src/common/pep.py:366
 #, python-format
 msgid ""
 "\"%(title)s\"  by %(artist)s \n"
@@ -6824,13 +6494,9 @@ msgstr ""
 "из %(source)s "
 
 #. we're not english
-#: ../src/common/stanza_session.py:425
-msgid ""
-"[This is part of an encrypted session. If you see this message, something "
-"went wrong.]"
-msgstr ""
-"[Это часть зашифрованного сообщения. Если вы видите это сообщение, возможно, "
-"произошла ошибка.]"
+#: ../src/common/stanza_session.py:424
+msgid "[This is part of an encrypted session. If you see this message, something went wrong.]"
+msgstr "[Это часть зашифрованного сообщения. Если вы видите это сообщение, возможно, произошла ошибка.]"
 
 #: ../src/common/zeroconf/connection_zeroconf.py:193
 msgid "Avahi error"
@@ -6875,17 +6541,18 @@ msgstr "Удостоверьтесь, что демон avahi запущен."
 msgid "Could not change status of account \"%s\""
 msgstr "Не могу изменить статус учётной записи «%s»"
 
-#: ../src/common/zeroconf/connection_zeroconf.py:353
+#: ../src/common/zeroconf/connection_zeroconf.py:352
+#: ../src/common/zeroconf/connection_zeroconf.py:393
 msgid "Your message could not be sent."
 msgstr "Ваше сообщение не может быть отправлено."
 
-#: ../src/common/zeroconf/connection_zeroconf.py:367
+#: ../src/common/zeroconf/connection_zeroconf.py:366
+#: ../src/common/zeroconf/connection_zeroconf.py:407
 msgid "Contact is offline. Your message could not be sent."
 msgstr "Контакт не в сети. Отправить сообщение не удалось."
 
-#: ../src/common/zeroconf/connection_zeroconf.py:394
-msgid ""
-"Connection to host could not be established: Timeout while sending data."
+#: ../src/common/zeroconf/connection_zeroconf.py:434
+msgid "Connection to host could not be established: Timeout while sending data."
 msgstr "Не удалось соединиться с хостом: истекло время ожидания."
 
 #: ../src/common/zeroconf/zeroconf_avahi.py:192
@@ -6894,243 +6561,251 @@ msgstr "Не удалось соединиться с хостом: истекл
 msgid "Error while adding service. %s"
 msgstr "Ошибка при добавлении службы. %s"
 
-#: ../src/config.py:404
+#: ../src/config.py:409
 msgid "Default Message"
 msgstr "Сообщение по умолчанию"
 
-#: ../src/config.py:413
+#: ../src/config.py:418
 msgid "Enabled"
 msgstr "Включено"
 
-#: ../src/config.py:468 ../src/config.py:472 ../src/config.py:3185
+#: ../src/config.py:473
+#: ../src/config.py:477
+#: ../src/config.py:3154
 msgid "Default"
 msgstr "По умолчанию"
 
-#: ../src/config.py:747 ../src/dialogs.py:1499
+#: ../src/config.py:759
+#: ../src/dialogs.py:1495
 #, python-format
 msgid "Dictionary for lang %s not available"
 msgstr "Нет словаря для языка %s"
 
-#: ../src/config.py:748
+#: ../src/config.py:760
 #, python-format
-msgid ""
-"You have to install %s dictionary to use spellchecking, or choose another "
-"language by setting the speller_language option."
-msgstr ""
-"Чтобы воспользоваться проверкой правописания, установите словарь для языка "
-"%s или выберите другой язык, исправив настройку speller_language."
+msgid "You have to install %s dictionary to use spellchecking, or choose another language by setting the speller_language option."
+msgstr "Чтобы воспользоваться проверкой правописания, установите словарь для языка %s или выберите другой язык, исправив настройку speller_language."
 
-#: ../src/config.py:1226
+#: ../src/config.py:1227
 msgid "status message title"
 msgstr "заголовок сообщения о статусе"
 
-#: ../src/config.py:1226
+#: ../src/config.py:1227
 msgid "status message text"
 msgstr "текст сообщения о статусе"
 
 #. Name column
-#: ../src/config.py:1553 ../src/dialogs.py:2673 ../src/dialogs.py:2740
-#: ../src/dialogs.py:3535 ../src/disco.py:889 ../src/disco.py:1787
-#: ../src/disco.py:2089 ../src/history_window.py:92
+#: ../src/config.py:1554
+#: ../src/dialogs.py:2574
+#: ../src/dialogs.py:2641
+#: ../src/dialogs.py:3437
+#: ../src/disco.py:885
+#: ../src/disco.py:1743
+#: ../src/disco.py:2045
+#: ../src/history_window.py:91
 msgid "Name"
 msgstr "Имя"
 
-#: ../src/config.py:1656
+#: ../src/config.py:1654
 msgid "Relogin now?"
 msgstr "Переподключиться сейчас?"
 
-#: ../src/config.py:1657
+#: ../src/config.py:1655
 msgid "If you want all the changes to apply instantly, you must relogin."
-msgstr ""
-"Если вы хотите, чтобы изменения были применены немедленно, вы должны "
-"переподключиться."
+msgstr "Если вы хотите, чтобы изменения были применены немедленно, вы должны переподключиться."
 
-#: ../src/config.py:1814 ../src/config.py:1949
+#: ../src/config.py:1809
+#: ../src/config.py:1942
 msgid "OpenPGP is not usable on this computer"
 msgstr "Невозможно использовать OpenPGP на этом компьютере"
 
-#: ../src/config.py:1990 ../src/config.py:2039
+#: ../src/config.py:1982
+#: ../src/config.py:2029
 msgid "Unread events"
 msgstr "Непросмотренные события"
 
-#: ../src/config.py:1991
+#: ../src/config.py:1983
 msgid "Read all pending events before removing this account."
 msgstr "Просмотрите все ожидающие события перед удалением учетной записи."
 
-#: ../src/config.py:2021
+#: ../src/config.py:2012
 #, python-format
 msgid "You have opened chat in account %s"
 msgstr "У вас есть окна чата под учётной записью %s"
 
-#: ../src/config.py:2022
+#: ../src/config.py:2013
 msgid "All chat and groupchat windows will be closed. Do you want to continue?"
 msgstr "Все окна чатов и комнат будут закрыты. Продолжить?"
 
-#: ../src/config.py:2034 ../src/config.py:2596 ../src/config.py:2634
+#: ../src/config.py:2025
+#: ../src/config.py:2570
+#: ../src/config.py:2607
 msgid "You are currently connected to the server"
 msgstr "Вы сейчас подсоединены к серверу"
 
-#: ../src/config.py:2035
+#: ../src/config.py:2026
 msgid "To change the account name, you must be disconnected."
 msgstr "Для смены имени учетной записи необходимо отключиться."
 
-#: ../src/config.py:2040
+#: ../src/config.py:2030
 msgid "To change the account name, you must read all pending events."
-msgstr ""
-"Для смены имени учетной записи необходимо просмотреть ожидающие события."
+msgstr "Для смены имени учетной записи необходимо просмотреть ожидающие события."
 
-#: ../src/config.py:2046
+#: ../src/config.py:2036
 msgid "Account Name Already Used"
 msgstr "Такое имя учетной записи уже используется"
 
-#: ../src/config.py:2047
-msgid ""
-"This name is already used by another of your accounts. Please choose another "
-"name."
-msgstr ""
-"Это имя уже используется в другой вашей учетной записи. Выберите другое."
+#: ../src/config.py:2037
+msgid "This name is already used by another of your accounts. Please choose another name."
+msgstr "Это имя уже используется в другой вашей учетной записи. Выберите другое."
 
-#: ../src/config.py:2051 ../src/config.py:2056
+#: ../src/config.py:2041
+#: ../src/config.py:2045
 msgid "Invalid account name"
 msgstr "Неверное имя учетной записи"
 
-#: ../src/config.py:2052
+#: ../src/config.py:2042
 msgid "Account name cannot be empty."
 msgstr "Имя учетной записи не может быть пустым."
 
-#: ../src/config.py:2057
+#: ../src/config.py:2046
 msgid "Account name cannot contain spaces."
 msgstr "Имя учетной записи не может содержать пробелы."
 
-#: ../src/config.py:2138
+#: ../src/config.py:2123
 msgid "Rename Account"
 msgstr "Переименовать учетную запись"
 
-#: ../src/config.py:2139
+#: ../src/config.py:2124
 #, python-format
 msgid "Enter a new name for account %s"
 msgstr "Введите новое название для учетной записи %s"
 
-#: ../src/config.py:2168
+#: ../src/config.py:2152
 msgid "A Jabber ID must be in the form \"user@servername\"."
 msgstr "Jabber ID должен иметь формат «имя_пользователя@сервер»."
 
-#: ../src/config.py:2394 ../src/config.py:3726
+#: ../src/config.py:2375
+#: ../src/config.py:3708
 msgid "Invalid entry"
 msgstr "Неверная запись"
 
-#: ../src/config.py:2395 ../src/config.py:3727
+#: ../src/config.py:2376
+#: ../src/config.py:3709
 msgid "Custom port must be a port number."
 msgstr "В качестве номера порта должно выступать число"
 
-#: ../src/config.py:2417
+#: ../src/config.py:2397
 msgid "Failed to get secret keys"
 msgstr "Не удалось получить секретный ключ"
 
-#: ../src/config.py:2418
+#: ../src/config.py:2398
 msgid "There is no OpenPGP secret key available."
 msgstr "Нет секретного ключа OpenPGP."
 
-#: ../src/config.py:2456
+#: ../src/config.py:2432
 msgid "OpenPGP Key Selection"
 msgstr "Выбор ключа OpenPGP"
 
-#: ../src/config.py:2457
+#: ../src/config.py:2433
 msgid "Choose your OpenPGP key"
 msgstr "Выберите свой ключ OpenPGP"
 
-#: ../src/config.py:2465
+#: ../src/config.py:2441
 msgid "No such account available"
 msgstr "Такая учетная запись недоступна"
 
-#: ../src/config.py:2466
+#: ../src/config.py:2442
 msgid "You must create your account before editing your personal information."
-msgstr ""
-"Перед редактированием личных данных необходимо сначала создать учетную "
-"запись."
+msgstr "Перед редактированием личных данных необходимо сначала создать учетную запись."
 
-#: ../src/config.py:2473 ../src/dialogs.py:2369 ../src/dialogs.py:2662
-#: ../src/dialogs.py:2850 ../src/disco.py:516 ../src/profile_window.py:371
+#: ../src/config.py:2449
+#: ../src/dialogs.py:2325
+#: ../src/dialogs.py:2563
+#: ../src/dialogs.py:2751
+#: ../src/disco.py:515
+#: ../src/profile_window.py:369
 msgid "You are not connected to the server"
 msgstr "Вы не подключены к серверу"
 
-#: ../src/config.py:2474
+#: ../src/config.py:2450
 msgid "Without a connection, you can not edit your personal information."
 msgstr "Чтобы отредактировать личную информацию, нужно подключиться к серверу."
 
-#: ../src/config.py:2479
-#, fuzzy
-msgid "Your server doesn't support vCard"
+#: ../src/config.py:2454
+msgid "Your server doesn't support Vcard"
 msgstr "Сервер не поддерживает Vcard"
 
-#: ../src/config.py:2480
+#: ../src/config.py:2455
 msgid "Your server can't save your personal information."
 msgstr "Ваш сервер не может хранить личную информацию."
 
-#: ../src/config.py:2597 ../src/config.py:2635
+#: ../src/config.py:2571
+#: ../src/config.py:2608
 msgid "To disable the account, you must be disconnected."
-msgstr ""
-"Чтобы отключить эту учетную запись, необходимо отсоединиться от сервера."
+msgstr "Чтобы отключить эту учетную запись, необходимо отсоединиться от сервера."
 
-#: ../src/config.py:2604
+#: ../src/config.py:2577
 msgid "Account Local already exists."
 msgstr "Учётная запись Local уже существует."
 
-#: ../src/config.py:2605
+#: ../src/config.py:2578
 msgid "Please rename or remove it before enabling link-local messaging."
 msgstr "Переименуйте или удалите её, прежде чем включать локальные сообщения."
 
-#: ../src/config.py:2766
+#: ../src/config.py:2735
 #, python-format
 msgid "Edit %s"
 msgstr "Править %s"
 
-#: ../src/config.py:2768
+#: ../src/config.py:2737
 #, python-format
 msgid "Register to %s"
 msgstr "Зарегистрировать %s"
 
 #. list at the beginning
-#: ../src/config.py:2804
+#: ../src/config.py:2773
 msgid "Ban List"
 msgstr "Черный список"
 
-#: ../src/config.py:2805
+#: ../src/config.py:2774
 msgid "Member List"
 msgstr "Список участников"
 
-#: ../src/config.py:2805
+#: ../src/config.py:2774
 msgid "Owner List"
 msgstr "Список владельцев"
 
-#: ../src/config.py:2806
+#: ../src/config.py:2775
 msgid "Administrator List"
 msgstr "Список администраторов"
 
 #. Address column
 #. holds JID (who said this)
-#: ../src/config.py:2870 ../src/disco.py:896 ../src/history_manager.py:217
+#: ../src/config.py:2839
+#: ../src/disco.py:892
+#: ../src/history_manager.py:207
 msgid "JID"
 msgstr "JID"
 
-#: ../src/config.py:2880
+#: ../src/config.py:2849
 msgid "Reason"
 msgstr "Причина"
 
-#: ../src/config.py:2887
+#: ../src/config.py:2856
 msgid "Nick"
 msgstr "Ник"
 
-#: ../src/config.py:2893
+#: ../src/config.py:2862
 msgid "Role"
 msgstr "Обязанность"
 
-#: ../src/config.py:2920
+#: ../src/config.py:2889
 msgid "Banning..."
 msgstr "Баню..."
 
 #. You can move '\n' before user@domain if that line is TOO BIG
-#: ../src/config.py:2922
+#: ../src/config.py:2891
 msgid ""
 "Whom do you want to ban? \n"
 "\n"
@@ -7138,11 +6813,11 @@ msgstr ""
 "Кого вы хотите забанить? \n"
 "\n"
 
-#: ../src/config.py:2924
+#: ../src/config.py:2893
 msgid "Adding Member..."
 msgstr "Добавляю участника..."
 
-#: ../src/config.py:2925
+#: ../src/config.py:2894
 msgid ""
 "Whom do you want to make a member? \n"
 "\n"
@@ -7150,11 +6825,11 @@ msgstr ""
 "Кого вы хотите сделать участником? \n"
 "\n"
 
-#: ../src/config.py:2927
+#: ../src/config.py:2896
 msgid "Adding Owner..."
 msgstr "Добавляю владельца..."
 
-#: ../src/config.py:2928
+#: ../src/config.py:2897
 msgid ""
 "Whom do you want to make an owner? \n"
 "\n"
@@ -7162,11 +6837,11 @@ msgstr ""
 "Кого вы хотите сделать владельцем? \n"
 "\n"
 
-#: ../src/config.py:2930
+#: ../src/config.py:2899
 msgid "Adding Administrator..."
 msgstr "Добавляю администратора..."
 
-#: ../src/config.py:2931
+#: ../src/config.py:2900
 msgid ""
 "Whom do you want to make an administrator? \n"
 "\n"
@@ -7174,7 +6849,7 @@ msgstr ""
 "Кого вы хотите сделать администратором? \n"
 "\n"
 
-#: ../src/config.py:2932
+#: ../src/config.py:2901
 msgid ""
 "Can be one of the following:\n"
 "1. user@domain/resource (only that resource matches).\n"
@@ -7190,141 +6865,142 @@ msgstr ""
 "4. domain (сам домен, т.е. как любое сочетание user@domain,\n"
 "domain/resource, так и адрес, содержащий этот поддомен)"
 
-#: ../src/config.py:3033
+#: ../src/config.py:3002
 #, python-format
 msgid "Removing %s account"
 msgstr "Удаление учетной записи %s"
 
-#: ../src/config.py:3048
+#: ../src/config.py:3017
 msgid "Account is disabled"
 msgstr "Учетная запись отключена"
 
-#: ../src/config.py:3049
+#: ../src/config.py:3018
 msgid "To unregister from a server, account must be enabled."
-msgstr ""
-"Для удаления регистрации с сервера, учетная запись должна быть активна."
+msgstr "Для удаления регистрации с сервера, учетная запись должна быть активна."
 
-#: ../src/config.py:3062 ../src/gui_interface.py:286
-#: ../src/gui_interface.py:734
+#: ../src/config.py:3031
+#: ../src/gui_interface.py:285
+#: ../src/gui_interface.py:732
 msgid "Password Required"
 msgstr "Требуется пароль"
 
-#: ../src/config.py:3063 ../src/gui_interface.py:714
+#: ../src/config.py:3032
+#: ../src/gui_interface.py:712
 #, python-format
 msgid "Enter your password for account %s"
 msgstr "Введите пароль для учетной записи %s"
 
-#: ../src/config.py:3064 ../src/gui_interface.py:734
+#: ../src/config.py:3033
+#: ../src/gui_interface.py:732
 msgid "Save password"
 msgstr "Сохранить пароль"
 
-#: ../src/config.py:3074
+#: ../src/config.py:3043
 #, python-format
 msgid "Account \"%s\" is connected to the server"
 msgstr "Учетная запись «%s» подключена к серверу"
 
-#: ../src/config.py:3075
+#: ../src/config.py:3044
 msgid "If you remove it, the connection will be lost."
 msgstr "Если вы удалите его, произойдет отключение."
 
-#: ../src/config.py:3089
+#: ../src/config.py:3058
 #, python-format
 msgid "Connection to server %s failed"
 msgstr "Не удалось соединиться с сервером %s"
 
-#: ../src/config.py:3090
+#: ../src/config.py:3059
 msgid "What would you like to do?"
 msgstr "Что вы хотите сделать?"
 
-#: ../src/config.py:3091
+#: ../src/config.py:3060
 msgid "Remove only from Gajim"
 msgstr "Удалить только из Gajim"
 
-#: ../src/config.py:3092
+#: ../src/config.py:3061
 msgid "Don't remove anything. I'll try again later"
 msgstr "Ничего не удалять. Я попробую позже."
 
-#: ../src/config.py:3185
+#: ../src/config.py:3154
 msgid "?print_status:All"
 msgstr "?print_status:Все"
 
-#: ../src/config.py:3186
+#: ../src/config.py:3155
 msgid "Enter and leave only"
 msgstr "Только приход и уход"
 
-#: ../src/config.py:3187
+#: ../src/config.py:3156
 msgid "?print_status:None"
 msgstr "?print_status:Нет"
 
-#: ../src/config.py:3246
+#: ../src/config.py:3228
 msgid "New Group Chat"
 msgstr "Новая комната"
 
-#: ../src/config.py:3279
+#: ../src/config.py:3261
 msgid "This bookmark has invalid data"
 msgstr "Эта закладка содержит неверные данные"
 
-#: ../src/config.py:3280
-msgid ""
-"Please be sure to fill out server and room fields or remove this bookmark."
-msgstr ""
-"Удостоверьтесь, что заполнены поля с именем сервера и комнаты, либо удалите "
-"эту закладку."
+#: ../src/config.py:3262
+msgid "Please be sure to fill out server and room fields or remove this bookmark."
+msgstr "Удостоверьтесь, что заполнены поля с именем сервера и комнаты, либо удалите эту закладку."
 
-#: ../src/config.py:3406 ../src/config.py:3417 ../src/config.py:3426
-#: ../src/config.py:3437 ../src/config.py:3445
+#: ../src/config.py:3388
+#: ../src/config.py:3399
+#: ../src/config.py:3408
+#: ../src/config.py:3419
+#: ../src/config.py:3427
 msgid "Character not allowed"
 msgstr "Символ недопустим"
 
-#: ../src/config.py:3417 ../src/config.py:3425 ../src/config.py:3437
-#: ../src/config.py:3702
+#: ../src/config.py:3399
+#: ../src/config.py:3407
+#: ../src/config.py:3419
+#: ../src/config.py:3684
 msgid "Invalid server"
 msgstr "Неверный сервер"
 
-#: ../src/config.py:3444
+#: ../src/config.py:3426
 msgid "Invalid room"
 msgstr "Неверная комната"
 
-#: ../src/config.py:3614
+#: ../src/config.py:3596
 msgid "Account has been added successfully"
 msgstr "Учетная запись успешно добавлена"
 
-#: ../src/config.py:3615 ../src/config.py:3621
-msgid ""
-"You can set advanced account options by pressing the Advanced button, or "
-"later by choosing the Accounts menu item under the Edit menu from the main "
-"window."
-msgstr ""
-"Вы можете установить расширенные настройки учетной записи нажатием кнопки "
-"«Дополнительно», или сделать это позже посредством пункта «Учетные записи» "
-"меню «Правка» в главном окне программы."
+#: ../src/config.py:3597
+#: ../src/config.py:3603
+msgid "You can set advanced account options by pressing the Advanced button, or later by choosing the Accounts menu item under the Edit menu from the main window."
+msgstr "Вы можете установить расширенные настройки учетной записи нажатием кнопки «Дополнительно», или сделать это позже посредством пункта «Учетные записи» меню «Правка» в главном окне программы."
 
-#: ../src/config.py:3620
+#: ../src/config.py:3602
 msgid "Your new account has been created successfully"
 msgstr "Ваша новая учетная запись успешно создана"
 
-#: ../src/config.py:3659
+#: ../src/config.py:3641
 msgid "Invalid username"
 msgstr "Неверное имя пользователя"
 
-#: ../src/config.py:3661
+#: ../src/config.py:3643
 msgid "You must provide a username to configure this account."
 msgstr "Для настройки учетной записи необходимо ввести имя пользователя."
 
-#: ../src/config.py:3703
+#: ../src/config.py:3685
 msgid "Please provide a server on which you want to register."
 msgstr "Укажите сервер, на котором вы хотите зарегистрироваться."
 
-#: ../src/config.py:3759 ../src/gui_interface.py:1313
+#: ../src/config.py:3741
+#: ../src/gui_interface.py:1303
 msgid "Certificate Already in File"
 msgstr "Сертификат уже находится в файле"
 
-#: ../src/config.py:3760 ../src/gui_interface.py:1314
+#: ../src/config.py:3742
+#: ../src/gui_interface.py:1304
 #, python-format
 msgid "This certificate is already in file %s, so it's not added again."
 msgstr "Этот сертификат уже есть в файле %s, поэтому он не был добавлен."
 
-#: ../src/config.py:3850
+#: ../src/config.py:3830
 #, python-format
 msgid ""
 "Security Warning \n"
@@ -7339,7 +7015,8 @@ msgstr ""
 "Ошибка SSL: %(error)s\n"
 "Соединиться с этим сервером?"
 
-#: ../src/config.py:3856 ../src/gui_interface.py:1342
+#: ../src/config.py:3836
+#: ../src/gui_interface.py:1332
 #, python-format
 msgid ""
 "Add this certificate to the list of trusted certificates.\n"
@@ -7350,89 +7027,84 @@ msgstr ""
 "Отпечаток SHA1 сертификата:\n"
 "%s"
 
-#: ../src/config.py:3888 ../src/config.py:3922
+#: ../src/config.py:3868
+#: ../src/config.py:3902
 msgid "An error occurred during account creation"
 msgstr "Произошла ошибка при создании учетной записи"
 
-#: ../src/config.py:3987
+#: ../src/config.py:3967
 msgid "Account name is in use"
 msgstr "Такое имя учетной записи уже используется"
 
-#: ../src/config.py:3988
+#: ../src/config.py:3968
 msgid "You already have an account using this name."
 msgstr "У вас уже есть учетная запись с таким именем."
 
-#: ../src/config.py:4118
+#: ../src/config.py:4098
 msgid "PEP node was not removed"
 msgstr "PEP узел не был удален"
 
-#: ../src/config.py:4119
+#: ../src/config.py:4099
 #, python-format
 msgid "PEP node %(node)s was not removed: %(message)s"
 msgstr "PEP узел %(node)s не был удален: %(message)s"
 
-#: ../src/config.py:4147
+#: ../src/config.py:4127
 #, python-format
 msgid "Configure %s"
 msgstr "Настроить %s"
 
-#: ../src/config.py:4163 ../src/plugins/gui.py:92
+#: ../src/config.py:4143
+#: ../src/plugins/gui.py:88
 msgid "Active"
 msgstr "Активен"
 
-#: ../src/config.py:4171
+#: ../src/config.py:4151
 msgid "Event"
 msgstr "Событие"
 
-#: ../src/config.py:4205
+#: ../src/config.py:4185
 #, fuzzy
 msgid "Attention Message Received"
 msgstr "Получено первое сообщение"
 
-#: ../src/config.py:4206
+#: ../src/config.py:4186
 msgid "First Message Received"
 msgstr "Получено первое сообщение"
 
-#: ../src/config.py:4207
+#: ../src/config.py:4187
 msgid "Next Message Received Focused"
 msgstr "Следующее сообщение получено в окне с фокусом"
 
-#: ../src/config.py:4209
+#: ../src/config.py:4189
 msgid "Next Message Received Unfocused"
 msgstr "Следующее сообщение получено в окне без фокуса"
 
-#: ../src/config.py:4210
+#: ../src/config.py:4190
 msgid "Contact Connected"
 msgstr "Контакт подключился"
 
-#: ../src/config.py:4211
+#: ../src/config.py:4191
 msgid "Contact Disconnected"
 msgstr "Контакт отключился"
 
-#: ../src/config.py:4212
+#: ../src/config.py:4192
 msgid "Message Sent"
 msgstr "Сообщение отправлено"
 
-#: ../src/config.py:4213
+#: ../src/config.py:4193
 msgid "Group Chat Message Highlight"
 msgstr "Вас упомянули в комнате"
 
-#: ../src/config.py:4214
+#: ../src/config.py:4194
 msgid "Group Chat Message Received"
 msgstr "Получено сообщение в комнате"
 
-#: ../src/config.py:4215
+#: ../src/config.py:4195
 msgid "GMail Email Received"
 msgstr "Получено письмо на Gmail"
 
-#: ../src/conversation_textview.py:474 ../src/conversation_textview.py:492
-#, fuzzy, python-format
-msgid ""
-"Message was corrected. Last message was: \n"
-"  %s"
-msgstr "С момента последней отправки сообщения"
-
-#: ../src/conversation_textview.py:645
+#: ../src/conversation_textview.py:602
 msgid ""
 "This icon indicates that this message has not yet\n"
 "been received by the remote end. If this icon stays\n"
@@ -7442,7 +7114,7 @@ msgstr ""
 "Если иконка не пропадает долгое время,\n"
 "это означает, что сообщение потеряно."
 
-#: ../src/conversation_textview.py:664
+#: ../src/conversation_textview.py:621
 msgid ""
 "Text below this line is what has been said since the\n"
 "last time you paid attention to this group chat"
@@ -7450,44 +7122,44 @@ msgstr ""
 "Текст под этой линией был сказан после того,\n"
 "как вы последний раз заглядывали в эту комнату"
 
-#: ../src/conversation_textview.py:784
+#: ../src/conversation_textview.py:741
 msgid "_Quote"
 msgstr "_Цитировать"
 
-#: ../src/conversation_textview.py:791
+#: ../src/conversation_textview.py:748
 #, python-format
 msgid "_Actions for \"%s\""
 msgstr "_Действия для «%s»"
 
-#: ../src/conversation_textview.py:804
+#: ../src/conversation_textview.py:761
 msgid "Read _Wikipedia Article"
 msgstr "Смотреть статью в _Wikipedia"
 
-#: ../src/conversation_textview.py:809
+#: ../src/conversation_textview.py:766
 msgid "Look it up in _Dictionary"
 msgstr "Искать в _словаре"
 
-#: ../src/conversation_textview.py:826
+#: ../src/conversation_textview.py:783
 #, python-format
 msgid "Dictionary URL is missing an \"%s\" and it is not WIKTIONARY"
 msgstr "В URL словаря отсутствует «%s» и это не WIKTIONARY"
 
 #. we must have %s in the url
-#: ../src/conversation_textview.py:839
+#: ../src/conversation_textview.py:796
 #, python-format
 msgid "Web Search URL is missing an \"%s\""
 msgstr "В URL Web-поиска отсутствует «%s»"
 
-#: ../src/conversation_textview.py:842
+#: ../src/conversation_textview.py:799
 msgid "Web _Search for it"
 msgstr "_Поиск по Web"
 
-#: ../src/conversation_textview.py:848
+#: ../src/conversation_textview.py:805
 msgid "Open as _Link"
 msgstr "Открыть как _ссылку"
 
 #. %i is day in year (1-365)
-#: ../src/conversation_textview.py:1377
+#: ../src/conversation_textview.py:1302
 #, python-format
 msgid "Yesterday"
 msgid_plural "%(nb_days)i days ago"
@@ -7496,7 +7168,8 @@ msgstr[1] "%(nb_days)i  дня назад"
 msgstr[2] "%(nb_days)i  дней назад"
 
 #. if we have subject, show it too!
-#: ../src/conversation_textview.py:1427 ../src/history_window.py:488
+#: ../src/conversation_textview.py:1351
+#: ../src/history_window.py:481
 #, python-format
 msgid "Subject: %s\n"
 msgstr "Тема: %s\n"
@@ -7527,155 +7200,158 @@ msgstr "Jabber ID, который вы ввели, уже существует.
 msgid "new@jabber.id"
 msgstr "new@jabber.id"
 
-#: ../src/dataforms_widget.py:652 ../src/dataforms_widget.py:654
+#: ../src/dataforms_widget.py:652
+#: ../src/dataforms_widget.py:654
 #, python-format
 msgid "new%d@jabber.id"
 msgstr "new%d@jabber.id"
 
-#: ../src/dialogs.py:84
+#: ../src/dialogs.py:82
 #, python-format
 msgid "Contact name: %s "
 msgstr "Имя контакта: %s "
 
-#: ../src/dialogs.py:86
+#: ../src/dialogs.py:84
 #, python-format
 msgid "Jabber ID: %s "
 msgstr "Jabber ID: %s "
 
-#: ../src/dialogs.py:200
+#: ../src/dialogs.py:198
 msgid "Group"
 msgstr "Группа"
 
-#: ../src/dialogs.py:207
+#: ../src/dialogs.py:205
 msgid "In the group"
 msgstr "В группе"
 
-#: ../src/dialogs.py:299
+#: ../src/dialogs.py:297
 msgid "KeyID"
 msgstr "KeyID"
 
-#: ../src/dialogs.py:304
+#: ../src/dialogs.py:302
 msgid "Contact name"
 msgstr "Имя контакта"
 
-#: ../src/dialogs.py:479
+#: ../src/dialogs.py:477
 msgid "Set Mood"
 msgstr "Установить настроение"
 
-#: ../src/dialogs.py:599
+#: ../src/dialogs.py:597
 #, python-format
 msgid "%s Status Message"
 msgstr "Сообщение о статусе %s"
 
-#: ../src/dialogs.py:613
+#: ../src/dialogs.py:611
 msgid "Status Message"
 msgstr "Сообщение о статусе"
 
-#: ../src/dialogs.py:804
+#: ../src/dialogs.py:802
 msgid "Overwrite Status Message?"
 msgstr "Изменить сообщение о статусе?"
 
-#: ../src/dialogs.py:805
-msgid ""
-"This name is already used. Do you want to overwrite this status message?"
+#: ../src/dialogs.py:803
+msgid "This name is already used. Do you want to overwrite this status message?"
 msgstr "Это имя уже используется. Перезаписать это сообщение о статусе?"
 
-#: ../src/dialogs.py:813
+#: ../src/dialogs.py:811
 msgid "Save as Preset Status Message"
 msgstr "Сохранить установленное сообщение о статусе"
 
-#: ../src/dialogs.py:814
+#: ../src/dialogs.py:812
 msgid "Please type a name for this status message"
 msgstr "Введите имя для этого сообщения о статусе"
 
-#: ../src/dialogs.py:842
+#: ../src/dialogs.py:840
 msgid "AIM Address:"
 msgstr "Адрес AIM:"
 
-#: ../src/dialogs.py:843
+#: ../src/dialogs.py:841
 msgid "GG Number:"
 msgstr "Номер GaduGadu"
 
-#: ../src/dialogs.py:844
+#: ../src/dialogs.py:842
 msgid "ICQ Number:"
 msgstr "Номер ICQ:"
 
-#: ../src/dialogs.py:845
+#: ../src/dialogs.py:843
 msgid "MSN Address:"
 msgstr "Адрес в MSN:"
 
-#: ../src/dialogs.py:846
+#: ../src/dialogs.py:844
 msgid "Yahoo! Address:"
 msgstr "Адрес Yahoo:"
 
-#: ../src/dialogs.py:883
+#: ../src/dialogs.py:881
 #, python-format
 msgid "Please fill in the data of the contact you want to add in account %s"
 msgstr ""
 "Заполните данные о контакте,\n"
 "который хотите добавить в ростер учетной записи %s"
 
-#: ../src/dialogs.py:886
+#: ../src/dialogs.py:884
 msgid "Please fill in the data of the contact you want to add"
 msgstr "Заполните данные о контакте, который вы хотите добавить"
 
-#: ../src/dialogs.py:1080 ../src/dialogs.py:1086 ../src/dialogs.py:1091
-#: ../src/dialogs.py:3770
+#: ../src/dialogs.py:1076
+#: ../src/dialogs.py:1082
+#: ../src/dialogs.py:1087
+#: ../src/dialogs.py:3672
 msgid "Invalid User ID"
 msgstr "Неверный ID пользователя"
 
-#: ../src/dialogs.py:1087
+#: ../src/dialogs.py:1083
 msgid "The user ID must not contain a resource."
 msgstr "ID пользователя не должен содержать ресурс."
 
-#: ../src/dialogs.py:1092
+#: ../src/dialogs.py:1088
 msgid "You cannot add yourself to your roster."
 msgstr "Вы не можете добавлять себя в свой ростер."
 
-#: ../src/dialogs.py:1106
+#: ../src/dialogs.py:1102
 msgid "Contact already in roster"
 msgstr "Контакт уже в ростере"
 
-#: ../src/dialogs.py:1107
+#: ../src/dialogs.py:1103
 msgid "This contact is already listed in your roster."
 msgstr "Этот контакт уже содержится в вашем ростере."
 
-#: ../src/dialogs.py:1160 ../src/dialogs.py:1194
+#: ../src/dialogs.py:1156
+#: ../src/dialogs.py:1190
 msgid "User ID:"
 msgstr "ID пользователя:"
 
-#: ../src/dialogs.py:1279
+#: ../src/dialogs.py:1275
 msgid "A GTK+ Jabber/XMPP client"
 msgstr "Jabber/XMPP-клиент на GTK+"
 
-#: ../src/dialogs.py:1280
+#: ../src/dialogs.py:1276
 msgid "GTK+ Version:"
 msgstr "Версия GTK+:"
 
-#: ../src/dialogs.py:1281
+#: ../src/dialogs.py:1277
 msgid "PyGTK Version:"
 msgstr "Версия PyGTK:"
 
-#: ../src/dialogs.py:1291
+#: ../src/dialogs.py:1287
 msgid "Current Developers:"
 msgstr "Разработчики:"
 
-#: ../src/dialogs.py:1293
+#: ../src/dialogs.py:1289
 msgid "Past Developers:"
 msgstr "Разработчики прошлых версий:"
 
-#: ../src/dialogs.py:1299
+#: ../src/dialogs.py:1295
 msgid "THANKS:"
 msgstr "БЛАГОДАРНОСТИ:"
 
 #. remove one english sentence
 #. and add it manually as translatable
-#: ../src/dialogs.py:1305
+#: ../src/dialogs.py:1301
 msgid "Last but not least, we would like to thank all the package maintainers."
 msgstr "И наконец, мы хотели бы поблагодарить всех мейнтейнеров пакетов."
 
 #. here you write your name in the form Name FamilyName 
-#: ../src/dialogs.py:1317
+#: ../src/dialogs.py:1313
 msgid "translator-credits"
 msgstr ""
 "Яков Безруков \n"
@@ -7684,492 +7360,458 @@ msgstr ""
 "Денис Фомин \n"
 "Григорий Сарницкий "
 
-#: ../src/dialogs.py:1500
+#: ../src/dialogs.py:1496
 #, python-format
 msgid ""
-"You have to install %s dictionary to use spellchecking, or choose another "
-"language by setting the speller_language option.\n"
+"You have to install %s dictionary to use spellchecking, or choose another language by setting the speller_language option.\n"
 "\n"
 "Highlighting misspelled words feature will not be used"
-msgstr ""
-"Чтобы воспользоваться проверкой правописания, установите словарь для языка "
-"%s или выберите другой язык, исправив настройку speller_language."
+msgstr "Чтобы воспользоваться проверкой правописания, установите словарь для языка %s или выберите другой язык, исправив настройку speller_language."
 
-#: ../src/dialogs.py:1845 ../src/gui_interface.py:1444
-#: ../src/gui_interface.py:1486
-msgid "Insecure connection"
-msgstr "Небезопасное соединение"
-
-#: ../src/dialogs.py:1846
-#, python-format
-msgid ""
-"You are about to connect to the account %(account)s (%(server)s) with an "
-"insecure connection. This means all your conversations will be exchanged "
-"unencrypted. This type of connection is really discouraged.\n"
-"Are you sure you want to do that?"
-msgstr ""
-"Вы хотите подключить учетную запись %(account)s (%(server)s) через "
-"незащищенное соединение. Вся ваша переписка не будет зашифрована. Этот тип "
-"подключения не рекомендуется.\n"
-"Вы действительно хотите это сделать?"
-
-#: ../src/dialogs.py:1852 ../src/gui_interface.py:1448
-#: ../src/gui_interface.py:1489
-msgid "Yes, I really want to connect insecurely"
-msgstr "Да, я действительно хочу соединиться небезопасно"
-
-#: ../src/dialogs.py:1853
-msgid "Gajim will NOT connect unless you check this box"
-msgstr ""
-
-#: ../src/dialogs.py:1854 ../src/groupchat_control.py:2130
-#: ../src/gui_interface.py:706 ../src/gui_interface.py:1449
-#: ../src/gui_interface.py:1490 ../src/message_window.py:222
-#: ../src/roster_window.py:3050 ../src/roster_window.py:3730
-#: ../src/roster_window.py:4558
-msgid "_Do not ask me again"
-msgstr "Не _спрашивать меня снова"
-
-#: ../src/dialogs.py:1950
+#: ../src/dialogs.py:1912
 msgid "_Resume"
 msgstr "_Продолжить"
 
-#: ../src/dialogs.py:1958
+#: ../src/dialogs.py:1920
 msgid "Re_place"
 msgstr "_Заменить"
 
-#: ../src/dialogs.py:2155 ../src/dialogs.py:2612
-#, fuzzy
-msgid "The nickname contains invalid characters."
-msgstr "Имя файла содержит недопустимые символы."
+#: ../src/dialogs.py:2114
+#: ../src/dialogs.py:2515
+msgid "The nickname has not allowed characters."
+msgstr "В Jabber ID комнаты или сервера содержатся недопустимые символы."
 
-#: ../src/dialogs.py:2277
+#: ../src/dialogs.py:2233
 #, python-format
 msgid "Subscription request for account %(account)s from %(jid)s"
 msgstr "Запрос на подписку для учетной записи %(account)s от %(jid)s"
 
-#: ../src/dialogs.py:2280
+#: ../src/dialogs.py:2236
 #, python-format
 msgid "Subscription request from %s"
 msgstr "Запрос на подписку от %s"
 
-#: ../src/dialogs.py:2364 ../src/gui_interface.py:2054
+#: ../src/dialogs.py:2320
+#: ../src/gui_interface.py:2056
 #, python-format
 msgid "You are already in group chat %s"
 msgstr "Вы уже в комнате %s"
 
-#: ../src/dialogs.py:2370
+#: ../src/dialogs.py:2326
 msgid "You can not join a group chat unless you are connected."
 msgstr "Вы не можете зайти в комнату без подключения."
 
-#: ../src/dialogs.py:2414
+#: ../src/dialogs.py:2370
 #, python-format
 msgid "Join Group Chat with account %s"
 msgstr "Войти в комнату с учетной записи %s"
 
-#: ../src/dialogs.py:2548 ../src/dialogs.py:2558
-#, fuzzy
-msgid "Wrong server"
-msgstr "Сервер вернул неправильный ответ! (%s)"
-
-#: ../src/dialogs.py:2548 ../src/dialogs.py:2558
-#, fuzzy, python-format
-msgid "%s is not a groupchat server"
-msgstr "URL «%s» сервера не является корректным"
-
-#: ../src/dialogs.py:2598
+#: ../src/dialogs.py:2501
 msgid "Invalid Account"
 msgstr "Неверное имя учетной записи"
 
-#: ../src/dialogs.py:2599
-msgid ""
-"You have to choose an account from which you want to join the groupchat."
+#: ../src/dialogs.py:2502
+msgid "You have to choose an account from which you want to join the groupchat."
 msgstr "Выберите учетную запись, с которой вы хотите войти в комнату."
 
-#: ../src/dialogs.py:2611
+#: ../src/dialogs.py:2514
 msgid "Invalid Nickname"
 msgstr "Неверное имя пользователя"
 
-#: ../src/dialogs.py:2616 ../src/dialogs.py:2622
-#: ../src/groupchat_control.py:2198
+#: ../src/dialogs.py:2519
+#: ../src/dialogs.py:2525
+#: ../src/groupchat_control.py:2093
 msgid "Invalid group chat Jabber ID"
 msgstr "Неверное имя комнаты"
 
-#: ../src/dialogs.py:2617
+#: ../src/dialogs.py:2520
 msgid "Please enter the group chat Jabber ID as room@server."
 msgstr "В Jabber ID комнаты или сервера содержатся недопустимые символы."
 
-#: ../src/dialogs.py:2623
-#, fuzzy
-msgid "The group chat Jabber ID contains invalid characters."
+#: ../src/dialogs.py:2526
+#: ../src/groupchat_control.py:2094
+msgid "The group chat Jabber ID has not allowed characters."
 msgstr "В Jabber ID комнаты или сервера содержатся недопустимые символы."
 
-#: ../src/dialogs.py:2628 ../src/gui_interface.py:2036
+#: ../src/dialogs.py:2531
+#: ../src/gui_interface.py:2038
 msgid "This is not a group chat"
 msgstr "Это не комната"
 
-#: ../src/dialogs.py:2629 ../src/gui_interface.py:2037
+#: ../src/dialogs.py:2532
+#: ../src/gui_interface.py:2039
 #, python-format
 msgid "%s is not the name of a group chat."
 msgstr "%s не является именем комнаты."
 
-#: ../src/dialogs.py:2663
+#: ../src/dialogs.py:2564
 msgid "Without a connection, you can not synchronise your contacts."
 msgstr "Чтобы объединить контакты, необходимо подключиться к серверу."
 
-#: ../src/dialogs.py:2676
+#: ../src/dialogs.py:2577
 msgid "Server"
 msgstr "Сервер"
 
-#: ../src/dialogs.py:2712
+#: ../src/dialogs.py:2613
 msgid "This account is not connected to the server"
 msgstr "Учётная запись не подключена к серверу"
 
-#: ../src/dialogs.py:2713
+#: ../src/dialogs.py:2614
 msgid "You cannot synchronize with an account unless it is connected."
 msgstr "Вы не можете синхронизировать учетную запись если она не подключена."
 
-#: ../src/dialogs.py:2738
+#: ../src/dialogs.py:2639
 msgid "Synchronise"
 msgstr "Синхронизировать"
 
-#: ../src/dialogs.py:2799
+#: ../src/dialogs.py:2700
 #, python-format
 msgid "Start Chat with account %s"
 msgstr "Начать чат с учетной записью %s"
 
-#: ../src/dialogs.py:2801
+#: ../src/dialogs.py:2702
 msgid "Start Chat"
 msgstr "Начать чат"
 
-#: ../src/dialogs.py:2802
+#: ../src/dialogs.py:2703
 msgid ""
 "Fill in the nickname or the Jabber ID of the contact you would like\n"
 "to send a chat message to:"
-msgstr ""
-"Введите ник или ID пользователя, которому вы хотите отправить сообщение:"
+msgstr "Введите ник или ID пользователя, которому вы хотите отправить сообщение:"
 
 #. if offline or connecting
-#: ../src/dialogs.py:2829 ../src/dialogs.py:3213 ../src/dialogs.py:3448
+#: ../src/dialogs.py:2730
+#: ../src/dialogs.py:3114
+#: ../src/dialogs.py:3350
 msgid "Connection not available"
 msgstr "Соединение недоступно"
 
-#: ../src/dialogs.py:2830 ../src/dialogs.py:3214 ../src/dialogs.py:3449
+#: ../src/dialogs.py:2731
+#: ../src/dialogs.py:3115
+#: ../src/dialogs.py:3351
 #, python-format
 msgid "Please make sure you are connected with \"%s\"."
 msgstr "Удостоверьтесь, что вы подключены к «%s»."
 
-#: ../src/dialogs.py:2839 ../src/dialogs.py:2842
+#: ../src/dialogs.py:2740
+#: ../src/dialogs.py:2743
 msgid "Invalid JID"
 msgstr "Неверный JID"
 
-#: ../src/dialogs.py:2842
+#: ../src/dialogs.py:2743
 #, python-format
 msgid "Unable to parse \"%s\"."
 msgstr "Не понимаю адреса «%s»."
 
-#: ../src/dialogs.py:2851
+#: ../src/dialogs.py:2752
 msgid "Without a connection, you can not change your password."
 msgstr "Чтобы изменить пароль, необходимо подключиться к серверу."
 
-#: ../src/dialogs.py:2870
+#: ../src/dialogs.py:2771
 msgid "Invalid password"
 msgstr "Неверный пароль"
 
-#: ../src/dialogs.py:2870
+#: ../src/dialogs.py:2771
 msgid "You must enter a password."
 msgstr "Необходимо ввести пароль."
 
-#: ../src/dialogs.py:2874
+#: ../src/dialogs.py:2775
 msgid "Passwords do not match"
 msgstr "Пароли не совпадают"
 
-#: ../src/dialogs.py:2875
+#: ../src/dialogs.py:2776
 msgid "The passwords typed in both fields must be identical."
 msgstr "Пароли, введенные в оба поля, должны быть одинаковыми."
 
-#: ../src/dialogs.py:2918 ../src/gui_interface.py:883 ../src/notify.py:276
+#: ../src/dialogs.py:2819
+#: ../src/gui_interface.py:873
+#: ../src/notify.py:276
 msgid "New E-mail"
 msgstr "Новое письмо"
 
-#: ../src/dialogs.py:2920 ../src/gui_interface.py:943 ../src/notify.py:269
+#: ../src/dialogs.py:2821
+#: ../src/gui_interface.py:933
+#: ../src/notify.py:269
 msgid "File Transfer Request"
 msgstr "Запрос передачи"
 
-#: ../src/dialogs.py:2922 ../src/gui_interface.py:845
-#: ../src/gui_interface.py:909 ../src/notify.py:271
+#: ../src/dialogs.py:2823
+#: ../src/gui_interface.py:835
+#: ../src/gui_interface.py:899
+#: ../src/notify.py:271
 msgid "File Transfer Error"
 msgstr "Ошибка передачи"
 
-#: ../src/dialogs.py:2924 ../src/gui_interface.py:1032
-#: ../src/gui_interface.py:1058 ../src/gui_interface.py:1079
+#: ../src/dialogs.py:2825
+#: ../src/gui_interface.py:1022
+#: ../src/gui_interface.py:1048
+#: ../src/gui_interface.py:1069
 #: ../src/notify.py:273
 msgid "File Transfer Completed"
 msgstr "Передача файла завершена"
 
-#: ../src/dialogs.py:2925 ../src/gui_interface.py:1035
-#: ../src/gui_interface.py:1062 ../src/gui_interface.py:1083
+#: ../src/dialogs.py:2826
+#: ../src/gui_interface.py:1025
+#: ../src/gui_interface.py:1052
+#: ../src/gui_interface.py:1073
 #: ../src/notify.py:274
 msgid "File Transfer Stopped"
 msgstr "Передача остановлена"
 
-#: ../src/dialogs.py:3132
+#: ../src/dialogs.py:3033
 #, python-format
 msgid "Single Message using account %s"
 msgstr "Новое сообщение с учетной записи %s"
 
-#: ../src/dialogs.py:3134
+#: ../src/dialogs.py:3035
 #, python-format
 msgid "Single Message in account %s"
 msgstr "Новое сообщение для учетной записи %s"
 
-#: ../src/dialogs.py:3136
+#: ../src/dialogs.py:3037
 msgid "Single Message"
 msgstr "Сообщение"
 
 #. prepare UI for Sending
-#: ../src/dialogs.py:3139
+#: ../src/dialogs.py:3040
 #, python-format
 msgid "Send %s"
 msgstr "Отправить %s"
 
 #. prepare UI for Receiving
-#: ../src/dialogs.py:3162
+#: ../src/dialogs.py:3063
 #, python-format
 msgid "Received %s"
 msgstr "Получено %s"
 
 #. prepare UI for Receiving
-#: ../src/dialogs.py:3185
+#: ../src/dialogs.py:3086
 #, python-format
 msgid "Form %s"
 msgstr "От %s"
 
 #. we create a new blank window to send and we preset RE: and to jid
-#: ../src/dialogs.py:3268
+#: ../src/dialogs.py:3170
 #, python-format
 msgid "RE: %s"
 msgstr "RE: %s"
 
-#: ../src/dialogs.py:3269
+#: ../src/dialogs.py:3171
 #, python-format
 msgid "%s wrote:\n"
 msgstr "%s написал:\n"
 
-#: ../src/dialogs.py:3329
+#: ../src/dialogs.py:3231
 #, python-format
 msgid "XML Console for %s"
 msgstr "Консоль XML для %s"
 
-#: ../src/dialogs.py:3331
+#: ../src/dialogs.py:3233
 msgid "XML Console"
 msgstr "Консоль XML"
 
 #. Action that can be done with an incoming list of contacts
-#: ../src/dialogs.py:3478
+#: ../src/dialogs.py:3380
 msgid "add"
 msgstr "добавить"
 
-#: ../src/dialogs.py:3478
+#: ../src/dialogs.py:3380
 msgid "modify"
 msgstr "изменить"
 
-#: ../src/dialogs.py:3479
+#: ../src/dialogs.py:3381
 msgid "remove"
 msgstr "удалить"
 
-#: ../src/dialogs.py:3508
+#: ../src/dialogs.py:3410
 #, python-format
-msgid ""
-"%(jid)s  would like you to %(action)s  some contacts in your "
-"roster."
-msgstr ""
-"%(jid)s  хочет %(action)s  несколько контактов в ваш список "
-"контактов."
+msgid "%(jid)s  would like you to %(action)s  some contacts in your roster."
+msgstr "%(jid)s  хочет %(action)s  несколько контактов в ваш список контактов."
 
 #. Change label for accept_button to action name instead of 'OK'.
-#: ../src/dialogs.py:3526 ../src/dialogs.py:3601
+#: ../src/dialogs.py:3428
+#: ../src/dialogs.py:3503
 msgid "Modify"
 msgstr "Изменить"
 
 #. holds jid
-#: ../src/dialogs.py:3532 ../src/history_manager.py:166
+#: ../src/dialogs.py:3434
+#: ../src/history_manager.py:156
 msgid "Jabber ID"
 msgstr "Jabber ID"
 
-#: ../src/dialogs.py:3538
+#: ../src/dialogs.py:3440
 msgid "Groups"
 msgstr "Группы"
 
 #. it is selected
 #. remote_jid = model[iter_][1].decode('utf-8')
-#: ../src/dialogs.py:3646
+#: ../src/dialogs.py:3548
 #, python-format
 msgid "%s suggested me to add you in my roster."
 msgstr "%s предложил мне добавить вас в мой список контактов."
 
-#: ../src/dialogs.py:3660
+#: ../src/dialogs.py:3562
 #, fuzzy, python-format
 msgid "Added %d contact"
 msgid_plural "Added %d contacts"
-msgstr[0] "Время контакта: "
+msgstr[0] "Добавлены контакты %s"
 msgstr[1] "Добавлены контакты %s"
 msgstr[2] "Добавлены контакты %s"
 
-#: ../src/dialogs.py:3698
+#: ../src/dialogs.py:3600
 #, fuzzy, python-format
 msgid "Removed %d contact"
 msgid_plural "Removed %d contacts"
-msgstr[0] "Время контакта: "
+msgstr[0] "Удалены контакты %s"
 msgstr[1] "Удалены контакты %s"
 msgstr[2] "Удалены контакты %s"
 
-#: ../src/dialogs.py:3739 ../src/dialogs.py:3916
+#: ../src/dialogs.py:3641
+#: ../src/dialogs.py:3818
 #, python-format
 msgid "Archiving Preferences for %s"
 msgstr "Настройки архивации для %s"
 
-#: ../src/dialogs.py:3779
+#: ../src/dialogs.py:3681
 #, fuzzy
 msgid "Invalid expire value"
-msgstr "недопустимое значение --bytes `%s'"
+msgstr "Неверное имя сервера"
 
-#: ../src/dialogs.py:3780
-#, fuzzy
+#: ../src/dialogs.py:3682
 msgid "Expire must be a valid positive integer."
-msgstr "Высота доски должна задаваться целым положительным числом"
+msgstr ""
 
-#: ../src/dialogs.py:3827
-#, fuzzy
+#: ../src/dialogs.py:3729
 msgid "There is an error with the form"
-msgstr "%d вкладка с ошибками"
+msgstr ""
 
-#: ../src/dialogs.py:4047
+#: ../src/dialogs.py:3949
 #, fuzzy
 msgid "There is an error"
-msgstr "Ошибка: Файл \"%s\" не существует"
+msgstr "Сервис ответил ошибкой."
 
-#: ../src/dialogs.py:4115
+#: ../src/dialogs.py:4017
 #, python-format
 msgid "Privacy List %s %s Edit a rule "
 msgstr "Изменить правило "
 
-#: ../src/dialogs.py:4353
+#: ../src/dialogs.py:4255
 msgid "Add a rule "
 msgstr "Добавить правило "
 
-#: ../src/dialogs.py:4452
+#: ../src/dialogs.py:4354
 #, python-format
 msgid "Privacy Lists for %s"
 msgstr "Списки доступа для %s"
 
-#: ../src/dialogs.py:4454
+#: ../src/dialogs.py:4356
 msgid "Privacy Lists"
 msgstr "Списки доступа"
 
-#: ../src/dialogs.py:4543
+#: ../src/dialogs.py:4445
 msgid "Invalid List Name"
 msgstr "Недопустимое имя списка"
 
-#: ../src/dialogs.py:4544
+#: ../src/dialogs.py:4446
 msgid "You must enter a name to create a privacy list."
 msgstr "Необходимо ввести имя для нового списка доступа."
 
-#: ../src/dialogs.py:4580
+#: ../src/dialogs.py:4481
 msgid "You are invited to a groupchat"
 msgstr "Вы приглашены в конференцию"
 
-#: ../src/dialogs.py:4583
+#: ../src/dialogs.py:4484
 msgid "$Contact has invited you to join a discussion"
 msgstr "$Contact приглашает вас присоединиться к обсуждению."
 
-#: ../src/dialogs.py:4585
+#: ../src/dialogs.py:4486
 #, python-format
 msgid "$Contact has invited you to group chat %(room_jid)s"
 msgstr "$Contact приглашает вас в комнату %(room_jid)s."
 
-#: ../src/dialogs.py:4593
+#: ../src/dialogs.py:4494
 #, python-format
 msgid "Comment: %s"
 msgstr "Комментарий: %s"
 
-#: ../src/dialogs.py:4595
+#: ../src/dialogs.py:4496
 msgid "Do you want to accept the invitation?"
 msgstr "Вы принимаете приглашение?"
 
-#: ../src/dialogs.py:4612
-#, fuzzy
+#: ../src/dialogs.py:4512
 msgid "Reason (if you decline):"
-msgstr "AWAY [<причина>], устанавливает флаг отсутствия"
+msgstr ""
 
-#: ../src/dialogs.py:4664
+#: ../src/dialogs.py:4563
 msgid "Choose Client Cert #PCKS12"
 msgstr "Выберите сертификат владельца #PCKS12"
 
-#: ../src/dialogs.py:4674 ../src/dialogs.py:4716 ../src/dialogs.py:4772
-#: ../src/dialogs.py:4860
+#: ../src/dialogs.py:4573
+#: ../src/dialogs.py:4615
+#: ../src/dialogs.py:4671
+#: ../src/dialogs.py:4759
 msgid "All files"
 msgstr "Все файлы"
 
-#: ../src/dialogs.py:4679
+#: ../src/dialogs.py:4578
 msgid "PKCS12 Files"
 msgstr "Файлы PKCS12"
 
-#: ../src/dialogs.py:4706
+#: ../src/dialogs.py:4605
 msgid "Choose Sound"
 msgstr "Выберите звуковой файл"
 
-#: ../src/dialogs.py:4721
+#: ../src/dialogs.py:4620
 msgid "Wav Sounds"
 msgstr "В формате Wav"
 
-#: ../src/dialogs.py:4759
+#: ../src/dialogs.py:4658
 msgid "Choose Image"
 msgstr "Выбрать картинку"
 
-#: ../src/dialogs.py:4777
+#: ../src/dialogs.py:4676
 msgid "Images"
 msgstr "Картинки"
 
-#: ../src/dialogs.py:4847
+#: ../src/dialogs.py:4746
 msgid "Choose Archive"
 msgstr "Выбрать Архив"
 
-#: ../src/dialogs.py:4865
+#: ../src/dialogs.py:4764
 msgid "Zip files"
 msgstr "Zip файлы"
 
-#: ../src/dialogs.py:4891
+#: ../src/dialogs.py:4790
 #, python-format
 msgid "When %s becomes:"
 msgstr "Когда %s происходит:"
 
-#: ../src/dialogs.py:4893
+#: ../src/dialogs.py:4792
 #, python-format
 msgid "Adding Special Notification for %s"
 msgstr "Добавление специального уведомления для %s"
 
-#: ../src/dialogs.py:5113
+#: ../src/dialogs.py:5012
 #, python-format
 msgid ""
 "Your chat session with %(jid)s  is encrypted.\n"
@@ -8180,115 +7822,92 @@ msgstr ""
 "\n"
 "Short Authentication String данного сеанса %(sas)s ."
 
-#: ../src/dialogs.py:5116
+#: ../src/dialogs.py:5015
 msgid "You have already verified this contact's identity."
 msgstr "Вы уже удостоверили личность этого контакта."
 
-#: ../src/dialogs.py:5122 ../src/dialogs.py:5207
+#: ../src/dialogs.py:5021
+#: ../src/dialogs.py:5105
 msgid "Contact's identity verified"
 msgstr "Личность контакта удостоверена"
 
-#: ../src/dialogs.py:5128
+#: ../src/dialogs.py:5027
 msgid "Verify again..."
 msgstr "Удостоверить снова..."
 
-#: ../src/dialogs.py:5133
-msgid ""
-"To be certain that only  the expected person can read your messages or "
-"send you messages, you need to verify their identity by clicking the button "
-"below."
-msgstr ""
-"Чтобы быть уверенным, что только  нужный человек может прочитать ваши "
-"сообщения или послать сообщения вам, вы должны удостоверить личность "
-"собеседника, нажав кнопку, расположенную ниже."
+#: ../src/dialogs.py:5032
+msgid "To be certain that only  the expected person can read your messages or send you messages, you need to verify their identity by clicking the button below."
+msgstr "Чтобы быть уверенным, что только  нужный человек может прочитать ваши сообщения или послать сообщения вам, вы должны удостоверить личность собеседника, нажав кнопку, расположенную ниже."
 
-#: ../src/dialogs.py:5136 ../src/dialogs.py:5188 ../src/dialogs.py:5201
+#: ../src/dialogs.py:5035
+#: ../src/dialogs.py:5086
+#: ../src/dialogs.py:5099
 msgid "Contact's identity NOT verified"
 msgstr "Личность контакта НЕ удостоверена"
 
-#: ../src/dialogs.py:5141
+#: ../src/dialogs.py:5040
 msgid "Verify..."
 msgstr "Удостоверить..."
 
-#: ../src/dialogs.py:5152
+#: ../src/dialogs.py:5051
 msgid "Have you verified the contact's identity?"
 msgstr "Вы удостоверили личность удаленного контакта?"
 
-#: ../src/dialogs.py:5153
+#: ../src/dialogs.py:5052
 #, python-format
 msgid ""
-"To prevent talking to an unknown person, you should speak to %(jid)s  "
-"directly (in person or on the phone) and verify that they see the same Short "
-"Authentication String (SAS) as you.\n"
+"To prevent talking to an unknown person, you should speak to %(jid)s  directly (in person or on the phone) and verify that they see the same Short Authentication String (SAS) as you.\n"
 "\n"
 "This session's Short Authentication String is %(sas)s ."
 msgstr ""
-"Для предотвращения атаки типа «человек посередине» вы должны переговорить с "
-"%(jid)s  напрямую (лично или по телефону) и убедиться, что он видит ту "
-"же Short Authentication String (SAS), что и вы.\n"
+"Для предотвращения атаки типа «человек посередине» вы должны переговорить с %(jid)s  напрямую (лично или по телефону) и убедиться, что он видит ту же Short Authentication String (SAS), что и вы.\n"
 "\n"
 "Short Authentication String этого сеанса %(sas)s "
 
-#: ../src/dialogs.py:5154
+#: ../src/dialogs.py:5053
 msgid "Did you talk to the remote contact and verify the SAS?"
 msgstr "Вы переговорили с удаленным контактом и удостоверили SAS?"
 
-#: ../src/dialogs.py:5189
+#: ../src/dialogs.py:5087
 #, python-format
 msgid "The contact's key (%s) does not match  the key assigned in Gajim."
-msgstr ""
-"Ключ (%s) контакта не соответствует  ключу, присвоенному в Gajim."
+msgstr "Ключ (%s) контакта не соответствует  ключу, присвоенному в Gajim."
 
-#: ../src/dialogs.py:5195
-msgid ""
-"No OpenPGP key is assigned to this contact. So you cannot encrypt messages."
-msgstr ""
-"Этому контакту не присвоен ключ OpenPGP, поэтому вы не можете зашифровать "
-"сообщения."
+#: ../src/dialogs.py:5093
+msgid "No GPG key is assigned to this contact. So you cannot encrypt messages."
+msgstr "Этому контакту не присвоен ключ GPG, поэтому вы не можете зашифровать сообщения."
 
-#: ../src/dialogs.py:5202
-msgid ""
-"OpenPGP key is assigned to this contact, but you do not trust his key"
-"b>, so message cannot  be encrypted. Use your OpenPGP client to trust "
-"this key."
-msgstr ""
-"Этому контакту присвоен ключ OpenPGP, но вы не доверяете этому ключу . "
-"Таким образом, сообщения не могут быть  зашифрованы. Воспользуйтесь "
-"вашим OpenPGP клиентом для того, чтобы выставить доверие данному ключу"
+#: ../src/dialogs.py:5100
+msgid "GPG key is assigned to this contact, but you do not trust his key , so message cannot  be encrypted. Use your GPG client to trust this key."
+msgstr "Этому контакту присвоен ключ GPG, но вы не доверяете этому ключу . Таким образом, сообщения не могут быть  зашифрованы. Воспользуйтесь вашим GPG клиентом для того, чтобы выставить доверие данному ключу"
 
-#: ../src/dialogs.py:5208
-msgid ""
-"OpenPGP Key is assigned to this contact, and you trust his key, so messages "
-"will be encrypted."
-msgstr ""
-"Этому контакту присвоен ключ OpenPGP, и вы доверяете этому ключу. Таким "
-"образом, сообщения будут зашифрованы."
+#: ../src/dialogs.py:5106
+msgid "GPG Key is assigned to this contact, and you trust his key, so messages will be encrypted."
+msgstr "Этому контакту присвоен ключ GPG, и вы доверяете этому ключу. Таким образом, сообщения будут зашифрованы."
 
-#: ../src/dialogs.py:5273
+#: ../src/dialogs.py:5171
 msgid "an audio and video"
 msgstr "аудио и видео"
 
-#: ../src/dialogs.py:5275
+#: ../src/dialogs.py:5173
 msgid "an audio"
 msgstr "аудио"
 
-#: ../src/dialogs.py:5277
+#: ../src/dialogs.py:5175
 msgid "a video"
 msgstr "видео"
 
-#: ../src/dialogs.py:5281
+#: ../src/dialogs.py:5179
 #, python-format
-msgid ""
-"%(contact)s wants to start %(type)s session with you. Do you want to answer "
-"the call?"
+msgid "%(contact)s wants to start %(type)s session with you. Do you want to answer the call?"
 msgstr "%(contact)s хочет начать %(type)s сеанс с вами. Вы хотите ответить?"
 
-#: ../src/dialogs.py:5372 ../src/dialogs.py:5376
+#: ../src/dialogs.py:5248
 #, python-format
 msgid "Certificate for account %s"
 msgstr "Сертификат учетной записи %s"
 
-#: ../src/dialogs.py:5376
+#: ../src/dialogs.py:5248
 #, python-format
 msgid ""
 "Issued to: \n"
@@ -8310,132 +7929,135 @@ msgid ""
 "SHA1 Fingerprint: %(sha1)s"
 msgstr ""
 
-#: ../src/dialogs.py:5411 ../src/dialogs.py:5428
-#, fuzzy
+#: ../src/dialogs.py:5283
+#: ../src/dialogs.py:5300
 msgid "View cert..."
-msgstr "Просмотреть журнал"
+msgstr ""
 
-#: ../src/disco.py:120
+#: ../src/disco.py:119
 msgid "Others"
 msgstr "Другие"
 
 #. conference is a category for listing mostly groupchats in service discovery
-#: ../src/disco.py:124
+#: ../src/disco.py:123
 msgid "Conference"
 msgstr "Комнаты"
 
-#: ../src/disco.py:517
+#: ../src/disco.py:516
 msgid "Without a connection, you can not browse available services"
 msgstr "Для просмотра сервисов необходимо сначала подключиться к серверу"
 
-#: ../src/disco.py:603
+#: ../src/disco.py:602
 #, python-format
 msgid "Service Discovery using account %s"
 msgstr "Обзор сервисов с учётной записи %s"
 
-#: ../src/disco.py:605
+#: ../src/disco.py:604
 msgid "Service Discovery"
 msgstr "Обзор сервисов (discovery)"
 
-#: ../src/disco.py:761
+#: ../src/disco.py:760
 msgid "The service could not be found"
 msgstr "Сервис не обнаружен"
 
-#: ../src/disco.py:762
-msgid ""
-"There is no service at the address you entered, or it is not responding. "
-"Check the address and try again."
-msgstr ""
-"По этому адресу сервисы отсутствуют или не отвечают. Проверьте адрес и "
-"попробуйте еще раз."
+#: ../src/disco.py:761
+msgid "There is no service at the address you entered, or it is not responding. Check the address and try again."
+msgstr "По этому адресу сервисы отсутствуют или не отвечают. Проверьте адрес и попробуйте еще раз."
 
-#: ../src/disco.py:768 ../src/disco.py:1109
+#: ../src/disco.py:765
+#: ../src/disco.py:1101
 msgid "The service is not browsable"
 msgstr "Сервис недоступен для просмотра"
 
-#: ../src/disco.py:769
+#: ../src/disco.py:766
 msgid "This type of service does not contain any items to browse."
 msgstr "Этот сервис не содержит ничего, что можно было бы просмотреть."
 
-#: ../src/disco.py:810 ../src/disco.py:820
+#: ../src/disco.py:806
+#: ../src/disco.py:816
 msgid "Invalid Server Name"
 msgstr "Неверное имя сервера"
 
-#: ../src/disco.py:873
+#: ../src/disco.py:869
 #, python-format
 msgid "Browsing %(address)s using account %(account)s"
 msgstr "Просмотр %(address)s с учетной записью %(account)s"
 
-#: ../src/disco.py:917
+#: ../src/disco.py:913
 msgid "_Browse"
 msgstr "_Браузер"
 
-#: ../src/disco.py:1110
+#: ../src/disco.py:1102
 msgid "This service does not contain any items to browse."
 msgstr "Этот сервис не содержит ничего, что можно было бы просмотреть."
 
-#: ../src/disco.py:1378
+#: ../src/disco.py:1342
 msgid "_Execute Command"
 msgstr "В_ыполнить команду..."
 
-#: ../src/disco.py:1388 ../src/disco.py:1560
+#: ../src/disco.py:1352
+#: ../src/disco.py:1521
 msgid "Re_gister"
 msgstr "За_регистрироваться"
 
-#: ../src/disco.py:1601
+#: ../src/disco.py:1562
 #, python-format
 msgid "Scanning %(current)d / %(total)d.."
 msgstr "Сканирую %(current)d / %(total)d.."
 
 #. Users column
-#: ../src/disco.py:1797
+#: ../src/disco.py:1753
 msgid "Users"
 msgstr "Пользователи"
 
 #. Description column
-#: ../src/disco.py:1805
+#: ../src/disco.py:1761
 msgid "Description"
 msgstr "Описание"
 
 #. Id column
-#: ../src/disco.py:1813
+#: ../src/disco.py:1769
 msgid "Id"
 msgstr "ID"
 
-#: ../src/disco.py:1877 ../src/gui_interface.py:2572
+#: ../src/disco.py:1834
+#: ../src/gui_interface.py:2574
 msgid "Bookmark already set"
 msgstr "Закладка уже установлена"
 
-#: ../src/disco.py:1878 ../src/gui_interface.py:2573
+#: ../src/disco.py:1835
+#: ../src/gui_interface.py:2575
 #, python-format
 msgid "Group Chat \"%s\" is already in your bookmarks."
 msgstr "Комната «%s» уже есть в ваших закладках."
 
-#: ../src/disco.py:1887 ../src/gui_interface.py:2587
+#: ../src/disco.py:1844
+#: ../src/gui_interface.py:2589
 msgid "Bookmark has been added successfully"
 msgstr "Закладка успешно добавлена"
 
-#: ../src/disco.py:1888 ../src/gui_interface.py:2588
+#: ../src/disco.py:1845
+#: ../src/gui_interface.py:2590
 msgid "You can manage your bookmarks via Actions menu in your roster."
 msgstr "Вы можете управлять закладками через меню «Действия» в ростере."
 
-#: ../src/disco.py:2098
+#: ../src/disco.py:2054
 msgid "Subscribed"
 msgstr "Подписка"
 
-#: ../src/disco.py:2106
+#: ../src/disco.py:2062
 msgid "Node"
 msgstr "Узел"
 
-#: ../src/disco.py:2173
+#: ../src/disco.py:2129
 msgid "New post"
 msgstr "Новое сообщение"
 
-#: ../src/disco.py:2179
+#: ../src/disco.py:2135
 msgid "_Subscribe"
 msgstr "_Подписаться"
 
-#: ../src/disco.py:2185
+#: ../src/disco.py:2141
 msgid "_Unsubscribe"
 msgstr "_Отписаться"
 
@@ -8444,13 +8066,11 @@ msgid "SSL certificate validation"
 msgstr "Подтверждение SSL сертификата"
 
 #: ../src/features_window.py:51
-msgid ""
-"A library used to validate server certificates to ensure a secure connection."
-msgstr ""
-"Библиотека используется для подтверждения действительности сертификатов "
-"сервера для того, чтобы удостовериться в защищенности соединения."
+msgid "A library used to validate server certificates to ensure a secure connection."
+msgstr "Библиотека используется для подтверждения действительности сертификатов сервера для того, чтобы удостовериться в защищенности соединения."
 
-#: ../src/features_window.py:52 ../src/features_window.py:53
+#: ../src/features_window.py:52
+#: ../src/features_window.py:53
 msgid "Requires python-pyopenssl > 0.12 and pyasn1."
 msgstr "Требует python-pyopenssl > 0.12 и pyasn1."
 
@@ -8460,20 +8080,15 @@ msgstr "Bonjour / Zeroconf"
 
 #: ../src/features_window.py:55
 msgid "Serverless chatting with autodetected clients in a local network."
-msgstr ""
-"Не требующее сервера общение между автоматически обнаруживаемыми клиентами в "
-"локальной сети."
+msgstr "Не требующее сервера общение между автоматически обнаруживаемыми клиентами в локальной сети."
 
 #: ../src/features_window.py:56
 msgid "Requires python-avahi."
 msgstr "Требует python-avahi."
 
 #: ../src/features_window.py:57
-msgid ""
-"Requires pybonjour and bonjour SDK running (http://developer.apple.com/"
-"opensource/)."
+msgid "Requires pybonjour and bonjour SDK running (http://developer.apple.com/opensource/)."
 msgstr ""
-"Требует pybonjour и bonjour SDK (http://developer.apple.com/opensource/)."
 
 #: ../src/features_window.py:58
 msgid "Command line"
@@ -8487,20 +8102,24 @@ msgstr "Скрипт для управления Gajim'ом через кома
 msgid "Requires python-dbus."
 msgstr "Требует python-dbus."
 
-#: ../src/features_window.py:61 ../src/features_window.py:69
-#: ../src/features_window.py:73 ../src/features_window.py:77
-#: ../src/features_window.py:89 ../src/features_window.py:105
-#: ../src/features_window.py:109 ../src/features_window.py:113
+#: ../src/features_window.py:61
+#: ../src/features_window.py:69
+#: ../src/features_window.py:73
+#: ../src/features_window.py:77
+#: ../src/features_window.py:89
+#: ../src/features_window.py:105
+#: ../src/features_window.py:109
+#: ../src/features_window.py:113
 msgid "Feature not available under Windows."
 msgstr "Эта возможность отсутствует в Windows."
 
 #: ../src/features_window.py:62
-msgid "OpenPGP message encryption"
+msgid "OpenGPG message encryption"
 msgstr "OpenPGP шифрование"
 
 #: ../src/features_window.py:63
-msgid "Encrypting chat messages with OpenPGP keys."
-msgstr "Шифрование сообщений при помощи OpenPGP ключей."
+msgid "Encrypting chat messages with gpg keys."
+msgstr "Шифрование сообщений при помощи gpg ключей."
 
 #: ../src/features_window.py:64
 msgid "Requires gpg and python-gnupg (http://code.google.com/p/python-gnupg/)."
@@ -8528,9 +8147,7 @@ msgstr "Управление сеансами"
 
 #: ../src/features_window.py:71
 msgid "Gajim session is stored on logout and restored on login."
-msgstr ""
-"Сеанс Gajim сохраняется при выходе (logout) и восстанавливается при входе "
-"(login)."
+msgstr "Сеанс Gajim сохраняется при выходе (logout) и восстанавливается при входе (login)."
 
 #: ../src/features_window.py:72
 msgid "Requires python-gnome2."
@@ -8589,9 +8206,7 @@ msgid "Passive popups notifying for new events."
 msgstr "Пассивные всплывающие окна для уведомления о новых событиях."
 
 #: ../src/features_window.py:88
-msgid ""
-"Requires python-notify or instead python-dbus in conjunction with "
-"notification-daemon."
+msgid "Requires python-notify or instead python-dbus in conjunction with notification-daemon."
 msgstr "Требует python-notify или python-dbus совместно с notification-daemon."
 
 #: ../src/features_window.py:90
@@ -8600,9 +8215,7 @@ msgstr "Авто статус"
 
 #: ../src/features_window.py:91
 msgid "Ability to measure idle time, in order to set auto status."
-msgstr ""
-"Возможность определения времени бездействия для того, чтобы установить "
-"автостатус."
+msgstr "Возможность определения времени бездействия для того, чтобы установить автостатус."
 
 #: ../src/features_window.py:92
 msgid "Requires libxss library."
@@ -8620,7 +8233,8 @@ msgstr "End to end шифрование"
 msgid "Encrypting chat messages."
 msgstr "Шифрование сообщений чата."
 
-#: ../src/features_window.py:96 ../src/features_window.py:97
+#: ../src/features_window.py:96
+#: ../src/features_window.py:97
 msgid "Requires python-crypto."
 msgstr "Требует python-crypto."
 
@@ -8629,14 +8243,11 @@ msgid "RST Generator"
 msgstr "Генератор RST"
 
 #: ../src/features_window.py:99
-msgid ""
-"Generate XHTML output from RST code (see http://docutils.sourceforge.net/"
-"docs/ref/rst/restructuredtext.html)."
-msgstr ""
-"Генерировать XHTML вывод из кода RST (см. http://docutils.sourceforge.net/"
-"docs/ref/rst/restructuredtext.html)."
+msgid "Generate XHTML output from RST code (see http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html)."
+msgstr "Генерировать XHTML вывод из кода RST (см. http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html)."
 
-#: ../src/features_window.py:100 ../src/features_window.py:101
+#: ../src/features_window.py:100
+#: ../src/features_window.py:101
 msgid "Requires python-docutils."
 msgstr "Требует python-docutils."
 
@@ -8650,11 +8261,11 @@ msgstr "Требует python-farstream и gstreamer-plugins-bad."
 
 #: ../src/features_window.py:106
 msgid "UPnP-IGD"
-msgstr "UPnP-IGD"
+msgstr ""
 
 #: ../src/features_window.py:107
 msgid "Ability to request your router to forward port for file transfer."
-msgstr "Возможность запроса порта для передачи файлов у роутера."
+msgstr ""
 
 #: ../src/features_window.py:108
 msgid "Requires python-gupnp-igd."
@@ -8662,11 +8273,11 @@ msgstr "Требует python-gupnp-igd."
 
 #: ../src/features_window.py:110
 msgid "UPower"
-msgstr "UPower"
+msgstr ""
 
 #: ../src/features_window.py:111
 msgid "Ability to disconnect properly just before suspending the machine."
-msgstr "Возможность отключиться перед уходом машины в сон."
+msgstr ""
 
 #: ../src/features_window.py:112
 msgid "Requires upower and python-dbus."
@@ -8692,20 +8303,23 @@ msgstr "Время"
 msgid "Progress"
 msgstr "Прогресс"
 
-#: ../src/filetransfers_window.py:185 ../src/filetransfers_window.py:242
+#: ../src/filetransfers_window.py:185
+#: ../src/filetransfers_window.py:242
 #, python-format
 msgid "Filename: %s"
 msgstr "Имя файла: %s"
 
-#: ../src/filetransfers_window.py:187 ../src/filetransfers_window.py:453
+#: ../src/filetransfers_window.py:187
+#: ../src/filetransfers_window.py:453
 #, python-format
 msgid "Size: %s"
 msgstr "Размер: %s"
 
 #. You is a reply of who sent a file
 #. You is a reply of who received a file
-#: ../src/filetransfers_window.py:196 ../src/filetransfers_window.py:206
-#: ../src/history_manager.py:551
+#: ../src/filetransfers_window.py:196
+#: ../src/filetransfers_window.py:206
+#: ../src/history_manager.py:541
 msgid "You"
 msgstr "Вы"
 
@@ -8714,8 +8328,9 @@ msgstr "Вы"
 msgid "Sender: %s"
 msgstr "Отправитель: %s"
 
-#: ../src/filetransfers_window.py:198 ../src/filetransfers_window.py:734
-#: ../src/tooltips.py:758
+#: ../src/filetransfers_window.py:198
+#: ../src/filetransfers_window.py:734
+#: ../src/tooltips.py:756
 msgid "Recipient: "
 msgstr "Получатель:"
 
@@ -8737,18 +8352,16 @@ msgstr "Сообщение об ошибке: %s"
 #: ../src/filetransfers_window.py:283
 #, python-format
 msgid ""
-"The file %(file)s has been fully received, but it seems to be wrongly "
-"received.\n"
+"The file %(file)s has been fully received, but it seems to be wrongly received.\n"
 "Do you want to reload it?"
 msgstr ""
-"Файл %(file)s был получен, но возможно с ошибками.\n"
-"Хотите загрузить его еще раз?"
 
 #: ../src/filetransfers_window.py:313
 msgid "Choose File to Send..."
 msgstr "Выбрать файл для отправки..."
 
-#: ../src/filetransfers_window.py:329 ../src/tooltips.py:793
+#: ../src/filetransfers_window.py:329
+#: ../src/tooltips.py:791
 msgid "Description: "
 msgstr "Описание: "
 
@@ -8760,34 +8373,38 @@ msgstr "Нет доступа к файлу"
 msgid "This file is being used by another process."
 msgstr "Файл занят другим процессом."
 
-#: ../src/filetransfers_window.py:389 ../src/gtkgui_helpers.py:850
+#: ../src/filetransfers_window.py:389
+#: ../src/gtkgui_helpers.py:850
 #, python-format
 msgid "Cannot overwrite existing file \"%s\""
 msgstr "Не могу заместить существующий файл «%s»"
 
-#: ../src/filetransfers_window.py:390 ../src/gtkgui_helpers.py:851
-msgid ""
-"A file with this name already exists and you do not have permission to "
-"overwrite it."
+#: ../src/filetransfers_window.py:390
+#: ../src/gtkgui_helpers.py:851
+msgid "A file with this name already exists and you do not have permission to overwrite it."
 msgstr "Этот файл уже существует, и у вас нет права его перезаписать."
 
-#: ../src/filetransfers_window.py:407 ../src/gtkgui_helpers.py:855
+#: ../src/filetransfers_window.py:407
+#: ../src/gtkgui_helpers.py:855
 msgid "This file already exists"
 msgstr "Файл уже существует"
 
-#: ../src/filetransfers_window.py:407 ../src/gtkgui_helpers.py:855
+#: ../src/filetransfers_window.py:407
+#: ../src/gtkgui_helpers.py:855
 msgid "What do you want to do?"
 msgstr "Что вы хотите сделать?"
 
 #. read-only bit is used to mark special folder under
 #. windows, not to mark that a folder is read-only.
 #. See ticket #3587
-#: ../src/filetransfers_window.py:418 ../src/gtkgui_helpers.py:862
+#: ../src/filetransfers_window.py:418
+#: ../src/gtkgui_helpers.py:862
 #, python-format
 msgid "Directory \"%s\" is not writable"
 msgstr "Папка «%s» не доступна для записи"
 
-#: ../src/filetransfers_window.py:419 ../src/gtkgui_helpers.py:863
+#: ../src/filetransfers_window.py:419
+#: ../src/gtkgui_helpers.py:863
 msgid "You do not have permission to create files in this directory."
 msgstr "У вас нет права создавать файлы в этой директории."
 
@@ -8816,12 +8433,14 @@ msgid "%s wants to send you a file:"
 msgstr "%s хочет отправить вам файл:"
 
 #: ../src/filetransfers_window.py:500
+#, fuzzy
 msgid "Checking file..."
-msgstr "Проверяется файл ..."
+msgstr "Отправляю данные..."
 
 #: ../src/filetransfers_window.py:514
+#, fuzzy
 msgid "File error"
-msgstr "Файловая ошибка"
+msgstr "Ошибка передачи"
 
 #. Print remaining time in format 00:00:00
 #. You can change the places of (hours), (minutes), (seconds) -
@@ -8839,7 +8458,8 @@ msgstr "%(hours)02.d:%(minutes)02.d:%(seconds)02.d"
 msgid "(%(filesize_unit)s/s)"
 msgstr "(%(filesize_unit)s/s)"
 
-#: ../src/filetransfers_window.py:700 ../src/filetransfers_window.py:703
+#: ../src/filetransfers_window.py:700
+#: ../src/filetransfers_window.py:703
 msgid "Invalid File"
 msgstr "Неверный файл"
 
@@ -8851,11 +8471,13 @@ msgstr "Файл: "
 msgid "It is not possible to send empty files"
 msgstr "Нельзя отсылать пустые файлы"
 
-#: ../src/filetransfers_window.py:730 ../src/tooltips.py:748
+#: ../src/filetransfers_window.py:730
+#: ../src/tooltips.py:746
 msgid "Name: "
 msgstr "Имя: "
 
-#: ../src/filetransfers_window.py:732 ../src/tooltips.py:752
+#: ../src/filetransfers_window.py:732
+#: ../src/tooltips.py:750
 msgid "Sender: "
 msgstr "Отправитель:"
 
@@ -8863,81 +8485,46 @@ msgstr "Отправитель:"
 msgid "Pause"
 msgstr "Пауза"
 
-#: ../src/gajim.py:135 ../src/history_manager.py:73
-msgid "Usage:"
-msgstr "Использование:"
-
-#: ../src/gajim.py:137 ../src/history_manager.py:75
-msgid "Options:"
-msgstr "Параметры:"
-
-#: ../src/gajim.py:139 ../src/history_manager.py:77
-msgid "Show this help message and exit"
-msgstr "показать это сообщение и закончить работу"
-
-#: ../src/gajim.py:141
-msgid "Show only critical errors"
-msgstr "показывать только сообщения об ошибках"
-
-#: ../src/gajim.py:143
-msgid "Print xml stanzas and other debug information"
-msgstr "Выводить xml станзы и другую отладочную информацию"
-
-#: ../src/gajim.py:145
-msgid "Use defined profile in configuration directory"
-msgstr "Использовать определенный профиль из каталога с настройками"
-
-#: ../src/gajim.py:147
-msgid "Set configuration directory"
-msgstr "Установить каталог загрузки конфигурации"
-
-#: ../src/gajim.py:149
-msgid "Configure logging system"
-msgstr "Настройки системы логирования"
-
-#: ../src/gajim.py:211
+#: ../src/gajim.py:192
 msgid "Gajim needs X server to run. Quiting..."
 msgstr "Gajim для запуска требуется X-сервер. Выход..."
 
-#: ../src/gajim.py:213
+#: ../src/gajim.py:194
 #, python-format
 msgid "importing PyGTK failed: %s"
 msgstr "ошибка импортирования PyGTK: %s"
 
-#: ../src/gajim.py:256
+#: ../src/gajim.py:235
 msgid "Gajim needs PyGTK 2.22 or above"
 msgstr "Gajim требуется PyGTK 2.22 или выше"
 
-#: ../src/gajim.py:257
+#: ../src/gajim.py:236
 msgid "Gajim needs PyGTK 2.22 or above to run. Quiting..."
 msgstr "Gajim для запуска требуется PyGTK 2.22 или выше. Выход..."
 
-#: ../src/gajim.py:259
+#: ../src/gajim.py:238
 msgid "Gajim needs GTK 2.22 or above"
 msgstr "Gajim требуется GTK 2.22 или выше"
 
-#: ../src/gajim.py:260
+#: ../src/gajim.py:239
 msgid "Gajim needs GTK 2.22 or above to run. Quiting..."
 msgstr "Gajim для запуска требуется GTK 2.22 или выше. Выход..."
 
-#: ../src/gajim.py:269
+#: ../src/gajim.py:248
 msgid "Gajim needs pywin32 to run"
 msgstr "Gajim для запуска требуется pywin32"
 
-#: ../src/gajim.py:270
+#: ../src/gajim.py:249
 #, python-format
-msgid ""
-"Please make sure that Pywin32 is installed on your system. You can get it at "
-"%s"
-msgstr ""
-"Удостоверьтесь, что в вашей системе установлен Pywin32. Вы можете получить "
-"его на сайте: %s"
+msgid "Please make sure that Pywin32 is installed on your system. You can get it at %s"
+msgstr "Удостоверьтесь, что в вашей системе установлен Pywin32. Вы можете получить его на сайте: %s"
 
-#: ../src/gajim.py:410
+#. set the icon to all newly opened wind
+#: ../src/gajim.py:365
 msgid "Gajim is already running"
 msgstr "Gajim уже запущен"
 
-#: ../src/gajim.py:411
+#: ../src/gajim.py:366
 msgid ""
 "Another instance of Gajim seems to be running\n"
 "Run anyway?"
@@ -8945,389 +8532,342 @@ msgstr ""
 "По-видимому, уже запущен другой экземпляр Gajim\n"
 "Запустить ещё один?"
 
-#: ../src/gajim-remote.py:78
+#: ../src/gajim-remote.py:77
 msgid "Shows a help on specific command"
 msgstr "Показывает помощь для конкретной команды"
 
 #. User gets help for the command, specified by this parameter
-#: ../src/gajim-remote.py:81
+#: ../src/gajim-remote.py:80
 msgid "command"
 msgstr "команда"
 
-#: ../src/gajim-remote.py:82
+#: ../src/gajim-remote.py:81
 msgid "show help on command"
 msgstr "показать помощь по команде"
 
-#: ../src/gajim-remote.py:86
+#: ../src/gajim-remote.py:85
 msgid "Shows or hides the roster window"
 msgstr "Скрывает или показывает окно ростера"
 
-#: ../src/gajim-remote.py:90
+#: ../src/gajim-remote.py:89
 msgid "Pops up a window with the next pending event"
 msgstr "Показывать окно со следующим непрочитанным сообщением"
 
-#: ../src/gajim-remote.py:94
-msgid ""
-"Prints a list of all contacts in the roster. Each contact appears on a "
-"separate line"
-msgstr ""
-"Выводит список всех контактов в ростере. Каждый контакт будет в отдельной "
-"строке"
+#: ../src/gajim-remote.py:93
+msgid "Prints a list of all contacts in the roster. Each contact appears on a separate line"
+msgstr "Выводит список всех контактов в ростере. Каждый контакт будет в отдельной строке"
 
-#: ../src/gajim-remote.py:97 ../src/gajim-remote.py:112
-#: ../src/gajim-remote.py:122 ../src/gajim-remote.py:132
-#: ../src/gajim-remote.py:148 ../src/gajim-remote.py:162
-#: ../src/gajim-remote.py:171 ../src/gajim-remote.py:192
-#: ../src/gajim-remote.py:222 ../src/gajim-remote.py:231
-#: ../src/gajim-remote.py:238 ../src/gajim-remote.py:245
-#: ../src/gajim-remote.py:256 ../src/gajim-remote.py:281
-#: ../src/gajim-remote.py:292
-msgid "?CLI:account"
-msgstr "?CLI:учетная запись"
+#: ../src/gajim-remote.py:96
+#: ../src/gajim-remote.py:111
+#: ../src/gajim-remote.py:121
+#: ../src/gajim-remote.py:131
+#: ../src/gajim-remote.py:147
+#: ../src/gajim-remote.py:161
+#: ../src/gajim-remote.py:170
+#: ../src/gajim-remote.py:191
+#: ../src/gajim-remote.py:221
+#: ../src/gajim-remote.py:230
+#: ../src/gajim-remote.py:237
+#: ../src/gajim-remote.py:244
+#: ../src/gajim-remote.py:255
+#: ../src/gajim-remote.py:280
+#: ../src/gajim-remote.py:291
+msgid "account"
+msgstr "Учетные записи"
 
-#: ../src/gajim-remote.py:97
+#: ../src/gajim-remote.py:96
 msgid "show only contacts of the given account"
 msgstr "показывать контакты только для данной учетной записи"
 
-#: ../src/gajim-remote.py:103
+#: ../src/gajim-remote.py:102
 msgid "Prints a list of registered accounts"
 msgstr "Показывает список зарегистрированных учетных записей"
 
-#: ../src/gajim-remote.py:107
+#: ../src/gajim-remote.py:106
 msgid "Changes the status of account or accounts"
 msgstr "Изменяет статус учетной записи или записей"
 
 #. offline, online, chat, away, xa, dnd, invisible should not be translated
-#: ../src/gajim-remote.py:110
-msgid "?CLI:status"
-msgstr "?CLI:статус"
+#: ../src/gajim-remote.py:109
+msgid "status"
+msgstr "статус"
+
+#: ../src/gajim-remote.py:109
+msgid "one of: offline, online, chat, away, xa, dnd, invisible. If not set, use account's previous status"
+msgstr "один из: отключен, в сети, готов поболтать, отошел, недоступен, не беспокоить, невидимка. Если не указано, использовать предыдущий статус."
 
 #: ../src/gajim-remote.py:110
-msgid ""
-"one of: offline, online, chat, away, xa, dnd, invisible. If not set, use "
-"account's previous status"
-msgstr ""
-"один из: отключен, в сети, готов поболтать, отошел, недоступен, не "
-"беспокоить, невидимка. Если не указано, использовать предыдущий статус."
-
-#: ../src/gajim-remote.py:111 ../src/gajim-remote.py:134
-#: ../src/gajim-remote.py:145 ../src/gajim-remote.py:159
-#: ../src/gajim-remote.py:170 ../src/gajim-remote.py:283
-msgid "?CLI:message"
-msgstr "?CLI:сообщение"
-
-#: ../src/gajim-remote.py:111
 msgid "status message"
 msgstr "сообщение о статусе"
 
-#: ../src/gajim-remote.py:112
-msgid ""
-"change status of account \"account\". If not specified, try to change status "
-"of all accounts that have \"sync with global status\" option set"
-msgstr ""
-"изменяет статус учетной записи «учетная запись». Если не указано, пытается "
-"изменить статус всех учетных записей, у которых установлена опция "
-"«синхронизировать с глобальным статусом»"
+#: ../src/gajim-remote.py:111
+msgid "change status of account \"account\". If not specified, try to change status of all accounts that have \"sync with global status\" option set"
+msgstr "изменяет статус учетной записи «учетная запись». Если не указано, пытается изменить статус всех учетных записей, у которых установлена опция «синхронизировать с глобальным статусом»"
 
-#: ../src/gajim-remote.py:118
+#: ../src/gajim-remote.py:117
 msgid "Changes the priority of account or accounts"
 msgstr "Изменяет приоритет учетной записи или записей"
 
-#: ../src/gajim-remote.py:120
-msgid "?CLI:priority"
-msgstr "?CLI:приоритет"
+#: ../src/gajim-remote.py:119
+msgid "priority"
+msgstr "Приоритет"
 
-#: ../src/gajim-remote.py:120
+#: ../src/gajim-remote.py:119
 msgid "priority you want to give to the account"
 msgstr "приоритет, который вы хотите назначить для учетной записи"
 
-#: ../src/gajim-remote.py:122
-msgid ""
-"change the priority of the given account. If not specified, change status of "
-"all accounts that have \"sync with global status\" option set"
-msgstr ""
-"изменяет приоритет учетной записи. Если не указано, пытается изменить статус "
-"всех учетных записей, у которых установлена опция «синхронизировать с "
-"глобальным статусом»"
+#: ../src/gajim-remote.py:121
+msgid "change the priority of the given account. If not specified, change status of all accounts that have \"sync with global status\" option set"
+msgstr "изменяет приоритет учетной записи. Если не указано, пытается изменить статус всех учетных записей, у которых установлена опция «синхронизировать с глобальным статусом»"
 
-#: ../src/gajim-remote.py:128
+#: ../src/gajim-remote.py:127
 msgid "Shows the chat dialog so that you can send messages to a contact"
 msgstr "Показывает окно беседы, чтобы вы могли отправлять сообщения контакту"
 
-#: ../src/gajim-remote.py:130
+#: ../src/gajim-remote.py:129
 msgid "JID of the contact that you want to chat with"
 msgstr "JID контакта, с которым вы хотели бы побеседовать"
 
-#: ../src/gajim-remote.py:132 ../src/gajim-remote.py:222
+#: ../src/gajim-remote.py:131
+#: ../src/gajim-remote.py:221
 msgid "if specified, contact is taken from the contact list of this account"
 msgstr "если указано, контакт будет взят из контакт-листа этой учетной записи"
 
-#: ../src/gajim-remote.py:135
+#: ../src/gajim-remote.py:134
 msgid "message content. The account must be specified or \"\""
 msgstr "содержимое сообщения. Учетная запись должна быть указана или \"\""
 
-#: ../src/gajim-remote.py:140
-msgid ""
-"Sends new chat message to a contact in the roster. Both OpenPGP key and "
-"account are optional. If you want to set only 'account', without 'OpenPGP "
-"key', just set 'OpenPGP key' to ''."
-msgstr ""
-"Отправить новое сообщение контакту в ростере. Как ключ OpenPGP, так и "
-"учетная запись опциональны. Если вы хотите настроить лишь 'учетную запись', "
-"без 'ключа OpenPGP', просто установите 'ключ OpenPGP' в ''."
+#: ../src/gajim-remote.py:139
+msgid "Sends new chat message to a contact in the roster. Both OpenPGP key and account are optional. If you want to set only 'account', without 'OpenPGP key', just set 'OpenPGP key' to ''."
+msgstr "Отправить новое сообщение контакту в ростере. Как ключ OpenPGP, так и учетная запись опциональны. Если вы хотите настроить лишь 'учетную запись', без 'ключа OpenPGP', просто установите 'ключ OpenPGP' в ''."
 
-#: ../src/gajim-remote.py:144 ../src/gajim-remote.py:157
+#: ../src/gajim-remote.py:143
+#: ../src/gajim-remote.py:156
 msgid "JID of the contact that will receive the message"
 msgstr "JID контакта, который получит сообщение"
 
-#: ../src/gajim-remote.py:145 ../src/gajim-remote.py:159
-#: ../src/gajim-remote.py:170
+#: ../src/gajim-remote.py:144
+#: ../src/gajim-remote.py:158
+#: ../src/gajim-remote.py:169
 msgid "message contents"
 msgstr "содержимое сообщения"
 
-#: ../src/gajim-remote.py:146 ../src/gajim-remote.py:160
+#: ../src/gajim-remote.py:145
+#: ../src/gajim-remote.py:159
 msgid "pgp key"
 msgstr "PGP ключ"
 
-#: ../src/gajim-remote.py:146 ../src/gajim-remote.py:160
+#: ../src/gajim-remote.py:145
+#: ../src/gajim-remote.py:159
 msgid "if specified, the message will be encrypted using this public key"
-msgstr ""
-"если указано, сообщение будет зашифровано с использованием открытого ключа"
+msgstr "если указано, сообщение будет зашифровано с использованием открытого ключа"
 
-#: ../src/gajim-remote.py:148 ../src/gajim-remote.py:162
-#: ../src/gajim-remote.py:171
+#: ../src/gajim-remote.py:147
+#: ../src/gajim-remote.py:161
+#: ../src/gajim-remote.py:170
 msgid "if specified, the message will be sent using this account"
-msgstr ""
-"если указано, сообщение будет отправлено с использованием этой учетной записи"
+msgstr "если указано, сообщение будет отправлено с использованием этой учетной записи"
 
-#: ../src/gajim-remote.py:153
-msgid ""
-"Sends new single message to a contact in the roster. Both OpenPGP key and "
-"account are optional. If you want to set only 'account', without 'OpenPGP "
-"key', just set 'OpenPGP key' to ''."
-msgstr ""
-"Отправить новое сообщение контакту в ростере. Как ключ OpenPGP, так и "
-"учетная запись опциональны. Если вы хотите настроить лишь 'учетную запись', "
-"без 'ключа OpenPGP', просто установите 'ключ OpenPGP' в ''."
+#: ../src/gajim-remote.py:152
+msgid "Sends new single message to a contact in the roster. Both OpenPGP key and account are optional. If you want to set only 'account', without 'OpenPGP key', just set 'OpenPGP key' to ''."
+msgstr "Отправить новое сообщение контакту в ростере. Как ключ OpenPGP, так и учетная запись опциональны. Если вы хотите настроить лишь 'учетную запись', без 'ключа OpenPGP', просто установите 'ключ OpenPGP' в ''."
 
-#: ../src/gajim-remote.py:158
+#: ../src/gajim-remote.py:157
 msgid "subject"
 msgstr "тема"
 
-#: ../src/gajim-remote.py:158
+#: ../src/gajim-remote.py:157
 msgid "message subject"
 msgstr "тема сообщения"
 
-#: ../src/gajim-remote.py:167
+#: ../src/gajim-remote.py:166
 msgid "Sends new message to a groupchat you've joined."
 msgstr "Отправляет новые сообщения в комнату, к которой вы присоединились."
 
-#: ../src/gajim-remote.py:169
+#: ../src/gajim-remote.py:168
 msgid "JID of the room that will receive the message"
 msgstr "JID контакта, который получит сообщение"
 
-#: ../src/gajim-remote.py:176
+#: ../src/gajim-remote.py:175
 msgid "Gets detailed info on a contact"
 msgstr "Получает детальную информацию о контакте"
 
-#: ../src/gajim-remote.py:178 ../src/gajim-remote.py:191
-#: ../src/gajim-remote.py:221 ../src/gajim-remote.py:230
+#: ../src/gajim-remote.py:177
+#: ../src/gajim-remote.py:190
+#: ../src/gajim-remote.py:220
+#: ../src/gajim-remote.py:229
 msgid "JID of the contact"
 msgstr "JID контакта"
 
-#: ../src/gajim-remote.py:182
+#: ../src/gajim-remote.py:181
 msgid "Gets detailed info on a account"
 msgstr "Получает детальную информацию о учетной записи"
 
-#: ../src/gajim-remote.py:184
+#: ../src/gajim-remote.py:183
 msgid "Name of the account"
 msgstr "Имя учетной записи"
 
-#: ../src/gajim-remote.py:188
+#: ../src/gajim-remote.py:187
 msgid "Sends file to a contact"
 msgstr "Отправляет контакту файл"
 
-#: ../src/gajim-remote.py:190
+#: ../src/gajim-remote.py:189
 msgid "file"
 msgstr "файл"
 
-#: ../src/gajim-remote.py:190
+#: ../src/gajim-remote.py:189
 msgid "File path"
 msgstr "Путь до файла"
 
-#: ../src/gajim-remote.py:192
+#: ../src/gajim-remote.py:191
 msgid "if specified, file will be sent using this account"
-msgstr ""
-"если указано, файл будет отправлен с использованием этой учетной записи"
+msgstr "если указано, файл будет отправлен с использованием этой учетной записи"
 
-#: ../src/gajim-remote.py:197
+#: ../src/gajim-remote.py:196
 msgid "Lists all preferences and their values"
 msgstr "Показывает все параметры с их значениями"
 
-#: ../src/gajim-remote.py:201
+#: ../src/gajim-remote.py:200
 msgid "Sets value of 'key' to 'value'."
 msgstr "Присваивает 'ключу' в 'значение'"
 
-#: ../src/gajim-remote.py:203
+#: ../src/gajim-remote.py:202
 msgid "key=value"
 msgstr "ключ=значение"
 
-#: ../src/gajim-remote.py:203
+#: ../src/gajim-remote.py:202
 msgid "'key' is the name of the preference, 'value' is the value to set it to"
-msgstr ""
-"'ключ' это название параметра, а 'значение' это то, что ему присваивают"
+msgstr "'ключ' это название параметра, а 'значение' это то, что ему присваивают"
 
-#: ../src/gajim-remote.py:208
+#: ../src/gajim-remote.py:207
 msgid "Deletes a preference item"
 msgstr "Удаляет параметр"
 
-#: ../src/gajim-remote.py:210
+#: ../src/gajim-remote.py:209
 msgid "key"
 msgstr "ключ"
 
-#: ../src/gajim-remote.py:210
+#: ../src/gajim-remote.py:209
 msgid "name of the preference to be deleted"
 msgstr "имя параметра, который нужно удалить"
 
-#: ../src/gajim-remote.py:214
+#: ../src/gajim-remote.py:213
 msgid "Writes the current state of Gajim preferences to the .config file"
 msgstr "Сохраняет текущее состояние настроек Gajim в файл .config"
 
-#: ../src/gajim-remote.py:219
+#: ../src/gajim-remote.py:218
 msgid "Removes contact from roster"
 msgstr "Удаляет контакт из ростера"
 
-#: ../src/gajim-remote.py:228
+#: ../src/gajim-remote.py:227
 msgid "Adds contact to roster"
 msgstr "Добавляет контакт в ростер"
 
-#: ../src/gajim-remote.py:231
+#: ../src/gajim-remote.py:230
 msgid "Adds new contact to this account"
 msgstr "Добавляет новый контакт для данной учетной записи"
 
-#: ../src/gajim-remote.py:236
+#: ../src/gajim-remote.py:235
 msgid "Returns current status (the global one unless account is specified)"
-msgstr ""
-"Возвращает текущий статус (по умолчанию глобальный, если не указана учетная "
-"запись)"
+msgstr "Возвращает текущий статус (по умолчанию глобальный, если не указана учетная запись)"
 
-#: ../src/gajim-remote.py:243
-msgid ""
-"Returns current status message (the global one unless account is specified)"
-msgstr ""
-"Возвращает текущее сообщение о статусе (по умолчанию глобальное, если не "
-"указана учетная запись)"
+#: ../src/gajim-remote.py:242
+msgid "Returns current status message (the global one unless account is specified)"
+msgstr "Возвращает текущее сообщение о статусе (по умолчанию глобальное, если не указана учетная запись)"
 
-#: ../src/gajim-remote.py:250
+#: ../src/gajim-remote.py:249
 msgid "Returns number of unread messages"
 msgstr "Возвращает количество непрочитанных сообщений"
 
-#: ../src/gajim-remote.py:254
+#: ../src/gajim-remote.py:253
 msgid "Opens 'Start Chat' dialog"
 msgstr "Открыть диалог «Начать беседу»"
 
-#: ../src/gajim-remote.py:256
+#: ../src/gajim-remote.py:255
 msgid "Starts chat, using this account"
 msgstr "Начать беседу с этой учетной записи"
 
-#: ../src/gajim-remote.py:260
+#: ../src/gajim-remote.py:259
 msgid "Sends custom XML"
 msgstr "Отправляет произвольный XML"
 
-#: ../src/gajim-remote.py:262
+#: ../src/gajim-remote.py:261
 msgid "XML to send"
 msgstr "Отправляемый XML"
 
-#: ../src/gajim-remote.py:263
-msgid ""
-"Account in which the xml will be sent; if not specified, xml will be sent to "
-"all accounts"
-msgstr ""
-"Учётная запись, которой будет отправлен XML. Если не указано, xml будет "
-"послан всем контактам."
+#: ../src/gajim-remote.py:262
+msgid "Account in which the xml will be sent; if not specified, xml will be sent to all accounts"
+msgstr "Учётная запись, которой будет отправлен XML. Если не указано, xml будет послан всем контактам."
 
-#: ../src/gajim-remote.py:269
+#: ../src/gajim-remote.py:268
 msgid "Change the avatar"
 msgstr "Изменить аватар"
 
-#: ../src/gajim-remote.py:271
+#: ../src/gajim-remote.py:270
 msgid "Picture to use"
 msgstr "Использовать картинку"
 
-#: ../src/gajim-remote.py:272
-msgid ""
-"Account in which the avatar will be set; if not specified, the avatar will "
-"be set for all accounts"
-msgstr ""
-"Учётная запись, для которой будет назначен аватар. Если не указано, аватар "
-"будет назначен всем учетным записям."
+#: ../src/gajim-remote.py:271
+msgid "Account in which the avatar will be set; if not specified, the avatar will be set for all accounts"
+msgstr "Учётная запись, для которой будет назначен аватар. Если не указано, аватар будет назначен всем учетным записям."
 
-#: ../src/gajim-remote.py:278
+#: ../src/gajim-remote.py:277
 msgid "Handle a xmpp:/ uri"
 msgstr "Обработать ссылку формата «xmpp:/»"
 
-#: ../src/gajim-remote.py:280
-#, fuzzy
-msgid "?CLI:uri"
-msgstr "Неверный хост"
-
-#: ../src/gajim-remote.py:280
+#: ../src/gajim-remote.py:279
 msgid "URI to handle"
 msgstr "URI для обработки"
 
-#: ../src/gajim-remote.py:281
+#: ../src/gajim-remote.py:280
 msgid "Account in which you want to handle it"
 msgstr "Учетная запись, в которой вы хотите его использовать"
 
-#: ../src/gajim-remote.py:283
+#: ../src/gajim-remote.py:282
 msgid "Message content"
 msgstr "Cодержимое сообщения"
 
-#: ../src/gajim-remote.py:287
+#: ../src/gajim-remote.py:286
 msgid "Join a MUC room"
 msgstr "Присоединиться к комнате MUC"
 
-#: ../src/gajim-remote.py:289
-msgid "?CLI:room"
-msgstr "?CLI:комната"
-
-#: ../src/gajim-remote.py:289
+#: ../src/gajim-remote.py:288
 msgid "Room JID"
 msgstr "JID комнаты"
 
-#: ../src/gajim-remote.py:290
-msgid "?CLI:nick"
-msgstr "?CLI:ник"
+#: ../src/gajim-remote.py:289
+msgid "nick"
+msgstr "Ник"
 
-#: ../src/gajim-remote.py:290
+#: ../src/gajim-remote.py:289
 msgid "Nickname to use"
 msgstr "Используемый ник"
 
-#: ../src/gajim-remote.py:291
-msgid "?CLI:password"
-msgstr "?CLI:пароль"
+#: ../src/gajim-remote.py:290
+msgid "password"
+msgstr "Пароль:"
 
-#: ../src/gajim-remote.py:291
+#: ../src/gajim-remote.py:290
 msgid "Password to enter the room"
 msgstr "Пароль для входа в комнату"
 
-#: ../src/gajim-remote.py:292
+#: ../src/gajim-remote.py:291
 msgid "Account from which you want to enter the room"
 msgstr "Выберите учетную запись, с которой вы хотите войти в комнату"
 
-#: ../src/gajim-remote.py:297
+#: ../src/gajim-remote.py:296
 msgid "Check if Gajim is running"
 msgstr "Проверить, запущен ли Gajim"
 
-#: ../src/gajim-remote.py:301
+#: ../src/gajim-remote.py:300
 msgid "Shows or hides the ipython window"
 msgstr "Скрывает или показывает окно ipython"
 
-#: ../src/gajim-remote.py:328
+#: ../src/gajim-remote.py:327
 msgid "Missing argument \"contact_jid\""
 msgstr "Пропущен аргумент «JID контакта»"
 
-#: ../src/gajim-remote.py:350
+#: ../src/gajim-remote.py:349
 #, python-format
 msgid ""
 "'%s' is not in your roster.\n"
@@ -9336,15 +8876,15 @@ msgstr ""
 "'%s' не в вашем ростере.\n"
 "Укажите учетную запись для отправки сообщения."
 
-#: ../src/gajim-remote.py:353
+#: ../src/gajim-remote.py:352
 msgid "You have no active account"
 msgstr "У вас нет ни одной активной учетной записи"
 
-#: ../src/gajim-remote.py:406
+#: ../src/gajim-remote.py:405
 msgid "It seems Gajim is not running. So you can't use gajim-remote."
 msgstr "По-видимому, Gajim не запущен. Вы не можете использовать gajim-remote."
 
-#: ../src/gajim-remote.py:433
+#: ../src/gajim-remote.py:432
 #, python-format
 msgid ""
 "Usage: %(basename)s %(command)s %(arguments)s \n"
@@ -9353,29 +8893,25 @@ msgstr ""
 "Использование: %(basename)s %(command)s %(arguments)s \n"
 "\t %(help)s"
 
-#: ../src/gajim-remote.py:437
+#: ../src/gajim-remote.py:436
 msgid "Arguments:"
 msgstr "Аргументы:"
 
-#: ../src/gajim-remote.py:441
+#: ../src/gajim-remote.py:440
 #, python-format
 msgid "%s not found"
 msgstr "%s не найден"
 
-#: ../src/gajim-remote.py:447
+#: ../src/gajim-remote.py:446
 #, python-format
 msgid ""
-"Usage:\n"
-"  %s command [arguments]\n"
-"\n"
+"Usage: %s command [arguments]\n"
 "Command is one of:\n"
 msgstr ""
-"Использование:\n"
-"  %s команда [аргумента]\n"
-"\n"
+"Использование: %s команда [аргумента]\n"
 "Команда одна из:\n"
 
-#: ../src/gajim-remote.py:517
+#: ../src/gajim-remote.py:515
 #, python-format
 msgid ""
 "Too many arguments. \n"
@@ -9384,7 +8920,7 @@ msgstr ""
 "Много аргументов. \n"
 "Наберите «%(basename)s help %(command)s» для справки"
 
-#: ../src/gajim-remote.py:522
+#: ../src/gajim-remote.py:520
 #, python-format
 msgid ""
 "Argument \"%(arg)s\" is not specified. \n"
@@ -9393,11 +8929,11 @@ msgstr ""
 "Аргумент «%(arg)s» не задан. \n"
 "Наберите «%(basename)s help %(command)s» для справки"
 
-#: ../src/gajim-remote.py:541
+#: ../src/gajim-remote.py:539
 msgid "No uri given"
 msgstr "Не указан идентификатор ресурса"
 
-#: ../src/gajim-remote.py:543
+#: ../src/gajim-remote.py:541
 msgid "Wrong uri"
 msgstr "Неверный хост"
 
@@ -9423,213 +8959,217 @@ msgid "You cannot delete your current theme"
 msgstr "Вы не можете удалить вашу текущую тему"
 
 #: ../src/gajim_themes_window.py:187
-msgid "Please first choose another theme as your current theme."
+msgid "Please first choose another for your current theme."
 msgstr "Выберите сначала другую тему."
 
-#: ../src/groupchat_control.py:181 ../src/groupchat_control.py:1645
+#: ../src/groupchat_control.py:179
+#: ../src/groupchat_control.py:1569
 #, python-format
 msgid "%(nick)s is now known as %(new_nick)s"
 msgstr "%(nick)s теперь известен как %(new_nick)s"
 
-#: ../src/groupchat_control.py:236
+#: ../src/groupchat_control.py:234
 msgid "Sending private message failed"
 msgstr "Не удалось отправить личное сообщение"
 
 #. in second %s code replaces with nickname
-#: ../src/groupchat_control.py:238
+#: ../src/groupchat_control.py:236
 #, python-format
 msgid "You are no longer in group chat \"%(room)s\" or \"%(nick)s\" has left."
 msgstr "Вы больше не находитесь в комнате «%(room)s» или «%(nick)s» вышел."
 
-#: ../src/groupchat_control.py:584
+#: ../src/groupchat_control.py:565
 msgid "Insert Nickname"
 msgstr "Вставить ник"
 
-#: ../src/groupchat_control.py:767
+#: ../src/groupchat_control.py:748
 msgid "Conversation with "
 msgstr "Беседа с "
 
-#: ../src/groupchat_control.py:769
+#: ../src/groupchat_control.py:750
 msgid "Continued conversation"
 msgstr "Возобновлённая беседа"
 
-#: ../src/groupchat_control.py:1268
+#: ../src/groupchat_control.py:1227
 #, python-format
 msgid "%(nick)s has set the subject to %(subject)s"
 msgstr "%(nick)s установил(а) тему: %(subject)s"
 
 #. Can be a presence (see chg_contact_status in groupchat_control.py)
-#: ../src/groupchat_control.py:1286 ../src/groupchat_control.py:1587
+#: ../src/groupchat_control.py:1245
+#: ../src/groupchat_control.py:1511
 msgid "Any occupant is allowed to see your full JID"
 msgstr "Любой участник может увидеть ваш настоящий JID"
 
-#: ../src/groupchat_control.py:1289
-msgid "Room now shows unavailable members"
-msgstr "Теперь в комнате отображаются недоступные участники"
+#: ../src/groupchat_control.py:1248
+msgid "Room now shows unavailable member"
+msgstr "Теперь в комнате отображается недоступный участник"
 
-#: ../src/groupchat_control.py:1291
-msgid "Room now does not show unavailable members"
+#: ../src/groupchat_control.py:1250
+msgid "room now does not show unavailable members"
 msgstr "теперь в комнате не отображаются недоступные участники"
 
-#: ../src/groupchat_control.py:1293
+#: ../src/groupchat_control.py:1252
 msgid "A non-privacy-related room configuration change has occurred"
-msgstr ""
-"Произошло изменение настроек комнаты, не относящееся к настройкам приватности"
+msgstr "Произошло изменение настроек комнаты, не относящееся к настройкам приватности"
 
 #. Can be a presence (see chg_contact_status in groupchat_control.py)
-#: ../src/groupchat_control.py:1297
+#: ../src/groupchat_control.py:1256
 msgid "Room logging is now enabled"
 msgstr "Запись логов конференции включена"
 
-#: ../src/groupchat_control.py:1299
+#: ../src/groupchat_control.py:1258
 msgid "Room logging is now disabled"
 msgstr "Запись логов конференции выключена"
 
-#: ../src/groupchat_control.py:1301
+#: ../src/groupchat_control.py:1260
 msgid "Room is now non-anonymous"
 msgstr "Конференция не анонимна"
 
-#: ../src/groupchat_control.py:1304
+#: ../src/groupchat_control.py:1263
 msgid "Room is now semi-anonymous"
 msgstr "Конференция частично анонимна"
 
-#: ../src/groupchat_control.py:1307
+#: ../src/groupchat_control.py:1266
 msgid "Room is now fully-anonymous"
 msgstr "Конференция полностью анонимна"
 
-#: ../src/groupchat_control.py:1580 ../src/groupchat_control.py:2241
-#: ../src/gui_interface.py:605 ../src/roster_window.py:3325
-#, python-format
-msgid "%(jid)s has been invited in this room"
-msgstr "%(jid)s был приглашен в комнату"
-
 #. Can be a message (see handle_event_gc_config_change in
 #. gajim.py)
-#: ../src/groupchat_control.py:1592
+#: ../src/groupchat_control.py:1516
 msgid "Room logging is enabled"
 msgstr "Запись логов конференции включена"
 
-#: ../src/groupchat_control.py:1594
+#: ../src/groupchat_control.py:1518
 msgid "A new room has been created"
 msgstr "Новая комната была создана"
 
-#: ../src/groupchat_control.py:1597
+#: ../src/groupchat_control.py:1521
 msgid "The server has assigned or modified your roomnick"
 msgstr "Сервер присвоил или изменил ваш ник в комнате"
 
 #. do not print 'kicked by None'
-#: ../src/groupchat_control.py:1603
+#: ../src/groupchat_control.py:1527
 #, python-format
 msgid "%(nick)s has been kicked: %(reason)s"
 msgstr "%(nick)s выгнали из комнаты: %(reason)s"
 
-#: ../src/groupchat_control.py:1606
+#: ../src/groupchat_control.py:1530
 #, python-format
 msgid "%(nick)s has been kicked by %(who)s: %(reason)s"
 msgstr "%(who)s выгнал %(nick)s из комнаты: %(reason)s"
 
 #. do not print 'banned by None'
-#: ../src/groupchat_control.py:1615
+#: ../src/groupchat_control.py:1539
 #, python-format
 msgid "%(nick)s has been banned: %(reason)s"
 msgstr "%(nick)s запретили заходить в комнату: %(reason)s"
 
-#: ../src/groupchat_control.py:1618
+#: ../src/groupchat_control.py:1542
 #, python-format
 msgid "%(nick)s has been banned by %(who)s: %(reason)s"
 msgstr "%(who)s запретил(а) %(nick)s заходить в комнату: %(reason)s"
 
-#: ../src/groupchat_control.py:1629 ../src/groupchat_control.py:1745
+#: ../src/groupchat_control.py:1553
+#: ../src/groupchat_control.py:1657
 #, python-format
 msgid "You are now known as %s"
 msgstr "Вы теперь известны как %s"
 
-#: ../src/groupchat_control.py:1699 ../src/groupchat_control.py:1704
-#: ../src/groupchat_control.py:1710
+#: ../src/groupchat_control.py:1611
+#: ../src/groupchat_control.py:1616
+#: ../src/groupchat_control.py:1622
 #, python-format
 msgid "%(nick)s has been removed from the room (%(reason)s)"
 msgstr "%(nick)s выгнали из комнаты (%(reason)s)"
 
-#: ../src/groupchat_control.py:1701
+#: ../src/groupchat_control.py:1613
 msgid "affiliation changed"
 msgstr "ранг изменен"
 
-#: ../src/groupchat_control.py:1706
+#: ../src/groupchat_control.py:1618
 msgid "room configuration changed to members-only"
 msgstr "настройки комнаты были изменены на 'только для участников'"
 
-#: ../src/groupchat_control.py:1712
+#: ../src/groupchat_control.py:1624
 msgid "system shutdown"
 msgstr "выключение сервера"
 
-#: ../src/groupchat_control.py:1795
+#: ../src/groupchat_control.py:1707
 #, python-format
 msgid "** Affiliation of %(nick)s has been set to %(affiliation)s by %(actor)s"
 msgstr "** %(actor)s присвоил %(nick)s ранг %(affiliation)s"
 
-#: ../src/groupchat_control.py:1799
+#: ../src/groupchat_control.py:1711
 #, python-format
 msgid "** Affiliation of %(nick)s has been set to %(affiliation)s"
 msgstr "** Ранг %(nick)s был изменен на %(affiliation)s"
 
-#: ../src/groupchat_control.py:1814
+#: ../src/groupchat_control.py:1726
 #, python-format
 msgid "** Role of %(nick)s has been set to %(role)s by %(actor)s"
 msgstr "** %(actor)s присвоил %(nick)s обязанности %(role)s"
 
-#: ../src/groupchat_control.py:1818
+#: ../src/groupchat_control.py:1730
 #, python-format
 msgid "** Role of %(nick)s has been set to %(role)s"
 msgstr "** Обязанности %(nick)s были изменены на %(role)s"
 
-#: ../src/groupchat_control.py:1848
+#: ../src/groupchat_control.py:1760
 #, python-format
 msgid "%s has left"
 msgstr "%s ушел"
 
-#: ../src/groupchat_control.py:1853
+#: ../src/groupchat_control.py:1765
 #, python-format
 msgid "%s has joined the group chat"
 msgstr "%s зашёл в комнату"
 
-#: ../src/groupchat_control.py:2124
+#: ../src/groupchat_control.py:2020
 #, python-format
 msgid "Are you sure you want to leave group chat \"%s\"?"
 msgstr "Вы точно хотите выйти из комнаты «%s»?"
 
-#: ../src/groupchat_control.py:2126
-msgid ""
-"If you close this window, you will be disconnected from this group chat."
+#: ../src/groupchat_control.py:2022
+msgid "If you close this window, you will be disconnected from this group chat."
 msgstr "Если вы закроете это окно, то вы выйдете из этой комнаты."
 
-#: ../src/groupchat_control.py:2165
+#: ../src/groupchat_control.py:2026
+#: ../src/gui_interface.py:704
+#: ../src/gui_interface.py:1411
+#: ../src/gui_interface.py:1451
+#: ../src/gui_interface.py:1492
+#: ../src/message_window.py:222
+#: ../src/roster_window.py:3064
+#: ../src/roster_window.py:3799
+#: ../src/roster_window.py:4612
+msgid "_Do not ask me again"
+msgstr "Не _спрашивать меня снова"
+
+#: ../src/groupchat_control.py:2060
 msgid "Changing Subject"
 msgstr "Смена темы"
 
-#: ../src/groupchat_control.py:2166
+#: ../src/groupchat_control.py:2061
 msgid "Please specify the new subject:"
 msgstr "Введите новую тему:"
 
-#: ../src/groupchat_control.py:2173
+#: ../src/groupchat_control.py:2068
 msgid "Changing Nickname"
 msgstr "Смена ника"
 
-#: ../src/groupchat_control.py:2174
+#: ../src/groupchat_control.py:2069
 msgid "Please specify the new nickname you want to use:"
 msgstr "Введите новый ник, который вы хотите использовать:"
 
-#: ../src/groupchat_control.py:2199
-msgid "The group chat Jabber ID has not allowed characters."
-msgstr "В Jabber ID комнаты или сервера содержатся недопустимые символы."
-
 # смотря где вылазит меседж - нужно присмотреться
 #. Ask for a reason
-#: ../src/groupchat_control.py:2205
+#: ../src/groupchat_control.py:2100
 #, python-format
 msgid "Destroying %s"
 msgstr "Удаление %s"
 
-#: ../src/groupchat_control.py:2206
+#: ../src/groupchat_control.py:2101
 msgid ""
 "You are going to definitively destroy this room.\n"
 "You may specify a reason below:"
@@ -9637,22 +9177,30 @@ msgstr ""
 "Вы собираетесь полностью уничтожить эту комнату.\n"
 "Можете указать причину:"
 
-#: ../src/groupchat_control.py:2208
+#: ../src/groupchat_control.py:2103
 msgid "You may also enter an alternate venue:"
 msgstr "Можете указать альтернативную комнату:"
 
+#: ../src/groupchat_control.py:2135
+#: ../src/gui_interface.py:604
+#: ../src/roster_window.py:3390
+#, python-format
+msgid "%(jid)s has been invited in this room"
+msgstr "%(jid)s был приглашен в комнату"
+
 #. ask for reason
-#: ../src/groupchat_control.py:2408
+#: ../src/groupchat_control.py:2300
 #, python-format
 msgid "Kicking %s"
 msgstr "Выгоняем %s"
 
-#: ../src/groupchat_control.py:2409 ../src/groupchat_control.py:2742
+#: ../src/groupchat_control.py:2301
+#: ../src/groupchat_control.py:2633
 msgid "You may specify a reason below:"
 msgstr "Вы можете указать причину ниже:"
 
 #. ask for reason
-#: ../src/groupchat_control.py:2741
+#: ../src/groupchat_control.py:2632
 #, python-format
 msgid "Banning %s"
 msgstr "Забанить %s"
@@ -9662,12 +9210,8 @@ msgid "A programming error has been detected"
 msgstr "Обнаружена ошибка в программе"
 
 #: ../src/gtkexcepthook.py:47
-msgid ""
-"It probably is not fatal, but should be reported to the developers "
-"nonetheless."
-msgstr ""
-"Возможно это не так страшно, но все равно стоит сообщить об этом "
-"разработчикам."
+msgid "It probably is not fatal, but should be reported to the developers nonetheless."
+msgstr "Возможно это не так страшно, но все равно стоит сообщить об этом разработчикам."
 
 #: ../src/gtkexcepthook.py:54
 msgid "_Report Bug"
@@ -9703,8 +9247,7 @@ msgstr "Вы хотите сделать Gajim основным jabber-клие
 
 #: ../src/gtkgui_helpers.py:768
 msgid "Always check to see if Gajim is the default Jabber client on startup"
-msgstr ""
-"Всегда проверять при запуске является ли Gajim основным jabber-клиентом"
+msgstr "Всегда проверять при запуске является ли Gajim основным jabber-клиентом"
 
 #: ../src/gtkgui_helpers.py:835
 msgid "Extension not supported"
@@ -9713,9 +9256,7 @@ msgstr "Расширение не поддерживается"
 #: ../src/gtkgui_helpers.py:836
 #, python-format
 msgid "Image cannot be saved in %(type)s format. Save as %(new_filename)s?"
-msgstr ""
-"Изображение нельзя сохранить в формате %(type)s. Сохранить как "
-"%(new_filename)s?"
+msgstr "Изображение нельзя сохранить в формате %(type)s. Сохранить как %(new_filename)s?"
 
 #: ../src/gtkgui_helpers.py:872
 msgid "Save Image as..."
@@ -9723,105 +9264,108 @@ msgstr "Сохранить изображение как..."
 
 #. we are banned
 #. group chat does not exist
-#: ../src/gui_interface.py:134 ../src/gui_interface.py:298
-#: ../src/gui_interface.py:307 ../src/gui_interface.py:313
-#: ../src/gui_interface.py:316 ../src/gui_interface.py:319
-#: ../src/gui_interface.py:324
+#: ../src/gui_interface.py:133
+#: ../src/gui_interface.py:297
+#: ../src/gui_interface.py:306
+#: ../src/gui_interface.py:312
+#: ../src/gui_interface.py:315
+#: ../src/gui_interface.py:318
+#: ../src/gui_interface.py:323
 msgid "Unable to join group chat"
 msgstr "Не получается войти в комнату"
 
-#: ../src/gui_interface.py:135
+#: ../src/gui_interface.py:134
 #, python-format
 msgid ""
-"Your desired nickname in group chat %s is in use or registered by another "
-"occupant.\n"
+"Your desired nickname in group chat %s is in use or registered by another occupant.\n"
 "Please specify another nickname below:"
 msgstr ""
-"Тот ник, что вы ввели в комнате %s уже используется или зарегистрирован "
-"другим пользователем.\n"
+"Тот ник, что вы ввели в комнате %s уже используется или зарегистрирован другим пользователем.\n"
 "Укажите другой ник:"
 
-#: ../src/gui_interface.py:138
+#: ../src/gui_interface.py:137
 msgid "Always use this nickname when there is a conflict"
 msgstr "Всегда использовать этот ник в случае конфликта"
 
-#: ../src/gui_interface.py:155
+#: ../src/gui_interface.py:154
 msgid "Do you accept this request?"
 msgstr "Вы принимаете этот запрос?"
 
-#: ../src/gui_interface.py:157
+#: ../src/gui_interface.py:156
 #, python-format
 msgid "Do you accept this request on account %s?"
 msgstr "Вы принимаете запрос %s?"
 
-#: ../src/gui_interface.py:160
+#: ../src/gui_interface.py:159
 #, python-format
 msgid "HTTP (%(method)s) Authorization for %(url)s (id: %(id)s)"
 msgstr "HTTP (%(method)s) Авторизация для %(url)s (id: %(id)s)"
 
-#: ../src/gui_interface.py:203 ../src/notify.py:282
+#: ../src/gui_interface.py:202
+#: ../src/notify.py:282
 msgid "Connection Failed"
 msgstr "Соединение разорвалось"
 
-#: ../src/gui_interface.py:287
+#: ../src/gui_interface.py:286
 #, python-format
 msgid "A Password is required to join the room %s. Please type it."
 msgstr "Чтобы войти в комнату %s, нужен пароль."
 
-#: ../src/gui_interface.py:299
+#: ../src/gui_interface.py:298
 #, python-format
 msgid "Maximum number of users for %s  has been reached"
 msgstr "Было достигнуто максимальное количество пользователей %s "
 
-#: ../src/gui_interface.py:308
+#: ../src/gui_interface.py:307
 #, python-format
 msgid "You are banned from group chat %s ."
 msgstr "Вам запрещено входить в комнату %s ."
 
-#: ../src/gui_interface.py:314
+#: ../src/gui_interface.py:313
 #, python-format
 msgid "Group chat %s  does not exist."
 msgstr "Комнаты %s  не существует."
 
-#: ../src/gui_interface.py:317
+#: ../src/gui_interface.py:316
 msgid "Group chat creation is restricted."
 msgstr "Создание комнат запрещено."
 
-#: ../src/gui_interface.py:320
+#: ../src/gui_interface.py:319
 #, python-format
 msgid "Your registered nickname must be used in group chat %s ."
-msgstr ""
-"Необходимо использовать ваш зарегистрированный ник в комнате %s ."
+msgstr "Необходимо использовать ваш зарегистрированный ник в комнате %s ."
 
-#: ../src/gui_interface.py:325
+#: ../src/gui_interface.py:324
 #, python-format
 msgid "You are not in the members list in groupchat %s."
 msgstr "Вас нет в списке членов комнаты %s."
 
-#: ../src/gui_interface.py:418 ../src/gui_interface.py:422
+#: ../src/gui_interface.py:417
+#: ../src/gui_interface.py:421
 #, python-format
 msgid "Error %(code)s: %(msg)s"
 msgstr "Ошибка %(code)s: %(msg)s"
 
-#: ../src/gui_interface.py:474 ../src/notify.py:284
+#: ../src/gui_interface.py:473
+#: ../src/notify.py:284
 msgid "Subscription request"
 msgstr "Запрос подписки"
 
-#: ../src/gui_interface.py:499
+#: ../src/gui_interface.py:498
 msgid "Authorization accepted"
 msgstr "Авторизация принята"
 
-#: ../src/gui_interface.py:500
+#: ../src/gui_interface.py:499
 #, python-format
 msgid "The contact \"%s\" has authorized you to see his or her status."
 msgstr "Контакт «%s» авторизовал вас, теперь вы можете видеть его статус."
 
-#: ../src/gui_interface.py:508
+#: ../src/gui_interface.py:507
 #, python-format
 msgid "Contact \"%s\" removed subscription from you"
 msgstr "Контакт «%s» отозвал подписку с вами"
 
-#: ../src/gui_interface.py:509
+#: ../src/gui_interface.py:508
 msgid ""
 "You will always see him or her as offline.\n"
 "Do you want to remove him or her from your contact list?"
@@ -9829,92 +9373,79 @@ msgstr ""
 "Вы всегда будете видеть его или её как отключенными.\n"
 "Удалить его или её из контакт-листа?"
 
-#: ../src/gui_interface.py:530 ../src/notify.py:286
+#: ../src/gui_interface.py:529
+#: ../src/notify.py:286
 msgid "Unsubscribed"
 msgstr "От подписки отказался"
 
-#: ../src/gui_interface.py:541
+#: ../src/gui_interface.py:540
 #, python-format
 msgid "Contact with \"%s\" cannot be established"
 msgstr "Связь с «%s» не может быть установлена"
 
-#: ../src/gui_interface.py:625
+#: ../src/gui_interface.py:624
 #, python-format
 msgid "%(jid)s declined the invitation: %(reason)s"
 msgstr ""
 
-#: ../src/gui_interface.py:629
-#, fuzzy, python-format
+#: ../src/gui_interface.py:628
+#, python-format
 msgid "%(jid)s declined the invitation"
-msgstr "Принять приглашение в чат?"
-
-#: ../src/gui_interface.py:658
-msgid ""
-"You configured Gajim to use OpenPGP agent, but there is no OpenPGP agent "
-"running or it returned a wrong passphrase.\n"
 msgstr ""
-"Gajim настроен на использование OpenPGP агента, но OpenPGP агент не запущен "
-"или он возвратил неверный пароль.\n"
 
-#: ../src/gui_interface.py:661 ../src/gui_interface.py:669
+#: ../src/gui_interface.py:657
+msgid "You configured Gajim to use GPG agent, but there is no GPG agent running or it returned a wrong passphrase.\n"
+msgstr "Gajim настроен на использование GPG агента, но GPG агент не запущен или он возвратил неверный пароль.\n"
+
+#: ../src/gui_interface.py:659
+#: ../src/gui_interface.py:667
 msgid "You are currently connected without your OpenPGP key."
 msgstr "Вы сейчас соединены без ключа OpenPGP."
 
-#: ../src/gui_interface.py:663
+#: ../src/gui_interface.py:661
 msgid "Your passphrase is incorrect"
 msgstr "Ваша парольная фраза неверна"
 
-#: ../src/gui_interface.py:668
-msgid "OpenPGP Passphrase Incorrect"
-msgstr "Парольная фраза OpenPGP неверна"
+#: ../src/gui_interface.py:666
+msgid "OpenGPG Passphrase Incorrect"
+msgstr "Парольная фраза OpenGPG неверна"
 
-#: ../src/gui_interface.py:681
+#: ../src/gui_interface.py:679
 #, fuzzy
 msgid "Certificate Passphrase Required"
-msgstr "Сервер требует сертификат TLS"
+msgstr "Сертификат просрочен"
 
-#: ../src/gui_interface.py:682
-#, python-format
+#: ../src/gui_interface.py:680
+#, fuzzy, python-format
 msgid "Enter the passphrase for the certificate for account %s"
-msgstr "Введите пароль для сертификата учетной записи %s"
+msgstr "Введите пароль для ключа %(keyid)s (аккаунт %(account)s)."
 
-#: ../src/gui_interface.py:704
-msgid "OpenPGP key not trusted"
-msgstr "Ключ OpenPGP не является доверенным"
+#: ../src/gui_interface.py:702
+msgid "GPG key not trusted"
+msgstr "Ключ GPG не является доверенным"
 
-#: ../src/gui_interface.py:704
-msgid ""
-"The OpenPGP key used to encrypt this chat is not trusted. Do you really want "
-"to encrypt this message?"
-msgstr ""
-"Ключ OpenPGP используемый для шифрования не является доверенным. Вы "
-"действительно хотите зашифровать эти сообщения?"
+#: ../src/gui_interface.py:702
+msgid "The GPG key used to encrypt this chat is not trusted. Do you really want to encrypt this message?"
+msgstr "Ключ GPG используемый для шифрования не является доверенным. Вы действительно хотите зашифровать эти сообщения?"
 
-#: ../src/gui_interface.py:717
-msgid ""
-"Gnome Keyring is installed but not correctly started (environment variable "
-"probably not correctly set)"
-msgstr ""
-"Gnome Keyring установлен, но некорректно запущен (возможно, неверно "
-"установлена переменная среды)"
+#: ../src/gui_interface.py:715
+msgid "Gnome Keyring is installed but not correctly started (environment variable probably not correctly set)"
+msgstr "Gnome Keyring установлен, но некорректно запущен (возможно, неверно установлена переменная среды)"
 
-#: ../src/gui_interface.py:755
-msgid ""
-"Please copy / paste the refresh token from the website that has just been "
-"opened."
+#: ../src/gui_interface.py:753
+msgid "Please copy / paste the refresh token from the website that has just been opened."
 msgstr ""
 
-#: ../src/gui_interface.py:758
-#, fuzzy
+#: ../src/gui_interface.py:756
 msgid "Oauth2 Credentials"
-msgstr "Сетевые учётные сведения"
+msgstr ""
 
-#: ../src/gui_interface.py:856
+#: ../src/gui_interface.py:846
 #, python-format
 msgid "New mail on %(gmail_mail_address)s"
 msgstr "Новое письмо на %(gmail_mail_address)s"
 
-#: ../src/gui_interface.py:858
+#: ../src/gui_interface.py:848
 #, python-format
 msgid "You have %d new mail conversation"
 msgid_plural "You have %d new mail conversations"
@@ -9922,7 +9453,7 @@ msgstr[0] "У вас есть %d непрочитанное письмо"
 msgstr[1] "У вас есть %d непрочитанных письма"
 msgstr[2] "У вас есть %d непрочитанных писем"
 
-#: ../src/gui_interface.py:871
+#: ../src/gui_interface.py:861
 #, python-format
 msgid ""
 "\n"
@@ -9937,331 +9468,326 @@ msgstr ""
 "Тема: %(subject)s\n"
 "%(snippet)s"
 
-#: ../src/gui_interface.py:941
+#: ../src/gui_interface.py:931
 #, python-format
 msgid "%s wants to send you a file."
 msgstr "%s хочет отправить вам файл."
 
-#: ../src/gui_interface.py:1038
+#: ../src/gui_interface.py:1028
+#, fuzzy
 msgid "File Transfer Failed"
-msgstr "Не удалось произвести передачу файлов"
+msgstr "Передача файлов заверешна"
 
-#: ../src/gui_interface.py:1059
+#: ../src/gui_interface.py:1049
 #, python-format
 msgid "You successfully received %(filename)s from %(name)s."
 msgstr "Успешно получен файл %(filename)s от %(name)s."
 
-#: ../src/gui_interface.py:1063
+#: ../src/gui_interface.py:1053
 #, python-format
 msgid "File transfer of %(filename)s from %(name)s stopped."
 msgstr "Передача файла %(filename)s от %(name)s приостановлена."
 
 #. ft hash error
-#: ../src/gui_interface.py:1067
-#, python-format
+#: ../src/gui_interface.py:1057
+#, fuzzy, python-format
 msgid "File transfer of %(filename)s from %(name)s failed."
-msgstr "Передача файла %(filename)s от %(name)s не удалась."
+msgstr "Передача файла %(filename)s от %(name)s приостановлена."
 
-#: ../src/gui_interface.py:1080
+#: ../src/gui_interface.py:1070
 #, python-format
 msgid "You successfully sent %(filename)s to %(name)s."
 msgstr "%(name)s успешно получил(а) отправленный вами файл %(filename)s."
 
-#: ../src/gui_interface.py:1084
+#: ../src/gui_interface.py:1074
 #, python-format
 msgid "File transfer of %(filename)s to %(name)s stopped."
 msgstr "Передача файла %(filename)s к %(name)s приостановлена."
 
 #. ft hash error
-#: ../src/gui_interface.py:1088
-#, python-format
+#: ../src/gui_interface.py:1078
+#, fuzzy, python-format
 msgid "File transfer of %(filename)s to %(name)s failed."
-msgstr "Передача файла %(filename)s к %(name)s не удалась."
+msgstr "Передача файла %(filename)s к %(name)s приостановлена."
 
-#: ../src/gui_interface.py:1163
+#: ../src/gui_interface.py:1153
 msgid "Unable to decrypt message"
 msgstr "Сообщение не удалось расшифровать"
 
-#: ../src/gui_interface.py:1175
+#: ../src/gui_interface.py:1165
 msgid "Username Conflict"
 msgstr "Такое имя уже есть"
 
-#: ../src/gui_interface.py:1176
+#: ../src/gui_interface.py:1166
 msgid "Please type a new username for your local account"
 msgstr "Введите новое имя пользователя для локальной учетной записи"
 
-#: ../src/gui_interface.py:1191
+#: ../src/gui_interface.py:1181
 msgid "Resource Conflict"
 msgstr "Такое имя уже есть"
 
-#: ../src/gui_interface.py:1192
-msgid ""
-"You are already connected to this account with the same resource. Please "
-"type a new one"
-msgstr ""
-"Вы уже подсоединены к этой учетной записи с таким же ресурсом. Введите "
-"другой ресурс"
+#: ../src/gui_interface.py:1182
+msgid "You are already connected to this account with the same resource. Please type a new one"
+msgstr "Вы уже подсоединены к этой учетной записи с таким же ресурсом. Введите другой ресурс"
 
 #. TODO: we should use another pixmap ;-)
-#: ../src/gui_interface.py:1247
+#: ../src/gui_interface.py:1237
 #, python-format
 msgid "%s wants to start a voice chat."
 msgstr "%s хочет начать видео сеанс."
 
-#: ../src/gui_interface.py:1250
+#: ../src/gui_interface.py:1240
 msgid "Voice Chat Request"
 msgstr "Запрос аудио сеанса"
 
-#: ../src/gui_interface.py:1337
+#: ../src/gui_interface.py:1327
 msgid "Error verifying SSL certificate"
 msgstr "Ошибка при проверке SSL сертификата"
 
-#: ../src/gui_interface.py:1338
+#: ../src/gui_interface.py:1328
 #, python-format
 msgid ""
-"There was an error verifying the SSL certificate of your jabber server: "
-"%(error)s\n"
+"There was an error verifying the SSL certificate of your jabber server: %(error)s\n"
 "Do you still want to connect to this server?"
 msgstr ""
-"Произошла ошибка при проверке сертификата SSL вашего jabber сервера: "
-"%(error)s\n"
+"Произошла ошибка при проверке сертификата SSL вашего jabber сервера: %(error)s\n"
 "Вы всё ещё хотите подключиться к этому серверу?"
 
-#: ../src/gui_interface.py:1347
+#: ../src/gui_interface.py:1337
 msgid "Ignore this error for this certificate."
 msgstr "Игнорировать эту ошибку для данного сертификата."
 
-#: ../src/gui_interface.py:1372
+#: ../src/gui_interface.py:1362
 msgid "SSL certificate error"
 msgstr "Ошибка SSL сертификата"
 
-#: ../src/gui_interface.py:1373
+#: ../src/gui_interface.py:1363
 #, python-format
 msgid ""
-"It seems the SSL certificate of account %(account)s has changed or your "
-"connection is being hacked.\n"
+"It seems the SSL certificate of account %(account)s has changed or your connection is being hacked.\n"
 "Old fingerprint: %(old)s\n"
 "New fingerprint: %(new)s\n"
 "\n"
 "Do you still want to connect and update the fingerprint of the certificate?"
 msgstr ""
-"По видимому, сертификат SSL учетной записи %(account)s изменился или ваше "
-"соединение было взломано.\n"
+"По видимому, сертификат SSL учетной записи %(account)s изменился или ваше соединение было взломано.\n"
 "Старый отпечаток: %(old)s\n"
 "Новый отпечаток: %(new)s\n"
 "Вы всё ещё хотите соединиться и обновить отпечаток сертификата?"
 
-#: ../src/gui_interface.py:1445
-msgid ""
-"You are about to send your password on an insecure connection. You should "
-"install PyOpenSSL to prevent that. Are you sure you want to do that?"
-msgstr ""
-"Вы хотите отправить пароль через небезопасное соединение. Вы уверены? "
-"(Установите PyOpenSSL, чтобы этого не происходило.)"
+#: ../src/gui_interface.py:1402
+#: ../src/gui_interface.py:1446
+#: ../src/gui_interface.py:1488
+msgid "Insecure connection"
+msgstr "Небезопасное соединение"
 
-#: ../src/gui_interface.py:1487
+#: ../src/gui_interface.py:1403
+#, python-format
 msgid ""
-"You are about to send your password unencrypted on an insecure connection. "
+"You are about to connect to the account %(account)s (%(server)s) with an insecure connection. This means all your conversations will be exchanged unencrypted. This type of connection is really discouraged.\n"
 "Are you sure you want to do that?"
+msgstr ""
+"Вы хотите подключить учетную запись %(account)s (%(server)s) через незащищенное соединение. Вся ваша переписка не будет зашифрована. Этот тип подключения не рекомендуется.\n"
+"Вы действительно хотите это сделать?"
+
+#: ../src/gui_interface.py:1409
+#: ../src/gui_interface.py:1450
+#: ../src/gui_interface.py:1491
+msgid "Yes, I really want to connect insecurely"
+msgstr "Да, я действительно хочу соединиться небезопасно"
+
+#: ../src/gui_interface.py:1410
+msgid "Gajim will NOT connect unless you check this box"
+msgstr ""
+
+#: ../src/gui_interface.py:1447
+msgid "You are about to send your password on an insecure connection. You should install PyOpenSSL to prevent that. Are you sure you want to do that?"
+msgstr "Вы хотите отправить пароль через небезопасное соединение. Вы уверены? (Установите PyOpenSSL, чтобы этого не происходило.)"
+
+#: ../src/gui_interface.py:1489
+msgid "You are about to send your password unencrypted on an insecure connection. Are you sure you want to do that?"
 msgstr "Вы хотите отправить пароль через небезопасное соединение. Вы уверены?"
 
 #. theme doesn't exist, disable emoticons
-#: ../src/gui_interface.py:1993 ../src/gui_interface.py:2016
+#: ../src/gui_interface.py:1995
+#: ../src/gui_interface.py:2018
 msgid "Emoticons disabled"
 msgstr "Смайлики выключены"
 
-#: ../src/gui_interface.py:1994
-msgid ""
-"Your configured emoticons theme has not been found, so emoticons have been "
-"disabled."
+#: ../src/gui_interface.py:1996
+msgid "Your configured emoticons theme has not been found, so emoticons have been disabled."
 msgstr "Тема смайликов не найдена, они будут отключены."
 
-#: ../src/gui_interface.py:2017
-msgid ""
-"Your configured emoticons theme cannot been loaded. You maybe need to update "
-"the format of emoticons.py file. See http://trac.gajim.org/wiki/Emoticons "
-"for more details."
-msgstr ""
-"Смайлики не могут быть загружены. Возможно, вам нужно обновить формат файла "
-"emoticons.py. Подробности на http://trac.gajim.org/wiki/Emoticons."
+#: ../src/gui_interface.py:2019
+msgid "Your configured emoticons theme cannot been loaded. You maybe need to update the format of emoticons.py file. See http://trac.gajim.org/wiki/Emoticons for more details."
+msgstr "Смайлики не могут быть загружены. Возможно, вам нужно обновить формат файла emoticons.py. Подробности на http://trac.gajim.org/wiki/Emoticons."
 
-#: ../src/gui_interface.py:2061 ../src/roster_window.py:3897
+#: ../src/gui_interface.py:2063
+#: ../src/roster_window.py:3966
 msgid "You cannot join a group chat while you are invisible"
 msgstr "Вы не можете зайти в комнату, так как вы в режиме невидимости."
 
 #. it is good to notify the user
 #. in case he or she cannot see the output of the console
-#: ../src/gui_interface.py:2448
+#: ../src/gui_interface.py:2450
 msgid "Could not save your settings and preferences"
 msgstr "Не могу сохранить ваши установки и настройки"
 
-#: ../src/gui_interface.py:3038
+#: ../src/gui_interface.py:3008
 msgid "Passphrase Required"
 msgstr "Требуется парольная фраза"
 
-#: ../src/gui_interface.py:3039
+#: ../src/gui_interface.py:3009
 #, python-format
-msgid "Enter OpenPGP key passphrase for key %(keyid)s (account %(account)s)."
-msgstr "Введите пароль для OpenPGP ключа %(keyid)s (аккаунт %(account)s)."
+msgid "Enter GPG key passphrase for key %(keyid)s (account %(account)s)."
+msgstr "Введите пароль для ключа %(keyid)s (аккаунт %(account)s)."
 
-#: ../src/gui_interface.py:3053
-msgid "OpenPGP key expired"
-msgstr "Срок действия ключа OpenPGP истёк"
+#: ../src/gui_interface.py:3023
+msgid "GPG key expired"
+msgstr "Срок действия ключа GPG истёк"
 
-#: ../src/gui_interface.py:3054
+#: ../src/gui_interface.py:3024
 #, python-format
-msgid ""
-"Your OpenPGP key has expired, you will be connected to %s without OpenPGP."
-msgstr ""
-"Срок действия вашего ключа OpenPGP истёк, вы будете подключены к %s без "
-"использования OpenPGP."
+msgid "Your GPG key has expired, you will be connected to %s without OpenPGP."
+msgstr "Срок действия вашего ключа GPG истёк, вы будете подключены к %s без использования OpenPGP."
 
 #. ask again
-#: ../src/gui_interface.py:3063
+#: ../src/gui_interface.py:3033
 msgid "Wrong Passphrase"
 msgstr "Неверная парольная фраза"
 
-#: ../src/gui_interface.py:3064
-msgid "Please retype your OpenPGP passphrase or press Cancel."
-msgstr "Введите парольную фразу для OpenPGP еще раз или нажмите «Отмена»."
+#: ../src/gui_interface.py:3034
+msgid "Please retype your GPG passphrase or press Cancel."
+msgstr "Введите парольную фразу для GPG еще раз или нажмите «Отмена»."
 
-#: ../src/gui_menu_builder.py:94
+#: ../src/gui_menu_builder.py:93
 msgid "_New Group Chat"
 msgstr "В _новую комнату"
 
-#: ../src/gui_menu_builder.py:435
+#: ../src/gui_menu_builder.py:431
 msgid "I would like to add you to my roster"
 msgstr "Вы не против, если я добавлю Вас к себе в ростер?"
 
-#: ../src/history_manager.py:78
-msgid "Set logs directory"
-msgstr "Установить рабочий каталог"
-
-#: ../src/history_manager.py:126
+#: ../src/history_manager.py:116
 msgid "Cannot find history logs database"
 msgstr "Не могу найти базу данных истории"
 
 #. holds time
-#: ../src/history_manager.py:179 ../src/history_manager.py:223
-#: ../src/history_window.py:100
+#: ../src/history_manager.py:169
+#: ../src/history_manager.py:213
+#: ../src/history_window.py:99
 msgid "Date"
 msgstr "Дата"
 
 #. holds nickname
-#: ../src/history_manager.py:186 ../src/history_manager.py:242
+#: ../src/history_manager.py:176
+#: ../src/history_manager.py:232
 msgid "Nickname"
 msgstr "Ник"
 
 #. holds message
-#: ../src/history_manager.py:195 ../src/history_manager.py:230
-#: ../src/history_window.py:108
+#: ../src/history_manager.py:185
+#: ../src/history_manager.py:220
+#: ../src/history_window.py:107
 msgid "Message"
 msgstr "Сообщение"
 
 #. holds subject
-#: ../src/history_manager.py:203 ../src/history_manager.py:236
+#: ../src/history_manager.py:193
+#: ../src/history_manager.py:226
 msgid "Subject"
 msgstr "Тема"
 
-#: ../src/history_manager.py:262
-msgid ""
-"Do you want to clean up the database? (STRONGLY NOT RECOMMENDED IF GAJIM IS "
-"RUNNING)"
-msgstr ""
-"Вы хотите очистить базу данных? (КРАЙНЕ НЕ РЕКОМЕНДУЕТСЯ, ЕСЛИ GAJIM ЗАПУЩЕН)"
+#: ../src/history_manager.py:252
+msgid "Do you want to clean up the database? (STRONGLY NOT RECOMMENDED IF GAJIM IS RUNNING)"
+msgstr "Вы хотите очистить базу данных? (КРАЙНЕ НЕ РЕКОМЕНДУЕТСЯ, ЕСЛИ GAJIM ЗАПУЩЕН)"
 
-#: ../src/history_manager.py:264
+#: ../src/history_manager.py:254
 msgid ""
-"Normally allocated database size will not be freed, it will just become "
-"reusable. If you really want to reduce database filesize, click YES, else "
-"click NO.\n"
+"Normally allocated database size will not be freed, it will just become reusable. If you really want to reduce database filesize, click YES, else click NO.\n"
 "\n"
 "In case you click YES, please wait..."
 msgstr ""
-"Обычно размер файла базы данных не уменьшается при очистке, а используется "
-"заново. Если вы хотите действительно уменьшить размер файла, нажмите ДА, в "
-"противном случае нажмите НЕТ.\n"
+"Обычно размер файла базы данных не уменьшается при очистке, а используется заново. Если вы хотите действительно уменьшить размер файла, нажмите ДА, в противном случае нажмите НЕТ.\n"
 "\n"
 "Если вы нажали ДА, пожалуйста подождите..."
 
-#: ../src/history_manager.py:269
+#: ../src/history_manager.py:259
 msgid "Database Cleanup"
 msgstr "Очистка базы данных"
 
-#: ../src/history_manager.py:487
+#: ../src/history_manager.py:477
 msgid "Exporting History Logs..."
 msgstr "Экспортирую историю..."
 
-#: ../src/history_manager.py:564
+#: ../src/history_manager.py:554
 #, python-format
 msgid "%(who)s on %(time)s said: %(message)s\n"
 msgstr "%(who)s в %(time)s сказал: %(message)s\n"
 
-#: ../src/history_manager.py:602
+#: ../src/history_manager.py:592
 #, python-format
 msgid "Do you really want to delete the logs of %(jid)s?"
 msgstr "Вы точно хотите удалить лог %(jid)s?"
 
-#: ../src/history_manager.py:606
+#: ../src/history_manager.py:596
 msgid "Do you really want to delete logs of the selected contacts?"
 msgstr "Вы точно хотите удалить логи выделенного контакта?"
 
-#: ../src/history_manager.py:608 ../src/history_manager.py:647
+#: ../src/history_manager.py:598
+#: ../src/history_manager.py:637
 msgid "This is an irreversible operation."
 msgstr "Это необратимая операция"
 
-#: ../src/history_manager.py:610 ../src/history_manager.py:649
+#: ../src/history_manager.py:600
+#: ../src/history_manager.py:639
 msgid "Deletion Confirmation"
 msgstr "Подтверждение удаления"
 
-#: ../src/history_manager.py:644
+#: ../src/history_manager.py:634
 msgid "Do you really want to delete the selected message?"
 msgid_plural "Do you really want to delete the selected messages?"
 msgstr[0] "Вы точно хотите удалить выделенное сообщение?"
 msgstr[1] "Вы точно хотите удалить выделенные сообщения?"
 msgstr[2] "Вы точно хотите удалить выделенные сообщения?"
 
-#: ../src/history_window.py:308
+#: ../src/history_window.py:306
 #, python-format
 msgid "Conversation History with %s"
 msgstr "История %s"
 
-#: ../src/history_window.py:358
+#: ../src/history_window.py:356
 msgid "Disk Error"
 msgstr "Ошибка записи на диск"
 
-#: ../src/history_window.py:451
+#: ../src/history_window.py:444
 #, python-format
 msgid "%(nick)s is now %(status)s: %(status_msg)s"
 msgstr "%(nick)s теперь %(status)s: %(status_msg)s"
 
-#: ../src/history_window.py:462
+#: ../src/history_window.py:455
 #, python-format
 msgid "Error: %s"
 msgstr "Ошибка: %s"
 
-#: ../src/history_window.py:464
+#: ../src/history_window.py:457
 msgid "Error"
 msgstr "Ошибка"
 
-#: ../src/history_window.py:466
+#: ../src/history_window.py:459
 #, python-format
 msgid "Status is now: %(status)s: %(status_msg)s"
 msgstr "Статус установлен в: %(status)s: %(status_msg)s"
 
-#: ../src/history_window.py:469
+#: ../src/history_window.py:462
 #, python-format
 msgid "Status is now: %(status)s"
 msgstr "Статус установлен в: %(status)s"
 
-#: ../src/htmltextview.py:523
+#: ../src/htmltextview.py:522
 msgid "Loading"
 msgstr "Загрузка"
 
-#: ../src/logind_listener.py:53 ../src/upower_listener.py:31
-msgid "Machine going to sleep"
-msgstr "Компьютер перешел в спящий режим"
-
 #: ../src/message_window.py:220
 msgid "You are going to close several tabs"
 msgstr "Вы собираетесь закрыть несколько вкладок"
@@ -10298,49 +9824,52 @@ msgstr "— сообщения не будут записаны в лог"
 msgid "Ignore"
 msgstr "Игнорировать"
 
-#: ../src/plugins/gui.py:82
+#: ../src/plugins/gui.py:78
 msgid "Plugin"
 msgstr "Модуль"
 
-#: ../src/plugins/gui.py:149
-#, python-format
+#: ../src/plugins/gui.py:145
+#, fuzzy, python-format
 msgid "Warning: %s"
-msgstr "Предупреждение:  %s"
+msgstr "Забанить %s"
 
-#: ../src/plugins/gui.py:207
+#: ../src/plugins/gui.py:199
 msgid "Plugin failed"
 msgstr "Ошибка в модуле"
 
-#: ../src/plugins/gui.py:252
+#: ../src/plugins/gui.py:244
 msgid "Unable to properly remove the plugin"
 msgstr "Невозможно правильно удалить модуль"
 
 #. members not safe
-#: ../src/plugins/gui.py:260 ../src/plugins/pluginmanager.py:526
-#: ../src/plugins/pluginmanager.py:534
+#: ../src/plugins/gui.py:252
+#: ../src/plugins/pluginmanager.py:523
+#: ../src/plugins/pluginmanager.py:531
 msgid "Archive is malformed"
 msgstr "Формат архива не поддерживается"
 
-#: ../src/plugins/gui.py:284 ../src/plugins/gui.py:292
-#: ../src/plugins/pluginmanager.py:542
+#: ../src/plugins/gui.py:276
+#: ../src/plugins/gui.py:284
+#: ../src/plugins/pluginmanager.py:539
 msgid "Plugin already exists"
 msgstr "Модуль уже существует"
 
-#: ../src/plugins/gui.py:284
+#: ../src/plugins/gui.py:276
 msgid "Overwrite?"
 msgstr "Перезаписать?"
 
-#: ../src/plugins/gui.py:314
+#: ../src/plugins/gui.py:306
 msgid "Configuration"
 msgstr "Конфигурация"
 
 #. it is not zip file
 #. CRC error
-#: ../src/plugins/pluginmanager.py:512 ../src/plugins/pluginmanager.py:518
+#: ../src/plugins/pluginmanager.py:509
+#: ../src/plugins/pluginmanager.py:515
 msgid "Archive corrupted"
 msgstr "Архив поврежден"
 
-#: ../src/plugins/pluginmanager.py:514
+#: ../src/plugins/pluginmanager.py:511
 msgid "Archive empty"
 msgstr "Архив пуст"
 
@@ -10348,335 +9877,291 @@ msgstr "Архив пуст"
 msgid "Retrieving profile..."
 msgstr "Получаю данные..."
 
-#: ../src/profile_window.py:129 ../src/roster_window.py:3194
+#: ../src/profile_window.py:129
+#: ../src/roster_window.py:3259
 msgid "File is empty"
 msgstr "Пустой файл"
 
-#: ../src/profile_window.py:132 ../src/roster_window.py:3197
+#: ../src/profile_window.py:132
+#: ../src/roster_window.py:3262
 msgid "File does not exist"
 msgstr "Файл не существует"
 
 #. keep identation
 #. unknown format
-#: ../src/profile_window.py:146 ../src/profile_window.py:163
-#: ../src/roster_window.py:3199 ../src/roster_window.py:3210
+#: ../src/profile_window.py:146
+#: ../src/profile_window.py:162
+#: ../src/roster_window.py:3264
+#: ../src/roster_window.py:3275
 msgid "Could not load image"
 msgstr "Не могу загрузить изображение"
 
-#: ../src/profile_window.py:235
+#: ../src/profile_window.py:233
 msgid "Wrong date format"
 msgstr "Неверный формат даты"
 
-#: ../src/profile_window.py:236
+#: ../src/profile_window.py:234
 msgid "Format of the date must be YYYY-MM-DD"
 msgstr "Дата должна быть в формате: YYYY-MM-DD"
 
-#: ../src/profile_window.py:294
+#: ../src/profile_window.py:292
 msgid "Information received"
 msgstr "Информация получена"
 
-#: ../src/profile_window.py:372
-msgid "Without a connection, you can not publish your contact information."
-msgstr "Необходимо присоединиться к серверу для обновления личной информации."
+#: ../src/profile_window.py:370
+msgid "Without a connection you can not publish your contact information."
+msgstr "Необходимо присоединиться к серверу для обновления личной информации"
 
-#: ../src/profile_window.py:385
+#: ../src/profile_window.py:383
 msgid "Sending profile..."
 msgstr "Отправляю данные..."
 
-#: ../src/profile_window.py:404
+#: ../src/profile_window.py:402
 msgid "Information NOT published"
 msgstr "Информация НЕ опубликована"
 
-#: ../src/profile_window.py:411
+#: ../src/profile_window.py:409
 msgid "vCard publication failed"
 msgstr "Публикация vCard не удалась"
 
-#: ../src/profile_window.py:412
-msgid ""
-"There was an error while publishing your personal information, try again "
-"later."
-msgstr ""
-"При публикации вашей личной информации произошла ошибка, попробуйте позже."
+#: ../src/profile_window.py:410
+msgid "There was an error while publishing your personal information, try again later."
+msgstr "При публикации вашей личной информации произошла ошибка, попробуйте позже."
 
-#: ../src/roster_window.py:240 ../src/roster_window.py:1035
+#: ../src/roster_window.py:240
+#: ../src/roster_window.py:1031
 msgid "Merged accounts"
 msgstr "Объединенные учетные записи"
 
-#: ../src/roster_window.py:2061
+#: ../src/roster_window.py:2049
 msgid "Authorization has been sent"
 msgstr "Была отправлена авторизация"
 
-#: ../src/roster_window.py:2062
+#: ../src/roster_window.py:2050
 #, python-format
 msgid "Now \"%s\" will know your status."
 msgstr "Теперь «%s» будет знать о вашем статусе."
 
-#: ../src/roster_window.py:2085
+#: ../src/roster_window.py:2073
 msgid "Subscription request has been sent"
 msgstr "Был отправлен запрос на подписку "
 
-#: ../src/roster_window.py:2086
+#: ../src/roster_window.py:2074
 #, python-format
 msgid "If \"%s\" accepts this request you will know his or her status."
 msgstr "Если «%s» примет ваш запрос, вы будете знать его или её статус"
 
-#: ../src/roster_window.py:2100
+#: ../src/roster_window.py:2088
 msgid "Authorization has been removed"
 msgstr "Авторизация была удалена"
 
-#: ../src/roster_window.py:2101
+#: ../src/roster_window.py:2089
 #, python-format
 msgid "Now \"%s\" will always see you as offline."
 msgstr "Теперь «%s» всегда будет видеть вас в оффлайне."
 
-#: ../src/roster_window.py:2128
-msgid "OpenPGP is not usable"
-msgstr "OpenPGP использовать невозможно"
+#: ../src/roster_window.py:2116
+msgid "GPG is not usable"
+msgstr "GPG использовать невозможно"
 
-#: ../src/roster_window.py:2129
+#: ../src/roster_window.py:2117
 #, python-format
 msgid "You will be connected to %s without OpenPGP."
 msgstr "Вы будете подключены к %s без использования OpenPGP."
 
-#: ../src/roster_window.py:2336 ../src/roster_window.py:3827
+#: ../src/roster_window.py:2324
+#: ../src/roster_window.py:3896
 msgid "You are participating in one or more group chats"
 msgstr "Вы находитесь в одной или более комнатах"
 
-#: ../src/roster_window.py:2337 ../src/roster_window.py:3828
-msgid ""
-"Changing your status to invisible will result in disconnection from those "
-"group chats. Are you sure you want to go invisible?"
-msgstr ""
-"Переход в состояние невидимости приведет к выходу из этих комнат. Вы точно "
-"хотите стать невидимым?"
+#: ../src/roster_window.py:2325
+#: ../src/roster_window.py:3897
+msgid "Changing your status to invisible will result in disconnection from those group chats. Are you sure you want to go invisible?"
+msgstr "Переход в состояние невидимости приведет к выходу из этих комнат. Вы точно хотите стать невидимым?"
 
-#: ../src/roster_window.py:2363
+#: ../src/roster_window.py:2351
 msgid "desync'ed"
 msgstr "не синхронизировано"
 
-#: ../src/roster_window.py:2429
+#: ../src/roster_window.py:2417
 msgid "Really quit Gajim?"
 msgstr "Закрыть Gajim?"
 
-#: ../src/roster_window.py:2430
+#: ../src/roster_window.py:2418
 msgid "Are you sure you want to quit Gajim?"
 msgstr "Вы точно хотите закрыть Gajim?"
 
-#: ../src/roster_window.py:2431
+#: ../src/roster_window.py:2419
 msgid "Always close Gajim"
 msgstr "Всегда закрывать Gajim"
 
-#: ../src/roster_window.py:2521
+#: ../src/roster_window.py:2509
 msgid "You have running file transfers"
 msgstr "Идет передача файлов"
 
-#: ../src/roster_window.py:2522
-msgid ""
-"If you quit now, the file(s) being transferred will be stopped. Do you still "
-"want to quit?"
+#: ../src/roster_window.py:2510
+msgid "If you quit now, the file(s) being transferred will be stopped. Do you still want to quit?"
 msgstr "Если выйти сейчас, передача файла остановится. Выйти?"
 
-#: ../src/roster_window.py:2553 ../src/roster_window.py:2990
+#: ../src/roster_window.py:2541
+#: ../src/roster_window.py:2978
 msgid "You have unread messages"
 msgstr "У вас есть непрочитанные сообщения"
 
-#: ../src/roster_window.py:2554
-msgid ""
-"Messages will only be available for reading them later if you have history "
-"enabled and contact is in your roster."
-msgstr ""
-"Сообщения будут доступны для чтения позже, если у вас активирована опция "
-"истории."
+#: ../src/roster_window.py:2542
+msgid "Messages will only be available for reading them later if you have history enabled and contact is in your roster."
+msgstr "Сообщения будут доступны для чтения позже, если у вас активирована опция истории."
 
-#: ../src/roster_window.py:2991
+#: ../src/roster_window.py:2979
 msgid "You must read them before removing this transport."
 msgstr "Просмотрите все ожидающие события перед удалением транспорта."
 
-#: ../src/roster_window.py:2994
+#: ../src/roster_window.py:2982
 #, python-format
 msgid "Transport \"%s\" will be removed"
 msgstr "Транспорт «%s» будет удален"
 
-#: ../src/roster_window.py:2995
-msgid ""
-"You will no longer be able to send and receive messages from contacts using "
-"this transport."
-msgstr ""
-"У вас теперь не будет возможности приема и отправки сообщения контактам "
-"через этот транспорт."
+#: ../src/roster_window.py:2983
+msgid "You will no longer be able to send and receive messages from contacts using this transport."
+msgstr "У вас теперь не будет возможности приема и отправки сообщения контактам через этот транспорт."
 
-#: ../src/roster_window.py:2998
+#: ../src/roster_window.py:2986
 msgid "Transports will be removed"
 msgstr "Транспорты будут удалены"
 
-#: ../src/roster_window.py:3003
+#: ../src/roster_window.py:2991
 #, python-format
-msgid ""
-"You will no longer be able to send and receive messages to contacts from "
-"these transports: %s"
-msgstr ""
-"У вас больше не будет возможности приема и отправки сообщений через эти "
-"транспорты:%s."
+msgid "You will no longer be able to send and receive messages to contacts from these transports: %s"
+msgstr "У вас больше не будет возможности приема и отправки сообщений через эти транспорты:%s."
 
-#: ../src/roster_window.py:3045
+#: ../src/roster_window.py:3059
 msgid "You are about to block a contact. Are you sure you want to continue?"
 msgstr "Вы точно хотите заблокировать контакт?"
 
-#: ../src/roster_window.py:3047
-msgid ""
-"This contact will see you offline and you will not receive messages he will "
-"send you."
-msgstr ""
-"Этот контакт будет видеть вас как отключенного, а вы не будете получать от "
-"него сообщения."
+#: ../src/roster_window.py:3061
+msgid "This contact will see you offline and you will not receive messages he will send you."
+msgstr "Этот контакт будет видеть вас как отключенного, а вы не будете получать от него сообщения."
 
 #. it's jid
-#: ../src/roster_window.py:3086
+#: ../src/roster_window.py:3151
 msgid "Rename Contact"
 msgstr "Переименовать контакт"
 
-#: ../src/roster_window.py:3087
+#: ../src/roster_window.py:3152
 #, python-format
 msgid "Enter a new nickname for contact %s"
 msgstr "Введите новый ник для контакта %s"
 
-#: ../src/roster_window.py:3094
+#: ../src/roster_window.py:3159
 msgid "Rename Group"
 msgstr "Переименовать группу"
 
-#: ../src/roster_window.py:3095
+#: ../src/roster_window.py:3160
 #, python-format
 msgid "Enter a new name for group %s"
 msgstr "Введите новое название для группы %s"
 
-#: ../src/roster_window.py:3140
+#: ../src/roster_window.py:3205
 msgid "Remove Group"
 msgstr "Удалить группу"
 
-#: ../src/roster_window.py:3141
+#: ../src/roster_window.py:3206
 #, python-format
 msgid "Do you want to remove group %s from the roster?"
 msgstr "Вы точно хотите удалить группу %s из ростера?"
 
-#: ../src/roster_window.py:3142
+#: ../src/roster_window.py:3207
 msgid "Also remove all contacts in this group from your roster"
 msgstr "Удалить из ростера все контакты в этой группе"
 
-#: ../src/roster_window.py:3181
+#: ../src/roster_window.py:3246
 msgid "Assign OpenPGP Key"
 msgstr "Назначить ключ OpenPGP"
 
-#: ../src/roster_window.py:3182
+#: ../src/roster_window.py:3247
 msgid "Select a key to apply to the contact"
 msgstr "Выберите ключ, который будет применен к контакту"
 
-#: ../src/roster_window.py:3637
+#: ../src/roster_window.py:3706
 #, python-format
 msgid "Contact \"%s\" will be removed from your roster"
 msgstr "Контакт «%s» будет удален из вашего ростера"
 
-#: ../src/roster_window.py:3639
+#: ../src/roster_window.py:3708
 #, python-format
 msgid "You are about to remove \"%(name)s\" (%(jid)s) from your roster.\n"
-msgstr ""
-"Вы собираетесь удалить «%(name)s» (%(jid)s) из вашего списка контактов.\n"
+msgstr "Вы собираетесь удалить «%(name)s» (%(jid)s) из вашего списка контактов.\n"
 
-#: ../src/roster_window.py:3644
-msgid ""
-"By removing this contact you also remove authorization resulting in him or "
-"her always seeing you as offline."
-msgstr ""
-"Удаляя контакт, вы одновременно удалите авторизацию, и этот человек больше "
-"не сможет видеть ваш статус."
+#: ../src/roster_window.py:3713
+msgid "By removing this contact you also remove authorization resulting in him or her always seeing you as offline."
+msgstr "Удаляя контакт, вы одновременно удалите авторизацию, и этот человек больше не сможет видеть ваш статус."
 
 #. Contact is not in roster
-#: ../src/roster_window.py:3650
+#: ../src/roster_window.py:3719
 msgid "Do you want to continue?"
 msgstr "Продолжить?"
 
-#: ../src/roster_window.py:3654
-msgid ""
-"By removing this contact you also by default remove authorization resulting "
-"in him or her always seeing you as offline."
-msgstr ""
-"Если вы удалите контакт, вы так же удалите и авторизацию. Вы будете видеть "
-"его или её всегда в оффлайне."
+#: ../src/roster_window.py:3723
+msgid "By removing this contact you also by default remove authorization resulting in him or her always seeing you as offline."
+msgstr "Если вы удалите контакт, вы так же удалите и авторизацию. Вы будете видеть его или её всегда в оффлайне."
 
-#: ../src/roster_window.py:3657
+#: ../src/roster_window.py:3726
 msgid "I want this contact to know my status after removal"
 msgstr "Я хочу, чтобы этот контакт видел мой статус после удаления"
 
 #. several contact to remove at the same time
-#: ../src/roster_window.py:3661
+#: ../src/roster_window.py:3730
 msgid "Contacts will be removed from your roster"
 msgstr "Контакты будут удалены из вашего ростера"
 
-#: ../src/roster_window.py:3666
+#: ../src/roster_window.py:3735
 #, python-format
 msgid ""
 "By removing these contacts:%s\n"
 "you also remove authorization resulting in them always seeing you as offline."
 msgstr ""
 "Вы удаляете эти контакты:%s.\n"
-"Одновременно вы удалите и авторизацию, то есть они всегда будут видеть вас в "
-"оффлайне."
+"Одновременно вы удалите и авторизацию, то есть они всегда будут видеть вас в оффлайне."
 
-#: ../src/roster_window.py:3724
-msgid ""
-"You are about to send a custom status. Are you sure you want to continue?"
+#: ../src/roster_window.py:3793
+#, fuzzy
+msgid "You are about to send a custom status. Are you sure you want to continue?"
 msgstr "Вы точно хотите послать другой статус?"
 
-#: ../src/roster_window.py:3726
+#: ../src/roster_window.py:3795
 #, python-format
-msgid ""
-"This contact will temporarily see you as %(status)s, but only until you "
-"change your status. Then he or she will see your global status."
-msgstr ""
-"Этот контакт будет временно видеть ваш статус как %(status)s, но лишь пока "
-"вы не измените свой глобальный статус. Тогда этому контакту станет виден "
-"глобальный статус."
+msgid "This contact will temporarily see you as %(status)s, but only until you change your status. Then he or she will see your global status."
+msgstr "Этот контакт будет временно видеть ваш статус как %(status)s, но лишь пока вы не измените свой глобальный статус. Тогда этому контакту станет виден глобальный статус."
 
-#: ../src/roster_window.py:3745
+#: ../src/roster_window.py:3814
 msgid "No account available"
 msgstr "Нет доступной учетной записи"
 
-#: ../src/roster_window.py:3746
+#: ../src/roster_window.py:3815
 msgid "You must create an account before you can chat with other contacts."
-msgstr ""
-"Для начала беседы с другими людьми прежде необходимо создать учетную запись."
+msgstr "Для начала беседы с другими людьми прежде необходимо создать учетную запись."
 
-#: ../src/roster_window.py:4458
+#: ../src/roster_window.py:4512
 msgid "Metacontacts storage not supported by your server"
 msgstr "Сервер не умеет хранить метаконтакты"
 
-#: ../src/roster_window.py:4460
-msgid ""
-"Your server does not support storing metacontacts information. So this "
-"information will not be saved on next reconnection."
-msgstr ""
-"Ваш сервер не умеет хранить данные о метаконтактах. Эта информация не будет "
-"сохранена при следующем подключении."
+#: ../src/roster_window.py:4514
+msgid "Your server does not support storing metacontacts information. So this information will not be saved on next reconnection."
+msgstr "Ваш сервер не умеет хранить данные о метаконтактах. Эта информация не будет сохранена при следующем подключении."
 
-#: ../src/roster_window.py:4552
-msgid ""
-"You are about to create a metacontact. Are you sure you want to continue?"
+#: ../src/roster_window.py:4606
+msgid "You are about to create a metacontact. Are you sure you want to continue?"
 msgstr "Вы точно хотите создать метаконтакт?"
 
-#: ../src/roster_window.py:4554
-msgid ""
-"Metacontacts are a way to regroup several contacts in one line. Generally it "
-"is used when the same person has several Jabber accounts or transport "
-"accounts."
-msgstr ""
-"Метаконтакты — это метод группировки нескольких контактов в одну запись. "
-"Обычно используется, когда один и тот же человек имеет несколько учетных "
-"записей в Jabber или на транспортах."
+#: ../src/roster_window.py:4608
+msgid "Metacontacts are a way to regroup several contacts in one line. Generally it is used when the same person has several Jabber accounts or transport accounts."
+msgstr "Метаконтакты — это метод группировки нескольких контактов в одну запись. Обычно используется, когда один и тот же человек имеет несколько учетных записей в Jabber или на транспортах."
 
-#: ../src/roster_window.py:4675
+#: ../src/roster_window.py:4729
 msgid "Invalid file URI:"
 msgstr "Неверный файл:"
 
-#: ../src/roster_window.py:4687
+#: ../src/roster_window.py:4741
 #, python-format
 msgid "Do you want to send this file to %s:"
 msgid_plural "Do you want to send these files to %s:"
@@ -10684,17 +10169,17 @@ msgstr[0] "Хотите отправить файл %s:"
 msgstr[1] "Хотите отправить файлы %s:"
 msgstr[2] "Хотите отправить файлы %s:"
 
-#: ../src/roster_window.py:4822
+#: ../src/roster_window.py:4876
 #, python-format
 msgid "Send %s to %s"
 msgstr "Отправить %s контакту %s"
 
-#: ../src/roster_window.py:4833
+#: ../src/roster_window.py:4887
 #, python-format
 msgid "Make %s first contact"
 msgstr "Сделать %s первым контактом"
 
-#: ../src/roster_window.py:4836
+#: ../src/roster_window.py:4890
 #, python-format
 msgid "Make %s and %s metacontacts"
 msgstr "Обьединить %s и %s в метаконтакт"
@@ -10704,129 +10189,135 @@ msgstr "Обьединить %s и %s в метаконтакт"
 #. for chat_with
 #. for single message
 #. join gc
-#: ../src/roster_window.py:5296 ../src/roster_window.py:5350
-#: ../src/roster_window.py:5359 ../src/statusicon.py:277
-#: ../src/statusicon.py:324 ../src/statusicon.py:330
+#: ../src/roster_window.py:5346
+#: ../src/roster_window.py:5400
+#: ../src/roster_window.py:5409
+#: ../src/statusicon.py:277
+#: ../src/statusicon.py:324
+#: ../src/statusicon.py:330
 #, python-format
 msgid "using account %s"
 msgstr "используя учетную запись %s"
 
 #. add
-#: ../src/roster_window.py:5366
+#: ../src/roster_window.py:5416
 #, python-format
 msgid "to %s account"
 msgstr "для учетной записи %s"
 
 #. disco
-#: ../src/roster_window.py:5371
+#: ../src/roster_window.py:5421
 #, python-format
 msgid "using %s account"
 msgstr "учетной записи %s"
 
-#: ../src/roster_window.py:5410 ../src/statusicon.py:340
+#: ../src/roster_window.py:5460
+#: ../src/statusicon.py:340
 msgid "_Manage Bookmarks..."
 msgstr "Управление _закладками..."
 
 #. profile, avatar
-#: ../src/roster_window.py:5430
+#: ../src/roster_window.py:5480
 #, python-format
 msgid "of account %s"
 msgstr "для учетной записи %s"
 
-#: ../src/roster_window.py:5471
+#: ../src/roster_window.py:5521
 #, python-format
 msgid "for account %s"
 msgstr "для учетной записи %s"
 
-#: ../src/roster_window.py:5531 ../src/roster_window.py:5639
+#: ../src/roster_window.py:5581
+#: ../src/roster_window.py:5689
 msgid "_Change Status Message"
 msgstr "_Изменить сообщение о статусе"
 
-#: ../src/roster_window.py:5564
+#: ../src/roster_window.py:5614
 msgid "Publish Tune"
 msgstr "Музыка"
 
-#: ../src/roster_window.py:5566
+#: ../src/roster_window.py:5616
 msgid "Publish Location"
 msgstr "Отправлять Местоположение"
 
-#: ../src/roster_window.py:5569
+#: ../src/roster_window.py:5619
 msgid "Configure Services..."
 msgstr "Настроить Сервисы..."
 
-#: ../src/roster_window.py:5717
+#: ../src/roster_window.py:5767
 msgid "_Maximize All"
 msgstr "_Развернуть все"
 
-#: ../src/roster_window.py:5727 ../src/roster_window.py:5900
+#: ../src/roster_window.py:5777
+#: ../src/roster_window.py:5950
 msgid "Send Group M_essage"
 msgstr "_Отправить сообщение группе"
 
-#: ../src/roster_window.py:5735
+#: ../src/roster_window.py:5785
 msgid "To all users"
 msgstr "Всем пользователям"
 
-#: ../src/roster_window.py:5739
+#: ../src/roster_window.py:5789
 msgid "To all online users"
 msgstr "Всем, кто подключён"
 
 #. Manage Transport submenu
-#: ../src/roster_window.py:5920
+#: ../src/roster_window.py:5970
 msgid "_Manage Contacts"
 msgstr "_Управление контактами"
 
 #. Edit Groups
-#: ../src/roster_window.py:5929
+#: ../src/roster_window.py:5979
 msgid "Edit _Groups"
 msgstr "Редактировать _группы"
 
 #. Send single message
-#: ../src/roster_window.py:5984
+#: ../src/roster_window.py:6034
 msgid "Send Single Message"
 msgstr "Отправить одиночное сообщение"
 
 #. Execute Command
-#: ../src/roster_window.py:6031
+#: ../src/roster_window.py:6081
 msgid "Execute Command..."
 msgstr "Выполнить команду..."
 
 #. Manage Transport submenu
-#: ../src/roster_window.py:6041
+#: ../src/roster_window.py:6091
 msgid "_Manage Transport"
 msgstr "_Управление транспортом"
 
 #. Modify Transport
-#: ../src/roster_window.py:6050
+#: ../src/roster_window.py:6100
 msgid "_Modify Transport"
 msgstr "_Изменить транспорт"
 
 #. Rename
-#: ../src/roster_window.py:6060
+#: ../src/roster_window.py:6110
 msgid "_Rename"
 msgstr "П_ереименовать"
 
-#: ../src/roster_window.py:6120
+#: ../src/roster_window.py:6170
 msgid "_Maximize"
 msgstr "Развернут_ь"
 
-#: ../src/roster_window.py:6129
+#: ../src/roster_window.py:6179
 msgid "_Reconnect"
 msgstr "_Переподсоединиться"
 
-#: ../src/roster_window.py:6136
+#: ../src/roster_window.py:6186
 msgid "_Disconnect"
 msgstr "_Выйти"
 
 #. History manager
-#: ../src/roster_window.py:6230
+#: ../src/roster_window.py:6275
 msgid "History Manager"
 msgstr "Менеджер истории"
 
-#: ../src/roster_window.py:6245
+#: ../src/roster_window.py:6286
 msgid "_Join New Group Chat"
 msgstr "_Войти в новую комнату"
 
-#: ../src/roster_window.py:6473
+#: ../src/roster_window.py:6514
 msgid "Change Status Message..."
 msgstr "Изменить сообщение о статусе..."
 
@@ -10834,20 +10325,23 @@ msgstr "Изменить сообщение о статусе..."
 msgid "Waiting for results"
 msgstr "Ожидание результатов"
 
-#: ../src/search_window.py:143 ../src/search_window.py:220
+#: ../src/search_window.py:143
+#: ../src/search_window.py:220
 msgid "Error in received dataform"
 msgstr "Ошибка в принятой форме данных"
 
 #. No result
-#: ../src/search_window.py:177 ../src/search_window.py:212
+#: ../src/search_window.py:177
+#: ../src/search_window.py:212
 msgid "No result"
 msgstr "Нет результата"
 
-#: ../src/session.py:409 ../src/session.py:469
+#: ../src/session.py:411
+#: ../src/session.py:470
 msgid "Confirm these session options"
 msgstr "Подтвердить данные настройки сеанса"
 
-#: ../src/session.py:411
+#: ../src/session.py:413
 #, python-format
 msgid ""
 "The remote client wants to negotiate a session with these features:\n"
@@ -10862,7 +10356,7 @@ msgstr ""
 "\n"
 "Приемлемы ли эти настройки?"
 
-#: ../src/session.py:471
+#: ../src/session.py:472
 #, python-format
 msgid ""
 "The remote client selected these options:\n"
@@ -10877,7 +10371,7 @@ msgstr ""
 "\n"
 "Продолжить этот сеанс?"
 
-#: ../src/session.py:474
+#: ../src/session.py:475
 msgid "Always accept for this contact"
 msgstr "Всегда принимать для этого контакта"
 
@@ -10893,130 +10387,139 @@ msgstr "Скрыть _ростер"
 msgid "Hide this menu"
 msgstr "Скрыть это меню"
 
-#: ../src/tooltips.py:393 ../src/tooltips.py:614
+#: ../src/tooltips.py:393
+#: ../src/tooltips.py:613
 msgid "Jabber ID: "
 msgstr "Jabber ID: "
 
-#: ../src/tooltips.py:397 ../src/tooltips.py:619
+#: ../src/tooltips.py:396
+#: ../src/tooltips.py:617
 msgid "Resource: "
 msgstr "Ресурс: "
 
-#: ../src/tooltips.py:403
+#: ../src/tooltips.py:402
 #, python-format
 msgid "%(owner_or_admin_or_member)s of this group chat"
 msgstr "%(owner_or_admin_or_member)s этой комнаты"
 
-#: ../src/tooltips.py:511
+#: ../src/tooltips.py:510
 msgid " [blocked]"
 msgstr "[заблокировано]"
 
-#: ../src/tooltips.py:515
+#: ../src/tooltips.py:514
 msgid " [minimized]"
 msgstr "[свернуто]"
 
-#: ../src/tooltips.py:530 ../src/tooltips.py:791
+#: ../src/tooltips.py:529
+#: ../src/tooltips.py:789
 msgid "Status: "
 msgstr "Статус: "
 
-#: ../src/tooltips.py:575
+#: ../src/tooltips.py:574
 #, python-format
 msgid "Last status: %s"
 msgstr "Последний статус: %s"
 
-#: ../src/tooltips.py:577
+#: ../src/tooltips.py:576
 #, python-format
 msgid " since %s"
 msgstr " с %s"
 
-#: ../src/tooltips.py:595
+#: ../src/tooltips.py:594
 msgid "Connected"
 msgstr "Подключен"
 
-#: ../src/tooltips.py:597
+#: ../src/tooltips.py:596
 msgid "Disconnected"
 msgstr "Отключен"
 
 #. ('both' is the normal sub so we don't show it)
-#: ../src/tooltips.py:626
+#: ../src/tooltips.py:624
 msgid "Subscription: "
 msgstr "Подписка: "
 
-#: ../src/tooltips.py:636
+#: ../src/tooltips.py:634
 msgid "OpenPGP: "
 msgstr "OpenPGP: "
 
-#: ../src/tooltips.py:659
+#: ../src/tooltips.py:657
 #, python-format
 msgid "Idle since %s"
 msgstr "Бездействует с %s"
 
-#: ../src/tooltips.py:660
+#: ../src/tooltips.py:658
 #, python-format
 msgid "Idle for %s"
 msgstr "Время бездействия %s"
 
-#: ../src/tooltips.py:714
-msgid "Mood: "
-msgstr "Настроение: "
+#: ../src/tooltips.py:712
+#, python-format
+msgid "Mood: %s"
+msgstr "Настроение: %s"
 
-#: ../src/tooltips.py:718
-msgid "Activity: "
-msgstr "Занятие: "
+#: ../src/tooltips.py:716
+#, python-format
+msgid "Activity: %s"
+msgstr "Занятие: %s"
 
-#: ../src/tooltips.py:722
-msgid "Tune: "
-msgstr "Слушаю: "
+#: ../src/tooltips.py:720
+#, python-format
+msgid "Tune: %s"
+msgstr "Слушаю: %s"
 
-#: ../src/tooltips.py:726
-msgid "Location: "
-msgstr "Местоположение: "
+#: ../src/tooltips.py:724
+#, python-format
+msgid "Location: %s"
+msgstr "Местоположение: %s"
 
-#: ../src/tooltips.py:751
+#: ../src/tooltips.py:749
 msgid "Download"
 msgstr "Скачать"
 
-#: ../src/tooltips.py:757
+#: ../src/tooltips.py:755
 msgid "Upload"
 msgstr "Загрузить"
 
-#: ../src/tooltips.py:764
+#: ../src/tooltips.py:762
 msgid "Type: "
 msgstr "Тип: "
 
-#: ../src/tooltips.py:770
+#: ../src/tooltips.py:768
 msgid "Transferred: "
 msgstr "Передано: "
 
-#: ../src/tooltips.py:773 ../src/tooltips.py:790
+#: ../src/tooltips.py:771
+#: ../src/tooltips.py:788
 msgid "Not started"
 msgstr "Не начато"
 
-#: ../src/tooltips.py:775
+#: ../src/tooltips.py:773
 msgid "Stopped"
 msgstr "Остановлено"
 
-#: ../src/tooltips.py:777 ../src/tooltips.py:780
+#: ../src/tooltips.py:775
+#: ../src/tooltips.py:778
 msgid "Completed"
 msgstr "Завершено"
 
-#: ../src/tooltips.py:783
+#: ../src/tooltips.py:781
 msgid "?transfer status:Paused"
 msgstr "Приостановлено"
 
 #. stalled is not paused. it is like 'frozen' it stopped alone
-#: ../src/tooltips.py:786
+#: ../src/tooltips.py:784
 msgid "Stalled"
 msgstr "Ожидание"
 
-#: ../src/tooltips.py:788
+#: ../src/tooltips.py:786
 msgid "Transferring"
 msgstr "Передается"
 
-#: ../src/tooltips.py:825
+#: ../src/tooltips.py:823
 msgid "This service has not yet responded with detailed information"
 msgstr "Этот сервис еще не сообщил информацию о себе"
 
-#: ../src/tooltips.py:828
+#: ../src/tooltips.py:826
 msgid ""
 "This service could not respond with detailed information.\n"
 "It is most likely legacy or broken"
@@ -11024,196 +10527,74 @@ msgstr ""
 "Этот сервис не может предоставить подробную информацию о себе. \n"
 "Скорее всего, он устарел или сломан"
 
-#: ../src/vcard.py:312
+#: ../src/upower_listener.py:31
+msgid "Machine going to sleep"
+msgstr ""
+
+#: ../src/vcard.py:296
 msgid "?Client:Unknown"
 msgstr "Неизвестен"
 
-#: ../src/vcard.py:314
+#: ../src/vcard.py:298
 msgid "?OS:Unknown"
 msgstr "Неизвестна"
 
-#: ../src/vcard.py:339
+#: ../src/vcard.py:323
 msgid "?Time:Unknown"
 msgstr "?Time:Неизвестно"
 
-#: ../src/vcard.py:363 ../src/vcard.py:373 ../src/vcard.py:581
+#: ../src/vcard.py:347
+#: ../src/vcard.py:357
+#: ../src/vcard.py:565
 #, python-format
 msgid "since %s"
 msgstr "с %s"
 
-#: ../src/vcard.py:396
+#: ../src/vcard.py:380
 msgid "?Role in Group Chat:Role: "
 msgstr "?Роль в групповом чате:Роль: "
 
-#: ../src/vcard.py:400
+#: ../src/vcard.py:384
 msgid "Affiliation: "
 msgstr "Ранг: "
 
-#: ../src/vcard.py:408
-msgid ""
-"This contact is interested in your presence information, but you are not "
-"interested in his/her presence"
-msgstr ""
-"Этот контакт хочет знать о вашем присутствии, но вам информация о его или её "
-"присутствии не интересна"
+#: ../src/vcard.py:392
+msgid "This contact is interested in your presence information, but you are not interested in his/her presence"
+msgstr "Этот контакт хочет знать о вашем присутствии, но вам информация о его или её присутствии не интересна"
 
-#: ../src/vcard.py:410
-msgid ""
-"You are interested in the contact's presence information, but he/she is not "
-"interested in yours"
-msgstr ""
-"Вам хочется получать информацию о присутствии контакта, но он или она не "
-"заинтересована в вашей."
+#: ../src/vcard.py:394
+msgid "You are interested in the contact's presence information, but he/she is not interested in yours"
+msgstr "Вам хочется получать информацию о присутствии контакта, но он или она не заинтересована в вашей."
 
-#: ../src/vcard.py:412
+#: ../src/vcard.py:396
 msgid "You and the contact are interested in each other's presence information"
 msgstr "Вы и контакт оба желаете знать о присутствии друг друга"
 
 #. None
-#: ../src/vcard.py:414
-msgid ""
-"You are not interested in the contact's presence, and neither he/she is "
-"interested in yours"
+#: ../src/vcard.py:398
+msgid "You are not interested in the contact's presence, and neither he/she is interested in yours"
 msgstr "Ни вы, ни ваш контакт не желаете знать о присутствии друг друга"
 
-#: ../src/vcard.py:421
+#: ../src/vcard.py:405
 msgid "You are waiting contact's answer about your subscription request"
 msgstr "Вы ожидаете ответа контакта на запрос на подписку"
 
-#: ../src/vcard.py:423
+#: ../src/vcard.py:407
 msgid "There is no pending subscription request."
 msgstr "Нет ожидающего запроса на подписку."
 
-#: ../src/vcard.py:428 ../src/vcard.py:482 ../src/vcard.py:604
+#: ../src/vcard.py:412
+#: ../src/vcard.py:466
+#: ../src/vcard.py:588
 msgid " resource with priority "
 msgstr " ресурс с приоритетом "
 
-#~ msgid "_Allow him/her to see my status"
-#~ msgstr "_Позволить ему или ей видеть мой статус"
-
-#~ msgid "English"
-#~ msgstr "Английский"
-
-#~ msgid "Belarusian"
-#~ msgstr "Белорусский"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Болгарский"
-
-#~ msgid "Breton"
-#~ msgstr "Бретонский"
-
-#~ msgid "Czech"
-#~ msgstr "Чешский"
-
-#~ msgid "German"
-#~ msgstr "Немецкий"
-
-#~ msgid "Greek"
-#~ msgstr "Греческий"
-
-#~ msgid "British"
-#~ msgstr "Британский"
-
-#~ msgid "Esperanto"
-#~ msgstr "Эсперанто"
-
-#~ msgid "Spanish"
-#~ msgstr "Испанский"
-
-#~ msgid "Basque"
-#~ msgstr "Баскский"
-
-#~ msgid "French"
-#~ msgstr "Французский"
-
-#~ msgid "Croatian"
-#~ msgstr "Хорватский"
-
-#~ msgid "Italian"
-#~ msgstr "Итальянский"
-
-#~ msgid "Norwegian (b)"
-#~ msgstr "Норвежский (букмол)"
-
-#~ msgid "Dutch"
-#~ msgstr "Голландский"
-
-#~ msgid "Norwegian"
-#~ msgstr "Норвежский"
-
-#~ msgid "Polish"
-#~ msgstr "Польский"
-
-#~ msgid "Portuguese"
-#~ msgstr "Португальский"
-
-#~ msgid "Brazilian Portuguese"
-#~ msgstr "Португальский (Бразилия)"
-
-#~ msgid "Russian"
-#~ msgstr "Русский"
-
-#~ msgid "Serbian"
-#~ msgstr "Сербский"
-
-#~ msgid "Slovak"
-#~ msgstr "Словацкий"
-
-#~ msgid "Swedish"
-#~ msgstr "Шведский"
-
-#~ msgid "Chinese (Ch)"
-#~ msgstr "Китайский"
-
-#~ msgid "Hebrew"
-#~ msgstr "Иврит"
-
-#~ msgid "Spelling language"
-#~ msgstr "Язык проверки орфографии"
-
-#~ msgid "Check your connection or try again later"
-#~ msgstr "Проверьте настройки сети или попробуйте еще раз позже"
-
-#~ msgid "Show the contact's profile (Ctrl+I)"
-#~ msgstr "Показать информацию о контакте (Ctrl+I)"
-
-#~ msgid "Display m_ood of contacts in roster"
-#~ msgstr "Показывать на_строения для контактов в ростере"
-
-#~ msgid "Display _activity of contacts in roster"
-#~ msgstr "Показывать _занятия контактов в ростере"
-
-#~ msgid ""
-#~ "If checked, Gajim will display the activity of contacts in the roster "
-#~ "window"
-#~ msgstr ""
-#~ "Если отмечено, то Gajim будет показывать занятия контактов в окне ростера"
-
-#~ msgid "Display _tunes of contacts in roster"
-#~ msgstr "Отмечать контакты, слушающие музыку (tunes)"
-
-#~ msgid ""
-#~ "If checked, Gajim will display the tunes of contacts in the roster window"
-#~ msgstr ""
-#~ "Если отмечено, то Gajim будет показывать tunes контактов в окне ростера"
-
-#~ msgid ""
-#~ "If checked, Gajim will display the location of contacts in the roster "
-#~ "window"
-#~ msgstr ""
-#~ "Если отмечено, то Gajim будет показывать местоположение контактов в окне "
-#~ "ростера"
-
-#~ msgid "Mood: %s"
-#~ msgstr "Настроение: %s"
-
-#~ msgid "Activity: %s"
-#~ msgstr "Занятие: %s"
-
 #~ msgid "Gajim Instant Messenger"
 #~ msgstr "Клиент для мгновенных сообщений Gajim"
 
+#~ msgid "Fishing"
+#~ msgstr "Рыбалка"
+
 #~ msgid "label"
 #~ msgstr "статусное сообщение"
 
@@ -11604,6 +10985,9 @@ msgstr " ресурс с приоритетом "
 #~ "История конференций\n"
 #~ "История всех чатов"
 
+#~ msgid "Manage Accounts"
+#~ msgstr "Управление учетными записями"
+
 #~ msgid "gtk-delete"
 #~ msgstr "gtk-delete"
 
diff --git a/setup_win32.py b/setup_win32.py
index 2d1bc9560..b257a53e8 100644
--- a/setup_win32.py
+++ b/setup_win32.py
@@ -31,9 +31,9 @@ if 'gtk' in os.listdir('.'):
 
 options = {
    'build_exe': {
-       'includes': ['gtk.keysyms', 'dumbdbm', 'dbhash', 'bsddb', 'new',
+       'includes': ['Gdk.KEY_, 'dumbdbm', 'dbhash', 'bsddb', 'new',
             'goocanvas', 'Crypto.PublicKey.DSA', 'Crypto.Hash.HMAC',
-            'numbers'],
+            'numbers', 'win32com.client', 'win32com.server'],
        'base': 'Win32GUI',
 	   'bin_excludes': [
             'iconv.dll', 'intl.dll', 'libatk-1.0-0.dll',
diff --git a/src/adhoc_commands.py b/src/adhoc_commands.py
index 376c8c68c..da598e9bd 100644
--- a/src/adhoc_commands.py
+++ b/src/adhoc_commands.py
@@ -25,8 +25,8 @@
 # FIXME: think if we need caching command list. it may be wrong if there will
 # be entities that often change the list, it may be slow to fetch it every time
 
-import gobject
-import gtk
+from gi.repository import GLib
+from gi.repository import Gtk
 
 import nbxmpp
 from common import gajim
@@ -91,7 +91,7 @@ class CommandWindow:
             self.data_form_widget.destroy()
         self.data_form_widget = dataforms_widget.DataFormWidget()
         self.data_form_widget.show()
-        self.sending_form_stage_vbox.pack_start(self.data_form_widget)
+        self.sending_form_stage_vbox.pack_start(self.data_form_widget, True, True, 0)
 
         if self.commandnode:
             # Execute command
@@ -159,7 +159,7 @@ class CommandWindow:
         return self.stage_adhoc_commands_window_delete_event(self.window)
 
     def __del__(self):
-        print 'Object has been deleted.'
+        print('Object has been deleted.')
 
 # stage 1: waiting for command list
     def stage1(self):
@@ -236,13 +236,13 @@ class CommandWindow:
         # build the commands list radiobuttons
         first_radio = None
         for (commandnode, commandname) in self.commandlist:
-            radio = gtk.RadioButton(first_radio, label=commandname)
+            radio = Gtk.RadioButton.new_with_label_from_widget(first_radio, commandname)
             radio.connect("toggled", self.on_command_radiobutton_toggled,
                 commandnode)
             if not first_radio:
                 first_radio = radio
                 self.commandnode = commandnode
-            self.command_list_vbox.pack_start(radio, expand=False)
+            self.command_list_vbox.pack_start(radio, False, True, 0)
         self.command_list_vbox.show_all()
 
         self.stage_finish = self.stage2_finish
@@ -255,9 +255,9 @@ class CommandWindow:
         """
         Remove widgets we created. Not needed when the window is destroyed
         """
-        def remove_widget(widget):
+        def remove_widget(widget, param):
             self.command_list_vbox.remove(widget)
-        self.command_list_vbox.foreach(remove_widget)
+        self.command_list_vbox.foreach(remove_widget, None)
 
     def stage2_close_button_clicked(self, widget):
         self.stage_finish()
@@ -281,8 +281,6 @@ class CommandWindow:
         # close old stage
         self.stage_finish()
 
-        assert isinstance(self.commandnode, unicode)
-
         self.form_status = None
 
         self.stages_notebook.set_current_page(
@@ -321,8 +319,8 @@ class CommandWindow:
             dialog.destroy()
             cb()
 
-        dialog = dialogs.HigDialog(self.window, gtk.MESSAGE_WARNING,
-            gtk.BUTTONS_YES_NO, _('Cancel confirmation'),
+        dialog = dialogs.HigDialog(self.window, Gtk.MessageType.WARNING,
+            Gtk.ButtonsType.YES_NO, _('Cancel confirmation'),
             _('You are in process of executing command. Do you really want to '
             'cancel it?'), on_response_yes=on_yes)
         dialog.popup()
@@ -452,7 +450,7 @@ class CommandWindow:
 
         note = command.getTag('note')
         if note:
-            self.notes_label.set_text(note.getData().decode('utf-8'))
+            self.notes_label.set_text(note.getData())
             self.notes_label.set_no_show_all(False)
             self.notes_label.show()
         else:
@@ -510,7 +508,7 @@ class CommandWindow:
             try:
                 errorname = nbxmpp.NS_STANZAS + ' ' + str(errorid)
                 errordesc = nbxmpp.ERRORS[errorname][2]
-                error = errordesc.decode('utf-8')
+                error = errordesc
                 del errorname, errordesc
             except KeyError:        # when stanza doesn't have error description
                 error = _('Service returned an error.')
@@ -550,21 +548,21 @@ class CommandWindow:
         progressbar.pulse() method
         """
         assert not self.pulse_id
-        assert isinstance(progressbar, gtk.ProgressBar)
+        assert isinstance(progressbar, Gtk.ProgressBar)
 
         def callback():
             progressbar.pulse()
             return True     # important to keep callback be called back!
 
         # 12 times per second (80 miliseconds)
-        self.pulse_id = gobject.timeout_add(80, callback)
+        self.pulse_id = GLib.timeout_add(80, callback)
 
     def remove_pulsing(self):
         """
         Stop pulsing, useful when especially when removing widget
         """
         if self.pulse_id:
-            gobject.source_remove(self.pulse_id)
+            GLib.source_remove(self.pulse_id)
         self.pulse_id = None
 
 # handling xml stanzas
@@ -608,7 +606,6 @@ class CommandWindow:
         Send the command with data form. Wait for reply
         """
         # create the stanza
-        assert isinstance(self.commandnode, unicode)
         assert action in ('execute', 'prev', 'next', 'complete')
 
         stanza = nbxmpp.Iq(typ='set', to=self.jid)
diff --git a/src/advanced_configuration_window.py b/src/advanced_configuration_window.py
index 8bc256a03..ed5ca4067 100644
--- a/src/advanced_configuration_window.py
+++ b/src/advanced_configuration_window.py
@@ -23,11 +23,12 @@
 ## along with Gajim. If not, see %s ' % \
-                gobject.markup_escape_text(newentry.feed_title))
+                '%s ' % \
+                GLib.markup_escape_text(newentry.feed_title))
         else:
-            self.feed_title_label.set_markup(
-                gobject.markup_escape_text(newentry.feed_title))
+            self.feed_title_label.set_markup(GLib.markup_escape_text(
+                newentry.feed_title))
 
         self.feed_tagline_label.set_markup(
-            u'%s ' % \
-            gobject.markup_escape_text(newentry.feed_tagline))
+            '%s ' % GLib.markup_escape_text(
+            newentry.feed_tagline))
 
         if newentry.title:
             if newentry.uri is not None:
                 self.entry_title_label.set_markup(
-                    u'%s ' % \
-                    gobject.markup_escape_text(newentry.title))
+                    '%s ' % \
+                    GLib.markup_escape_text(newentry.title))
             else:
-                self.entry_title_label.set_markup(
-                    gobject.markup_escape_text(newentry.title))
+                self.entry_title_label.set_markup(GLib.markup_escape_text(
+                    newentry.title))
         else:
             self.entry_title_label.set_markup('')
 
diff --git a/src/cell_renderer_image.py b/src/cell_renderer_image.py
index d32da9a4c..4a573bc46 100644
--- a/src/cell_renderer_image.py
+++ b/src/cell_renderer_image.py
@@ -21,19 +21,20 @@
 ## along with Gajim. If not, see ' + unread + label_str + ' '
         return (label_str, color)
@@ -2644,7 +2707,11 @@ class ChatControl(ChatControlBase):
         tranasports) and file_transfer_menuitem and hide()/show() for
         add_to_roster_menuitem
         """
-        menu = gui_menu_builder.get_contact_menu(self.contact, self.account,
+        if gajim.jid_is_transport(self.contact.jid):
+            menu = gui_menu_builder.get_transport_menu(self.contact,
+                self.account)
+        else:
+            menu = gui_menu_builder.get_contact_menu(self.contact, self.account,
                 use_multiple_contacts=False, show_start_chat=False,
                 show_encryption=True, control=self,
                 show_buttonbar_items=not hide_buttonbar_items)
@@ -2741,8 +2808,8 @@ class ChatControl(ChatControlBase):
             self.session.control = None
 
         # Disconnect timer callbacks
-        gobject.source_remove(self.possible_paused_timeout_id)
-        gobject.source_remove(self.possible_inactive_timeout_id)
+        GLib.source_remove(self.possible_paused_timeout_id)
+        GLib.source_remove(self.possible_inactive_timeout_id)
         # Remove bigger avatar window
         if self.bigger_avatar_window:
             self.bigger_avatar_window.destroy()
@@ -2761,7 +2828,7 @@ class ChatControl(ChatControlBase):
                 backend=backend)
         # remove all register handlers on widgets, created by self.xml
         # to prevent circular references among objects
-        for i in self.handlers.keys():
+        for i in list(self.handlers.keys()):
             if self.handlers[i].handler_is_connected(i):
                 self.handlers[i].disconnect(i)
             del self.handlers[i]
@@ -2812,7 +2879,11 @@ class ChatControl(ChatControlBase):
         self.parent_win.redraw_tab(self, self.contact.chatstate)
 
     def _nec_caps_received(self, obj):
-        if obj.conn.name != self.account or obj.jid != self.contact.jid:
+        if obj.conn.name != self.account:
+            return
+        if self.TYPE_ID == 'chat' and obj.jid != self.contact.jid:
+            return
+        if self.TYPE_ID == 'pm' and obj.fjid != self.contact.jid:
             return
         self.update_ui()
 
@@ -2827,8 +2898,8 @@ class ChatControl(ChatControlBase):
             else:
                 self.send_chatstate('active', self.contact)
             self.reset_kbd_mouse_timeout_vars()
-            gobject.source_remove(self.possible_paused_timeout_id)
-            gobject.source_remove(self.possible_inactive_timeout_id)
+            GLib.source_remove(self.possible_paused_timeout_id)
+            GLib.source_remove(self.possible_inactive_timeout_id)
             self._schedule_activity_timers()
         else:
             self.send_chatstate('inactive', self.contact)
@@ -2906,7 +2977,7 @@ class ChatControl(ChatControlBase):
         type_ = model[iter_][2]
         if type_ != 'contact': # source is not a contact
             return
-        dropped_jid = data.decode('utf-8')
+        dropped_jid = data
 
         dropped_transport = gajim.get_transport_name_from_jid(dropped_jid)
         c_transport = gajim.get_transport_name_from_jid(c.jid)
@@ -2969,6 +3040,7 @@ class ChatControl(ChatControlBase):
                 'remove it (all history will be lost).') % common.logger.LOG_DB_PATH)
             rows = []
         local_old_kind = None
+        self.conv_textview.just_cleared = True
         for row in rows: # row[0] time, row[1] has kind, row[2] the message
             if not row[2]: # message is empty, we don't print it
                 continue
@@ -2993,14 +3065,14 @@ class ChatControl(ChatControlBase):
             xhtml = None
             if row[2].startswith(' half_scr_h:
             avatar_h = half_scr_h
-        window = gtk.Window(gtk.WINDOW_POPUP)
-        self.bigger_avatar_window = window
-        pixmap, mask = avatar_pixbuf.render_pixmap_and_mask()
-        window.set_size_request(avatar_w, avatar_h)
         # we should make the cursor visible
         # gtk+ doesn't make use of the motion notify on gtkwindow by default
         # so this line adds that
-        window.set_events(gtk.gdk.POINTER_MOTION_MASK)
-        window.set_app_paintable(True)
-        window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_TOOLTIP)
-
-        window.realize()
-        window.window.set_back_pixmap(pixmap, False) # make it transparent
-        window.window.shape_combine_mask(mask, 0, 0)
 
+        alloc = small_avatar.get_allocation()
         # make the bigger avatar window show up centered
-        x0, y0 = small_avatar.window.get_origin()
-        x0 += small_avatar.allocation.x
-        y0 += small_avatar.allocation.y
-        center_x= x0 + (small_avatar.allocation.width / 2)
-        center_y = y0 + (small_avatar.allocation.height / 2)
+        small_avatar_x, small_avatar_y = alloc.x, alloc.y
+        translated_coordinates = small_avatar.translate_coordinates(
+            gajim.interface.roster.window, 0, 0)
+        if translated_coordinates:
+            small_avatar_x, small_avatar_y = translated_coordinates
+        roster_x, roster_y  = self.parent_win.window.get_window().get_origin()[1:]
+        center_x = roster_x + small_avatar_x + (alloc.width / 2)
+        center_y = roster_y + small_avatar_y + (alloc.height / 2)
         pos_x, pos_y = center_x - (avatar_w / 2), center_y - (avatar_h / 2)
-        window.move(pos_x, pos_y)
-        # make the cursor invisible so we can see the image
-        invisible_cursor = gtkgui_helpers.get_invisible_cursor()
-        window.window.set_cursor(invisible_cursor)
 
-        # we should hide the window
-        window.connect('leave_notify_event',
-                self._on_window_avatar_leave_notify_event)
-        window.connect('motion-notify-event',
-                self._on_window_motion_notify_event)
-
-        window.show_all()
-
-    def _on_window_avatar_leave_notify_event(self, widget, event):
-        """
-        Just left the popup window that holds avatar
-        """
-        self.bigger_avatar_window.destroy()
-        self.bigger_avatar_window = None
-        # Re-show the small avatar
-        self.show_avatar()
-
-    def _on_window_motion_notify_event(self, widget, event):
-        """
-        Just moved the mouse so show the cursor
-        """
-        cursor = gtk.gdk.Cursor(gtk.gdk.LEFT_PTR)
-        self.bigger_avatar_window.window.set_cursor(cursor)
+        dialogs.BigAvatarWindow(avatar_pixbuf, pos_x, pos_y, avatar_w,
+            avatar_h, self.show_avatar)
 
     def _on_send_file_menuitem_activate(self, widget):
         self._on_send_file()
@@ -3290,7 +3331,7 @@ class ChatControl(ChatControlBase):
         self.info_bar.show_all()
 
     def _add_info_bar_message(self, markup, buttons, args,
-    type_=gtk.MESSAGE_INFO):
+    type_=Gtk.MessageType.INFO):
         self.info_bar_queue.append((markup, buttons, args, type_))
         self._info_bar_show_message()
 
@@ -3323,12 +3364,12 @@ class ChatControl(ChatControlBase):
             markup += ' (%s)' % file_props.desc
         markup += '\n%s: %s' % (_('Size'), helpers.convert_bytes(
             file_props.size))
-        b1 = gtk.Button(_('_Accept'))
+        b1 = Gtk.Button(_('_Accept'))
         b1.connect('clicked', self._on_accept_file_request, file_props)
-        b2 = gtk.Button(stock=gtk.STOCK_CANCEL)
+        b2 = Gtk.Button(stock=Gtk.STOCK_CANCEL)
         b2.connect('clicked', self._on_cancel_file_request, file_props)
         self._add_info_bar_message(markup, [b1, b2], file_props,
-            gtk.MESSAGE_QUESTION)
+            Gtk.MessageType.QUESTION)
 
     def _on_open_ft_folder(self, widget, file_props):
         path = os.path.split(file_props.file_name)[0]
@@ -3348,17 +3389,17 @@ class ChatControl(ChatControlBase):
             file_props.name)
         if file_props.desc:
             markup += ' (%s)' % file_props.desc
-        b1 = gtk.Button(_('_Open Containing Folder'))
+        b1 = Gtk.Button(_('_Open Containing Folder'))
         b1.connect('clicked', self._on_open_ft_folder, file_props)
-        b2 = gtk.Button(stock=gtk.STOCK_OK)
+        b2 = Gtk.Button(stock=Gtk.STOCK_OK)
         b2.connect('clicked', self._on_ok, file_props, 'file-completed')
         self._add_info_bar_message(markup, [b1, b2], file_props)
 
     def _got_file_error(self, file_props, type_, pri_txt, sec_txt):
         markup = '%s:  %s' % (pri_txt, sec_txt)
-        b = gtk.Button(stock=gtk.STOCK_OK)
+        b = Gtk.Button(stock=Gtk.STOCK_OK)
         b.connect('clicked', self._on_ok, file_props, type_)
-        self._add_info_bar_message(markup, [b], file_props, gtk.MESSAGE_ERROR)
+        self._add_info_bar_message(markup, [b], file_props, Gtk.MessageType.ERROR)
 
     def _on_accept_gc_invitation(self, widget, event):
         room_jid = event.parameters[0]
@@ -3383,12 +3424,12 @@ class ChatControl(ChatControlBase):
         markup = '%s:  %s' % (_('Groupchat Invitation'), room_jid)
         if comment:
             markup += ' (%s)' % comment
-        b1 = gtk.Button(_('_Join'))
+        b1 = Gtk.Button(_('_Join'))
         b1.connect('clicked', self._on_accept_gc_invitation, event)
-        b2 = gtk.Button(stock=gtk.STOCK_CANCEL)
+        b2 = Gtk.Button(stock=Gtk.STOCK_CANCEL)
         b2.connect('clicked', self._on_cancel_gc_invitation, event)
         self._add_info_bar_message(markup, [b1, b2], event.parameters,
-            gtk.MESSAGE_QUESTION)
+            Gtk.MessageType.QUESTION)
 
     def on_event_added(self, event):
         if event.account != self.account:
@@ -3401,9 +3442,9 @@ class ChatControl(ChatControlBase):
             self._got_file_completed(event.parameters)
         elif event.type_ in ('file-error', 'file-stopped'):
             msg_err = ''
-            if event.parameters['error'] == -1:
+            if event.parameters.error == -1:
                 msg_err = _('Remote contact stopped transfer')
-            elif event.parameters['error'] == -6:
+            elif event.parameters.error == -6:
                 msg_err = _('Error opening file')
             self._got_file_error(event.parameters, event.type_,
                 _('File transfer stopped'), msg_err)
@@ -3444,6 +3485,6 @@ class ChatControl(ChatControlBase):
                         self.info_bar.set_no_show_all(True)
                         self.info_bar.hide()
                         # show next one?
-                        gobject.idle_add(self._info_bar_show_message)
+                        GLib.idle_add(self._info_bar_show_message)
                     break
                 i += 1
diff --git a/src/command_system/dispatcher.py b/src/command_system/dispatcher.py
index cc9f0ea7a..488dfa341 100644
--- a/src/command_system/dispatcher.py
+++ b/src/command_system/dispatcher.py
@@ -31,8 +31,7 @@ to automatic discovery and dispatching, also features manual control
 over the process.
 """
 
-from types import NoneType
-from tools import remove
+from .tools import remove
 
 COMMANDS = {}
 CONTAINERS = {}
@@ -67,11 +66,13 @@ def traverse_commands(container):
             yield attribute
 
 def is_command(attribute):
-    from framework import Command
+    from .framework import Command
     return isinstance(attribute, Command)
 
 def is_root(namespace):
-    metaclass = namespace.get("__metaclass__", NoneType)
+    metaclass = namespace.get("__metaclass__", None)
+    if not metaclass:
+        return False
     return issubclass(metaclass, Dispatchable)
 
 def get_command(host, name):
@@ -83,7 +84,7 @@ def get_command(host, name):
 def list_commands(host):
     for container in CONTAINERS[host]:
         commands = COMMANDS[container]
-        for name, command in commands.iteritems():
+        for name, command in commands.items():
             yield name, command
 
 class Dispatchable(type):
diff --git a/src/command_system/framework.py b/src/command_system/framework.py
index 9c2dd4cb0..ca2469522 100644
--- a/src/command_system/framework.py
+++ b/src/command_system/framework.py
@@ -23,12 +23,12 @@ import re
 from types import FunctionType
 from inspect import getargspec, getdoc
 
-from dispatcher import Host, Container
-from dispatcher import get_command, list_commands
-from mapping import parse_arguments, adapt_arguments
-from errors import DefinitionError, CommandError, NoCommandError
+from .dispatcher import Host, Container
+from .dispatcher import get_command, list_commands
+from .mapping import parse_arguments, adapt_arguments
+from .errors import DefinitionError, CommandError, NoCommandError
 
-class CommandHost(object):
+class CommandHost(metaclass=Host):
     """
     Command host is a hub between numerous command processors and
     command containers. Aimed to participate in a dispatching process in
@@ -40,7 +40,7 @@ class CommandHost(object):
     """
     __metaclass__ = Host
 
-class CommandContainer(object):
+class CommandContainer(metaclass=Container):
     """
     Command container is an entity which holds defined commands,
     allowing them to be dispatched and proccessed correctly. Each
@@ -143,7 +143,7 @@ class CommandProcessor(object):
     def list_commands(self):
         commands = list_commands(self.COMMAND_HOST)
         commands = dict(commands)
-        return sorted(set(commands.itervalues()))
+        return sorted(list(commands.values()), key=lambda k: k.__repr__())
 
 class Command(object):
 
@@ -153,7 +153,7 @@ class Command(object):
 
         # Automatically set all the properties passed to a constructor
         # by the command decorator.
-        for key, value in properties.iteritems():
+        for key, value in properties.items():
             setattr(self, key, value)
 
     def __call__(self, *args, **kwargs):
@@ -165,7 +165,7 @@ class Command(object):
         # command or name attributes set. They will be set to a
         # corresponding values right here in case if they was not set by
         # the one who raised an exception.
-        except CommandError, error:
+        except CommandError as error:
             if not error.command and not error.name:
                 raise CommandError(error.message, self)
             raise
@@ -181,7 +181,11 @@ class Command(object):
         return "" % ', '.join(self.names)
 
     def __cmp__(self, other):
-        return cmp(self.first_name, other.first_name)
+        if self.first_name > other.first_name:
+            return 1
+        if self.first_name < other.first_name:
+            return -1
+        return 0
 
     @property
     def first_name(self):
diff --git a/src/command_system/implementation/custom.py b/src/command_system/implementation/custom.py
index cc33ae39c..95198fc52 100644
--- a/src/command_system/implementation/custom.py
+++ b/src/command_system/implementation/custom.py
@@ -35,7 +35,7 @@ detected.
 """
 
 from ..framework import CommandContainer, command, doc
-from hosts import *
+from .hosts import *
 
 class CustomCommonCommands(CommandContainer):
     """
diff --git a/src/command_system/implementation/execute.py b/src/command_system/implementation/execute.py
index e81957d41..ab14f4ea1 100644
--- a/src/command_system/implementation/execute.py
+++ b/src/command_system/implementation/execute.py
@@ -35,10 +35,10 @@ commands as a frontend.
 from subprocess import Popen, PIPE
 from os.path import expanduser
 
-from glib import timeout_add
+from gi.repository import GLib
 
 from ..framework import CommandContainer, command, doc
-from hosts import *
+from .hosts import *
 
 class Execute(CommandContainer):
     AUTOMATIC = True
@@ -64,11 +64,11 @@ class Execute(CommandContainer):
     @classmethod
     def monitor(cls, processor, popen):
         poller = cls.poller(processor, popen)
-        timeout_add(cls.POLL_INTERVAL, poller.next)
+        GLib.timeout_add(cls.POLL_INTERVAL, next, poller)
 
     @classmethod
     def poller(cls, processor, popen):
-        for x in xrange(cls.POLL_COUNT):
+        for x in list(range(cls.POLL_COUNT)):
             yield cls.brush(processor, popen)
         cls.overdue(processor, popen)
         yield False
@@ -101,7 +101,7 @@ class Execute(CommandContainer):
     @staticmethod
     def clean(text):
         strip = chr(10) + chr(32)
-        return text.strip(strip)
+        return text.decode().strip(strip)
 
 class Show(Execute):
 
@@ -115,6 +115,6 @@ class Show(Execute):
         stdout, stderr = cls.fetch(popen)
         success = popen.returncode == 0
         if success and stdout:
-            processor.send(stdout.decode('utf8'))
+            processor.send(stdout)
         elif not success and stderr:
             processor.echo_error(stderr)
diff --git a/src/command_system/implementation/middleware.py b/src/command_system/implementation/middleware.py
index 7c517ea51..40e4bdf4e 100644
--- a/src/command_system/implementation/middleware.py
+++ b/src/command_system/implementation/middleware.py
@@ -31,10 +31,9 @@ support interaction between the two and a few utility methods so you
 don't need to dig up the code itself to write basic commands.
 """
 
-from types import StringTypes
 from traceback import print_exc
 
-from pango import FontDescription
+from gi.repository import Pango
 from common import gajim
 
 from ..framework import CommandProcessor
@@ -62,13 +61,13 @@ class ChatCommandProcessor(CommandProcessor):
         try:
             parents = super(ChatCommandProcessor, self)
             parents.execute_command(name, arguments)
-        except NoCommandError, error:
+        except NoCommandError as error:
             details = dict(name=error.name, message=error.message)
             message = "%(name)s: %(message)s\n" % details
             message += "Try using the //%(name)s or /say /%(name)s " % details
             message += "construct if you intended to send it as a text."
             self.echo_error(message)
-        except CommandError, error:
+        except CommandError as error:
             self.echo_error("%s: %s" % (error.name, error.message))
         except Exception:
             self.echo_error(_("Error during command execution!"))
@@ -98,7 +97,7 @@ class ChatCommandProcessor(CommandProcessor):
     def command_postprocessor(self, command, name, arguments, args, kwargs, value):
         # If command returns a string - print it to a user. A convenient
         # and sufficient in most simple cases shortcut to a using echo.
-        if value and isinstance(value, StringTypes):
+        if value and isinstance(value, str):
             self.echo(value)
 
 class CommandTools:
@@ -117,7 +116,7 @@ class CommandTools:
 
         name = gconf("/desktop/gnome/interface/monospace_font_name")
         name = name if name else "Monospace"
-        font = FontDescription(name)
+        font = Pango.FontDescription(name)
 
         command_ok_tag = buffer.create_tag("command_ok")
         command_ok_tag.set_property("font-desc", font)
diff --git a/src/command_system/implementation/standard.py b/src/command_system/implementation/standard.py
index 3994eae59..285d25d82 100644
--- a/src/command_system/implementation/standard.py
+++ b/src/command_system/implementation/standard.py
@@ -30,8 +30,8 @@ from ..errors import CommandError
 from ..framework import CommandContainer, command, doc
 from ..mapping import generate_usage
 
-from hosts import *
-import execute
+from .hosts import *
+from . import execute
 
 # This holds constants fron the logger, which we'll be using in some of our
 # commands.
@@ -136,7 +136,7 @@ class StandardCommonCommands(CommandContainer):
     def status(self, status, message):
         if status not in ('online', 'away', 'chat', 'xa', 'dnd'):
             raise CommandError("Invalid status given")
-        for connection in gajim.connections.itervalues():
+        for connection in gajim.connections.values():
             if not gajim.config.get_per('accounts', connection.name,
             'sync_with_global_status'):
                 continue
@@ -150,7 +150,7 @@ class StandardCommonCommands(CommandContainer):
         if not message:
             message = _("Away")
 
-        for connection in gajim.connections.itervalues():
+        for connection in gajim.connections.values():
             if not gajim.config.get_per('accounts', connection.name,
             'sync_with_global_status'):
                 continue
@@ -164,7 +164,7 @@ class StandardCommonCommands(CommandContainer):
         if not message:
             message = _("Available")
 
-        for connection in gajim.connections.itervalues():
+        for connection in gajim.connections.values():
             if not gajim.config.get_per('accounts', connection.name,
             'sync_with_global_status'):
                 continue
diff --git a/src/command_system/mapping.py b/src/command_system/mapping.py
index 3ba68ff4c..7e224907a 100644
--- a/src/command_system/mapping.py
+++ b/src/command_system/mapping.py
@@ -23,10 +23,9 @@ according to the command properties.
 """
 
 import re
-from types import BooleanType, UnicodeType
 from operator import itemgetter
 
-from errors import DefinitionError, CommandError
+from .errors import DefinitionError, CommandError
 
 # Quite complex piece of regular expression logic to parse options and
 # arguments. Might need some tweaking along the way.
@@ -62,7 +61,7 @@ def parse_arguments(arguments):
     """
     args, opts = [], []
 
-    def intersects_opts((given_start, given_end)):
+    def intersects_opts(given_start, given_end):
         """
         Check if given span intersects with any of options.
         """
@@ -71,7 +70,7 @@ def parse_arguments(arguments):
                 return True
         return False
 
-    def intersects_args((given_start, given_end)):
+    def intersects_args(given_start, given_end):
         """
         Check if given span intersects with any of arguments.
         """
@@ -97,14 +96,14 @@ def parse_arguments(arguments):
     # conflicted sectors. Remove any arguments that intersect with
     # options.
     for arg, position in args[:]:
-        if intersects_opts(position):
+        if intersects_opts(*position):
             args.remove((arg, position))
 
     # Primitive but sufficiently effective way of disposing of
     # conflicted sectors. Remove any options that intersect with
     # arguments.
     for key, value, position in opts[:]:
-        if intersects_args(position):
+        if intersects_args(*position):
             opts.remove((key, value, position))
 
     return args, opts
@@ -207,7 +206,7 @@ def adapt_arguments(command, arguments, args, opts):
     # corresponding optin has been given.
     if command.expand:
         expanded = []
-        for spec_key, spec_value in norm_kwargs.iteritems():
+        for spec_key, spec_value in norm_kwargs.items():
             letter = spec_key[0] if len(spec_key) > 1 else None
             if letter and letter not in expanded:
                 for index, (key, value, position) in enumerate(opts):
@@ -219,7 +218,7 @@ def adapt_arguments(command, arguments, args, opts):
     # Detect switches and set their values accordingly. If any of them
     # carries a value - append it to args.
     for index, (key, value, position) in enumerate(opts):
-        if isinstance(norm_kwargs.get(key), BooleanType):
+        if isinstance(norm_kwargs.get(key), bool):
             opts[index] = (key, True, position)
             if value:
                 args.append((value, position))
@@ -231,8 +230,8 @@ def adapt_arguments(command, arguments, args, opts):
 
     # Stripping down position information supplied with arguments and
     # options as it won't be needed again.
-    args = map(lambda (arg, position): arg, args)
-    opts = map(lambda (key, value, position): (key, value), opts)
+    args = list(map(lambda t: t[0], args))
+    opts = list(map(lambda t: (t[0], t[1]), opts))
 
     # If command has extra option enabled - collect all extra arguments
     # and pass them to a last positional argument command defines as a
@@ -265,16 +264,10 @@ def adapt_arguments(command, arguments, args, opts):
     # Normally this does not happen unless overlapping is enabled.
     for key, value in opts:
         initial = norm_kwargs.get(key)
-        if isinstance(initial, BooleanType):
-            if not isinstance(value, BooleanType):
+        if isinstance(initial, bool):
+            if not isinstance(value, bool):
                 raise CommandError("%s: Switch can not take an argument" % key, command)
 
-    # We need to encode every keyword argument to a simple string, not
-    # the unicode one, because ** expansion does not support it.
-    for index, (key, value) in enumerate(opts):
-        if isinstance(key, UnicodeType):
-            opts[index] = (key.encode(KEY_ENCODING), value)
-
     # Inject the source arguments as a string as a first argument, if
     # command has enabled the corresponding option.
     if command.source:
@@ -305,7 +298,7 @@ def generate_usage(command, complete=True):
         letter = key[0]
         key = key.replace('_', '-')
 
-        if isinstance(value, BooleanType):
+        if isinstance(value, bool):
             value = str()
         else:
             value = '=%s' % value
diff --git a/src/command_system/tools.py b/src/command_system/tools.py
index a5030792c..e67720ded 100644
--- a/src/command_system/tools.py
+++ b/src/command_system/tools.py
@@ -25,20 +25,19 @@
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 from types import *
-from glib import GError
 
 def remove(sequence, target):
-    if isinstance(sequence, ListType):
+    if isinstance(sequence, list):
         if target in sequence:
             sequence.remove(target)
-    elif isinstance(sequence, DictType):
+    elif isinstance(sequence, dict):
         if target in sequence:
             del sequence[target]
 
 def gconf(path):
     try:
-        from gconf import client_get_default
-        client = client_get_default()
+        from gi.repository import GConf
+        client = GConf.Client.get_default()
         return client.get_string(path)
-    except ImportError, GError:
-        pass
\ No newline at end of file
+    except ImportError:
+        pass
diff --git a/src/common/atom.py b/src/common/atom.py
index 71c2a967b..3cc67f385 100644
--- a/src/common/atom.py
+++ b/src/common/atom.py
@@ -100,13 +100,13 @@ class OldEntry(nbxmpp.Node, object):
 
 
         if main_feed is not None and source_feed is not None:
-            return u'%s: %s' % (main_feed, source_feed)
+            return '%s: %s' % (main_feed, source_feed)
         elif main_feed is not None:
             return main_feed
         elif source_feed is not None:
             return source_feed
         else:
-            return u''
+            return ''
 
     feed_title = property(get_feed_title, None, None,
             ''' Title of feed. It is built from entry''s original feed title and title of feed
@@ -173,4 +173,4 @@ class OldEntry(nbxmpp.Node, object):
     updated = property(get_updated, None, None,
             ''' Last significant modification time. ''')
 
-    feed_tagline = u''
+    feed_tagline = ''
diff --git a/src/common/caps_cache.py b/src/common/caps_cache.py
index 21960be5e..2421cabf8 100644
--- a/src/common/caps_cache.py
+++ b/src/common/caps_cache.py
@@ -130,7 +130,8 @@ def compute_caps_hash(identities, features, dataforms=[], hash_method='sha-1'):
         return 1
 
     S = ''
-    identities.sort(cmp=sort_identities_func)
+    from functools import cmp_to_key
+    identities.sort(key=cmp_to_key(sort_identities_func))
     for i in identities:
         c = i['category']
         type_ = i.get('type', '')
@@ -140,7 +141,7 @@ def compute_caps_hash(identities, features, dataforms=[], hash_method='sha-1'):
     features.sort()
     for f in features:
         S += '%s<' % f
-    dataforms.sort(cmp=sort_dataforms_func)
+    dataforms.sort(key=cmp_to_key(sort_dataforms_func))
     for dataform in dataforms:
         # fields indexed by var
         fields = {}
@@ -157,12 +158,12 @@ def compute_caps_hash(identities, features, dataforms=[], hash_method='sha-1'):
                 S += '%s<' % value
 
     if hash_method == 'sha-1':
-        hash_ = hashlib.sha1(S)
+        hash_ = hashlib.sha1(S.encode('utf-8'))
     elif hash_method == 'md5':
-        hash_ = hashlib.md5(S)
+        hash_ = hashlib.md5(S.encode('utf-8'))
     else:
         return ''
-    return base64.b64encode(hash_.digest())
+    return base64.b64encode(hash_.digest()).decode('utf-8')
 
 
 ################################################################################
diff --git a/src/common/check_X509.py b/src/common/check_X509.py
index d0e8fbfcf..14ace64b0 100644
--- a/src/common/check_X509.py
+++ b/src/common/check_X509.py
@@ -173,7 +173,7 @@ try:
             return True
         return False
 except ImportError:
-    log.warn('Import of PyOpenSSL or pyasn1 failed. Cannot correctly check '
+    log.warning('Import of PyOpenSSL or pyasn1 failed. Cannot correctly check '
         'SSL certificate')
 
     def check_certificate(cert, domain):
diff --git a/src/common/check_paths.py b/src/common/check_paths.py
index 02a52e9ae..393eecc75 100644
--- a/src/common/check_paths.py
+++ b/src/common/check_paths.py
@@ -29,16 +29,16 @@ import sys
 import stat
 
 from common import gajim
-import logger
+from common import logger
 from common import jingle_xtls
 
 # DO NOT MOVE ABOVE OF import gajim
 import sqlite3 as sqlite
 
 def create_log_db():
-    print _('creating logs database')
+    print(_('creating logs database'))
     con = sqlite.connect(logger.LOG_DB_PATH)
-    os.chmod(logger.LOG_DB_PATH, 0600) # rw only for us
+    os.chmod(logger.LOG_DB_PATH, 0o600) # rw only for us
     cur = con.cursor()
     # create the tables
     # kind can be
@@ -84,9 +84,9 @@ def create_log_db():
     con.close()
 
 def create_cache_db():
-    print _('creating cache database')
+    print(_('creating cache database'))
     con = sqlite.connect(logger.CACHE_DB_PATH)
-    os.chmod(logger.CACHE_DB_PATH, 0600) # rw only for us
+    os.chmod(logger.CACHE_DB_PATH, 0o600) # rw only for us
     cur = con.cursor()
     cur.executescript(
             '''
@@ -128,16 +128,16 @@ def create_cache_db():
     con.close()
 
 def split_db():
-    print 'spliting database'
+    print('spliting database')
     if os.name == 'nt':
         try:
             import configpaths
             OLD_LOG_DB_FOLDER = os.path.join(configpaths.fse(
-                os.environ[u'appdata']), u'Gajim')
+                os.environ['appdata']), 'Gajim')
         except KeyError:
-            OLD_LOG_DB_FOLDER = u'.'
+            OLD_LOG_DB_FOLDER = '.'
     else:
-        OLD_LOG_DB_FOLDER = os.path.expanduser(u'~/.gajim')
+        OLD_LOG_DB_FOLDER = os.path.expanduser('~/.gajim')
 
     tmp = logger.CACHE_DB_PATH
     logger.CACHE_DB_PATH = os.path.join(OLD_LOG_DB_FOLDER, 'cache.db')
@@ -148,7 +148,7 @@ def split_db():
     os.chdir(back)
     cur = con.cursor()
     cur.execute('''SELECT name FROM sqlite_master WHERE type = 'table';''')
-    tables = cur.fetchall() # we get [(u'jids',), (u'unread_messages',), ...
+    tables = cur.fetchall() # we get [('jids',), ('unread_messages',), ...
     tables = [t[0] for t in tables]
     cur.execute("ATTACH DATABASE '%s' AS cache" % logger.CACHE_DB_PATH)
     for table in ('caps_cache', 'rooms_last_message_time', 'roster_entry',
@@ -161,9 +161,9 @@ def split_db():
             con.commit()
             cur.executescript('DROP TABLE %s;' % table)
             con.commit()
-        except sqlite.OperationalError, e:
-            print >> sys.stderr, 'error moving table %s to cache.db: %s' % \
-                    (table, str(e))
+        except sqlite.OperationalError as e:
+            print('error moving table %s to cache.db: %s' % (table, str(e)),
+                file=sys.stderr)
     con.close()
     logger.CACHE_DB_PATH = tmp
 
@@ -177,7 +177,7 @@ def check_and_possibly_move_config():
     vars['MY_ICONSETS_PATH'] = gajim.MY_ICONSETS_PATH
     vars['MY_MOOD_ICONSETS_PATH'] = gajim.MY_MOOD_ICONSETS_PATH
     vars['MY_ACTIVITY_ICONSETS_PATH'] = gajim.MY_ACTIVITY_ICONSETS_PATH
-    import configpaths
+    from common import configpaths
     MY_DATA = configpaths.gajimpaths['MY_DATA']
     MY_CONFIG = configpaths.gajimpaths['MY_CONFIG']
     MY_CACHE = configpaths.gajimpaths['MY_CACHE']
@@ -189,22 +189,22 @@ def check_and_possibly_move_config():
     if os.name == 'nt':
         try:
             OLD_LOG_DB_FOLDER = os.path.join(configpaths.fse(
-                os.environ[u'appdata']), u'Gajim')
+                os.environ['appdata']), 'Gajim')
         except KeyError:
-            OLD_LOG_DB_FOLDER = u'.'
+            OLD_LOG_DB_FOLDER = '.'
     else:
-        OLD_LOG_DB_FOLDER = os.path.expanduser(u'~/.gajim')
+        OLD_LOG_DB_FOLDER = os.path.expanduser('~/.gajim')
     if not os.path.exists(OLD_LOG_DB_FOLDER):
         return
-    OLD_LOG_DB_PATH = os.path.join(OLD_LOG_DB_FOLDER, u'logs.db')
-    OLD_CACHE_DB_PATH = os.path.join(OLD_LOG_DB_FOLDER, u'cache.db')
-    vars['OLD_VCARD_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, u'vcards')
-    vars['OLD_AVATAR_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, u'avatars')
-    vars['OLD_MY_EMOTS_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, u'emoticons')
-    vars['OLD_MY_ICONSETS_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, u'iconsets')
-    vars['OLD_MY_MOOD_ICONSETS_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, u'moods')
+    OLD_LOG_DB_PATH = os.path.join(OLD_LOG_DB_FOLDER, 'logs.db')
+    OLD_CACHE_DB_PATH = os.path.join(OLD_LOG_DB_FOLDER, 'cache.db')
+    vars['OLD_VCARD_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, 'vcards')
+    vars['OLD_AVATAR_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, 'avatars')
+    vars['OLD_MY_EMOTS_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, 'emoticons')
+    vars['OLD_MY_ICONSETS_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, 'iconsets')
+    vars['OLD_MY_MOOD_ICONSETS_PATH'] = os.path.join(OLD_LOG_DB_FOLDER, 'moods')
     vars['OLD_MY_ACTIVITY_ICONSETS_PATH'] = os.path.join(OLD_LOG_DB_FOLDER,
-            u'activities')
+            'activities')
     OLD_CONFIG_FILES = []
     OLD_DATA_FILES = []
     for f in os.listdir(OLD_LOG_DB_FOLDER):
@@ -249,7 +249,7 @@ def check_and_possibly_move_config():
             continue
         if not os.path.exists(src):
             continue
-        print 'moving %s to %s' % (src, dst)
+        print(_('moving %s to %s') % (src, dst))
         shutil.move(src, dst)
     gajim.logger.init_vars()
     gajim.logger.attach_cache_database()
@@ -263,7 +263,7 @@ def check_and_possibly_create_paths():
 
     VCARD_PATH = gajim.VCARD_PATH
     AVATAR_PATH = gajim.AVATAR_PATH
-    import configpaths
+    from common import configpaths
     MY_DATA = configpaths.gajimpaths['MY_DATA']
     MY_CONFIG = configpaths.gajimpaths['MY_CONFIG']
     MY_CACHE = configpaths.gajimpaths['MY_CACHE']
@@ -275,57 +275,57 @@ def check_and_possibly_create_paths():
     if not os.path.exists(MY_DATA):
         create_path(MY_DATA)
     elif os.path.isfile(MY_DATA):
-        print _('%s is a file but it should be a directory') % MY_DATA
-        print _('Gajim will now exit')
+        print(_('%s is a file but it should be a directory') % MY_DATA)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     if not os.path.exists(MY_CONFIG):
         create_path(MY_CONFIG)
     elif os.path.isfile(MY_CONFIG):
-        print _('%s is a file but it should be a directory') % MY_CONFIG
-        print _('Gajim will now exit')
+        print(_('%s is a file but it should be a directory') % MY_CONFIG)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     if not os.path.exists(MY_CACHE):
         create_path(MY_CACHE)
     elif os.path.isfile(MY_CACHE):
-        print _('%s is a file but it should be a directory') % MY_CACHE
-        print _('Gajim will now exit')
+        print(_('%s is a file but it should be a directory') % MY_CACHE)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     if not os.path.exists(VCARD_PATH):
         create_path(VCARD_PATH)
     elif os.path.isfile(VCARD_PATH):
-        print _('%s is a file but it should be a directory') % VCARD_PATH
-        print _('Gajim will now exit')
+        print(_('%s is a file but it should be a directory') % VCARD_PATH)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     if not os.path.exists(AVATAR_PATH):
         create_path(AVATAR_PATH)
     elif os.path.isfile(AVATAR_PATH):
-        print _('%s is a file but it should be a directory') % AVATAR_PATH
-        print _('Gajim will now exit')
+        print(_('%s is a file but it should be a directory') % AVATAR_PATH)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     if not os.path.exists(LOG_DB_FOLDER):
         create_path(LOG_DB_FOLDER)
     elif os.path.isfile(LOG_DB_FOLDER):
-        print _('%s is a file but it should be a directory') % LOG_DB_FOLDER
-        print _('Gajim will now exit')
+        print(_('%s is a file but it should be a directory') % LOG_DB_FOLDER)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     if not os.path.exists(PLUGINS_CONFIG_PATH):
         create_path(PLUGINS_CONFIG_PATH)
     elif os.path.isfile(PLUGINS_CONFIG_PATH):
-        print _('%s is a file but it should be a directory') % PLUGINS_CONFIG_PATH
-        print _('Gajim will now exit')
+        print(_('%s is a file but it should be a directory') % PLUGINS_CONFIG_PATH)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     if not os.path.exists(CACHE_DB_FOLDER):
         create_path(CACHE_DB_FOLDER)
     elif os.path.isfile(CACHE_DB_FOLDER):
-        print _('%s is a file but it should be a directory') % CACHE_DB_FOLDER
-        print _('Gajim will now exit')
+        print(_('%s is a file but it should be a directory') % CACHE_DB_FOLDER)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     check_and_possibly_move_config()
@@ -334,18 +334,18 @@ def check_and_possibly_create_paths():
         create_log_db()
         gajim.logger.init_vars()
     elif os.path.isdir(LOG_DB_PATH):
-        print _('%s is a directory but should be a file') % LOG_DB_PATH
-        print _('Gajim will now exit')
+        print(_('%s is a directory but should be a file') % LOG_DB_PATH)
+        print(_('Gajim will now exit'))
         sys.exit()
 
     if not os.path.exists(CACHE_DB_PATH):
         create_cache_db()
         gajim.logger.attach_cache_database()
     elif os.path.isdir(CACHE_DB_PATH):
-        print _('%s is a directory but should be a file') % CACHE_DB_PATH
-        print _('Gajim will now exit')
+        print(_('%s is a directory but should be a file') % CACHE_DB_PATH)
+        print(_('Gajim will now exit'))
         sys.exit()
-        
+
     if not os.path.exists(XTLS_CERTS):
         create_path(XTLS_CERTS)
     if not os.path.exists(LOCAL_XTLS_CERTS):
@@ -363,5 +363,5 @@ def create_path(directory):
         create_path(head)
     if os.path.exists(directory):
         return
-    print _('creating %s directory') % directory
-    os.mkdir(directory, 0700)
+    print(('creating %s directory') % directory)
+    os.mkdir(directory, 0o700)
diff --git a/src/common/commands.py b/src/common/commands.py
index 2954b9297..f6072b215 100644
--- a/src/common/commands.py
+++ b/src/common/commands.py
@@ -23,9 +23,9 @@
 ##
 
 import nbxmpp
-import helpers
-import dataforms
-import gajim
+from common import helpers
+from common import dataforms
+from common import gajim
 from common.connection_handlers_events import MessageOutgoingEvent
 
 import logging
@@ -105,12 +105,12 @@ class ChangeStatusCommand(AdHocCommand):
                                 var = 'presence-type',
                                 label = 'Type of presence:',
                                 options = [
-                                        (u'chat', _('Free for chat')),
-                                        (u'online', _('Online')),
-                                        (u'away', _('Away')),
-                                        (u'xa', _('Extended away')),
-                                        (u'dnd', _('Do not disturb')),
-                                        (u'offline', _('Offline - disconnect'))],
+                                        ('chat', _('Free for chat')),
+                                        ('online', _('Online')),
+                                        ('away', _('Away')),
+                                        ('xa', _('Extended away')),
+                                        ('dnd', _('Do not disturb')),
+                                        ('offline', _('Offline - disconnect'))],
                                 value = 'online',
                                 required = True),
                         dataforms.Field('text-multi',
@@ -147,7 +147,7 @@ class ChangeStatusCommand(AdHocCommand):
         try:
             presencedesc = form['presence-desc'].value
         except Exception:       # same exceptions as in last comment
-            presencedesc = u''
+            presencedesc = ''
 
         response, cmd = self.buildResponse(request, status = 'completed')
         cmd.addChild('note', {}, _('The status has been changed.'))
@@ -198,7 +198,7 @@ class LeaveGroupchatsCommand(AdHocCommand):
         options = []
         account = self.connection.name
         for gc in find_current_groupchats(account):
-            options.append((u'%s' %(gc[0]), _('%(nickname)s on %(room_jid)s') % \
+            options.append(('%s' %(gc[0]), _('%(nickname)s on %(room_jid)s') % \
                     {'nickname': gc[1], 'room_jid': gc[0]}))
         if not len(options):
             response, cmd = self.buildResponse(request, status = 'completed')
@@ -369,11 +369,11 @@ class ConnectionCommands:
         # buildReply don't copy the node attribute. Re-add it
         q.setAttr('node', nbxmpp.NS_COMMANDS)
 
-        for node, cmd in self.__commands.iteritems():
+        for node, cmd in self.__commands.items():
             if cmd.isVisibleFor(self.isSameJID(jid)):
                 q.addChild('item', {
                         # TODO: find the jid
-                        'jid': self.getOurBareJID() + u'/' + self.server_resource,
+                        'jid': self.getOurBareJID() + '/' + self.server_resource,
                         'node': node,
                         'name': cmd.commandname})
 
@@ -387,7 +387,7 @@ class ConnectionCommands:
         try:
             jid = helpers.get_full_jid_from_iq(iq_obj)
         except helpers.InvalidFormat:
-            log.warn('Invalid JID: %s, ignoring it' % iq_obj.getFrom())
+            log.warning('Invalid JID: %s, ignoring it' % iq_obj.getFrom())
             return
         node = iq_obj.getTagAttr('query', 'node')
 
diff --git a/src/common/config.py b/src/common/config.py
index f3a6998d8..7b905642f 100644
--- a/src/common/config.py
+++ b/src/common/config.py
@@ -35,8 +35,8 @@
 import sys
 import re
 import copy
-import defs
-import gobject
+from common import defs
+from gi.repository import GLib
 
 (
 OPT_TYPE,
@@ -191,7 +191,7 @@ class Config:
             'dictionary_url': [opt_str, 'WIKTIONARY', _("Either custom url with %s in it where %s is the word/phrase or 'WIKTIONARY' which means use wiktionary.")],
             'always_english_wikipedia': [opt_bool, False],
             'always_english_wiktionary': [opt_bool, True],
-            'remote_control': [opt_bool, True, _('If checked, Gajim can be controlled remotely using gajim-remote.'), True],
+            'remote_control': [opt_bool, False, _('If checked, Gajim can be controlled remotely using gajim-remote.'), True],
             'networkmanager_support': [opt_bool, True, _('If True, listen to D-Bus signals from NetworkManager and change the status of accounts (provided they do not have listen_to_network_manager set to False and they sync with global status) based upon the status of the network connection.'), True],
             'outgoing_chat_state_notifications': [opt_str, 'all', _('Sent chat state notifications. Can be one of all, composing_only, disabled.')],
             'displayed_chat_state_notifications': [opt_str, 'all', _('Displayed chat state notifications in chat windows. Can be one of all, composing_only, disabled.')],
@@ -217,7 +217,7 @@ class Config:
             'tabs_always_visible': [opt_bool, False, _('Show tab when only one conversation?')],
             'tabs_border': [opt_bool, False, _('Show tabbed notebook border in chat windows?')],
             'tabs_close_button': [opt_bool, True, _('Show close button in tab?')],
-            'esession_modp': [opt_str, '5,14', _('A list of modp groups to use in a Diffie-Hellman, highest preference first, separated by commas. Valid groups are 1, 2, 5, 14, 15, 16, 17 and 18. Higher numbers are more secure, but take longer to calculate when you start a session.')],
+            'esession_modp': [opt_str, '15,16,14', _('A list of modp groups to use in a Diffie-Hellman, highest preference first, separated by commas. Valid groups are 1, 2, 5, 14, 15, 16, 17 and 18. Higher numbers are more secure, but take longer to calculate when you start a session.')],
             'chat_avatar_width': [opt_int, 52],
             'chat_avatar_height': [opt_int, 52],
             'roster_avatar_width': [opt_int, 32],
@@ -349,7 +349,6 @@ class Config:
                     'enable_esessions': [opt_bool, True, _('Enable ESessions encryption for this account.')],
                     'autonegotiate_esessions': [opt_bool, True, _('Should Gajim automatically start an encrypted session when possible?')],
                     'connection_types': [ opt_str, 'tls ssl plain', _('Ordered list (space separated) of connection type to try. Can contain tls, ssl or plain')],
-                    'tls_version': [ opt_str, '1.0', '' ],
                     'cipher_list': [ opt_str, 'HIGH:!aNULL:RC4-SHA', '' ],
                     'action_when_plaintext_connection': [ opt_str, 'warn', _('Show a warning dialog before sending password on an plaintext connection. Can be \'warn\', \'connect\', \'disconnect\'') ],
                     'warn_when_insecure_ssl_connection': [ opt_bool, True, _('Show a warning dialog before using standard SSL library.') ],
@@ -573,7 +572,7 @@ class Config:
         Tree-like interface
         """
         if node is None:
-            for child, option in self.__options[1].iteritems():
+            for child, option in self.__options[1].items():
                 yield (child, ), option
             for grandparent in self.__options_per_key:
                 yield (grandparent, ), None
@@ -584,7 +583,7 @@ class Config:
         elif len(node) == 2:
             grandparent, parent = node
             children = self.__options_per_key[grandparent][1][parent]
-            for child, option in children.iteritems():
+            for child, option in children.items():
                 yield (grandparent, parent, child), option
         else:
             raise ValueError('Invalid node')
@@ -630,11 +629,9 @@ class Config:
 
     def set(self, optname, value):
         if optname not in self.__options[1]:
-#                       raise RuntimeError, 'option %s does not exist' % optname
             return
         value = self.is_valid(self.__options[0][optname][OPT_TYPE], value)
         if value is None:
-#                       raise RuntimeError, 'value of %s cannot be None' % optname
             return
 
         self.__options[1][optname] = value
@@ -642,7 +639,7 @@ class Config:
 
     def get(self, optname=None):
         if not optname:
-            return self.__options[1].keys()
+            return list(self.__options[1].keys())
         if optname not in self.__options[1]:
             return None
         return self.__options[1][optname]
@@ -671,7 +668,6 @@ class Config:
 
     def add_per(self, typename, name): # per_group_of_option
         if typename not in self.__options_per_key:
-#                       raise RuntimeError, 'option %s does not exist' % typename
             return
 
         opt = self.__options_per_key[typename]
@@ -685,7 +681,6 @@ class Config:
 
     def del_per(self, typename, name, subname = None): # per_group_of_option
         if typename not in self.__options_per_key:
-#                       raise RuntimeError, 'option %s does not exist' % typename
             return
 
         opt = self.__options_per_key[typename]
@@ -698,22 +693,18 @@ class Config:
 
     def set_per(self, optname, key, subname, value): # per_group_of_option
         if optname not in self.__options_per_key:
-#                       raise RuntimeError, 'option %s does not exist' % optname
             return
         if not key:
             return
         dict_ = self.__options_per_key[optname][1]
         if key not in dict_:
-#                       raise RuntimeError, '%s is not a key of %s' % (key, dict_)
             self.add_per(optname, key)
         obj = dict_[key]
         if subname not in obj:
-#                       raise RuntimeError, '%s is not a key of %s' % (subname, obj)
             return
         typ = self.__options_per_key[optname][0][subname][OPT_TYPE]
         value = self.is_valid(typ, value)
         if value is None:
-#                       raise RuntimeError, '%s of %s cannot be None' % optname
             return
         obj[subname] = value
         self._timeout_save()
@@ -723,7 +714,7 @@ class Config:
             return None
         dict_ = self.__options_per_key[optname][1]
         if not key:
-            return dict_.keys()
+            return list(dict_.keys())
         if key not in dict_:
             if subname in self.__options_per_key[optname][0]:
                 return self.__options_per_key[optname][0][subname][1]
@@ -812,7 +803,7 @@ class Config:
     def _timeout_save(self):
         if self.save_timeout_id:
             return
-        self.save_timeout_id = gobject.timeout_add(1000, self._really_save)
+        self.save_timeout_id = GLib.timeout_add(1000, self._really_save)
 
     def __init__(self):
         #init default values
diff --git a/src/common/configpaths.py b/src/common/configpaths.py
index 3c4e8f225..05b6bc225 100644
--- a/src/common/configpaths.py
+++ b/src/common/configpaths.py
@@ -25,7 +25,7 @@
 import os
 import sys
 import tempfile
-import defs
+from common import defs
 HAVE_XDG = True
 try:
     __import__(xdg)
@@ -61,7 +61,7 @@ def fse(s):
     """
     Convert from filesystem encoding if not already Unicode
     """
-    return unicode(s, sys.getfilesystemencoding())
+    return s
 
 def windowsify(s):
     if os.name == 'nt':
@@ -82,10 +82,10 @@ class ConfigPaths:
                 # variable 'appdata' is in? Assuming it to be in filesystem
                 # encoding.
                 self.config_root = self.cache_root = self.data_root = \
-                        os.path.join(fse(os.environ[u'appdata']), u'Gajim')
+                        os.path.join(fse(os.environ['appdata']), 'Gajim')
             except KeyError:
                 # win9x, in cwd
-                self.config_root = self.cache_root = self.data_root = u'.'
+                self.config_root = self.cache_root = self.data_root = '.'
         else: # Unices
             # Pass in an Unicode string, and hopefully get one back.
             if HAVE_XDG:
@@ -93,23 +93,23 @@ class ConfigPaths:
                 if not self.config_root:
                     # Folder doesn't exist yet.
                     self.config_root = os.path.join(xdg.BaseDirectory.\
-                            xdg_config_dirs[0], u'gajim')
+                            xdg_config_dirs[0], 'gajim')
 
                 self.cache_root = os.path.join(xdg.BaseDirectory.xdg_cache_home,
-                        u'gajim')
+                        'gajim')
 
                 self.data_root = xdg.BaseDirectory.save_data_path('gajim')
                 if not self.data_root:
                     self.data_root = os.path.join(xdg.BaseDirectory.\
-                            xdg_data_dirs[0], u'gajim')
+                            xdg_data_dirs[0], 'gajim')
             else:
                 expand = os.path.expanduser
-                base = os.getenv('XDG_CONFIG_HOME') or expand(u'~/.config')
-                self.config_root = os.path.join(base, u'gajim')
-                base = os.getenv('XDG_CACHE_HOME') or expand(u'~/.cache')
-                self.cache_root = os.path.join(base, u'gajim')
-                base = os.getenv('XDG_DATA_HOME') or expand(u'~/.local/share')
-                self.data_root = os.path.join(base, u'gajim')
+                base = os.getenv('XDG_CONFIG_HOME') or expand('~/.config')
+                self.config_root = os.path.join(base, 'gajim')
+                base = os.getenv('XDG_CACHE_HOME') or expand('~/.cache')
+                self.cache_root = os.path.join(base, 'gajim')
+                base = os.getenv('XDG_DATA_HOME') or expand('~/.local/share')
+                self.data_root = os.path.join(base, 'gajim')
 
     def add(self, name, type_, path):
         self.paths[name] = (type_, path)
@@ -130,40 +130,41 @@ class ConfigPaths:
         except KeyError:
             return default
 
-    def iteritems(self):
-        for key in self.paths.iterkeys():
+    def items(self):
+        for key in self.paths.keys():
             yield (key, self[key])
 
     def init(self, root=None):
         if root is not None:
             self.config_root = self.cache_root = self.data_root = root
 
-        d = {'MY_DATA': '', 'LOG_DB': u'logs.db', 'MY_CACERTS': u'cacerts.pem',
-                'MY_EMOTS': u'emoticons', 'MY_ICONSETS': u'iconsets',
-                'MY_MOOD_ICONSETS': u'moods', 'MY_ACTIVITY_ICONSETS': u'activities',
-                'PLUGINS_USER': u'plugins', 'MY_PEER_CERTS': u'certs'}
+        d = {'MY_DATA': '', 'LOG_DB': 'logs.db', 'MY_CACERTS': 'cacerts.pem',
+            'MY_EMOTS': 'emoticons', 'MY_ICONSETS': 'iconsets',
+            'MY_MOOD_ICONSETS': 'moods', 'MY_ACTIVITY_ICONSETS': 'activities',
+            'PLUGINS_USER': 'plugins', 'MY_PEER_CERTS': 'certs',
+            'RNG_SEED': 'rng_seed'}
         for name in d:
             self.add(name, TYPE_DATA, windowsify(d[name]))
 
-        d = {'MY_CACHE': '', 'CACHE_DB': u'cache.db', 'VCARD': u'vcards',
-                'AVATAR': u'avatars'}
+        d = {'MY_CACHE': '', 'CACHE_DB': 'cache.db', 'VCARD': 'vcards',
+                'AVATAR': 'avatars'}
         for name in d:
             self.add(name, TYPE_CACHE, windowsify(d[name]))
 
         self.add('MY_CONFIG', TYPE_CONFIG, '')
         self.add('MY_CERT', TYPE_CONFIG, '')
 
-        basedir = fse(os.environ.get(u'GAJIM_BASEDIR', defs.basedir))
-        self.add('DATA', None, os.path.join(basedir, windowsify(u'data')))
-        self.add('ICONS', None, os.path.join(basedir, windowsify(u'icons')))
+        basedir = fse(os.environ.get('GAJIM_BASEDIR', defs.basedir))
+        self.add('DATA', None, os.path.join(basedir, windowsify('data')))
+        self.add('ICONS', None, os.path.join(basedir, windowsify('icons')))
         self.add('HOME', None, fse(os.path.expanduser('~')))
         self.add('PLUGINS_BASE', None, os.path.join(basedir,
-            windowsify(u'plugins')))
+            windowsify('plugins')))
         try:
             self.add('TMP', None, fse(tempfile.gettempdir()))
-        except IOError, e:
-            print >> sys.stderr, 'Error opening tmp folder: %s\nUsing %s' % (
-                    str(e), os.path.expanduser('~'))
+        except IOError as e:
+            print('Error opening tmp folder: %s\nUsing %s' % (str(e),
+                os.path.expanduser('~')), file=sys.stderr)
             self.add('TMP', None, fse(os.path.expanduser('~')))
 
         try:
@@ -173,17 +174,17 @@ class ConfigPaths:
             pass
 
     def init_profile(self, profile=''):
-        conffile = windowsify(u'config')
-        pidfile = windowsify(u'gajim')
-        secretsfile = windowsify(u'secrets')
-        pluginsconfdir = windowsify(u'pluginsconfig')
+        conffile = windowsify('config')
+        pidfile = windowsify('gajim')
+        secretsfile = windowsify('secrets')
+        pluginsconfdir = windowsify('pluginsconfig')
 
         if len(profile) > 0:
-            conffile += u'.' + profile
-            pidfile += u'.' + profile
-            secretsfile += u'.' + profile
-            pluginsconfdir += u'.' + profile
-        pidfile += u'.pid'
+            conffile += '.' + profile
+            pidfile += '.' + profile
+            secretsfile += '.' + profile
+            pluginsconfdir += '.' + profile
+        pidfile += '.pid'
         self.add('CONFIG_FILE', TYPE_CONFIG, conffile)
         self.add('PID_FILE', TYPE_CACHE, pidfile)
         self.add('SECRETS_FILE', TYPE_DATA, secretsfile)
diff --git a/src/common/connection.py b/src/common/connection.py
index 3f27510e0..96e8ae085 100644
--- a/src/common/connection.py
+++ b/src/common/connection.py
@@ -59,7 +59,7 @@ from common import gpg
 from common import passwords
 from common import exceptions
 from common import check_X509
-from connection_handlers import *
+from common.connection_handlers import *
 
 if gajim.HAVE_PYOPENSSL:
     import OpenSSL.crypto
@@ -312,8 +312,7 @@ class CommonConnection:
             else:
                 def encrypt_thread(msg, keyID, always_trust=False):
                     # encrypt message. This function returns (msgenc, error)
-                    return self.gpg.encrypt(msg.encode('utf-8'), [keyID],
-                        always_trust)
+                    return self.gpg.encrypt(msg, [keyID], always_trust)
                 def _on_encrypted(output):
                     msgenc, error = output
                     if error == 'NOT_TRUSTED':
@@ -329,7 +328,7 @@ class CommonConnection:
                                     form_node, user_nick, keyID, attention,
                                     correction_msg, callback)
                         gajim.nec.push_incoming_event(GPGTrustKeyEvent(None,
-                            conn=self, callback=_on_always_trust))
+                            conn=self, keyID=keyID, callback=_on_always_trust))
                     else:
                         self._message_encrypted_cb(output, type_, msg, msgtxt,
                             original_message, fjid, resource, jid, xhtml,
@@ -519,7 +518,7 @@ class CommonConnection:
                             log_msg = '%s' % (
                                 nbxmpp.NS_XHTML, xhtml)
                         gajim.logger.write(kind, jid, log_msg)
-                    except exceptions.PysqliteOperationalError, e:
+                    except exceptions.PysqliteOperationalError as e:
                         self.dispatch('DB_ERROR', (_('Disk Write Error'),
                             str(e)))
                     except exceptions.DatabaseMalformed:
@@ -680,10 +679,10 @@ class CommonConnection:
         if realm == '':
             if event == nbxmpp.transports_nb.DATA_RECEIVED:
                 gajim.nec.push_incoming_event(StanzaReceivedEvent(None,
-                    conn=self, stanza_str=unicode(data, errors='ignore')))
+                    conn=self, stanza_str=data))
             elif event == nbxmpp.transports_nb.DATA_SENT:
                 gajim.nec.push_incoming_event(StanzaSentEvent(None, conn=self,
-                    stanza_str=unicode(data)))
+                    stanza_str=data))
 
     def change_status(self, show, msg, auto=False):
         if not msg:
@@ -779,7 +778,7 @@ class Connection(CommonConnection, ConnectionHandlers):
         self.private_storage_supported = True
         self.privacy_rules_requested = False
         self.streamError = ''
-        self.secret_hmac = str(random.random())[2:]
+        self.secret_hmac = str(random.random())[2:].encode('utf-8')
 
         self.sm = Smacks(self) # Stream Management
 
@@ -981,8 +980,8 @@ class Connection(CommonConnection, ConnectionHandlers):
                             self.connection.SendAndCallForResponse(iq,
                                     _on_register_result)
                         else:
-                            if self.new_account_form.keys().sort() != \
-                            conf.keys().sort():
+                            if list(self.new_account_form.keys()).sort() != \
+                            list(conf.keys()).sort():
                                 # requested config has changed since first connection
                                 reason = _('Server %s provided a different '
                                     'registration form') % data[0]
@@ -1239,11 +1238,9 @@ class Connection(CommonConnection, ConnectionHandlers):
             if not os.path.exists(cacerts):
                 cacerts = ''
             mycerts = common.gajim.MY_CACERTS
-            tls_version = gajim.config.get_per('accounts', self.name,
-                'tls_version')
             cipher_list = gajim.config.get_per('accounts', self.name,
                 'cipher_list')
-            secure_tuple = (self._current_type, cacerts, mycerts, tls_version, cipher_list)
+            secure_tuple = (self._current_type, cacerts, mycerts, cipher_list)
 
             con = nbxmpp.NonBlockingClient(
                 domain=self._hostname,
@@ -1391,41 +1388,40 @@ class Connection(CommonConnection, ConnectionHandlers):
         cert = con.Connection.ssl_certificate
         if errnum > 0 and str(errnum) not in gajim.config.get_per('accounts',
         self.name, 'ignore_ssl_errors').split():
-            text = _('The authenticity of the %s certificate could be invlid') \
-                % hostname
+            text = _('The authenticity of the %s certificate could be invalid'
+                ) % hostname
             if errnum in ssl_error:
                 text += _('\nSSL Error: %s ') % ssl_error[errnum]
             else:
                 text += _('\nUnknown SSL error: %d') % errnum
-            fingerprint = cert.digest('sha1')
+            fingerprint = cert.digest('sha1').decode('utf-8')
             pem = OpenSSL.crypto.dump_certificate(OpenSSL.crypto.FILETYPE_PEM,
-                cert)
+                cert).decode('utf-8')
             gajim.nec.push_incoming_event(SSLErrorEvent(None, conn=self,
                 error_text=text, error_num=errnum, cert=pem,
                 fingerprint=fingerprint, certificate=cert))
             return True
         if cert:
-            fingerprint = cert.digest('sha1')
+            fingerprint = cert.digest('sha1').decode('utf-8')
             saved_fingerprint = gajim.config.get_per('accounts', self.name,
                 'ssl_fingerprint_sha1')
             if saved_fingerprint:
                 # Check sha1 fingerprint
                 if fingerprint != saved_fingerprint:
                     gajim.nec.push_incoming_event(FingerprintErrorEvent(None,
-                        conn=self, certificate=con.Connection.ssl_certificate,
+                        conn=self, certificate=cert,
                         new_fingerprint=fingerprint))
                     return True
             else:
                 gajim.config.set_per('accounts', self.name,
                     'ssl_fingerprint_sha1', fingerprint)
-            if not check_X509.check_certificate(con.Connection.ssl_certificate,
-            hostname) and '100' not in gajim.config.get_per('accounts',
-            self.name, 'ignore_ssl_errors').split():
-                fingerprint = cert.digest('sha1')
+            if not check_X509.check_certificate(cert, hostname) and \
+            '100' not in gajim.config.get_per('accounts', self.name,
+            'ignore_ssl_errors').split():
                 pem = OpenSSL.crypto.dump_certificate(
-                    OpenSSL.crypto.FILETYPE_PEM, cert)
+                    OpenSSL.crypto.FILETYPE_PEM, cert).decode('utf-8')
                 txt = _('The authenticity of the %s certificate could be '
-                    'invalid.\nThe certificate does not cover this domain.') % \
+                    'invalid.\nThe certificate does not cover this domain.') %\
                     hostname
                 gajim.nec.push_incoming_event(SSLErrorEvent(None, conn=self,
                     error_text=txt, error_num=100, cert=pem,
@@ -1523,7 +1519,7 @@ class Connection(CommonConnection, ConnectionHandlers):
             self.connection.send(' ')
 
     def _on_xmpp_ping_answer(self, iq_obj):
-        id_ = unicode(iq_obj.getAttr('id'))
+        id_ = iq_obj.getAttr('id')
         assert id_ == self.awaiting_xmpp_ping_id
         self.awaiting_xmpp_ping_id = None
 
@@ -1772,9 +1768,9 @@ class Connection(CommonConnection, ConnectionHandlers):
             gajim.nec.push_incoming_event(OurShowEvent(None, conn=self,
                 show=gajim.SHOW_LIST[self.connected]))
             gajim.nec.push_incoming_event(InformationEvent(None, conn=self,
-                level='error', pri_txt=_('Invisibility not supported',
+                level='error', pri_txt=_('Invisibility not supported'),
                 sec_txt=_('Account %s doesn\'t support invisibility.') % \
-                self.name)))
+                self.name))
             return
         # If we are already connected, and privacy rules are supported, send
         # offline presence first as it's required by XEP-0126
@@ -1800,7 +1796,7 @@ class Connection(CommonConnection, ConnectionHandlers):
         self.activate_privacy_rule('invisible')
         self.connected = gajim.SHOW_LIST.index('invisible')
         self.status = msg
-        priority = unicode(gajim.get_priority(self.name, 'invisible'))
+        priority = gajim.get_priority(self.name, 'invisible')
         p = nbxmpp.Presence(priority=priority)
         p = self.add_sha(p, True)
         if msg:
@@ -1981,7 +1977,7 @@ class Connection(CommonConnection, ConnectionHandlers):
                 p.setStatus(msg)
         else:
             signed = self.get_signed_presence(msg)
-            priority = unicode(gajim.get_priority(self.name, sshow))
+            priority = gajim.get_priority(self.name, sshow)
             p = nbxmpp.Presence(typ=None, priority=priority, show=sshow, to=jid)
             p = self.add_sha(p)
             if msg:
@@ -2005,7 +2001,7 @@ class Connection(CommonConnection, ConnectionHandlers):
 
     def _update_status(self, show, msg):
         xmpp_show = helpers.get_xmpp_show(show)
-        priority = unicode(gajim.get_priority(self.name, xmpp_show))
+        priority = gajim.get_priority(self.name, xmpp_show)
         p = nbxmpp.Presence(typ=None, priority=priority, show=xmpp_show)
         p = self.add_sha(p)
         if msg:
@@ -2047,6 +2043,8 @@ class Connection(CommonConnection, ConnectionHandlers):
                 return
             if isinstance(jid, list):
                 for j in jid:
+                    if session is None:
+                        session = self.get_or_create_session(j, '')
                     self.log_message(j, msg, forward_from, session,
                         original_message, subject, type_, xhtml)
             else:
@@ -2562,7 +2560,7 @@ class Connection(CommonConnection, ConnectionHandlers):
 
         p = nbxmpp.Presence(to='%s/%s' % (room_jid, nick),
                 show=show, status=self.status)
-        h = hmac.new(self.secret_hmac, room_jid).hexdigest()[:6]
+        h = hmac.new(self.secret_hmac, room_jid.encode('utf-8')).hexdigest()[:6]
         id_ = self.connection.getAnID()
         id_ = 'gajim_muc_' + id_ + '_' + h
         p.setID(id_)
@@ -2670,7 +2668,7 @@ class Connection(CommonConnection, ConnectionHandlers):
         xmpp_show = helpers.get_xmpp_show(show)
         p = nbxmpp.Presence(to='%s/%s' % (jid, nick), typ=ptype,
             show=xmpp_show, status=status)
-        h = hmac.new(self.secret_hmac, jid).hexdigest()[:6]
+        h = hmac.new(self.secret_hmac, jid.encode('utf-8')).hexdigest()[:6]
         id_ = self.connection.getAnID()
         id_ = 'gajim_muc_' + id_ + '_' + h
         p.setID(id_)
@@ -2847,6 +2845,19 @@ class Connection(CommonConnection, ConnectionHandlers):
         """
         Send invitation
         """
+        contact = gajim.contacts.get_contact_from_full_jid(self.name, to)
+        if contact and contact.supports(nbxmpp.NS_CONFERENCE):
+            # send direct invite
+            message=nbxmpp.Message(to=to)
+            attrs = {'jid': room}
+            if reason:
+                attrs['reason'] = reason
+            if continue_tag:
+                attrs['continue'] = 'true'
+            c = message.addChild(name='x', attrs=attrs,
+                namespace=nbxmpp.NS_CONFERENCE)
+            self.connection.send(message)
+            return
         message=nbxmpp.Message(to=room)
         c = message.addChild(name='x', namespace=nbxmpp.NS_MUC_USER)
         c = c.addChild(name='invite', attrs={'to': to})
@@ -2889,7 +2900,7 @@ class Connection(CommonConnection, ConnectionHandlers):
             return
         if self.awaiting_xmpp_ping_id:
             # We haven't got the pong in time, disco and reconnect
-            log.warn("No reply received for keepalive ping. Reconnecting.")
+            log.warning("No reply received for keepalive ping. Reconnecting.")
             self._disconnectedReconnCB()
 
     def _reconnect_alarm(self):
diff --git a/src/common/connection_handlers.py b/src/common/connection_handlers.py
index efe943ca2..5e413df17 100644
--- a/src/common/connection_handlers.py
+++ b/src/common/connection_handlers.py
@@ -33,17 +33,16 @@ import base64
 import sys
 import operator
 import hashlib
-import gobject
-import locale
+from gi.repository import GLib
 
 from time import (altzone, daylight, gmtime, localtime, mktime, strftime,
         time as time_time, timezone, tzname)
 from calendar import timegm
 
 import nbxmpp
-import common.caps_cache as capscache
+from common import caps_cache as capscache
 
-from pep import LOCATION_DATA
+from common.pep import LOCATION_DATA
 from common import helpers
 from common import gajim
 from common import exceptions
@@ -188,8 +187,8 @@ class ConnectionDisco:
         if not self.connection or self.connected < 2:
             return
         frm = helpers.get_full_jid_from_iq(iq_obj)
-        to = unicode(iq_obj.getAttr('to'))
-        id_ = unicode(iq_obj.getAttr('id'))
+        to = iq_obj.getAttr('to')
+        id_ = iq_obj.getAttr('id')
         iq = nbxmpp.Iq(to=frm, typ='result', queryNS=nbxmpp.NS_DISCO, frm=to)
         iq.setAttr('id', id_)
         query = iq.setTag('query')
@@ -242,7 +241,7 @@ class ConnectionDisco:
         if self.commandInfoQuery(con, iq_obj):
             raise nbxmpp.NodeProcessed
 
-        id_ = unicode(iq_obj.getAttr('id'))
+        id_ = iq_obj.getAttr('id')
         if id_[:6] == 'Gajim_':
             # We get this request from echo.server
             raise nbxmpp.NodeProcessed
@@ -329,7 +328,7 @@ class ConnectionVcard:
                 os.remove(path)
             # create folder if needed
             if not os.path.isdir(path):
-                os.mkdir(path, 0700)
+                os.mkdir(path, 0o700)
             puny_nick = helpers.sanitize_filename(nick)
             path_to_file = os.path.join(gajim.VCARD_PATH, puny_jid, puny_nick)
         else:
@@ -338,7 +337,7 @@ class ConnectionVcard:
             fil = open(path_to_file, 'w')
             fil.write(str(card))
             fil.close()
-        except IOError, e:
+        except IOError as e:
             gajim.nec.push_incoming_event(InformationEvent(None, conn=self,
                 level='error', pri_txt=_('Disk Write Error'), sec_txt=str(e)))
 
@@ -438,7 +437,7 @@ class ConnectionVcard:
         if 'PHOTO' in vcard and isinstance(vcard['PHOTO'], dict) and \
         'BINVAL' in vcard['PHOTO']:
             photo = vcard['PHOTO']['BINVAL']
-            photo_decoded = base64.decodestring(photo)
+            photo_decoded = base64.b64decode(photo.encode('utf-8'))
             gajim.interface.save_avatar_files(our_jid, photo_decoded)
             avatar_sha = hashlib.sha1(photo_decoded).hexdigest()
             iq2.getTag('PHOTO').setTagData('SHA', avatar_sha)
@@ -565,7 +564,7 @@ class ConnectionVcard:
                     self.discover_ft_proxies()
                 gajim.nec.push_incoming_event(RosterReceivedEvent(None,
                     conn=self))
-            gobject.timeout_add_seconds(10, self.discover_servers)
+            GLib.timeout_add_seconds(10, self.discover_servers)
         elif self.awaiting_answers[id_][0] == PRIVACY_ARRIVED:
             if iq_obj.getType() != 'error':
                 self.privacy_rules_supported = True
@@ -619,7 +618,7 @@ class ConnectionVcard:
 
         elif self.awaiting_answers[id_][0] == ARCHIVING_COLLECTIONS_ARRIVED:
             # TODO
-            print 'ARCHIVING_COLLECTIONS_ARRIVED'
+            print('ARCHIVING_COLLECTIONS_ARRIVED')
 
         elif self.awaiting_answers[id_][0] == ARCHIVING_COLLECTION_ARRIVED:
             def save_if_not_exists(with_, nick, direction, tim, payload):
@@ -629,7 +628,7 @@ class ConnectionVcard:
                     gajim.logger.save_if_not_exists(with_, direction, tim,
                         msg=payload[0].getData(), nick=nick)
                 elif payload[0].getName() == 'message':
-                    print 'Not implemented'
+                    print('Not implemented')
             chat = iq_obj.getTag('chat')
             if chat:
                 with_ = chat.getAttr('with')
@@ -710,7 +709,7 @@ class ConnectionVcard:
         'BINVAL' in vcard['PHOTO']:
             photo = vcard['PHOTO']['BINVAL']
             try:
-                photo_decoded = base64.decodestring(photo)
+                photo_decoded = base64.b64decode(photo.encode('utf-8'))
                 avatar_sha = hashlib.sha1(photo_decoded).hexdigest()
             except Exception:
                 avatar_sha = ''
@@ -732,7 +731,7 @@ class ConnectionVcard:
             puny_nick = helpers.sanitize_filename(resource)
             # create folder if needed
             if not os.path.isdir(begin_path):
-                os.mkdir(begin_path, 0700)
+                os.mkdir(begin_path, 0o700)
             begin_path = os.path.join(begin_path, puny_nick)
             frm_jid += '/' + resource
         if photo_decoded:
@@ -1139,7 +1138,7 @@ class ConnectionHandlersBase:
         gajim.config.should_log(self.name, obj.jid):
             try:
                 gajim.logger.write('status', obj.jid, obj.status, obj.show)
-            except exceptions.PysqliteOperationalError, e:
+            except exceptions.PysqliteOperationalError as e:
                 self.dispatch('DB_ERROR', (_('Disk Write Error'), str(e)))
             except exceptions.DatabaseMalformed:
                 pritext = _('Database Error')
@@ -1162,8 +1161,7 @@ class ConnectionHandlersBase:
         decmsg = self.gpg.decrypt(encmsg, keyID)
         decmsg = self.connection.Dispatcher.replace_non_character(decmsg)
         # \x00 chars are not allowed in C (so in GTK)
-        obj.msgtxt = decmsg.replace('\x00', '').encode(
-            locale.getpreferredencoding()).decode('utf-8')
+        obj.msgtxt = decmsg.replace('\x00', '')
         obj.encrypted = 'xep27'
         self.gpg_messages_to_decrypt.remove([encmsg, keyID, obj])
 
@@ -1211,7 +1209,7 @@ class ConnectionHandlersBase:
         gc_contact = gajim.contacts.get_gc_contact(self.name, obj.jid, nick)
         if obj.receipt_request_tag and gajim.config.get_per('accounts',
         self.name, 'answer_receipts') and ((contact and contact.sub \
-        not in (u'to', u'none')) or gc_contact) and obj.mtype != 'error' and \
+        not in ('to', 'none')) or gc_contact) and obj.mtype != 'error' and \
         not obj.forwarded:
             receipt = nbxmpp.Message(to=obj.fjid, typ='chat')
             receipt.setID(obj.id_)
@@ -1264,7 +1262,7 @@ class ConnectionHandlersBase:
             try:
                 gajim.logger.write('error', frm, error_msg, tim=tim,
                     subject=subject)
-            except exceptions.PysqliteOperationalError, e:
+            except exceptions.PysqliteOperationalError as e:
                 self.dispatch('DB_ERROR', (_('Disk Write Error'), str(e)))
             except exceptions.DatabaseMalformed:
                 pritext = _('Database Error')
@@ -1290,7 +1288,7 @@ class ConnectionHandlersBase:
             jid = gajim.get_jid_without_resource(jid)
 
         try:
-            return self.sessions[jid].values()
+            return list(self.sessions[jid].values())
         except KeyError:
             return []
 
@@ -1352,7 +1350,7 @@ class ConnectionHandlersBase:
         received a thread_id yet and returns the session that we last sent a
         message to
         """
-        sessions = self.sessions[jid].values()
+        sessions = list(self.sessions[jid].values())
 
         # sessions that we haven't received a thread ID in
         idless = [s for s in sessions if not s.received_thread_id]
@@ -1384,7 +1382,7 @@ class ConnectionHandlersBase:
         Find an active session that doesn't have a control attached
         """
         try:
-            sessions = self.sessions[jid].values()
+            sessions = list(self.sessions[jid].values())
 
             # filter out everything except the default session type
             chat_sessions = [s for s in sessions if isinstance(s,
@@ -1767,9 +1765,8 @@ ConnectionJingle, ConnectionIBBytestream):
             iq_obj = obj.stanza.buildReply('result')
             qp = iq_obj.setQuery()
             qp.setTagData('utc', strftime('%Y%m%dT%H:%M:%S', gmtime()))
-            qp.setTagData('tz', helpers.decode_string(tzname[daylight]))
-            qp.setTagData('display', helpers.decode_string(strftime('%c',
-                localtime())))
+            qp.setTagData('tz', tzname[daylight])
+            qp.setTagData('display', strftime('%c', localtime()))
         else:
             iq_obj = obj.stanza.buildReply('error')
             err = nbxmpp.ErrorNode(name=nbxmpp.NS_STANZAS + \
diff --git a/src/common/connection_handlers_events.py b/src/common/connection_handlers_events.py
index d3d9456dc..433ab9ec7 100644
--- a/src/common/connection_handlers_events.py
+++ b/src/common/connection_handlers_events.py
@@ -40,7 +40,8 @@ from nbxmpp.protocol import NS_CHATSTATES
 from common.jingle_transport import JingleTransportSocks5
 from common.file_props import FilesProp
 
-import gtkgui_helpers
+if gajim.HAVE_PYOPENSSL:
+    import OpenSSL.crypto
 
 import logging
 log = logging.getLogger('gajim.c.connection_handlers_events')
@@ -221,11 +222,11 @@ class TimeResultReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
 
         try:
             t = datetime.datetime.strptime(utc_time, '%Y-%m-%dT%H:%M:%SZ')
-        except ValueError, e:
+        except ValueError:
             try:
                 t = datetime.datetime.strptime(utc_time,
                     '%Y-%m-%dT%H:%M:%S.%fZ')
-            except ValueError, e:
+            except ValueError as e:
                 log.info('Wrong time format: %s' % str(e))
                 return
 
@@ -309,7 +310,7 @@ class RosterItemExchangeEvent(nec.NetworkIncomingEvent, HelperEvent):
             try:
                 jid = helpers.parse_jid(item.getAttr('jid'))
             except helpers.InvalidFormat:
-                log.warn('Invalid JID: %s, ignoring it' % item.getAttr('jid'))
+                log.warning('Invalid JID: %s, ignoring it' % item.getAttr('jid'))
                 continue
             name = item.getAttr('name')
             contact = gajim.contacts.get_contact(self.conn.name, jid)
@@ -367,10 +368,10 @@ class RosterReceivedEvent(nec.NetworkIncomingEvent):
                 try:
                     j = helpers.parse_jid(jid)
                 except Exception:
-                    print >> sys.stderr, _('JID %s is not RFC compliant. It '
-                        'will not be added to your roster. Use roster '
-                        'management tools such as '
-                        'http://jru.jabberstudio.org/ to remove it') % jid
+                    print(_('JID %s is not RFC compliant. It will not be added '
+                        'to your roster. Use roster management tools such as '
+                        'http://jru.jabberstudio.org/ to remove it') % jid,
+                        file=sys.stderr)
                 else:
                     infos = raw_roster[jid]
                     if jid != our_jid and (not infos['subscription'] or \
@@ -402,7 +403,7 @@ class RosterSetReceivedEvent(nec.NetworkIncomingEvent):
             try:
                 jid = helpers.parse_jid(item.getAttr('jid'))
             except helpers.InvalidFormat:
-                log.warn('Invalid JID: %s, ignoring it' % item.getAttr('jid'))
+                log.warning('Invalid JID: %s, ignoring it' % item.getAttr('jid'))
                 continue
             name = item.getAttr('name')
             sub = item.getAttr('subscription')
@@ -450,7 +451,7 @@ class MucAdminReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
                 try:
                     jid = helpers.parse_jid(item.getAttr('jid'))
                 except helpers.InvalidFormat:
-                    log.warn('Invalid JID: %s, ignoring it' % \
+                    log.warning('Invalid JID: %s, ignoring it' % \
                         item.getAttr('jid'))
                     continue
                 affiliation = item.getAttr('affiliation')
@@ -492,7 +493,7 @@ class BookmarksHelper:
             try:
                 jid = helpers.parse_jid(conf.getAttr('jid'))
             except helpers.InvalidFormat:
-                log.warn('Invalid JID: %s, ignoring it' % conf.getAttr('jid'))
+                log.warning('Invalid JID: %s, ignoring it' % conf.getAttr('jid'))
                 continue
             bm = {'name': conf.getAttr('name'),
                 'jid': jid,
@@ -544,7 +545,7 @@ class PrivateStorageRosternotesReceivedEvent(nec.NetworkIncomingEvent):
             try:
                 jid = helpers.parse_jid(note.getAttr('jid'))
             except helpers.InvalidFormat:
-                log.warn('Invalid JID: %s, ignoring it' % note.getAttr('jid'))
+                log.warning('Invalid JID: %s, ignoring it' % note.getAttr('jid'))
                 continue
             annotation = note.getData()
             self.annotations[jid] = annotation
@@ -758,7 +759,7 @@ PresenceHelperEvent):
         try:
             self.get_jid_resource()
         except Exception:
-            log.warn('Invalid JID: %s, ignoring it' % self.stanza.getFrom())
+            log.warning('Invalid JID: %s, ignoring it' % self.stanza.getFrom())
             return
         jid_list = gajim.contacts.get_jid_list(self.conn.name)
         self.timestamp = None
@@ -798,7 +799,8 @@ PresenceHelperEvent):
         and self.ptype == 'error':
             # Error presences may not include sent stanza, so we don't detect
             # it's a muc presence. So detect it by ID
-            h = hmac.new(self.conn.secret_hmac, self.jid).hexdigest()[:6]
+            h = hmac.new(self.conn.secret_hmac, self.jid.encode('utf-8')).\
+                hexdigest()[:6]
             if self.id_.split('_')[-1] == h:
                 self.is_gc = True
         self.status = self.stanza.getStatus() or ''
@@ -906,7 +908,7 @@ class GcPresenceReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
             try:
                 gajim.logger.write('gcstatus', self.fjid, st,
                     self.show)
-            except exceptions.PysqliteOperationalError, e:
+            except exceptions.PysqliteOperationalError as e:
                 self.conn.dispatch('DB_ERROR', (_('Disk Write Error'),
                     str(e)))
             except exceptions.DatabaseMalformed:
@@ -1038,7 +1040,7 @@ class MessageReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
                 try:
                     self.fjid = helpers.parse_jid(address.getAttr('jid'))
                 except helpers.InvalidFormat:
-                    log.warn('Invalid JID: %s, ignoring it' % address.getAttr(
+                    log.warning('Invalid JID: %s, ignoring it' % address.getAttr(
                         'jid'))
                     return
                 self.jid = gajim.get_jid_without_resource(self.fjid)
@@ -1078,10 +1080,15 @@ class MessageReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
         self.invite_tag = None
         self.decline_tag = None
         if not self.enc_tag:
+            # Direct invitation?
             self.invite_tag = self.stanza.getTag('x',
-                namespace=nbxmpp.NS_MUC_USER)
-            if self.invite_tag and not self.invite_tag.getTag('invite'):
-                self.invite_tag = None
+                namespace=nbxmpp.NS_CONFERENCE)
+            # Mediated invitation?
+            if not self.invite_tag:
+                self.invite_tag = self.stanza.getTag('x',
+                    namespace=nbxmpp.NS_MUC_USER)
+                if self.invite_tag and not self.invite_tag.getTag('invite'):
+                    self.invite_tag = None
 
             self.decline_tag = self.stanza.getTag('x',
                 namespace=nbxmpp.NS_MUC_USER)
@@ -1182,7 +1189,6 @@ class ZeroconfMessageReceivedEvent(MessageReceivedEvent):
                     self.fjid = key
                     break
 
-        self.fjid = unicode(self.fjid)
         self.jid, self.resource = gajim.get_room_and_nick_from_fjid(self.fjid)
 
     def generate(self):
@@ -1195,25 +1201,47 @@ class GcInvitationReceivedEvent(nec.NetworkIncomingEvent):
     base_network_events = []
 
     def generate(self):
-        self.room_jid = self.msg_obj.fjid
+        invite_tag = self.msg_obj.invite_tag
+        if invite_tag.getNamespace() == nbxmpp.NS_CONFERENCE:
+            # direct invitation
+            try:
+                self.room_jid = helpers.parse_jid(invite_tag.getAttr('jid'))
+            except helpers.InvalidFormat:
+                log.warning('Invalid JID: %s, ignoring it' % invite_tag.getAttr(
+                    'jid'))
+                return
+            self.jid_from = self.msg_obj.fjid
+            self.reason = invite_tag.getAttr('reason')
+            self.password = invite_tag.getAttr('password')
+            self.is_continued = False
+            if invite_tag.getAttr('continue') == 'true':
+                self.is_continued = True
+        else:
+            self.room_jid = self.msg_obj.fjid
+            item = self.msg_obj.invite_tag.getTag('invite')
+            try:
+                self.jid_from = helpers.parse_jid(item.getAttr('from'))
+            except helpers.InvalidFormat:
+                log.warning('Invalid JID: %s, ignoring it' % item.getAttr(
+                    'from'))
+                return
 
-        item = self.msg_obj.invite_tag.getTag('invite')
-        try:
-            self.jid_from = helpers.parse_jid(item.getAttr('from'))
-        except helpers.InvalidFormat:
-            log.warn('Invalid JID: %s, ignoring it' % item.getAttr('from'))
+            self.reason = item.getTagData('reason')
+            self.password = invite_tag.getTagData('password')
+
+            self.is_continued = False
+            if item.getTag('continue'):
+                self.is_continued = True
+
+        if self.room_jid in gajim.gc_connected[self.conn.name] and \
+        gajim.gc_connected[self.conn.name][self.room_jid]:
+            # We are already in groupchat. Ignore invitation
             return
         jid = gajim.get_jid_without_resource(self.jid_from)
         if gajim.config.get_per('accounts', self.conn.name,
         'ignore_unknown_contacts') and not gajim.contacts.get_contacts(
         self.conn.name, jid):
             return
-        self.reason = item.getTagData('reason')
-        self.password = self.msg_obj.invite_tag.getTagData('password')
-
-        self.is_continued = False
-        if item.getTag('continue'):
-            self.is_continued = True
 
         return True
 
@@ -1228,7 +1256,7 @@ class GcDeclineReceivedEvent(nec.NetworkIncomingEvent):
         try:
             self.jid_from = helpers.parse_jid(item.getAttr('from'))
         except helpers.InvalidFormat:
-            log.warn('Invalid JID: %s, ignoring it' % item.getAttr('from'))
+            log.warning('Invalid JID: %s, ignoring it' % item.getAttr('from'))
             return
         jid = gajim.get_jid_without_resource(self.jid_from)
         if gajim.config.get_per('accounts', self.conn.name,
@@ -1607,12 +1635,12 @@ class NewAccountConnectedEvent(nec.NetworkIncomingEvent):
             self.ssl_msg = ssl_error.get(er, _('Unknown SSL error: %d') % \
                 self.errnum)
         self.ssl_cert = ''
-        if len(self.conn.connection.Connection.ssl_cert_pem):
-            self.ssl_cert = self.conn.connection.Connection.ssl_cert_pem
         self.ssl_fingerprint = ''
         if self.conn.connection.Connection.ssl_certificate:
-            self.ssl_fingerprint = \
-                self.conn.connection.Connection.ssl_certificate.digest('sha1')
+            cert = self.conn.connection.Connection.ssl_certificate
+            self.ssl_cert = OpenSSL.crypto.dump_certificate(
+                OpenSSL.crypto.FILETYPE_PEM, cert).decode('utf-8')
+            self.ssl_fingerprint = cert.digest('sha1').decode('utf-8')
         return True
 
 class NewAccountNotConnectedEvent(nec.NetworkIncomingEvent):
@@ -1852,6 +1880,8 @@ class MetacontactsReceivedEvent(nec.NetworkIncomingEvent):
         # Metacontact tags
         # http://www.xmpp.org/extensions/xep-0209.html
         self.meta_list = {}
+        # FIXME: disable metacontacts until they work correctly
+        return True
         query = self.stanza.getTag('query')
         storage = query.getTag('storage')
         metas = storage.getTags('meta')
@@ -1965,7 +1995,7 @@ class AgentInfoReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
         if self.id_ in self.conn.disco_info_ids:
             self.conn.disco_info_ids.remove(self.id_)
         if self.id_ is None:
-            log.warn('Invalid IQ received without an ID. Ignoring it: %s' % \
+            log.warning('Invalid IQ received without an ID. Ignoring it: %s' % \
                 self.stanza)
             return
         # According to XEP-0030:
@@ -2025,15 +2055,18 @@ class FileRequestReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
         self.fjid = self.conn._ft_get_from(self.stanza)
         self.jid = gajim.get_jid_without_resource(self.fjid)
         if self.jingle_content:
-            self.FT_content.use_security = bool(self.jingle_content.getTag(
-                'security'))
+            secu = self.jingle_content.getTag('security')
+            self.FT_content.use_security = bool(secu)
+            fingerprint = secu.getTag('fingerprint')
+            if fingerprint:
+                self.FT_content.x509_fingerprint = fingerprint.getData()
             if not self.FT_content.transport:
                 self.FT_content.transport = JingleTransportSocks5()
                 self.FT_content.transport.set_our_jid(
                     self.FT_content.session.ourjid)
                 self.FT_content.transport.set_connection(
                     self.FT_content.session.connection)
-            sid = unicode(self.stanza.getTag('jingle').getAttr('sid'))
+            sid = self.stanza.getTag('jingle').getAttr('sid')
             self.file_props = FilesProp.getNewFileProp(self.conn.name, sid)
             self.file_props.transport_sid = self.FT_content.transport.sid
             self.FT_content.file_props = self.file_props
@@ -2071,7 +2104,7 @@ class FileRequestReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
                 if name == 'name':
                     self.file_props.name = val
                 if name == 'size':
-                    self.file_props.size = val
+                    self.file_props.size = int(val)
                 if name == 'hash':
                     self.file_props.algo = child.getAttr('algo')
                     self.file_props.hash_ = val
@@ -2080,8 +2113,7 @@ class FileRequestReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
         else:
             si = self.stanza.getTag('si')
             self.file_props = FilesProp.getNewFileProp(self.conn.name,
-                                               unicode(si.getAttr('id'))
-                                                      )
+                si.getAttr('id'))
             profile = si.getAttr('profile')
             if profile != nbxmpp.NS_FILE:
                 self.conn.send_file_rejection(self.file_props, code='400',
@@ -2112,7 +2144,7 @@ class FileRequestReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
                 if name == 'name':
                     self.file_props.name = val
                 if name == 'size':
-                    self.file_props.size = val
+                    self.file_props.size = int(val)
             mime_type = si.getAttr('mime-type')
             if mime_type is not None:
                 self.file_props.mime_type = mime_type
@@ -2230,8 +2262,6 @@ class NotificationEvent(nec.NetworkIncomingEvent):
             self.popup_title = _('New Message from %(nickname)s') % \
                 {'nickname': nick}
 
-        self.popup_image = gtkgui_helpers.get_icon_path(self.popup_image, 48)
-
         if not gajim.config.get('notify_on_new_message') or \
         not self.first_unread:
             self.do_popup = False
@@ -2286,6 +2316,28 @@ class NotificationEvent(nec.NetworkIncomingEvent):
 
         self.do_popup = False
 
+    def get_path_to_generic_or_avatar(self, generic, jid=None, suffix=None):
+        """
+        Choose between avatar image and default image
+
+        Returns full path to the avatar image if it exists, otherwise returns full
+        path to the image.  generic must be with extension and suffix without
+        """
+        if jid:
+            # we want an avatar
+            puny_jid = helpers.sanitize_filename(jid)
+            path_to_file = os.path.join(gajim.AVATAR_PATH, puny_jid) + suffix
+            path_to_local_file = path_to_file + '_local'
+            for extension in ('.png', '.jpeg'):
+                path_to_local_file_full = path_to_local_file + extension
+                if os.path.exists(path_to_local_file_full):
+                    return path_to_local_file_full
+            for extension in ('.png', '.jpeg'):
+                path_to_file_full = path_to_file + extension
+                if os.path.exists(path_to_file_full):
+                    return path_to_file_full
+        return os.path.abspath(generic)
+
     def handle_incoming_pres_event(self, pres_obj):
         if gajim.jid_is_transport(pres_obj.jid):
             return True
@@ -2364,8 +2416,8 @@ class NotificationEvent(nec.NetworkIncomingEvent):
             iconset = gajim.config.get('iconset')
             img_path = os.path.join(helpers.get_iconset_path(iconset),
                 '48x48', show_image)
-        self.popup_image = gtkgui_helpers.get_path_to_generic_or_avatar(
-            img_path, jid=self.jid, suffix=suffix)
+        self.popup_image_path = self.get_path_to_generic_or_avatar(img_path,
+            jid=self.jid, suffix=suffix)
 
         self.popup_timeout = gajim.config.get('notification_timeout')
 
@@ -2411,6 +2463,7 @@ class NotificationEvent(nec.NetworkIncomingEvent):
         self.popup_event_type = ''
         self.popup_msg_type = ''
         self.popup_image = ''
+        self.popup_image_path = ''
         self.popup_timeout = -1
 
         self.do_command = False
@@ -2447,7 +2500,7 @@ class MessageOutgoingEvent(nec.NetworkOutgoingEvent):
         self.session = None
         self.forward_from = None
         self.form_node = None
-        self.original_message = ''
+        self.original_message = None
         self.delayed = None
         self.callback = None
         self.callback_args = []
diff --git a/src/common/contacts.py b/src/common/contacts.py
index 44ec63f45..dc5d841a1 100644
--- a/src/common/contacts.py
+++ b/src/common/contacts.py
@@ -28,13 +28,15 @@
 ## along with Gajim. If not, see [^.]+)(?:(?:\.(?P.+))?\.(?P[^.]+))?\s=\s(?P.*)")
 
         for line in fd:
-            try:
-                line = line.decode('utf-8')
-            except UnicodeDecodeError:
-                line = line.decode(locale.getpreferredencoding())
             optname, key, subname, value = regex.match(line).groups()
             if key is None:
                 self.old_values[optname] = value
@@ -86,19 +83,12 @@ class OptionsParser:
         if value is None:
             return
         # convert to utf8 before writing to file if needed
-        if isinstance(value, unicode):
-            value = value.encode('utf-8')
-        else:
-            value = str(value)
-        if isinstance(opt, unicode):
-            opt = opt.encode('utf-8')
+        value = str(value)
         s = ''
         if parents:
             if len(parents) == 1:
                 return
             for p in parents:
-                if isinstance(p, unicode):
-                    p = p.encode('utf-8')
                 s += p + '.'
         s += opt
         fd.write(s + ' = ' + value + '\n')
@@ -108,11 +98,11 @@ class OptionsParser:
         self.__tempfile = os.path.join(base_dir, '.' + filename)
         try:
             f = open(self.__tempfile, 'w')
-        except IOError, e:
+        except IOError as e:
             return str(e)
         try:
             gajim.config.foreach(self.write_line, f)
-        except IOError, e:
+        except IOError as e:
             return str(e)
         f.flush()
         os.fsync(f.fileno())
@@ -126,9 +116,9 @@ class OptionsParser:
                     pass
         try:
             os.rename(self.__tempfile, self.__filename)
-        except IOError, e:
+        except IOError as e:
             return str(e)
-        os.chmod(self.__filename, 0600)
+        os.chmod(self.__filename, 0o600)
 
     def update_config(self, old_version, new_version):
         old_version_list = old_version.split('.') # convert '0.x.y' to (0, x, y)
@@ -381,7 +371,7 @@ class OptionsParser:
         """
         Apply indeces to the logs database
         """
-        print _('migrating logs database to indices')
+        print(_('migrating logs database to indices'))
         # FIXME see #2812
         back = os.getcwd()
         os.chdir(logger.LOG_DB_FOLDER)
@@ -654,7 +644,7 @@ class OptionsParser:
                     '''
             )
             con.commit()
-        except sqlite.OperationalError, e:
+        except sqlite.OperationalError:
             pass
         con.close()
         gajim.config.set('version', '0.11.4.4')
@@ -714,7 +704,7 @@ class OptionsParser:
         """
         dirs = ['../data', gajim.gajimpaths.data_root, gajim.DATA_DIR]
         if os.name != 'nt':
-            dirs.append(os.path.expanduser(u'~/.gajim'))
+            dirs.append(os.path.expanduser('~/.gajim'))
         for evt in gajim.config.get_per('soundevents'):
             path = gajim.config.get_per('soundevents', evt, 'path')
             # absolute and relative passes are necessary
diff --git a/src/common/passwords.py b/src/common/passwords.py
index 84822bf5a..aa9079eda 100644
--- a/src/common/passwords.py
+++ b/src/common/passwords.py
@@ -29,11 +29,12 @@ __all__ = ['get_password', 'save_password']
 import warnings
 from common import gajim
 from common import kwalletbinding
+from common.exceptions import GnomeKeyringError
 
 USER_HAS_GNOMEKEYRING = False
 USER_USES_GNOMEKEYRING = False
 USER_HAS_KWALLETCLI = False
-gnomekeyring = None
+GnomeKeyring = None
 
 class PasswordStorage(object):
     def get_password(self, account_name):
@@ -61,13 +62,15 @@ class SimplePasswordStorage(PasswordStorage):
 
 class GnomePasswordStorage(PasswordStorage):
     def __init__(self):
-        self.keyring = gnomekeyring.get_default_keyring_sync()
+        (err, self.keyring) = GnomeKeyring.get_default_keyring_sync()
+        if err  != GnomeKeyring.Result.OK:
+            raise GnomeKeyringError(err)
         if self.keyring is None:
             self.keyring = 'login'
-        try:
-            gnomekeyring.create_sync(self.keyring, None)
-        except gnomekeyring.AlreadyExistsError:
-            pass
+        err = GnomeKeyring.create_sync(self.keyring, None)
+        if err not in (GnomeKeyring.Result.OK,
+        GnomeKeyring.Result.KEYRING_ALREADY_EXISTS):
+            raise GnomeKeyringError(err)
 
     def get_password(self, account_name):
         conf = gajim.config.get_per('accounts', account_name, 'password')
@@ -78,60 +81,74 @@ class GnomePasswordStorage(PasswordStorage):
             ## migrate the password over to keyring
             try:
                 self.save_password(account_name, password, update=False)
-            except gnomekeyring.NoKeyringDaemonError:
-                ## no keyring daemon: in the future, stop using it
-                set_storage(SimplePasswordStorage())
+            except GnomeKeyringError as e:
+                if e.error == GnomeKeyring.Result.NO_KEYRING_DAEMON:
+                    ## no keyring daemon: in the future, stop using it
+                    set_storage(SimplePasswordStorage())
             return password
-        try:
-            server = gajim.config.get_per('accounts', account_name, 'hostname')
-            user = gajim.config.get_per('accounts', account_name, 'name')
-            attributes1 = dict(server=str(server), user=str(user), protocol='xmpp')
-            attributes2 = dict(account_name=str(account_name), gajim=1)
-            try:
-                items = gnomekeyring.find_items_sync(
-                        gnomekeyring.ITEM_NETWORK_PASSWORD, attributes1)
-            except gnomekeyring.Error:
-                try:
-                    items = gnomekeyring.find_items_sync(
-                            gnomekeyring.ITEM_GENERIC_SECRET, attributes2)
-                    if items:
-                        # We found an old item, move it to new way of storing
-                        password = items[0].secret
-                        self.save_password(account_name, password)
-                        gnomekeyring.item_delete_sync(items[0].keyring,
-                                int(items[0].item_id))
-                except gnomekeyring.Error:
-                    items = []
-            if len(items) > 1:
-                warnings.warn("multiple gnome keyring items found for account %s;"
-                              " trying to use the first one..."
-                              % account_name)
-            if items:
-                return items[0].secret
+        server = gajim.config.get_per('accounts', account_name, 'hostname')
+        user = gajim.config.get_per('accounts', account_name, 'name')
+        attributes1 = GnomeKeyring.attribute_list_new()
+        GnomeKeyring.attribute_list_append_string(attributes1, 'server',
+            str(server))
+        GnomeKeyring.attribute_list_append_string(attributes1, 'user',
+            str(user))
+        GnomeKeyring.attribute_list_append_string(attributes1, 'protocol',
+            'xmpp')
+        attributes2 = GnomeKeyring.attribute_list_new()
+        GnomeKeyring.attribute_list_append_string(attributes2, 'account_name',
+            str(account_name))
+        GnomeKeyring.attribute_list_append_string(attributes2, 'gajim',
+            '1')
+        (err, items) = GnomeKeyring.find_items_sync(
+            GnomeKeyring.ItemType.NETWORK_PASSWORD, attributes1)
+        if err != GnomeKeyring.Result.OK:
+            (err, items) = GnomeKeyring.find_items_sync(
+                GnomeKeyring.ItemType.GENERIC_SECRET, attributes2)
+            if err == GnomeKeyring.Result.OK and len(items) > 0:
+                password = items[0].secret
+                self.save_password(account_name, password)
+                for item in items:
+                    GnomeKeyring.item_delete_sync(item.keyring,
+                        int(item.item_id))
             else:
-                return None
-        except gnomekeyring.DeniedError:
+                items = []
+        if len(items) > 1:
+            warnings.warn("multiple gnome keyring items found for account %s;"
+                " trying to use the first one..." % account_name)
+        if items:
+            return items[0].secret
+        else:
             return None
-        except gnomekeyring.NoKeyringDaemonError:
+        if err == GnomeKeyring.Result.NO_KEYRING_DAEMON:
             ## no keyring daemon: in the future, stop using it
             set_storage(SimplePasswordStorage())
-            return None
+        return None
 
     def save_password(self, account_name, password, update=True):
         server = gajim.config.get_per('accounts', account_name, 'hostname')
         user = gajim.config.get_per('accounts', account_name, 'name')
         display_name = _('XMPP account %s@%s') % (user, server)
-        attributes1 = dict(server=str(server), user=str(user), protocol='xmpp')
+        attributes1 = GnomeKeyring.attribute_list_new()
+        GnomeKeyring.attribute_list_append_string(attributes1, 'server',
+            str(server))
+        GnomeKeyring.attribute_list_append_string(attributes1, 'user',
+            str(user))
+        GnomeKeyring.attribute_list_append_string(attributes1, 'protocol',
+            'xmpp')
         if password is None:
             password = str()
-        try:
-            auth_token = gnomekeyring.item_create_sync(
-                self.keyring, gnomekeyring.ITEM_NETWORK_PASSWORD, display_name,
-                attributes1, password, update)
-        except (gnomekeyring.DeniedError, gnomekeyring.CancelledError):
-            set_storage(SimplePasswordStorage())
-            storage.save_password(account_name, password)
-            return
+        (err, auth_token) = GnomeKeyring.item_create_sync(self.keyring,
+            GnomeKeyring.ItemType.NETWORK_PASSWORD, display_name, attributes1,
+            password, update)
+        if err != GnomeKeyring.Result.OK:
+            if err in (GnomeKeyring.Result.DENIED,
+            GnomeKeyring.Result.CANCELLED):
+                set_storage(SimplePasswordStorage())
+                storage.save_password(account_name, password)
+                return
+            else:
+                raise GnomeKeyringError(err)
         gajim.config.set_per('accounts', account_name, 'password',
             'gnomekeyring:')
         if account_name in gajim.connections:
@@ -181,24 +198,25 @@ def get_storage():
     global storage
     if storage is None: # None is only in first time get_storage is called
         if gajim.config.get('use_gnomekeyring'):
-            global gnomekeyring
+            global GnomeKeyring
             try:
-                gnomekeyring = __import__('gnomekeyring')
-            except ImportError:
+                gir = __import__('gi.repository', globals(), locals(),
+                    ['GnomeKeyring'], 0)
+                GnomeKeyring = gir.GnomeKeyring
+            except (ImportError, AttributeError):
                 pass
             else:
                 global USER_HAS_GNOMEKEYRING
                 global USER_USES_GNOMEKEYRING
                 USER_HAS_GNOMEKEYRING = True
-                if gnomekeyring.is_available():
+                if GnomeKeyring.is_available():
                     USER_USES_GNOMEKEYRING = True
                 else:
                     USER_USES_GNOMEKEYRING = False
         if USER_USES_GNOMEKEYRING:
             try:
                 storage = GnomePasswordStorage()
-            except (gnomekeyring.NoKeyringDaemonError, gnomekeyring.DeniedError,
-            gnomekeyring.CancelledError):
+            except GnomeKeyringError:
                 storage = None
         if storage is None:
             if gajim.config.get('use_kwalletcli'):
diff --git a/src/common/pep.py b/src/common/pep.py
index 44ce3eb53..44a8294a9 100644
--- a/src/common/pep.py
+++ b/src/common/pep.py
@@ -215,7 +215,10 @@ LOCATION_DATA = {
         'timestamp':    _('timestamp'),
         'uri':          _('uri')}
 
-import gobject
+from gi.repository import GLib
+from gi.repository import Gtk
+from gi.repository import GdkPixbuf
+
 import logging
 log = logging.getLogger('gajim.c.pep')
 
@@ -265,10 +268,6 @@ class AbstractPEP(object):
         else:
             acc.pep[self.type_] = self
 
-    def asPixbufIcon(self):
-        '''SHOULD be implemented by subclasses'''
-        return None
-
     def asMarkupText(self):
         '''SHOULD be implemented by subclasses'''
         return ''
@@ -296,18 +295,14 @@ class UserMoodPEP(AbstractPEP):
         retracted = items.getTag('retract') or not 'mood' in mood_dict
         return (mood_dict, retracted)
 
-    def asPixbufIcon(self):
-        assert not self._retracted
-        return gajim.interface.get_pep_icon(self)
-
     def asMarkupText(self):
         assert not self._retracted
         untranslated_mood = self._pep_specific_data['mood']
         mood = self._translate_mood(untranslated_mood)
-        markuptext = '%s ' % gobject.markup_escape_text(mood)
+        markuptext = '%s ' % GLib.markup_escape_text(mood)
         if 'text' in self._pep_specific_data:
             text = self._pep_specific_data['text']
-            markuptext += ' (%s)' % gobject.markup_escape_text(text)
+            markuptext += ' (%s)' % GLib.markup_escape_text(text)
         return markuptext
 
     def _translate_mood(self, mood):
@@ -339,21 +334,18 @@ class UserTunePEP(AbstractPEP):
             'title' in tune_dict)
         return (tune_dict, retracted)
 
-    def asPixbufIcon(self):
-        return gajim.interface.get_pep_icon(self)
-
     def asMarkupText(self):
         assert not self._retracted
         tune = self._pep_specific_data
 
         artist = tune.get('artist', _('Unknown Artist'))
-        artist = gobject.markup_escape_text(artist)
+        artist = GLib.markup_escape_text(artist)
 
         title = tune.get('title', _('Unknown Title'))
-        title = gobject.markup_escape_text(title)
+        title = GLib.markup_escape_text(title)
 
         source = tune.get('source', _('Unknown Source'))
-        source = gobject.markup_escape_text(source)
+        source = GLib.markup_escape_text(source)
 
         tune_string =  _('"%(title)s"  by %(artist)s \n'
                 'from %(source)s ') % {'title': title,
@@ -387,10 +379,6 @@ class UserActivityPEP(AbstractPEP):
         retracted = items.getTag('retract') or not 'activity' in activity_dict
         return (activity_dict, retracted)
 
-    def asPixbufIcon(self):
-        assert not self._retracted
-        return gajim.interface.get_pep_icon(self)
-
     def asMarkupText(self):
         assert not self._retracted
         pep = self._pep_specific_data
@@ -404,12 +392,12 @@ class UserActivityPEP(AbstractPEP):
                 subactivity = ACTIVITIES[activity][subactivity]
             activity = ACTIVITIES[activity]['category']
 
-        markuptext = '' + gobject.markup_escape_text(activity)
+        markuptext = '' + GLib.markup_escape_text(activity)
         if subactivity:
-            markuptext += ': ' + gobject.markup_escape_text(subactivity)
+            markuptext += ': ' + GLib.markup_escape_text(subactivity)
         markuptext += ' '
         if text:
-            markuptext += ' (%s)' % gobject.markup_escape_text(text)
+            markuptext += ' (%s)' % GLib.markup_escape_text(text)
         return markuptext
 
 
@@ -468,9 +456,6 @@ class UserLocationPEP(AbstractPEP):
         con = gajim.connections[account].location_info = \
                 self._pep_specific_data
 
-    def asPixbufIcon(self):
-        return gajim.interface.get_pep_icon(self)
-
     def asMarkupText(self):
         assert not self._retracted
         location = self._pep_specific_data
@@ -478,7 +463,7 @@ class UserLocationPEP(AbstractPEP):
 
         for entry in location.keys():
             text = location[entry]
-            text = gobject.markup_escape_text(text)
+            text = GLib.markup_escape_text(text)
             # Translate standart location tag
             tag = LOCATION_DATA.get(entry, entry)
             location_string += '\n%(tag)s : %(text)s' % \
@@ -488,4 +473,4 @@ class UserLocationPEP(AbstractPEP):
 
 
 SUPPORTED_PERSONAL_USER_EVENTS = [UserMoodPEP, UserTunePEP, UserActivityPEP,
-    UserNicknamePEP, UserLocationPEP]
\ No newline at end of file
+    UserNicknamePEP, UserLocationPEP]
diff --git a/src/common/protocol/bytestream.py b/src/common/protocol/bytestream.py
index 70ec62754..79e97f1bf 100644
--- a/src/common/protocol/bytestream.py
+++ b/src/common/protocol/bytestream.py
@@ -30,7 +30,7 @@
 
 import socket
 import base64
-import gobject
+from gi.repository import GLib
 import time
 
 import nbxmpp
@@ -153,17 +153,23 @@ class ConnectionBytestream:
             if not content:
                 return
             if not session.accepted:
-                if session.get_content('file', content.name).use_security:
-                    id_ = jingle_xtls.send_cert_request(self,
-                        file_props.sender)
-                    jingle_xtls.key_exchange_pend(id_, content)
-                    return
+                content = session.get_content('file', content.name)
+                if content.use_security:
+                    fingerprint = content.x509_fingerprint
+                    if not jingle_xtls.check_cert(
+                    gajim.get_jid_without_resource(file_props.sender),
+                    fingerprint):
+                        id_ = jingle_xtls.send_cert_request(self,
+                            file_props.sender)
+                        jingle_xtls.key_exchange_pend(id_,
+                            content.on_cert_received, [])
+                        return
                 session.approve_session()
 
             session.approve_content('file', content.name)
             return
 
-        iq = nbxmpp.Iq(to=unicode(file_props.sender), typ='result')
+        iq = nbxmpp.Iq(to=file_props.sender, typ='result')
         iq.setAttr('id', file_props.request_id)
         si = iq.setTag('si', namespace=nbxmpp.NS_SI)
         if file_props.offset:
@@ -195,7 +201,7 @@ class ConnectionBytestream:
             jingle = self._sessions[file_props.sid]
             jingle.cancel_session()
             return
-        iq = nbxmpp.Iq(to=unicode(file_props.sender), typ='error')
+        iq = nbxmpp.Iq(to=file_props.sender, typ='error')
         iq.setAttr('id', file_props.request_id)
         if code == '400' and typ in ('stream', 'profile'):
             name = 'bad-request'
@@ -296,7 +302,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
         for file_props in FilesProp.getAllFileProp():
             if is_transfer_stopped(file_props):
                 continue
-            receiver_jid = unicode(file_props.receiver)
+            receiver_jid = file_props.receiver
             if contact.get_full_jid() == receiver_jid:
                 file_props.error = -5
                 self.remove_transfer(file_props)
@@ -305,7 +311,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
                 gajim.nec.push_incoming_event(FileRequestErrorEvent(None,
                     conn=self, jid=contact.jid, file_props=file_props,
                     error_msg=''))
-            sender_jid = unicode(file_props.sender)
+            sender_jid = file_props.sender
             if contact.get_full_jid() == sender_jid:
                 file_props.error = -3
                 self.remove_transfer(file_props)
@@ -354,11 +360,11 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
             file_props.error = -5
             from common.connection_handlers_events import FileRequestErrorEvent
             gajim.nec.push_incoming_event(FileRequestErrorEvent(None, conn=self,
-                jid=unicode(receiver), file_props=file_props, error_msg=''))
-            self._connect_error(unicode(receiver), file_props.sid,
+                jid=receiver, file_props=file_props, error_msg=''))
+            self._connect_error(receiver, file_props.sid,
                     file_props.sid, code=406)
         else:
-            iq = nbxmpp.Iq(to=unicode(receiver), typ='set')
+            iq = nbxmpp.Iq(to=receiver, typ='set')
             file_props.request_id = 'id_' + file_props.sid
             iq.setID(file_props.request_id)
             query = iq.setTag('query', namespace=nbxmpp.NS_BYTESTREAM)
@@ -374,7 +380,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
         for host in hosts:
             streamhost = nbxmpp.Node(tag='streamhost')
             query.addChild(node=streamhost)
-            streamhost.setAttr('port', unicode(port))
+            streamhost.setAttr('port', str(port))
             streamhost.setAttr('host', host)
             streamhost.setAttr('jid', sender)
 
@@ -442,7 +448,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
 
         def cleanup_gupnp():
             if self.no_gupnp_reply_id:
-                gobject.source_remove(self.no_gupnp_reply_id)
+                GLib.source_remove(self.no_gupnp_reply_id)
                 self.no_gupnp_reply_id = 0
             gajim.gupnp_igd.disconnect(self.ok_id)
             gajim.gupnp_igd.disconnect(self.fail_id)
@@ -482,15 +488,15 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
         self.fail_id = gajim.gupnp_igd.connect('error-mapping-port', fail)
 
         port = gajim.config.get('file_transfers_port')
-        self.no_gupnp_reply_id = gobject.timeout_add_seconds(10, no_upnp_reply)
+        self.no_gupnp_reply_id = GLib.timeout_add_seconds(10, no_upnp_reply)
         gajim.gupnp_igd.add_port('TCP', 0, my_ip, port, 3600,
             'Gajim file transfer')
 
     def _add_proxy_streamhosts_to_query(self, query, file_props):
         proxyhosts = self._get_file_transfer_proxies_from_config(file_props)
         if proxyhosts:
-            file_props.proxy_receiver = unicode(file_props.receiver)
-            file_props.proxy_sender = unicode(file_props.sender)
+            file_props.proxy_receiver = file_props.receiver
+            file_props.proxy_sender = file_props.sender
             file_props.proxyhosts = proxyhosts
 
             for proxyhost in proxyhosts:
@@ -518,12 +524,12 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
                     continue
                 host_dict = {
                         'state': 0,
-                        'target': unicode(file_props.receiver),
+                        'target': file_props.receiver,
                         'id': file_props.sid,
                         'sid': file_props.sid,
                         'initiator': proxy,
                         'host': host,
-                        'port': unicode(_port),
+                        'port': str(_port),
                         'jid': jid
                 }
                 proxyhost_dicts.append(host_dict)
@@ -563,7 +569,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
         iq = nbxmpp.Iq(to=to,     typ='error')
         iq.setAttr('id', file_props.sid)
         err = iq.setTag('error')
-        err.setAttr('code', unicode(code))
+        err.setAttr('code', str(code))
         err.setData(msg)
         self.connection.send(iq)
         if code == 404:
@@ -593,7 +599,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
 
     # register xmpppy handlers for bytestream and FT stanzas
     def _bytestreamErrorCB(self, con, iq_obj):
-        id_ = unicode(iq_obj.getAttr('id'))
+        id_ = iq_obj.getAttr('id')
         frm = helpers.get_full_jid_from_iq(iq_obj)
         query = iq_obj.getTag('query')
         gajim.proxy65_manager.error_cb(frm, query)
@@ -609,10 +615,10 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
         raise nbxmpp.NodeProcessed
 
     def _bytestreamSetCB(self, con, iq_obj):
-        target = unicode(iq_obj.getAttr('to'))
-        id_ = unicode(iq_obj.getAttr('id'))
+        target = iq_obj.getAttr('to')
+        id_ = iq_obj.getAttr('id')
         query = iq_obj.getTag('query')
-        sid = unicode(query.getAttr('sid'))
+        sid = query.getAttr('sid')
         file_props = FilesProp.getFileProp(self.name, sid)
         streamhosts = []
         for item in query.getChildren():
@@ -645,7 +651,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
                         self.send_success_connect_reply, None)
                 raise nbxmpp.NodeProcessed
         else:
-            log.warn('Gajim got streamhosts for unknown transfer. Ignoring it.')
+            log.warning('Gajim got streamhosts for unknown transfer. Ignoring it.')
             raise nbxmpp.NodeProcessed
 
         file_props.streamhosts = streamhosts
@@ -657,7 +663,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
     def _ResultCB(self, con, iq_obj):
         # if we want to respect xep-0065 we have to check for proxy
         # activation result in any result iq
-        real_id = unicode(iq_obj.getAttr('id'))
+        real_id = iq_obj.getAttr('id')
         if not real_id.startswith('au_'):
             return
         frm = self._ft_get_from(iq_obj)
@@ -671,7 +677,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
 
     def _bytestreamResultCB(self, con, iq_obj):
         frm = self._ft_get_from(iq_obj)
-        real_id = unicode(iq_obj.getAttr('id'))
+        real_id = iq_obj.getAttr('id')
         query = iq_obj.getTag('query')
         gajim.proxy65_manager.resolve_result(frm, query)
 
@@ -692,7 +698,7 @@ class ConnectionSocks5Bytestream(ConnectionBytestream):
                     raise nbxmpp.NodeProcessed
                 for host in file_props.proxyhosts:
                     if host['initiator'] == frm and \
-                    unicode(query.getAttr('sid')) == file_props.sid:
+                    query.getAttr('sid') == file_props.sid:
                         gajim.socks5queue.activate_proxy(host['idx'])
                         break
             raise nbxmpp.NodeProcessed
@@ -873,7 +879,8 @@ class ConnectionIBBytestream(ConnectionBytestream):
                 chunk = file_props.fp.read(file_props.block_size)
                 if chunk:
                     datanode = nbxmpp.Node(nbxmpp.NS_IBB + ' data', {'sid': sid,
-                        'seq': file_props.seq}, base64.encodestring(chunk))
+                        'seq': file_props.seq}, base64.b64encode(chunk.encode(
+                        'utf-8')).decode('utf-8'))
                     file_props.seq += 1
                     file_props.started = True
                     if file_props.seq == 65536:
@@ -908,7 +915,7 @@ class ConnectionIBBytestream(ConnectionBytestream):
         log.debug('ReceiveHandler called sid->%s seq->%s' % (sid, seq))
         try:
             seq = int(seq)
-            data = base64.decodestring(data)
+            data = base64.b64decode(data.encode('utf-8')).decode('utf-8')
         except Exception:
             seq = ''
             data = ''
@@ -919,7 +926,7 @@ class ConnectionIBBytestream(ConnectionBytestream):
         else:
             if not data:
                 err = nbxmpp.ERR_BAD_REQUEST
-            elif seq <> file_props.seq:
+            elif seq != file_props.seq:
                 err = nbxmpp.ERR_UNEXPECTED_REQUEST
             else:
                 log.debug('Successfull receive sid->%s %s+%s bytes' % (sid,
@@ -1011,7 +1018,7 @@ class ConnectionIBBytestream(ConnectionBytestream):
 class ConnectionSocks5BytestreamZeroconf(ConnectionSocks5Bytestream):
 
     def _ft_get_from(self, iq_obj):
-        return unicode(iq_obj.getFrom())
+        return iq_obj.getFrom()
 
     def _ft_get_our_jid(self):
         return gajim.get_jid_from_account(self.name)
diff --git a/src/common/proxy65_manager.py b/src/common/proxy65_manager.py
index 4598dd435..12523bb86 100644
--- a/src/common/proxy65_manager.py
+++ b/src/common/proxy65_manager.py
@@ -29,7 +29,7 @@ log = logging.getLogger('gajim.c.proxy65_manager')
 import nbxmpp
 from common import gajim
 from common import helpers
-from socks5 import Socks5
+from common.socks5 import Socks5
 from nbxmpp.idlequeue import IdleObject
 from common.file_props import FilesProp
 
@@ -117,7 +117,7 @@ class ProxyResolver:
         """
         self.host = str(host)
         self.port = int(port)
-        self.jid = unicode(jid)
+        self.jid = str(jid)
         if not self.testit:
             self.state = S_FINISHED
             return
@@ -311,7 +311,7 @@ class HostTester(Socks5, IdleObject):
             # read auth response
             if buff is None or len(buff) != 2:
                 return None
-            version, method = struct.unpack('!BB', buff[:2])
+            version, method = struct.unpack('!BB', buff[:2].encode('utf-8'))
             if version != 0x05 or method == 0xff:
                 self.pollend()
                 return
@@ -334,8 +334,8 @@ class HostTester(Socks5, IdleObject):
             log.debug('Host Connecting to %s:%s' % (self.host, self.port))
             self._send = self._sock.send
             self._recv = self._sock.recv
-        except Exception, ee:
-            errnum = ee[0]
+        except Exception as ee:
+            errnum = ee.errno
             # 56 is for freebsd
             if errnum in (errno.EINPROGRESS, errno.EALREADY, errno.EWOULDBLOCK):
                 # still trying to connect
@@ -432,7 +432,7 @@ class ReceiverTester(Socks5, IdleObject):
             # read auth response
             if buff is None or len(buff) != 2:
                 return None
-            version, method = struct.unpack('!BB', buff[:2])
+            version, method = struct.unpack('!BB', buff[:2].encode('utf-8'))
             if version != 0x05 or method == 0xff:
                 self.pollend()
                 return
@@ -444,7 +444,7 @@ class ReceiverTester(Socks5, IdleObject):
             # read connect response
             if buff is None or len(buff) < 2:
                 return None
-            version, reply = struct.unpack('!BB', buff[:2])
+            version, reply = struct.unpack('!BB', buff[:2].encode('utf-8'))
             if version != 0x05 or reply != 0x00:
                 self.pollend()
                 return
@@ -462,8 +462,8 @@ class ReceiverTester(Socks5, IdleObject):
             log.debug('Receiver Connecting to %s:%s' % (self.host, self.port))
             self._send = self._sock.send
             self._recv = self._sock.recv
-        except Exception, ee:
-            errnum = ee[0]
+        except Exception as ee:
+            errnum = ee.errno
             # 56 is for freebsd
             if errnum in (errno.EINPROGRESS, errno.EALREADY, errno.EWOULDBLOCK):
                 # still trying to connect
diff --git a/src/common/pubsub.py b/src/common/pubsub.py
index a0d9ae8f7..601012235 100644
--- a/src/common/pubsub.py
+++ b/src/common/pubsub.py
@@ -22,11 +22,13 @@
 ##
 
 import nbxmpp
-import gajim
-import connection_handlers
-import ged
-from connection_handlers_events import PubsubReceivedEvent
-from connection_handlers_events import PubsubBookmarksReceivedEvent
+from common import gajim
+#TODO: Doesn't work
+#from common.connection_handlers import PEP_CONFIG
+PEP_CONFIG = 'pep_config'
+from common import ged
+from common.connection_handlers_events import PubsubReceivedEvent
+from common.connection_handlers_events import PubsubBookmarksReceivedEvent
 import logging
 log = logging.getLogger('gajim.c.pubsub')
 
@@ -220,5 +222,5 @@ class ConnectionPubSub:
         e = e.addChild('configure', {'node': node})
         id_ = self.connection.getAnID()
         query.setID(id_)
-        self.awaiting_answers[id_] = (connection_handlers.PEP_CONFIG,)
+        self.awaiting_answers[id_] = (PEP_CONFIG,)
         self.connection.send(query)
diff --git a/src/common/resolver.py b/src/common/resolver.py
index 10ed614e8..d790fa5d3 100644
--- a/src/common/resolver.py
+++ b/src/common/resolver.py
@@ -70,33 +70,33 @@ class CommonResolver():
             # empty host, return empty list of srv records
             on_ready([])
             return
-        if self.resolved_hosts.has_key(host+type):
+        if host + type in self.resolved_hosts:
             # host is already resolved, return cached values
             log.debug('%s already resolved: %s' % (host,
-                self.resolved_hosts[host+type]))
-            on_ready(host, self.resolved_hosts[host+type])
+                self.resolved_hosts[host + type]))
+            on_ready(host, self.resolved_hosts[host + type])
             return
-        if self.handlers.has_key(host+type):
+        if host + type in self.handlers:
             # host is about to be resolved by another connection,
             # attach our callback
             log.debug('already resolving %s' % host)
-            self.handlers[host+type].append(on_ready)
+            self.handlers[host + type].append(on_ready)
         else:
             # host has never been resolved, start now
             log.debug('Starting to resolve %s using %s' % (host, self))
-            self.handlers[host+type] = [on_ready]
+            self.handlers[host + type] = [on_ready]
             self.start_resolve(host, type)
 
     def _on_ready(self, host, type, result_list):
         # practically it is impossible to be the opposite, but who knows :)
         host = host.lower()
         log.debug('Resolving result for %s: %s' % (host, result_list))
-        if not self.resolved_hosts.has_key(host+type):
-            self.resolved_hosts[host+type] = result_list
-        if self.handlers.has_key(host+type):
-            for callback in self.handlers[host+type]:
+        if host + type not in self.resolved_hosts:
+            self.resolved_hosts[host + type] = result_list
+        if host + type in self.handlers:
+            for callback in self.handlers[host + type]:
                 callback(host, result_list)
-            del(self.handlers[host+type])
+            del(self.handlers[host + type])
 
     def start_resolve(self, host, type):
         pass
@@ -251,8 +251,7 @@ class NSLookupResolver(CommonResolver):
             domain = None
             if line.startswith(fqdn):
                 domain = fqdn # For nslookup 9.5
-            elif helpers.decode_string(line).startswith(ufqdn):
-                line = helpers.decode_string(line)
+            elif line.startswith(ufqdn):
                 domain = ufqdn # For nslookup 9.6
             if domain:
                 rest = line[len(domain):].split('=')
@@ -318,8 +317,8 @@ class NsLookup(IdleCommand):
 
 # below lines is on how to use API and assist in testing
 if __name__ == '__main__':
-    import gobject
-    import gtk
+    from gi.repository import GLib
+    from gi.repository import Gtk
     from nbxmpp import idlequeue
 
     idlequeue = idlequeue.get_idlequeue()
@@ -329,21 +328,21 @@ if __name__ == '__main__':
         global resolver
         host = text_view.get_text()
         def on_result(host, result_array):
-            print 'Result:\n' + repr(result_array)
+            print('Result:\n' + repr(result_array))
         resolver.resolve(host, on_result)
-    win = gtk.Window()
+    win = Gtk.Window()
     win.set_border_width(6)
-    text_view = gtk.Entry()
+    text_view = Gtk.Entry()
     text_view.set_text('_xmpp-client._tcp.jabber.org')
-    hbox = gtk.HBox()
+    hbox = Gtk.HBox()
     hbox.set_spacing(3)
-    but = gtk.Button(' Lookup SRV ')
-    hbox.pack_start(text_view, 5)
-    hbox.pack_start(but, 0)
+    but = Gtk.Button(' Lookup SRV ')
+    hbox.pack_start(text_view, 5, True, 0)
+    hbox.pack_start(but, 0, True, 0)
     but.connect('clicked', clicked)
     win.add(hbox)
     win.show_all()
-    gobject.timeout_add(200, idlequeue.process)
+    GLib.timeout_add(200, idlequeue.process)
     if USE_LIBASYNCNS:
-        gobject.timeout_add(200, resolver.process)
-    gtk.main()
+        GLib.timeout_add(200, resolver.process)
+    Gtk.main()
diff --git a/src/common/rst_xhtml_generator.py b/src/common/rst_xhtml_generator.py
index cac9e669c..9583b3950 100644
--- a/src/common/rst_xhtml_generator.py
+++ b/src/common/rst_xhtml_generator.py
@@ -28,7 +28,7 @@ try:
     from docutils import nodes, utils
     from docutils.parsers.rst.roles import set_classes
 except ImportError:
-    print "Requires docutils 0.4 for set_classes to be available"
+    print("Requires docutils 0.4 for set_classes to be available")
     def create_xhtml(text):
         return None
 else:
@@ -65,7 +65,7 @@ else:
                 options={}, content=[]):
             try:
                 valid_text = validator(text)
-            except ValueError, e:
+            except ValueError as e:
                 msg = inliner.reporter.error( e.message % dict(text=text), line=lineno)
                 prb = inliner.problematic(rawtext, rawtext, msg)
                 return [prb], [msg]
@@ -120,7 +120,7 @@ else:
             # in the JEP
             #   ==  u"\u00a0"
             self.pub.writer.translator_class.attribution_formats['dash'] = (
-                    u'\u2014', '')
+                    '\u2014', '')
             self.pub.process_programmatic_settings(settings_spec,
                     settings_overrides,
                     config_section)
@@ -137,7 +137,7 @@ else:
             output = self.pub.publish(enable_exit_status=enable_exit_status)
             # kludge until we can get docutils to stop generating (rare)  
             # entities
-            return u'\u00a0'.join(self.pub.writer.parts['fragment'].strip().split(
+            return '\u00a0'.join(self.pub.writer.parts['fragment'].strip().split(
                     ' '))
 
     Generator = HTMLGenerator()
@@ -147,7 +147,7 @@ else:
 
 
 if __name__ == '__main__':
-    print "test 1\n", Generator.create_xhtml("""
+    print("test 1\n" + Generator.create_xhtml("""
 test::
 
 >>> print 1
@@ -157,10 +157,10 @@ test::
 
 this `` should    trigger`` should trigger the   problem.
 
-""")
-    print "test 2\n", Generator.create_xhtml("""
+"""))
+    print("test 2\n" + Generator.create_xhtml("""
 *test1
 
 test2_
-""")
-    print "test 3\n", Generator.create_xhtml(""":ticket:`316` implements :xep:`71`""")
+"""))
+    print("test 3\n" + Generator.create_xhtml(""":ticket:`316` implements :xep:`71`"""))
diff --git a/src/common/sleepy.py b/src/common/sleepy.py
index 5c0f39d33..820bf9858 100644
--- a/src/common/sleepy.py
+++ b/src/common/sleepy.py
@@ -22,7 +22,8 @@
 ##
 
 from common import gajim
-import os, sys
+import os
+import sys
 
 
 STATE_UNKNOWN  = 'OS probably not supported'
diff --git a/src/common/socks5.py b/src/common/socks5.py
index 8d252b044..86a551823 100644
--- a/src/common/socks5.py
+++ b/src/common/socks5.py
@@ -33,9 +33,9 @@ from errno import EISCONN
 from errno import EINPROGRESS
 from errno import EAFNOSUPPORT
 from nbxmpp.idlequeue import IdleObject
-from file_props import FilesProp
+from common.file_props import FilesProp
 from common import gajim
-import jingle_xtls
+from common import jingle_xtls
 if jingle_xtls.PYOPENSSL_PRESENT:
     import OpenSSL
 import logging
@@ -119,8 +119,7 @@ class SocksQueue:
         streamhosts_to_test = []
         # Remove local IPs to not connect to ourself
         for streamhost in file_props.streamhosts:
-            if streamhost['host'] == '127.0.0.1' or \
-                    streamhost['host'] == '::1':
+            if streamhost['host'] == '127.0.0.1' or streamhost['host'] == '::1':
                 continue
             streamhosts_to_test.append(streamhost)
         if not streamhosts_to_test:
@@ -327,7 +326,7 @@ class SocksQueue:
         if listener.file_props.type_ == 's' and \
         not self.isHashInSockObjs(self.senders, sock_hash):
             sockobj =  Socks5SenderServer(self.idlequeue, sock_hash, self,
-                sock[0],  sock[1][0], sock[1][1], fingerprint='server',
+                sock[0], sock[1][0], sock[1][1], fingerprint='server',
                 file_props=listener.file_props)
             self._add(sockobj, self.senders, listener.file_props, sock_hash)
             # Start waiting for data
@@ -379,6 +378,7 @@ class SocksQueue:
                     self.idlequeue.remove_timeout(reader.fd)
                     if do_disconnect:
                         reader.disconnect()
+                        del self.readers[key]
                         if not remove_all:
                             break
                     else:
@@ -415,7 +415,7 @@ class SocksQueue:
                 self.connected -= 1
 
 
-class Socks5:
+class Socks5(object):
     def __init__(self, idlequeue, host, port, initiator, target, sid):
         if host is not None:
             try:
@@ -439,12 +439,20 @@ class Socks5:
         self.file = None
         self.connected = False
         self.mode = ''
+        self.ssl_cert = None
+        self.ssl_errnum = 0
 
     def _is_connected(self):
         if self.state < 5:
             return False
         return True
 
+    def ssl_verify_cb(self, ssl_conn, cert, error_num, depth, return_code):
+        if depth == 0:
+            self.ssl_cert = cert
+            self.ssl_errnum = error_num
+        return True
+
     def connect(self):
         """
         Create the socket and plug it to the idlequeue
@@ -455,14 +463,22 @@ class Socks5:
             try:
                 self._sock = socket.socket(*ai[:3])
                 if not self.fingerprint is None:
+                    if self.file_props.type_ == 's':
+                        remote_jid = gajim.get_jid_without_resource(
+                            self.file_props.receiver)
+                    else:
+                        remote_jid = gajim.get_jid_without_resource(
+                            self.file_props.sender)
                     self._sock = OpenSSL.SSL.Connection(
-                        jingle_xtls.get_context('client'), self._sock)
+                        jingle_xtls.get_context('client',
+                        verify_cb=self.ssl_verify_cb, remote_jid=remote_jid),
+                        self._sock)
                 # this will not block the GUI
                 self._sock.setblocking(False)
                 self._server = ai[4]
                 break
-            except socket.error, e:
-                if not isinstance(e, basestring) and e[0] == EINPROGRESS:
+            except socket.error as e:
+                if e.errno == EINPROGRESS:
                     break
                 # for all other errors, we try other addresses
                 continue
@@ -476,11 +492,12 @@ class Socks5:
     def do_connect(self):
         try:
             self._sock.connect(self._server)
-            self._sock.setblocking(False)
             self._send=self._sock.send
             self._recv=self._sock.recv
-        except Exception, ee:
-            errnum = ee[0]
+        except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError) as e:
+            pass
+        except Exception as ee:
+            errnum = ee.errno
             self.connect_timeout += 1
             if errnum == 111 or self.connect_timeout > 1000:
                 self.queue._connection_refused(self.streamhost, self.file_props,
@@ -531,9 +548,9 @@ class Socks5:
                     self.size = self.file_props.offset
                     self.file.seek(self.size)
                     self.file_props.received_len = self.size
-            except IOError, e:
+            except IOError as e:
                 self.close_file()
-                raise IOError, e
+                raise IOError(str(e))
 
     def close_file(self):
         # Close file we're sending from
@@ -586,9 +603,9 @@ class Socks5:
         """
         received = ''
         try:
-            add = self._recv(64)
+            add = self._recv(64).decode('utf-8')
         except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError,
-        OpenSSL.SSL.WantX509LookupError), e:
+        OpenSSL.SSL.WantX509LookupError) as e:
             log.info('SSL rehandshake request : ' + repr(e))
             raise e
         except Exception:
@@ -605,10 +622,10 @@ class Socks5:
         try:
             self._send(raw_data)
         except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError,
-        OpenSSL.SSL.WantX509LookupError), e:
+        OpenSSL.SSL.WantX509LookupError) as e:
             log.info('SSL rehandshake request :' + repr(e))
             raise e
-        except Exception, e:
+        except Exception:
             self.disconnect()
         return len(raw_data)
 
@@ -619,7 +636,7 @@ class Socks5:
         else:
             try:
                 self.open_file_for_reading()
-            except IOError, e:
+            except IOError:
                 self.state = 8 # end connection
                 self.disconnect()
                 self.file_props.error = -7 # unable to read from file
@@ -630,11 +647,11 @@ class Socks5:
             try:
                 lenn = self._send(buff)
             except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError,
-            OpenSSL.SSL.WantX509LookupError), e:
+            OpenSSL.SSL.WantX509LookupError) as e:
                 log.info('SSL rehandshake request :' + repr(e))
                 raise e
-            except Exception, e:
-                if e.args[0] not in (EINTR, ENOBUFS, EWOULDBLOCK):
+            except Exception as e:
+                if e.errno not in (EINTR, ENOBUFS, EWOULDBLOCK):
                     # peer stopped reading
                     self.state = 8 # end connection
                     self.disconnect()
@@ -646,7 +663,7 @@ class Socks5:
                 self.file_props.last_time
             self.file_props.last_time = current_time
             self.file_props.received_len = self.size
-            if self.size >= int(self.file_props.size):
+            if self.size >= self.file_props.size:
                 self.state = 8 # end connection
                 self.file_props.error = 0
                 self.disconnect()
@@ -676,7 +693,7 @@ class Socks5:
         if self.remaining_buff != '':
             try:
                 fd = self.get_fd()
-            except IOError, e:
+            except IOError:
                 self.disconnect(False)
                 self.file_props.error = -6 # file system error
                 return 0
@@ -688,7 +705,7 @@ class Socks5:
             self.file_props.last_time = current_time
             self.file_props.received_len += lenn
             self.remaining_buff = ''
-            if self.file_props.received_len == int(self.file_props.size):
+            if self.file_props.received_len == self.file_props.size:
                 self.rem_fd(fd)
                 self.disconnect()
                 self.file_props.error = 0
@@ -697,14 +714,14 @@ class Socks5:
         else:
             try:
                 fd = self.get_fd()
-            except IOError, e:
+            except IOError:
                 self.disconnect(False)
                 self.file_props.error = -6 # file system error
                 return 0
             try:
-                buff = self._recv(MAX_BUFF_LEN)
+                buff = self._recv(MAX_BUFF_LEN).decode('utf-8')
             except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError,
-            OpenSSL.SSL.WantX509LookupError), e:
+            OpenSSL.SSL.WantX509LookupError) as e:
                 log.info('SSL rehandshake request :' + repr(e))
                 raise e
             except Exception:
@@ -723,12 +740,12 @@ class Socks5:
                 return 0
             try:
                 fd.write(buff)
-            except IOError, e:
+            except IOError:
                 self.rem_fd(fd)
                 self.disconnect()
                 self.file_props.error = -6 # file system error
                 return 0
-            if self.file_props.received_len >= int(self.file_props.size):
+            if self.file_props.received_len >= self.file_props.size:
                 # transfer completed
                 self.rem_fd(fd)
                 self.disconnect()
@@ -785,9 +802,9 @@ class Socks5:
         """
         auth_mechanisms = []
         try:
-            num_auth = struct.unpack('!xB', buff[:2])[0]
-            for i in xrange(num_auth):
-                mechanism, = struct.unpack('!B', buff[1 + i])
+            num_auth = struct.unpack('!xB', buff[:2].encode('utf-8'))[0]
+            for i in list(range(num_auth)):
+                mechanism, = struct.unpack('!B', buff[1 + i].encode('utf-8'))
                 auth_mechanisms.append(mechanism)
         except Exception:
             return None
@@ -804,8 +821,8 @@ class Socks5:
         Connect request by domain name
         """
         buff = struct.pack('!BBBBB%dsBB' % len(self.host),
-            0x05, 0x01, 0x00, 0x03, len(self.host), self.host, self.port >> 8,
-            self.port & 0xff)
+            0x05, 0x01, 0x00, 0x03, len(self.host), self.host.encode('utf-8'),
+            self.port >> 8, self.port & 0xff)
         return buff
 
     def _get_request_buff(self, msg, command = 0x01):
@@ -813,28 +830,33 @@ class Socks5:
         Connect request by domain name, sid sha, instead of domain name (jep
         0096)
         """
-        buff = struct.pack('!BBBBB%dsBB' % len(msg),
-                0x05, command, 0x00, 0x03, len(msg), msg, 0, 0)
+        if isinstance(msg, str):
+            msg = msg.encode('utf-8')
+        buff = struct.pack('!BBBBB%dsBB' % len(msg), 0x05, command, 0x00, 0x03,
+            len(msg), msg, 0, 0)
         return buff
 
     def _parse_request_buff(self, buff):
         try: # don't trust on what comes from the outside
-            req_type, host_type, = struct.unpack('!xBxB', buff[:4])
+            req_type, host_type, = struct.unpack('!xBxB', buff[:4].encode(
+                'utf-8'))
             if host_type == 0x01:
-                host_arr = struct.unpack('!iiii', buff[4:8])
+                host_arr = struct.unpack('!iiii', buff[4:8].encode('utf-8'))
                 host, = '.'.join(str(s) for s in host_arr)
                 host_len = len(host)
             elif host_type == 0x03:
-                host_len,  = struct.unpack('!B', buff[4])
-                host, = struct.unpack('!%ds' % host_len, buff[5:5 + host_len])
+                host_len,  = struct.unpack('!B', buff[4].encode('utf-8'))
+                host, = struct.unpack('!%ds' % host_len, buff[5:5 + host_len].\
+                    encode('utf-8'))
             portlen = len(buff[host_len + 5:])
             if portlen == 1:
-                port, = struct.unpack('!B', buff[host_len + 5])
+                port, = struct.unpack('!B', buff[host_len + 5].encode('utf-8'))
             elif portlen == 2:
-                port, = struct.unpack('!H', buff[host_len + 5:])
+                port, = struct.unpack('!H', buff[host_len + 5:].encode('utf-8'))
             # file data, comes with auth message (Gaim bug)
             else:
-                port, = struct.unpack('!H', buff[host_len + 5: host_len + 7])
+                port, = struct.unpack('!H', buff[host_len + 5: host_len + 7].\
+                    encode('utf-8'))
                 self.remaining_buff = buff[host_len + 7:]
         except Exception:
             return (None, None, None)
@@ -845,13 +867,13 @@ class Socks5:
         Connect response: version, auth method
         """
         try:
-            buff = self._recv()
+            buff = self._recv().decode('utf-8')
         except (SSL.WantReadError, SSL.WantWriteError,
-                SSL.WantX509LookupError), e:
+        SSL.WantX509LookupError) as e:
             log.info("SSL rehandshake request : " + repr(e))
             raise e
         try:
-            version, method = struct.unpack('!BB', buff)
+            version, method = struct.unpack('!BB', buff.encode('utf-8'))
         except Exception:
             version, method = None, None
         if version != 0x05 or method == 0xff:
@@ -870,18 +892,17 @@ class Socks5:
         Get sha of sid + Initiator jid + Target jid
         """
         if self.file_props.is_a_proxy:
-            return hashlib.sha1('%s%s%s' % (self.sid,
-                self.file_props.proxy_sender, self.file_props.proxy_receiver)
-                ).hexdigest()
-        return hashlib.sha1('%s%s%s' % (self.sid, self.initiator,
-            self.target)).hexdigest()
+            return hashlib.sha1(('%s%s%s' % (self.sid,
+                self.file_props.proxy_sender, self.file_props.proxy_receiver)).\
+                encode('utf-8')).hexdigest()
+        return hashlib.sha1(('%s%s%s' % (self.sid, self.initiator,
+            self.target)).encode('utf-8')).hexdigest()
 
 
 class Socks5Sender(IdleObject):
     """
     Class for sending file to socket over socks5
     """
-
     def __init__(self, idlequeue, sock_hash, parent, _sock, host=None,
     port=None, fingerprint = None, connected=True, file_props={}):
         self.fingerprint = fingerprint
@@ -962,7 +983,6 @@ class Socks5Sender(IdleObject):
 
 
 class Socks5Receiver(IdleObject):
-
     def __init__(self, idlequeue, streamhost, sid, file_props = None,
     fingerprint=None):
         """
@@ -1094,7 +1114,7 @@ class Socks5Server(Socks5):
                     result = self.start_transfer() # send
                     self.queue.process_result(result, self)
             except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError,
-            OpenSSL.SSL.WantX509LookupError), e:
+            OpenSSL.SSL.WantX509LookupError) as e:
                 log.info('caught SSL exception, ignored')
         else:
             self.disconnect()
@@ -1132,7 +1152,7 @@ class Socks5Server(Socks5):
             else:
                 self.disconnect()
         except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError,
-        OpenSSL.SSL.WantX509LookupError), e:
+        OpenSSL.SSL.WantX509LookupError) as e:
             log.info('caught SSL exception, ignored')
             return
         if self.state < 5:
@@ -1160,7 +1180,7 @@ class Socks5Client(Socks5):
         if self.state == 2: # read auth response
             if buff is None or len(buff) != 2:
                 return None
-            version, method = struct.unpack('!BB', buff[:2])
+            version, method = struct.unpack('!BB', buff[:2].encode('utf-8'))
             if version != 0x05 or method == 0xff:
                 self.disconnect()
         elif self.state == 4: # get approve of our request
@@ -1169,18 +1189,23 @@ class Socks5Client(Socks5):
             sub_buff = buff[:4]
             if len(sub_buff) < 4:
                 return None
-            version, address_type = struct.unpack('!BxxB', buff[:4])
+            version, address_type = struct.unpack('!BxxB', buff[:4].encode(
+                'utf-8'))
             addrlen = 0
             if address_type == 0x03:
                 addrlen = ord(buff[4])
-                address = struct.unpack('!%ds' % addrlen, buff[5:addrlen + 5])
+                address = struct.unpack('!%ds' % addrlen, buff[5:addrlen + 5].\
+                    encode('utf-8'))
                 portlen = len(buff[addrlen + 5:])
                 if portlen == 1:
-                    port, = struct.unpack('!B', buff[addrlen + 5])
+                    port, = struct.unpack('!B', buff[addrlen + 5].encode(
+                        'utf-8'))
                 elif portlen == 2:
-                    port, = struct.unpack('!H', buff[addrlen + 5:])
+                    port, = struct.unpack('!H', buff[addrlen + 5:].encode(
+                        'utf-8'))
                 else: # Gaim bug :)
-                    port, = struct.unpack('!H', buff[addrlen + 5:addrlen + 7])
+                    port, = struct.unpack('!H', buff[addrlen + 5:addrlen + 7].\
+                        encode('utf-8'))
                     self.remaining_buff = buff[addrlen + 7:]
             self.state = 5 # for senders: init file_props and send '\n'
             if self.queue.on_success:
@@ -1220,6 +1245,14 @@ class Socks5Client(Socks5):
             self.state += 1
             return None
 
+    def send_file(self):
+        if self.ssl_errnum > 0:
+            log.error('remote certificate does not match the announced one.' + \
+                '\nSSL Error: %d\nCancelling file transfer' % self.ssl_errnum)
+            self.file_props.error = -12
+            return -1
+        return super(Socks5Client, self).send_file()
+
     def pollin(self):
         self.idlequeue.remove_timeout(self.fd)
         if self.connected:
@@ -1238,7 +1271,7 @@ class Socks5Client(Socks5):
                     result = self.start_transfer() # receive
                     self.queue.process_result(result, self)
             except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError,
-            OpenSSL.SSL.WantX509LookupError), e:
+            OpenSSL.SSL.WantX509LookupError) as e:
                 log.info('caught SSL exception, ignored')
                 return
         else:
@@ -1262,7 +1295,7 @@ class Socks5Client(Socks5):
                 self.queue.process_result(result, self)
                 return
         except (OpenSSL.SSL.WantReadError, OpenSSL.SSL.WantWriteError,
-        OpenSSL.SSL.WantX509LookupError), e:
+        OpenSSL.SSL.WantX509LookupError) as e:
             log.info('caught SSL exception, ignored')
             return
         self.state += 1
@@ -1301,9 +1334,8 @@ class Socks5SenderServer(Socks5Server, Socks5Sender):
 
 
 class Socks5ReceiverClient(Socks5Client, Socks5Receiver):
-
     def __init__(self, idlequeue, streamhost, sid, file_props = None,
-            fingerprint=None):
+    fingerprint=None):
         Socks5Client.__init__(self, idlequeue, streamhost['host'],
             int(streamhost['port']), streamhost['initiator'],
             streamhost['target'], sid)
@@ -1355,8 +1387,8 @@ class Socks5Listener(IdleObject):
                 if self.fingerprint is not None:
                     self._serv = OpenSSL.SSL.Connection(
                         jingle_xtls.get_context('server'), self._serv)
-            except socket.error, e:
-                if e.args[0] == EAFNOSUPPORT:
+            except socket.error as e:
+                if e.errno == EAFNOSUPPORT:
                     self.ai = None
                     continue
                 raise
@@ -1425,4 +1457,3 @@ class Socks5Listener(IdleObject):
         self.connections.append(_sock[0])
         return _sock
 
-
diff --git a/src/common/stanza_session.py b/src/common/stanza_session.py
index f8ccb503a..becc4825b 100644
--- a/src/common/stanza_session.py
+++ b/src/common/stanza_session.py
@@ -810,7 +810,10 @@ class EncryptedStanzaSession(ArchivingStanzaSession):
 
         # the offset of the group we chose (need it to match up with the dhhash)
         group_order = 0
-        self.modp = int(form.getField('modp').getOptions()[group_order][1])
+        modp_f = form.getField('modp')
+        if not modp_f:
+            return
+        self.modp = int(modp_f.getOptions()[group_order][1])
         x.addChild(node=nbxmpp.DataField(name='modp', value=self.modp))
 
         g = dh.generators[self.modp]
@@ -818,7 +821,10 @@ class EncryptedStanzaSession(ArchivingStanzaSession):
 
         self.n_o = base64.b64decode(form['my_nonce'])
 
-        dhhashes = form.getField('dhhashes').getValues()
+        dhhashes_f = form.getField('dhhashes')
+        if not dhhashes_f:
+            return
+        dhhashes = dhhashes_f.getValues()
         self.negotiated['He'] = base64.b64decode(dhhashes[group_order].encode(
                 'utf8'))
 
diff --git a/src/common/zeroconf/client_zeroconf.py b/src/common/zeroconf/client_zeroconf.py
index 52a7ca1f0..07f82092a 100644
--- a/src/common/zeroconf/client_zeroconf.py
+++ b/src/common/zeroconf/client_zeroconf.py
@@ -173,7 +173,7 @@ class P2PClient(IdleObject):
                 id_ = stanza.getID()
                 if not id_:
                     id_ = self.Dispatcher.getAnID()
-                if self.conn_holder.ids_of_awaiting_messages.has_key(self.fd):
+                if self.fd in self.conn_holder.ids_of_awaiting_messages:
                     self.conn_holder.ids_of_awaiting_messages[self.fd].append((
                         id_, thread_id))
                 else:
@@ -195,7 +195,7 @@ class P2PClient(IdleObject):
             id_ = stanza.getID()
             if not id_:
                 id_ = self.Dispatcher.getAnID()
-            if self.conn_holder.ids_of_awaiting_messages.has_key(self.fd):
+            if self.fd in self.conn_holder.ids_of_awaiting_messages:
                 self.conn_holder.ids_of_awaiting_messages[self.fd].append((id_,
                     thread_id))
             else:
@@ -253,10 +253,10 @@ class P2PClient(IdleObject):
                     'Incorrect answer from server.')
             return
         if self.sock_type == TYPE_SERVER:
-            if attrs.has_key('from'):
+            if 'from' in attrs:
                 self.to = attrs['from']
             self.send_stream_header()
-            if attrs.has_key('version') and attrs['version'] == '1.0':
+            if 'version' in attrs and attrs['version'] == '1.0':
                 # other part supports stream features
                 features = Node('stream:features')
                 self.Dispatcher.send(features)
@@ -270,12 +270,12 @@ class P2PClient(IdleObject):
 
     def on_disconnect(self):
         if self.conn_holder:
-            if self.conn_holder.ids_of_awaiting_messages.has_key(self.fd):
+            if self.fd in self.conn_holder.ids_of_awaiting_messages:
                 del self.conn_holder.ids_of_awaiting_messages[self.fd]
             self.conn_holder.remove_connection(self.sock_hash)
-        if self.__dict__.has_key('Dispatcher'):
+        if 'Dispatcher' in self.__dict__:
             self.Dispatcher.PlugOut()
-        if self.__dict__.has_key('P2PConnection'):
+        if 'P2PConnection' in self.__dict__:
             self.P2PConnection.PlugOut()
         self.Connection = None
         self._caller = None
@@ -294,7 +294,7 @@ class P2PClient(IdleObject):
                 self.Dispatcher.Stream._document_attrs is None:
             return
         self.onreceive(None)
-        if self.Dispatcher.Stream._document_attrs.has_key('version') and \
+        if 'version' in self.Dispatcher.Stream._document_attrs and \
         self.Dispatcher.Stream._document_attrs['version'] == '1.0':
                 #~ self.onreceive(self._on_receive_stream_features)
                 #XXX continue with TLS
@@ -356,9 +356,9 @@ class P2PConnection(IdleObject, PlugIn):
             try:
                 self.ais = socket.getaddrinfo(host, port, socket.AF_UNSPEC,
                         socket.SOCK_STREAM)
-            except socket.gaierror, e:
-                log.info('Lookup failure for %s: %s[%s]', host, e[1],
-                    repr(e[0]), exc_info=True)
+            except socket.gaierror as e:
+                log.info('Lookup failure for %s: %s', host, str(e),
+                    exc_info=True)
             else:
                 self.connect_to_next_ip()
 
@@ -418,19 +418,12 @@ class P2PConnection(IdleObject, PlugIn):
         """
         Append stanza to the queue of messages to be send if now is False, else
         send it instantly
-
-        If supplied data is unicode string, encode it to UTF-8.
         """
         if self.state <= 0:
             return
 
         r = packet
 
-        if isinstance(r, unicode):
-            r = r.encode('utf-8')
-        elif not isinstance(r, str):
-            r = ustr(r).encode('utf-8')
-
         if now:
             self.sendqueue.insert(0, (r, is_message))
             self._do_send()
@@ -455,8 +448,9 @@ class P2PConnection(IdleObject, PlugIn):
         try:
             self._sock.connect(self._server)
             self._sock.setblocking(False)
-        except Exception, ee:
-            (errnum, errstr) = ee
+        except Exception as ee:
+            errnum = ee.errno
+            errstr = ee.strerror
         errors = (errno.EINPROGRESS, errno.EALREADY, errno.EWOULDBLOCK)
         if 'WSAEINVAL' in errno.__dict__:
             errors += (errno.WSAEINVAL,)
@@ -495,9 +489,8 @@ class P2PConnection(IdleObject, PlugIn):
         try:
             # get as many bites, as possible, but not more than RECV_BUFSIZE
             received = self._sock.recv(MAX_BUFF_LEN)
-        except Exception, e:
-            if len(e.args) > 0 and isinstance(e.args[0], int):
-                errnum = e[0]
+        except Exception as e:
+            errnum = e.errno
             # "received" will be empty anyhow
         if errnum == socket.SSL_ERROR_WANT_READ:
             pass
@@ -566,8 +559,8 @@ class P2PConnection(IdleObject, PlugIn):
                     self._plug_idle()
                 self._on_send()
 
-        except socket.error, e:
-            if e[0] == socket.SSL_ERROR_WANT_WRITE:
+        except socket.error as e:
+            if e.errno == socket.SSL_ERROR_WANT_WRITE:
                 return True
             if self.state < 0:
                 self.disconnect()
@@ -717,7 +710,7 @@ class ClientZeroconf:
             if self.ip_to_hash[i] == sock_hash:
                 del self.ip_to_hash[i]
                 break
-        if self.hash_to_port.has_key(sock_hash):
+        if sock_hash in self.hash_to_port:
             del self.hash_to_port[sock_hash]
 
     def start_listener(self, port):
@@ -737,7 +730,7 @@ class ClientZeroconf:
     def send(self, stanza, is_message=False, now=False, on_ok=None,
     on_not_ok=None):
         stanza.setFrom(self.roster.zeroconf.name)
-        to = unicode(stanza.getTo())
+        to = stanza.getTo()
         to = gajim.get_jid_without_resource(to)
 
         try:
@@ -802,7 +795,7 @@ class ClientZeroconf:
         def on_ok(_waitid):
 #            if timeout:
 #                self._owner.set_timeout(timeout)
-            to = unicode(stanza.getTo())
+            to = stanza.getTo()
             to = gajim.get_jid_without_resource(to)
 
             try:
diff --git a/src/common/zeroconf/connection_zeroconf.py b/src/common/zeroconf/connection_zeroconf.py
index 8a7a89c6b..07ff5db3f 100644
--- a/src/common/zeroconf/connection_zeroconf.py
+++ b/src/common/zeroconf/connection_zeroconf.py
@@ -39,14 +39,14 @@ import signal
 if os.name != 'nt':
     signal.signal(signal.SIGPIPE, signal.SIG_DFL)
 import getpass
-import gobject
+from gi.repository import GLib
 
 from common.connection import CommonConnection
 from common import gajim
 from common import ged
 from common.zeroconf import client_zeroconf
 from common.zeroconf import zeroconf
-from connection_handlers_zeroconf import *
+from common.zeroconf.connection_handlers_zeroconf import *
 from common.connection_handlers_events import *
 
 import locale
@@ -91,7 +91,7 @@ class ConnectionZeroconf(CommonConnection, ConnectionHandlersZeroconf):
                     'is_zeroconf', True)
             gajim.config.set_per('accounts', gajim.ZEROCONF_ACC_NAME,
                     'use_ft_proxies', False)
-        self.host = unicode(socket.gethostname(), locale.getpreferredencoding())
+        self.host = socket.gethostname()
         gajim.config.set_per('accounts', gajim.ZEROCONF_ACC_NAME, 'hostname',
                 self.host)
         self.port = gajim.config.get_per('accounts', gajim.ZEROCONF_ACC_NAME,
@@ -110,8 +110,7 @@ class ConnectionZeroconf(CommonConnection, ConnectionHandlersZeroconf):
                 'zeroconf_email')
 
         if not self.username:
-            self.username = unicode(getpass.getuser(),
-                locale.getpreferredencoding())
+            self.username = getpass.getuser()
             gajim.config.set_per('accounts', gajim.ZEROCONF_ACC_NAME, 'name',
                 self.username)
         else:
@@ -240,7 +239,7 @@ class ConnectionZeroconf(CommonConnection, ConnectionHandlersZeroconf):
 
         # refresh all contacts data every five seconds
         self.call_resolve_timeout = True
-        gobject.timeout_add_seconds(5, self._on_resolve_timeout)
+        GLib.timeout_add_seconds(5, self._on_resolve_timeout)
         return True
 
     def disconnect(self, on_purpose=False):
@@ -387,7 +386,7 @@ class ConnectionZeroconf(CommonConnection, ConnectionHandlersZeroconf):
         if realm == '':
             if event == nbxmpp.transports_nb.DATA_ERROR:
                 thread_id = data[1]
-                frm = unicode(data[0])
+                frm = data[0]
                 session = self.get_or_create_session(frm, thread_id)
                 gajim.nec.push_incoming_event(MessageErrorEvent(
                     None, conn=self, fjid=frm, error_code=-1, error_msg=_(
diff --git a/src/common/zeroconf/roster_zeroconf.py b/src/common/zeroconf/roster_zeroconf.py
index 307fd392e..472ded7b6 100644
--- a/src/common/zeroconf/roster_zeroconf.py
+++ b/src/common/zeroconf/roster_zeroconf.py
@@ -32,7 +32,6 @@ class Roster:
             self.setItem(val[zeroconf.C_NAME])
 
     def getRoster(self):
-        #print 'roster_zeroconf.py: getRoster'
         if self._data is None:
             self._data = {}
             self.update_roster()
@@ -50,11 +49,9 @@ class Roster:
             if key in self._data:
                 if old_data[key] != self._data[key]:
                     diffs[key] = self._data[key]['status']
-        #print 'roster_zeroconf.py: diffs:' + str(diffs)
         return diffs
 
     def setItem(self, jid, name='', groups=''):
-        #print 'roster_zeroconf.py: setItem %s' % jid
         contact = self.zeroconf.get_contact(jid)
         if not contact:
             return
@@ -96,34 +93,27 @@ class Roster:
             self.setItem(jid=i['jid'], name=i['name'], groups=i['groups'])
 
     def delItem(self, jid):
-        #print 'roster_zeroconf.py: delItem %s' % jid
         if jid in self._data:
             del self._data[jid]
 
     def getItem(self, jid):
-        #print 'roster_zeroconf.py: getItem: %s' % jid
         if jid in self._data:
             return self._data[jid]
 
     def __getitem__(self, jid):
-        #print 'roster_zeroconf.py: __getitem__'
         return self._data[jid]
 
     def getItems(self):
-        #print 'roster_zeroconf.py: getItems'
         # Return list of all [bare] JIDs that the roster currently tracks.
         return self._data.keys()
 
     def keys(self):
-        #print 'roster_zeroconf.py: keys'
         return self._data.keys()
 
     def getRaw(self):
-        #print 'roster_zeroconf.py: getRaw'
         return self._data
 
     def getResources(self, jid):
-        #print 'roster_zeroconf.py: getResources(%s)' % jid
         return {}
 
     def getGroups(self, jid):
@@ -142,14 +132,12 @@ class Roster:
             return self._data[jid]['txt_dict']['msg']
 
     def getShow(self, jid):
-        #print 'roster_zeroconf.py: getShow'
         return self.getStatus(jid)
 
     def getPriority(self, jid):
         return 5
 
     def getSubscription(self, jid):
-        #print 'roster_zeroconf.py: getSubscription'
         return 'both'
 
     def Subscribe(self, jid):
diff --git a/src/common/zeroconf/zeroconf_avahi.py b/src/common/zeroconf/zeroconf_avahi.py
index 5ce4f8398..e2a7c1fd4 100644
--- a/src/common/zeroconf/zeroconf_avahi.py
+++ b/src/common/zeroconf/zeroconf_avahi.py
@@ -22,7 +22,7 @@ log = logging.getLogger('gajim.c.z.zeroconf_avahi')
 
 try:
     import dbus.exceptions
-except ImportError, e:
+except ImportError:
     pass
 
 from common.zeroconf.zeroconf import C_BARE_NAME, C_INTERFACE, C_PROTOCOL, C_DOMAIN
@@ -224,14 +224,7 @@ class Zeroconf:
         return show
 
     def avahi_txt(self):
-        utf8_dict = {}
-        for key in self.txt:
-            val = self.txt[key]
-            if isinstance(val, unicode):
-                utf8_dict[key] = val.encode('utf-8')
-            else:
-                utf8_dict[key] = val
-        return self.avahi.dict_to_txt_array(utf8_dict)
+        return self.avahi.dict_to_txt_array(self.txt)
 
     def create_service(self):
         try:
@@ -246,7 +239,7 @@ class Zeroconf:
             txt = {}
 
             # remove empty keys
-            for key, val in self.txt.iteritems():
+            for key, val in self.txt.items():
                 if val:
                     txt[key] = val
 
@@ -274,7 +267,7 @@ class Zeroconf:
 
             return True
 
-        except dbus.DBusException, e:
+        except dbus.DBusException as e:
             log.debug(str(e))
             return False
 
@@ -334,7 +327,7 @@ class Zeroconf:
             self.bus.add_signal_receiver(self.avahi_dbus_connect_cb,
                     'NameOwnerChanged', 'org.freedesktop.DBus',
                     arg0='org.freedesktop.Avahi')
-        except Exception, e:
+        except Exception as e:
             # System bus is not present
             self.bus = None
             log.debug(str(e))
@@ -361,7 +354,7 @@ class Zeroconf:
                     self.avahi.DBUS_PATH_SERVER), self.avahi.DBUS_INTERFACE_SERVER)
             self.server.connect_to_signal('StateChanged',
                     self.server_state_changed_callback)
-        except Exception, e:
+        except Exception as e:
             # Avahi service is not present
             self.server = None
             log.debug(str(e))
@@ -402,14 +395,14 @@ class Zeroconf:
             if self.service_browser:
                 try:
                     self.service_browser.Free()
-                except dbus.DBusException, e:
+                except dbus.DBusException as e:
                     log.debug(str(e))
                 self.service_browser._obj._bus = None
                 self.service_browser._obj = None
             if self.domain_browser:
                 try:
                     self.domain_browser.Free()
-                except dbus.DBusException, e:
+                except dbus.DBusException as e:
                     log.debug(str(e))
                 self.domain_browser._obj._bus = None
                 self.domain_browser._obj = None
diff --git a/src/common/zeroconf/zeroconf_bonjour.py b/src/common/zeroconf/zeroconf_bonjour.py
index c8270c178..593fa95b0 100644
--- a/src/common/zeroconf/zeroconf_bonjour.py
+++ b/src/common/zeroconf/zeroconf_bonjour.py
@@ -24,7 +24,7 @@ from common.zeroconf.zeroconf import C_BARE_NAME, C_DOMAIN
 
 try:
     import pybonjour
-except ImportError, e:
+except ImportError:
     pass
 
 
@@ -224,7 +224,7 @@ class Zeroconf:
                     regtype = self.stype, port = self.port, txtRecord = self.txt,
                     callBack = self.service_added_callback)
             self.service_sdRef = sdRef
-        except pybonjour.BonjourError, e:
+        except pybonjour.BonjourError as e:
             self.service_add_fail_callback(e)
         else:
             gajim.log.debug('Publishing service %s of type %s' % (self.name, self.stype))
@@ -248,7 +248,7 @@ class Zeroconf:
             self.service_sdRef.close()
             self.announced = False
             return True
-        except pybonjour.BonjourError, e:
+        except pybonjour.BonjourError as e:
             gajim.log.debug(e)
             return False
 
@@ -282,8 +282,8 @@ class Zeroconf:
         gajim.log.debug('starting to browse')
         try:
             self.browse_sdRef = pybonjour.DNSServiceBrowse(regtype=self.stype, domain=domain, callBack=self.browse_callback)
-        except pybonjour.BonjourError, e:
-            self.error_CB("Error while browsing: %s" % e)
+        except pybonjour.BonjourError as e:
+            self.error_CB("Error while browsing: %s" % str(e))
 
     def browse_loop(self):
         ready = select.select([self.browse_sdRef], [], [], 0)
diff --git a/src/config.py b/src/config.py
index 212d7d9ee..588c7a5c3 100644
--- a/src/config.py
+++ b/src/config.py
@@ -31,9 +31,11 @@
 ## along with Gajim. If not, see value1  infos in a
     table {entry1: value1}
     """
 
     def __init__(self, infos, selectable=False):
-        gtk.Table.__init__(self)
+        GObject.GObject.__init__(self)
         self.infos = infos
         self.selectable = selectable
         self.entries = {}
@@ -2711,7 +2745,7 @@ class FakeDataForm(gtk.Table, object):
         if 'instructions' in self.infos:
             nbrow = 1
             self.resize(rows = nbrow, columns = 2)
-            label = gtk.Label(self.infos['instructions'])
+            label = Gtk.Label(label=self.infos['instructions'])
             if self.selectable:
                 label.set_selectable(True)
             self.attach(label, 0, 2, 0, 1, 0, 0, 0, 0)
@@ -2723,9 +2757,9 @@ class FakeDataForm(gtk.Table, object):
 
             nbrow = nbrow + 1
             self.resize(rows = nbrow, columns = 2)
-            label = gtk.Label(name.capitalize() + ':')
+            label = Gtk.Label(label=name.capitalize() + ':')
             self.attach(label, 0, 1, nbrow - 1, nbrow, 0, 0, 0, 0)
-            entry = gtk.Entry()
+            entry = Gtk.Entry()
             entry.set_activates_default(True)
             if self.infos[name]:
                 entry.set_text(self.infos[name])
@@ -2738,7 +2772,7 @@ class FakeDataForm(gtk.Table, object):
 
     def get_infos(self):
         for name in self.entries.keys():
-            self.infos[name] = self.entries[name].get_text().decode('utf-8')
+            self.infos[name] = self.entries[name].get_text()
         return self.infos
 
 class ServiceRegistrationWindow:
@@ -2817,7 +2851,7 @@ class GroupchatConfigWindow:
             # widget
             sw = self.data_form_widget.xml.get_object(
                 'single_form_scrolledwindow')
-            sw.set_policy(gtk.POLICY_NEVER, gtk.POLICY_NEVER)
+            sw.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.NEVER)
             if self.form.title:
                 self.xml.get_object('title_label').set_text(self.form.title)
             else:
@@ -2825,7 +2859,7 @@ class GroupchatConfigWindow:
                 self.xml.get_object('title_hseparator').hide()
 
             self.data_form_widget.show()
-            config_vbox.pack_start(self.data_form_widget)
+            config_vbox.pack_start(self.data_form_widget, True, True, 0)
         else:
             self.xml.get_object('title_label').set_no_show_all(True)
             self.xml.get_object('title_label').hide()
@@ -2839,67 +2873,67 @@ class GroupchatConfigWindow:
 
         for affiliation in self.affiliation_labels.keys():
             self.start_users_dict[affiliation] = {}
-            hbox = gtk.HBox(spacing=5)
-            add_on_vbox.pack_start(hbox, False)
+            hbox = Gtk.HBox(spacing=5)
+            add_on_vbox.pack_start(hbox, False, True, 0)
 
-            label = gtk.Label(self.affiliation_labels[affiliation])
-            hbox.pack_start(label, False)
+            label = Gtk.Label(label=self.affiliation_labels[affiliation])
+            hbox.pack_start(label, False, True, 0)
 
-            bb = gtk.HButtonBox()
-            bb.set_layout(gtk.BUTTONBOX_END)
+            bb = Gtk.HButtonBox()
+            bb.set_layout(Gtk.ButtonBoxStyle.END)
             bb.set_spacing(5)
-            hbox.pack_start(bb)
-            add_button = gtk.Button(stock=gtk.STOCK_ADD)
+            hbox.pack_start(bb, True, True, 0)
+            add_button = Gtk.Button(stock=Gtk.STOCK_ADD)
             add_button.connect('clicked', self.on_add_button_clicked,
                 affiliation)
-            bb.pack_start(add_button)
-            self.remove_button[affiliation] = gtk.Button(stock=gtk.STOCK_REMOVE)
+            bb.pack_start(add_button, True, True, 0)
+            self.remove_button[affiliation] = Gtk.Button(stock=Gtk.STOCK_REMOVE)
             self.remove_button[affiliation].set_sensitive(False)
             self.remove_button[affiliation].connect('clicked',
                     self.on_remove_button_clicked, affiliation)
-            bb.pack_start(self.remove_button[affiliation])
+            bb.pack_start(self.remove_button[affiliation], True, True, 0)
 
             # jid, reason, nick, role
-            liststore = gtk.ListStore(str, str, str, str)
-            self.affiliation_treeview[affiliation] = gtk.TreeView(liststore)
+            liststore = Gtk.ListStore(str, str, str, str)
+            self.affiliation_treeview[affiliation] = Gtk.TreeView(liststore)
             self.affiliation_treeview[affiliation].get_selection().set_mode(
-                gtk.SELECTION_MULTIPLE)
+                Gtk.SelectionMode.MULTIPLE)
             self.affiliation_treeview[affiliation].connect('cursor-changed',
                 self.on_affiliation_treeview_cursor_changed, affiliation)
-            renderer = gtk.CellRendererText()
-            col = gtk.TreeViewColumn(_('JID'), renderer)
+            renderer = Gtk.CellRendererText()
+            col = Gtk.TreeViewColumn(_('JID'), renderer)
             col.add_attribute(renderer, 'text', 0)
             col.set_resizable(True)
             col.set_sort_column_id(0)
             self.affiliation_treeview[affiliation].append_column(col)
 
             if affiliation == 'outcast':
-                renderer = gtk.CellRendererText()
+                renderer = Gtk.CellRendererText()
                 renderer.set_property('editable', True)
                 renderer.connect('edited', self.on_cell_edited)
-                col = gtk.TreeViewColumn(_('Reason'), renderer)
+                col = Gtk.TreeViewColumn(_('Reason'), renderer)
                 col.add_attribute(renderer, 'text', 1)
                 col.set_resizable(True)
                 col.set_sort_column_id(1)
                 self.affiliation_treeview[affiliation].append_column(col)
             elif affiliation == 'member':
-                renderer = gtk.CellRendererText()
-                col = gtk.TreeViewColumn(_('Nick'), renderer)
+                renderer = Gtk.CellRendererText()
+                col = Gtk.TreeViewColumn(_('Nick'), renderer)
                 col.add_attribute(renderer, 'text', 2)
                 col.set_resizable(True)
                 col.set_sort_column_id(2)
                 self.affiliation_treeview[affiliation].append_column(col)
-                renderer = gtk.CellRendererText()
-                col = gtk.TreeViewColumn(_('Role'), renderer)
+                renderer = Gtk.CellRendererText()
+                col = Gtk.TreeViewColumn(_('Role'), renderer)
                 col.add_attribute(renderer, 'text', 3)
                 col.set_resizable(True)
                 col.set_sort_column_id(3)
                 self.affiliation_treeview[affiliation].append_column(col)
 
-            sw = gtk.ScrolledWindow()
-            sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_NEVER)
+            sw = Gtk.ScrolledWindow()
+            sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.NEVER)
             sw.add(self.affiliation_treeview[affiliation])
-            add_on_vbox.pack_start(sw)
+            add_on_vbox.pack_start(sw, True, True, 0)
             gajim.connections[self.account].get_affiliation_list(self.room_jid,
                 affiliation)
 
@@ -2911,7 +2945,7 @@ class GroupchatConfigWindow:
 
     def on_cell_edited(self, cell, path, new_text):
         model = self.affiliation_treeview['outcast'].get_model()
-        new_text = new_text.decode('utf-8')
+        new_text = new_text
         iter_ = model.get_iter(path)
         model[iter_][1] = new_text
 
@@ -2948,7 +2982,7 @@ class GroupchatConfigWindow:
         model, paths = selection.get_selected_rows()
         row_refs = []
         for path in paths:
-            row_refs.append(gtk.TreeRowReference(model, path))
+            row_refs.append(Gtk.TreeRowReference.new(model, path))
         for row_ref in row_refs:
             path = row_ref.get_path()
             iter_ = model.get_iter(path)
@@ -2989,16 +3023,15 @@ class GroupchatConfigWindow:
             iter_ = model.get_iter_first()
             # add new jid
             while iter_:
-                jid = model[iter_][0].decode('utf-8')
+                jid = model[iter_][0]
                 actual_jid_list.append(jid)
                 if jid not in self.start_users_dict[affiliation] or \
                 (affiliation == 'outcast' and 'reason' in self.start_users_dict[
                 affiliation][jid] and self.start_users_dict[affiliation][jid]\
-                ['reason'] != model[iter_][1].decode('utf-8')):
+                ['reason'] != model[iter_][1]):
                     users_dict[jid] = {'affiliation': affiliation}
                     if affiliation == 'outcast':
-                        users_dict[jid]['reason'] = model[iter_][1].decode(
-                            'utf-8')
+                        users_dict[jid]['reason'] = model[iter_][1]
                 iter_ = model.iter_next(iter_)
             # remove removed one
             for jid in self.start_users_dict[affiliation]:
@@ -3138,8 +3171,8 @@ class ManageBookmarksWindow:
 
         # Account-JID, RoomName, Room-JID, Autojoin, Minimize, Passowrd, Nick,
         # Show_Status
-        self.treestore = gtk.TreeStore(str, str, str, bool, bool, str, str, str)
-        self.treestore.set_sort_column_id(1, gtk.SORT_ASCENDING)
+        self.treestore = Gtk.TreeStore(str, str, str, bool, bool, str, str, str)
+        self.treestore.set_sort_column_id(1, Gtk.SortType.ASCENDING)
 
         # Store bookmarks in treeview.
         for account in gajim.connections:
@@ -3180,7 +3213,7 @@ class ManageBookmarksWindow:
                                 print_status ])
 
         self.print_status_combobox = self.xml.get_object('print_status_combobox')
-        model = gtk.ListStore(str, str)
+        model = Gtk.ListStore(str, str)
 
         self.option_list = {'': _('Default'), 'all': Q_('?print_status:All'),
                 'in_and_out': _('Enter and leave only'),
@@ -3196,8 +3229,8 @@ class ManageBookmarksWindow:
         self.view.set_model(self.treestore)
         self.view.expand_all()
 
-        renderer = gtk.CellRendererText()
-        column = gtk.TreeViewColumn('Bookmarks', renderer, text=1)
+        renderer = Gtk.CellRendererText()
+        column = Gtk.TreeViewColumn('Bookmarks', renderer, text=1)
         self.view.append_column(column)
 
         self.selection = self.view.get_selection()
@@ -3211,7 +3244,8 @@ class ManageBookmarksWindow:
         self.server_entry = self.xml.get_object('server_entry')
         self.server_entry.connect('changed', self.on_server_entry_changed)
         self.room_entry = self.xml.get_object('room_entry')
-        self.room_entry.connect('changed', self.on_room_entry_changed)
+        self.room_entry_changed_id = self.room_entry.connect('changed',
+            self.on_room_entry_changed)
         self.pass_entry = self.xml.get_object('pass_entry')
         self.pass_entry.connect('changed', self.on_pass_entry_changed)
         self.autojoin_checkbutton = self.xml.get_object('autojoin_checkbutton')
@@ -3220,7 +3254,7 @@ class ManageBookmarksWindow:
         self.xml.connect_signals(self)
         self.window.show_all()
         # select root iter
-        self.selection.select_iter(self.treestore.get_iter_root())
+        self.selection.select_iter(self.treestore.get_iter_first())
 
     def on_add_bookmark_button_clicked(self, widget):
         """
@@ -3241,7 +3275,7 @@ class ManageBookmarksWindow:
             # No parent, so we got an account -> add to this.
             add_to = iter_
 
-        account = model[add_to][1].decode('utf-8')
+        account = model[add_to][1]
         nick = gajim.nicks[account]
         iter_ = self.treestore.append(add_to, [account, _('New Group Chat'),
             '@', False, False, '', nick, 'in_and_out'])
@@ -3274,8 +3308,8 @@ class ManageBookmarksWindow:
             #Account data can't be changed
             return
 
-        if self.server_entry.get_text().decode('utf-8') == '' or \
-        self.room_entry.get_text().decode('utf-8') == '':
+        if self.server_entry.get_text() == '' or \
+        self.room_entry.get_text() == '':
             dialogs.ErrorDialog(_('This bookmark has invalid data'),
                     _('Please be sure to fill out server and room fields or remove this'
                     ' bookmark.'))
@@ -3295,34 +3329,26 @@ class ManageBookmarksWindow:
                 return
 
         for account in self.treestore:
-            account_unicode = account[1].decode('utf-8')
-            gajim.connections[account_unicode].bookmarks = []
+            acct = account[1]
+            gajim.connections[acct].bookmarks = []
 
             for bm in account.iterchildren():
                 # Convert True/False/None to '1' or '0'
-                autojoin = unicode(int(bm[3]))
-                minimize = unicode(int(bm[4]))
+                autojoin = str(int(bm[3]))
+                minimize = str(int(bm[4]))
                 name = bm[1]
-                if name:
-                    name = name.decode('utf-8')
                 jid = bm[2]
-                if jid:
-                    jid = jid.decode('utf-8')
                 pw = bm[5]
-                if pw:
-                    pw = pw.decode('utf-8')
                 nick = bm[6]
-                if nick:
-                    nick = nick.decode('utf-8')
 
                 # create the bookmark-dict
                 bmdict = { 'name': name, 'jid': jid, 'autojoin': autojoin,
                     'minimize': minimize, 'password': pw, 'nick': nick,
                     'print_status': bm[7]}
 
-                gajim.connections[account_unicode].bookmarks.append(bmdict)
+                gajim.connections[acct].bookmarks.append(bmdict)
 
-            gajim.connections[account_unicode].store_bookmarks()
+            gajim.connections[acct].store_bookmarks()
         gajim.interface.roster.set_actions_menu_needs_rebuild()
         self.window.destroy()
 
@@ -3358,9 +3384,11 @@ class ManageBookmarksWindow:
 
         # Fill in the data for childs
         self.title_entry.set_text(model[iter_][1])
-        room_jid = model[iter_][2].decode('utf-8')
+        room_jid = model[iter_][2]
         (room, server) = room_jid.split('@')
+        self.room_entry.handler_block(self.room_entry_changed_id)
         self.room_entry.set_text(room)
+        self.room_entry.handler_unblock(self.room_entry_changed_id)
         self.server_entry.set_text(server)
 
         self.autojoin_checkbutton.set_active(model[iter_][3])
@@ -3369,7 +3397,7 @@ class ManageBookmarksWindow:
         self.minimize_checkbutton.set_sensitive(model[iter_][3])
 
         if model[iter_][5] is not None:
-            password = model[iter_][5].decode('utf-8')
+            password = model[iter_][5]
         else:
             password = None
 
@@ -3379,7 +3407,6 @@ class ManageBookmarksWindow:
             self.pass_entry.set_text('')
         nick = model[iter_][6]
         if nick:
-            nick = nick.decode('utf-8')
             self.nick_entry.set_text(nick)
         else:
             self.nick_entry.set_text('')
@@ -3398,12 +3425,12 @@ class ManageBookmarksWindow:
     def on_nick_entry_changed(self, widget):
         (model, iter_) = self.selection.get_selected()
         if iter_:
-            nick = self.nick_entry.get_text().decode('utf-8')
+            nick = self.nick_entry.get_text()
             try:
                 nick = helpers.parse_resource(nick)
-            except helpers.InvalidFormat, e:
+            except helpers.InvalidFormat:
                 dialogs.ErrorDialog(_('Invalid nickname'),
-                        _('Character not allowed'))
+                    _('Character not allowed'), transient_for=self.window)
                 self.nick_entry.set_text(model[iter_][6])
                 return True
             model[iter_][6] = nick
@@ -3412,18 +3439,23 @@ class ManageBookmarksWindow:
         (model, iter_) = self.selection.get_selected()
         if not iter_:
             return
-        server = widget.get_text().decode('utf-8')
+        server = widget.get_text()
+        if not server:
+            return
         if '@' in server:
-            dialogs.ErrorDialog(_('Invalid server'), _('Character not allowed'))
+            dialogs.ErrorDialog(_('Invalid server'),
+                _('Character not allowed'), transient_for=self.window)
             widget.set_text(server.replace('@', ''))
 
-        room_jid = self.room_entry.get_text().decode('utf-8').strip() + '@' + \
-                server.strip()
+        room = self.room_entry.get_text().strip()
+        if not room:
+            return
+        room_jid = room + '@' + server.strip()
         try:
-            room_jid = helpers.parse_resource(room_jid)
-        except helpers.InvalidFormat, e:
+            room_jid = helpers.parse_jid(room_jid)
+        except helpers.InvalidFormat as e:
             dialogs.ErrorDialog(_('Invalid server'),
-                    _('Character not allowed'))
+                _('Character not allowed'), transient_for=self.window)
             self.server_entry.set_text(model[iter_][2].split('@')[1])
             return True
         model[iter_][2] = room_jid
@@ -3432,18 +3464,24 @@ class ManageBookmarksWindow:
         (model, iter_) = self.selection.get_selected()
         if not iter_:
             return
-        room = widget.get_text().decode('utf-8')
+        room = widget.get_text()
+        if not room:
+            return
         if '@' in room:
-            dialogs.ErrorDialog(_('Invalid server'), _('Character not allowed'))
-            widget.set_text(room.replace('@', ''))
-        room_jid = room.strip() + '@' + \
-            self.server_entry.get_text().decode('utf-8').strip()
+            room, server = room.split('@', 1)
+            widget.set_text(room)
+            if server:
+                self.server_entry.set_text(server)
+            self.server_entry.grab_focus()
+        server = self.server_entry.get_text().strip()
+        if not server:
+            return
+        room_jid = room.strip() + '@' + server
         try:
-            room_jid = helpers.parse_resource(room_jid)
-        except helpers.InvalidFormat, e:
+            room_jid = helpers.parse_jid(room_jid)
+        except helpers.InvalidFormat:
             dialogs.ErrorDialog(_('Invalid room'),
-                    _('Character not allowed'))
-            self.room_entry.set_text(model[iter_][2].split('@')[0])
+                _('Character not allowed'), transient_for=self.window)
             return True
         model[iter_][2] = room_jid
 
@@ -3487,39 +3525,23 @@ class AccountCreationWizardWindow:
         self.window = self.xml.get_object('account_creation_wizard_window')
         self.window.set_transient_for(gajim.interface.roster.window)
 
-        completion = gtk.EntryCompletion()
-        completion1 = gtk.EntryCompletion()
-        # Connect events from comboboxentry.child
+        # Connect events from comboboxentry.get_child()
         server_comboboxentry = self.xml.get_object('server_comboboxentry')
-        entry = server_comboboxentry.child
+        entry = server_comboboxentry.get_child()
         entry.connect('key_press_event',
             self.on_server_comboboxentry_key_press_event, server_comboboxentry)
-        entry.set_completion(completion)
         # Do the same for the other server comboboxentry
         server_comboboxentry1 = self.xml.get_object('server_comboboxentry1')
-        entry = server_comboboxentry1.child
-        entry.set_completion(completion1)
 
         self.update_proxy_list()
 
         # parse servers.xml
         servers_xml = os.path.join(gajim.DATA_DIR, 'other', 'servers.xml')
         servers = gtkgui_helpers.parse_server_xml(servers_xml)
-        servers_model = gtk.ListStore(str)
+        servers_model = self.xml.get_object('server_liststore')
         for server in servers:
             servers_model.append((server,))
 
-        completion.set_model(servers_model)
-        completion.set_text_column(0)
-        completion1.set_model(servers_model)
-        completion1.set_text_column(0)
-
-        # Put servers into comboboxentries
-        server_comboboxentry.set_model(servers_model)
-        server_comboboxentry.set_text_column(0)
-        server_comboboxentry1.set_model(servers_model)
-        server_comboboxentry1.set_text_column(0)
-
         # Generic widgets
         self.notebook = self.xml.get_object('notebook')
         self.cancel_button = self.xml.get_object('cancel_button')
@@ -3628,7 +3650,7 @@ class AccountCreationWizardWindow:
         self.go_online_checkbutton.show()
         img = self.xml.get_object('finish_image')
         if self.modify:
-            img.set_from_stock(gtk.STOCK_APPLY, gtk.ICON_SIZE_DIALOG)
+            img.set_from_stock(Gtk.STOCK_APPLY, Gtk.IconSize.DIALOG)
         else:
             path_to_file = gtkgui_helpers.get_icon_path('gajim', 48)
             img.set_from_file(path_to_file)
@@ -3653,20 +3675,18 @@ class AccountCreationWizardWindow:
             # We are adding an existing account
             anonymous = self.xml.get_object('anonymous_checkbutton1').\
                 get_active()
-            username = self.xml.get_object('username_entry').get_text().decode(
-                'utf-8').strip()
+            username = self.xml.get_object('username_entry').get_text().strip()
             if not username and not anonymous:
                 pritext = _('Invalid username')
                 sectext = _(
                     'You must provide a username to configure this account.')
                 dialogs.ErrorDialog(pritext, sectext)
                 return
-            server = self.xml.get_object('server_comboboxentry').child.\
-                get_text().decode('utf-8').strip()
+            server = self.xml.get_object('server_comboboxentry').get_child().\
+                get_text().strip()
             savepass = self.xml.get_object('save_password_checkbutton').\
                 get_active()
-            password = self.xml.get_object('password_entry').get_text().decode(
-                'utf-8')
+            password = self.xml.get_object('password_entry').get_text()
 
             if anonymous:
                 jid = ''
@@ -3676,7 +3696,7 @@ class AccountCreationWizardWindow:
             # check if jid is conform to RFC and stringprep it
             try:
                 jid = helpers.parse_jid(jid)
-            except helpers.InvalidFormat, s:
+            except helpers.InvalidFormat as s:
                 pritext = _('Invalid Jabber ID')
                 dialogs.ErrorDialog(pritext, str(s))
                 return
@@ -3695,8 +3715,8 @@ class AccountCreationWizardWindow:
             self.show_finish_page()
         elif cur_page == 2:
             # We are creating a new account
-            server = self.xml.get_object('server_comboboxentry1').child.\
-                get_text().decode('utf-8')
+            server = self.xml.get_object('server_comboboxentry1').get_child().\
+                get_text()
 
             if not server:
                 dialogs.ErrorDialog(_('Invalid server'),
@@ -3712,7 +3732,7 @@ class AccountCreationWizardWindow:
             # Get advanced options
             proxies_combobox = self.xml.get_object('proxies_combobox')
             active = proxies_combobox.get_active()
-            proxy = proxies_combobox.get_model()[active][0].decode('utf-8')
+            proxy = proxies_combobox.get_model()[active][0]
             if proxy == _('None'):
                 proxy = ''
             config['proxy'] = proxy
@@ -3728,7 +3748,7 @@ class AccountCreationWizardWindow:
                 return
             config['custom_port'] = custom_port
             config['custom_host'] = self.xml.get_object(
-                'custom_host_entry').get_text().decode('utf-8')
+                'custom_host_entry').get_text()
 
             if self.xml.get_object('anonymous_checkbutton2').get_active():
                 self.modify = True
@@ -3738,7 +3758,7 @@ class AccountCreationWizardWindow:
                 self.notebook.set_current_page(5) # show creating page
                 self.back_button.hide()
                 self.forward_button.hide()
-                self.update_progressbar_timeout_id = gobject.timeout_add(100,
+                self.update_progressbar_timeout_id = GLib.timeout_add(100,
                     self.update_progressbar)
                 # Get form from serveur
                 con = connection.Connection(self.account)
@@ -3780,16 +3800,16 @@ class AccountCreationWizardWindow:
             self.notebook.set_current_page(5) # show creating page
             self.back_button.hide()
             self.forward_button.hide()
-            self.update_progressbar_timeout_id = gobject.timeout_add(100,
+            self.update_progressbar_timeout_id = GLib.timeout_add(100,
                 self.update_progressbar)
 
     def update_proxy_list(self):
         proxies_combobox = self.xml.get_object('proxies_combobox')
-        model = gtk.ListStore(str)
+        model = Gtk.ListStore(str)
         proxies_combobox.set_model(model)
         l = gajim.config.get_per('proxies')
         l.insert(0, _('None'))
-        for i in xrange(len(l)):
+        for i in range(len(l)):
             model.append([l[i]])
         proxies_combobox.set_active(0)
 
@@ -3816,7 +3836,7 @@ class AccountCreationWizardWindow:
         if obj.conn.name != self.account:
             return
         if self.update_progressbar_timeout_id is not None:
-            gobject.source_remove(self.update_progressbar_timeout_id)
+            GLib.source_remove(self.update_progressbar_timeout_id)
         self.back_button.show()
         self.forward_button.show()
         self.is_form = obj.is_form
@@ -3835,7 +3855,7 @@ class AccountCreationWizardWindow:
                 empty_config = False
                 break
         self.data_form_widget.show_all()
-        self.xml.get_object('form_vbox').pack_start(self.data_form_widget)
+        self.xml.get_object('form_vbox').pack_start(self.data_form_widget, True, True, 0)
         if empty_config:
             self.forward_button.set_sensitive(False)
             self.notebook.set_current_page(4) # show form page
@@ -3874,7 +3894,7 @@ class AccountCreationWizardWindow:
         if self.account not in gajim.connections:
             return
         if self.update_progressbar_timeout_id is not None:
-            gobject.source_remove(self.update_progressbar_timeout_id)
+            GLib.source_remove(self.update_progressbar_timeout_id)
         del gajim.connections[self.account]
         if self.account in gajim.config.get_per('accounts'):
             gajim.config.del_per('accounts', self.account)
@@ -3883,7 +3903,7 @@ class AccountCreationWizardWindow:
         self.go_online_checkbutton.hide()
         self.show_vcard_checkbutton.hide()
         img = self.xml.get_object('finish_image')
-        img.set_from_stock(gtk.STOCK_DIALOG_ERROR, gtk.ICON_SIZE_DIALOG)
+        img.set_from_stock(Gtk.STOCK_DIALOG_ERROR, Gtk.IconSize.DIALOG)
         finish_text = '%s %s Message was corrected. Last message was: \n  %s') % \
-            gobject.markup_escape_text(old_txt)
+            GLib.markup_escape_text(old_txt)
         self.show_corrected_message_warning(i2, tt_txt)
         self.last_sent_message_marks[1] = buffer_.create_mark(None, i2,
             left_gravity=True)
@@ -484,12 +487,12 @@ class ConversationTextview(gobject.GObject):
         buffer_ = self.tv.get_buffer()
         i1 = buffer_.get_iter_at_mark(m1)
         i2 = buffer_.get_iter_at_mark(m2)
-        txt = buffer_.get_text(i1, i2)
+        txt = buffer_.get_text(i1, i2, True)
         buffer_.delete(i1, i2)
         i2 = self.print_conversation_line(message, '', 'incoming', name, None,
             xhtml=xhtml, iter_=i1)
         tt_txt = _('Message was corrected. Last message was: \n  %s') % \
-            gobject.markup_escape_text(old_txt)
+            GLib.markup_escape_text(old_txt)
         self.show_corrected_message_warning(i2, tt_txt)
         self.last_received_message_marks[name][1] = buffer_.create_mark(None, i2,
             left_gravity=True)
@@ -511,22 +514,11 @@ class ConversationTextview(gobject.GObject):
                 return False
 
             end_iter = buffer_.get_iter_at_mark(self.xep0184_marks[id_])
-            buffer_.insert(end_iter, ' ')
-            anchor = buffer_.create_child_anchor(end_iter)
-            img = TextViewImage(anchor, '')
-            img.set_from_pixbuf(ConversationTextview.XEP0184_WARNING_PIXBUF)
-            img.show()
-            self.tv.add_child_at_anchor(img, anchor)
-            before_img_iter = buffer_.get_iter_at_mark(self.xep0184_marks[id_])
-            before_img_iter.forward_char()
-            post_img_iter = before_img_iter.copy()
-            post_img_iter.forward_char()
-            buffer_.apply_tag_by_name('xep0184-warning', before_img_iter,
-                    post_img_iter)
+            buffer_.insert_with_tags_by_name(end_iter, ' ✖', 'xep0184-warning')
 
             self.xep0184_shown[id_] = SHOWN
             return False
-        gobject.timeout_add_seconds(3, show_it)
+        GLib.timeout_add_seconds(3, show_it)
 
         buffer_.end_user_action()
 
@@ -549,12 +541,8 @@ class ConversationTextview(gobject.GObject):
 
         if gajim.config.get('positive_184_ack'):
             begin_iter = buffer_.get_iter_at_mark(self.xep0184_marks[id_])
-            buffer_.insert(begin_iter, ' ')
-            anchor = buffer_.create_child_anchor(begin_iter)
-            img = TextViewImage(anchor, '')
-            img.set_from_pixbuf(ConversationTextview.XEP0184_RECEIVED_PIXBUF)
-            img.show()
-            self.tv.add_child_at_anchor(img, anchor)
+            buffer_.insert_with_tags_by_name(begin_iter, ' ✓',
+                'xep0184-received')
 
         self.xep0184_shown[id_] = ALREADY_RECEIVED
 
@@ -595,7 +583,7 @@ class ConversationTextview(gobject.GObject):
                         self.focus_out_end_mark)
                 begin_iter_for_previous_line = end_iter_for_previous_line.copy()
                 # img_char+1 (the '\n')
-                begin_iter_for_previous_line.backward_chars(2)
+                begin_iter_for_previous_line.backward_chars(21)
 
                 # remove focus out line
                 buffer_.delete(begin_iter_for_previous_line,
@@ -604,14 +592,12 @@ class ConversationTextview(gobject.GObject):
 
             # add the new focus out line
             end_iter = buffer_.get_end_iter()
-            buffer_.insert(end_iter, '\n')
-            buffer_.insert_pixbuf(end_iter,
-                    ConversationTextview.FOCUS_OUT_LINE_PIXBUF)
+            buffer_.insert(end_iter, '\n' + '―' * 20)
 
             end_iter = buffer_.get_end_iter()
             before_img_iter = end_iter.copy()
             # one char back (an image also takes one char)
-            before_img_iter.backward_char()
+            before_img_iter.backward_chars(20)
             buffer_.apply_tag_by_name('focus-out-line', before_img_iter, end_iter)
 
             self.allow_focus_out_line = False
@@ -625,12 +611,14 @@ class ConversationTextview(gobject.GObject):
             if scroll:
                 # scroll to the end (via idle in case the scrollbar has
                 # appeared)
-                gobject.idle_add(self.scroll_to_end)
+                GLib.idle_add(self.scroll_to_end)
 
     def show_xep0184_warning_tooltip(self):
-        pointer = self.tv.get_pointer()
-        x, y = self.tv.window_to_buffer_coords(gtk.TEXT_WINDOW_TEXT,
-                pointer[0], pointer[1])
+        w = self.tv.get_window(Gtk.TextWindowType.TEXT)
+        device = w.get_display().get_device_manager().get_client_pointer()
+        pointer = w.get_device_position(device)
+        x = pointer[1]
+        y = pointer[2]
         tags = self.tv.get_iter_at_location(x, y).get_tags()
         tag_table = self.tv.get_buffer().get_tag_table()
         xep0184_warning = False
@@ -640,16 +628,18 @@ class ConversationTextview(gobject.GObject):
                 break
         if xep0184_warning and not self.xep0184_warning_tooltip.win:
             # check if the current pointer is still over the line
-            position = self.tv.window.get_origin()
-            self.xep0184_warning_tooltip.show_tooltip(_('This icon indicates that '
-                    'this message has not yet\nbeen received by the remote end. '
-                    "If this icon stays\nfor a long time, it's likely the message got "
-                    'lost.'), 8, position[1] + pointer[1])
+            position = w.get_origin()[1:]
+            self.xep0184_warning_tooltip.show_tooltip(_('This icon indicates '
+                'that this message has not yet\nbeen received by the remote '
+                "end. If this icon stays\nfor a long time, it's likely the "
+                'message got lost.'), 8, position[1] + y)
 
     def show_line_tooltip(self):
-        pointer = self.tv.get_pointer()
-        x, y = self.tv.window_to_buffer_coords(gtk.TEXT_WINDOW_TEXT,
-                pointer[0], pointer[1])
+        w = self.tv.get_window(Gtk.TextWindowType.TEXT)
+        device = w.get_display().get_device_manager().get_client_pointer()
+        pointer = w.get_device_position(device)
+        x = pointer[1]
+        y = pointer[2]
         tags = self.tv.get_iter_at_location(x, y).get_tags()
         tag_table = self.tv.get_buffer().get_tag_table()
         over_line = False
@@ -659,12 +649,14 @@ class ConversationTextview(gobject.GObject):
                 break
         if over_line and not self.line_tooltip.win:
             # check if the current pointer is still over the line
-            position = self.tv.window.get_origin()
+            position = w.get_origin()[1:]
             self.line_tooltip.show_tooltip(_('Text below this line is what has '
-                    'been said since the\nlast time you paid attention to this group '
-                    'chat'), 8, position[1] + pointer[1])
+                'been said since the\nlast time you paid attention to this '
+                'group chat'), 8, position[1] + y)
 
-    def on_textview_expose_event(self, widget, event):
+    def on_textview_draw(self, widget, ctx):
+        return
+        #TODO
         expalloc = event.area
         exp_x0 = expalloc.x
         exp_y0 = expalloc.y
@@ -694,22 +686,23 @@ class ConversationTextview(gobject.GObject):
         """
         Change the cursor to a hand when we are over a mail or an url
         """
-        pointer_x, pointer_y = self.tv.window.get_pointer()[0:2]
-        x, y = self.tv.window_to_buffer_coords(gtk.TEXT_WINDOW_TEXT,
-                pointer_x, pointer_y)
+        w = self.tv.get_window(Gtk.TextWindowType.TEXT)
+        device = w.get_display().get_device_manager().get_client_pointer()
+        pointer = w.get_device_position(device)
+        x, y = self.tv.window_to_buffer_coords(Gtk.TextWindowType.TEXT,
+            pointer[1], pointer[2])
         tags = self.tv.get_iter_at_location(x, y).get_tags()
         if self.change_cursor:
-            self.tv.get_window(gtk.TEXT_WINDOW_TEXT).set_cursor(
-                    gtk.gdk.Cursor(gtk.gdk.XTERM))
+            w.set_cursor(Gdk.Cursor.new(Gdk.CursorType.XTERM))
             self.change_cursor = False
         tag_table = self.tv.get_buffer().get_tag_table()
         over_line = False
         xep0184_warning = False
+
         for tag in tags:
             if tag in (tag_table.lookup('url'), tag_table.lookup('mail'), \
             tag_table.lookup('xmpp'), tag_table.lookup('sth_at_sth')):
-                self.tv.get_window(gtk.TEXT_WINDOW_TEXT).set_cursor(
-                        gtk.gdk.Cursor(gtk.gdk.HAND2))
+                w.set_cursor(Gdk.Cursor.new(Gdk.CursorType.HAND2))
                 self.change_cursor = True
             elif tag == tag_table.lookup('focus-out-line'):
                 over_line = True
@@ -725,16 +718,14 @@ class ConversationTextview(gobject.GObject):
             if not xep0184_warning:
                 self.xep0184_warning_tooltip.hide_tooltip()
         if over_line and not self.line_tooltip.win:
-            self.line_tooltip.timeout = gobject.timeout_add(500,
+            self.line_tooltip.timeout = GLib.timeout_add(500,
                     self.show_line_tooltip)
-            self.tv.get_window(gtk.TEXT_WINDOW_TEXT).set_cursor(
-                    gtk.gdk.Cursor(gtk.gdk.LEFT_PTR))
+            w.set_cursor(Gdk.Cursor.new(Gdk.CursorType.LEFT_PTR))
             self.change_cursor = True
         if xep0184_warning and not self.xep0184_warning_tooltip.win:
-            self.xep0184_warning_tooltip.timeout = gobject.timeout_add(500,
+            self.xep0184_warning_tooltip.timeout = GLib.timeout_add(500,
                     self.show_xep0184_warning_tooltip)
-            self.tv.get_window(gtk.TEXT_WINDOW_TEXT).set_cursor(
-                    gtk.gdk.Cursor(gtk.gdk.LEFT_PTR))
+            w.set_cursor(Gdk.Cursor.new(Gdk.CursorType.LEFT_PTR))
             self.change_cursor = True
 
     def clear(self, tv = None):
@@ -746,7 +737,7 @@ class ConversationTextview(gobject.GObject):
         buffer_.delete(start, end)
         size = gajim.config.get('max_conversation_lines')
         size = 2 * size - 1
-        self.marks_queue = Queue.Queue(size)
+        self.marks_queue = queue.Queue(size)
         self.focus_out_end_mark = None
         self.just_cleared = True
 
@@ -765,33 +756,35 @@ class ConversationTextview(gobject.GObject):
         """
         separator_menuitem_was_added = False
         if not self.used_in_history_window:
-            item = gtk.SeparatorMenuItem()
+            item = Gtk.SeparatorMenuItem.new()
             menu.prepend(item)
             separator_menuitem_was_added = True
 
-            item = gtk.ImageMenuItem(gtk.STOCK_CLEAR)
+            item = Gtk.ImageMenuItem.new_from_stock(Gtk.STOCK_CLEAR, None)
             menu.prepend(item)
             id_ = item.connect('activate', self.clear)
             self.handlers[id_] = item
 
         if self.selected_phrase:
             if not separator_menuitem_was_added:
-                item = gtk.SeparatorMenuItem()
+                item = Gtk.SeparatorMenuItem.new()
                 menu.prepend(item)
 
             if not self.used_in_history_window:
-                item = gtk.MenuItem(_('_Quote'))
+                item = Gtk.MenuItem.new_with_mnemonic(_('_Quote'))
                 id_ = item.connect('activate', self.on_quote)
                 self.handlers[id_] = item
                 menu.prepend(item)
 
             _selected_phrase = helpers.reduce_chars_newlines(
                     self.selected_phrase, 25, 2)
-            item = gtk.MenuItem(_('_Actions for "%s"') % _selected_phrase)
+            item = Gtk.MenuItem.new_with_mnemonic(
+                _('_Actions for "%s"') % _selected_phrase)
             menu.prepend(item)
-            submenu = gtk.Menu()
+            submenu = Gtk.Menu()
             item.set_submenu(submenu)
-            phrase_for_url = urllib.quote(self.selected_phrase.encode('utf-8'))
+            phrase_for_url = urllib.parse.quote(self.selected_phrase.encode(
+                'utf-8'))
 
             always_use_en = gajim.config.get('always_english_wikipedia')
             if always_use_en:
@@ -800,12 +793,12 @@ class ConversationTextview(gobject.GObject):
             else:
                 link = 'http://%s.wikipedia.org/wiki/Special:Search?search=%s'\
                         % (gajim.LANG, phrase_for_url)
-            item = gtk.MenuItem(_('Read _Wikipedia Article'))
+            item = Gtk.MenuItem.new_with_mnemonic(_('Read _Wikipedia Article'))
             id_ = item.connect('activate', self.visit_url_from_menuitem, link)
             self.handlers[id_] = item
             submenu.append(item)
 
-            item = gtk.MenuItem(_('Look it up in _Dictionary'))
+            item = Gtk.MenuItem.new_with_mnemonic(_('Look it up in _Dictionary'))
             dict_link = gajim.config.get('dictionary_url')
             if dict_link == 'WIKTIONARY':
                 # special link (yeah undocumented but default)
@@ -821,7 +814,7 @@ class ConversationTextview(gobject.GObject):
             else:
                 if dict_link.find('%s') == -1:
                     # we must have %s in the url if not WIKTIONARY
-                    item = gtk.MenuItem(_(
+                    item = Gtk.MenuItem(_(
                             'Dictionary URL is missing an "%s" and it is not WIKTIONARY'))
                     item.set_property('sensitive', False)
                 else:
@@ -835,16 +828,16 @@ class ConversationTextview(gobject.GObject):
             search_link = gajim.config.get('search_engine')
             if search_link.find('%s') == -1:
                 # we must have %s in the url
-                item = gtk.MenuItem(_('Web Search URL is missing an "%s"'))
+                item = Gtk.MenuItem(_('Web Search URL is missing an "%s"'))
                 item.set_property('sensitive', False)
             else:
-                item = gtk.MenuItem(_('Web _Search for it'))
+                item = Gtk.MenuItem.new_with_mnemonic(_('Web _Search for it'))
                 link =  search_link % phrase_for_url
                 id_ = item.connect('activate', self.visit_url_from_menuitem, link)
                 self.handlers[id_] = item
             submenu.append(item)
 
-            item = gtk.MenuItem(_('Open as _Link'))
+            item = Gtk.MenuItem.new_with_mnemonic(_('Open as _Link'))
             id_ = item.connect('activate', self.visit_url_from_menuitem, link)
             self.handlers[id_] = item
             submenu.append(item)
@@ -862,12 +855,11 @@ class ConversationTextview(gobject.GObject):
         if event.button != 3: # if not right click
             return False
 
-        x, y = self.tv.window_to_buffer_coords(gtk.TEXT_WINDOW_TEXT,
+        x, y = self.tv.window_to_buffer_coords(Gtk.TextWindowType.TEXT,
                 int(event.x), int(event.y))
         iter_ = self.tv.get_iter_at_location(x, y)
         tags = iter_.get_tags()
 
-
         if tags: # we clicked on sth special (it can be status message too)
             for tag in tags:
                 tag_name = tag.get_property('name')
@@ -882,9 +874,8 @@ class ConversationTextview(gobject.GObject):
         if return_val: # if sth was selected when we right-clicked
             # get the selected text
             start_sel, finish_sel = return_val[0], return_val[1]
-            self.selected_phrase = buffer_.get_text(start_sel, finish_sel).decode(
-                    'utf-8')
-        elif ord(iter_.get_char()) > 31:
+            self.selected_phrase = buffer_.get_text(start_sel, finish_sel, True)
+        elif iter_.get_char() and ord(iter_.get_char()) > 31:
             # we clicked on a word, do as if it's selected for context menu
             start_sel = iter_.copy()
             if not start_sel.starts_word():
@@ -892,15 +883,14 @@ class ConversationTextview(gobject.GObject):
             finish_sel = iter_.copy()
             if not finish_sel.ends_word():
                 finish_sel.forward_word_end()
-            self.selected_phrase = buffer_.get_text(start_sel, finish_sel).decode(
-                    'utf-8')
+            self.selected_phrase = buffer_.get_text(start_sel, finish_sel, True)
 
     def on_open_link_activate(self, widget, kind, text):
         helpers.launch_browser_mailer(kind, text)
 
     def on_copy_link_activate(self, widget, text):
-        clip = gtk.clipboard_get()
-        clip.set_text(text)
+        clip = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD)
+        clip.set_text(text, -1)
 
     def on_start_chat_activate(self, widget, jid):
         gajim.interface.new_chat_from_jid(self.account, jid)
@@ -982,10 +972,11 @@ class ConversationTextview(gobject.GObject):
                 childs[0].hide() # copy link location
             childs[1].hide() # open link in browser
 
-        menu.popup(None, None, None, event.button, event.time)
+        menu.attach_to_widget(self.tv, None)
+        menu.popup(None, None, None, None, event.button.button, event.time)
 
     def hyperlink_handler(self, texttag, widget, event, iter_, kind):
-        if event.type == gtk.gdk.BUTTON_PRESS:
+        if event.type == Gdk.EventType.BUTTON_PRESS:
             begin_iter = iter_.copy()
             # we get the begining of the tag
             while not begin_iter.begins_tag(texttag):
@@ -1006,10 +997,8 @@ class ConversationTextview(gobject.GObject):
                     # it's a JID or mail
                     kind = 'sth_at_sth'
             else:
-                word = self.tv.get_buffer().get_text(begin_iter, end_iter).decode(
-                    'utf-8')
-
-            if event.button == 3: # right click
+                word = self.tv.get_buffer().get_text(begin_iter, end_iter, True)
+            if event.button.button == 3: # right click
                 self.make_link_menu(event, kind, word)
                 return True
             else:
@@ -1036,13 +1025,17 @@ class ConversationTextview(gobject.GObject):
         after *last* special text, so we can print it in
         print_conversation_line()
         """
+        if not otext:
+            return
         buffer_ = self.tv.get_buffer()
-
-        insert_tags_func = buffer_.insert_with_tags_by_name
+        if other_tags:
+            insert_tags_func = buffer_.insert_with_tags_by_name
+        else:
+            insert_tags_func = buffer_.insert
         # detect_and_print_special_text() is also used by
-        # HtmlHandler.handle_specials() and there tags is gtk.TextTag objects,
+        # HtmlHandler.handle_specials() and there tags is Gtk.TextTag objects,
         # not strings
-        if other_tags and isinstance(other_tags[0], gtk.TextTag):
+        if other_tags and isinstance(other_tags[0], Gtk.TextTag):
             insert_tags_func = buffer_.insert_with_tags
 
         index = 0
@@ -1070,7 +1063,10 @@ class ConversationTextview(gobject.GObject):
                 if not iter_:
                     end_iter = buffer_.get_end_iter()
                 # we insert normal text
-                insert_tags_func(end_iter, text_before_special_text, *other_tags)
+                if other_tags:
+                    insert_tags_func(end_iter, text_before_special_text, *other_tags)
+                else:
+                    buffer_.insert(end_iter, text_before_special_text)
             index = end # update index
 
             # now print it
@@ -1132,10 +1128,11 @@ class ConversationTextview(gobject.GObject):
             # it's an emoticon
             emot_ascii = possible_emot_ascii_caps
             anchor = buffer_.create_child_anchor(end_iter)
-            img = TextViewImage(anchor, special_text)
+            img = TextViewImage(anchor,
+                GLib.markup_escape_text(special_text))
             animations = gajim.interface.emoticons_animations
             if not emot_ascii in animations:
-                animations[emot_ascii] = gtk.gdk.PixbufAnimation(
+                animations[emot_ascii] = GdkPixbuf.PixbufAnimation.new_from_file(
                     gajim.interface.emoticons[emot_ascii])
             img.set_from_animation(animations[emot_ascii])
             img.show()
@@ -1203,10 +1200,12 @@ class ConversationTextview(gobject.GObject):
             # It's nothing special
             if use_other_tags:
                 insert_tags_func = buffer_.insert_with_tags_by_name
-                if other_tags and isinstance(other_tags[0], gtk.TextTag):
+                if other_tags and isinstance(other_tags[0], Gtk.TextTag):
                     insert_tags_func = buffer_.insert_with_tags
-
-                insert_tags_func(end_iter, special_text, *other_tags)
+                if other_tags:
+                    insert_tags_func(end_iter, special_text, *other_tags)
+                else:
+                    buffer_.insert(end_iter, special_text)
 
         if tags:
             all_tags = tags[:]
@@ -1216,7 +1215,7 @@ class ConversationTextview(gobject.GObject):
             all_tags = [(ttt.lookup(t) if isinstance(t, str) else t) for t in all_tags]
             buffer_.insert_with_tags(end_iter, special_text, *all_tags)
             if 'url' in tags:
-                puny_text = puny_encode(special_text)
+                puny_text = puny_encode(special_text).decode('utf-8')
                 if not puny_text.endswith('-'):
                     puny_tags = []
                     if use_other_tags:
@@ -1287,9 +1286,9 @@ class ConversationTextview(gobject.GObject):
             tim = time.localtime()
         current_print_time = gajim.config.get('print_time')
         if text.startswith('/me '):
-            direction_mark = i18n.paragraph_direction_mark(unicode(text[3:]))
+            direction_mark = i18n.paragraph_direction_mark(str(text[3:]))
         else:
-            direction_mark = i18n.paragraph_direction_mark(unicode(text))
+            direction_mark = i18n.paragraph_direction_mark(text)
         # don't apply direction mark if it's status message
         if kind == 'status':
             direction_mark = i18n.direction_mark
@@ -1297,8 +1296,11 @@ class ConversationTextview(gobject.GObject):
             timestamp_str = self.get_time_to_show(tim, direction_mark)
             timestamp = time.strftime(timestamp_str, tim)
             timestamp = direction_mark + timestamp + direction_mark
-            buffer_.insert_with_tags_by_name(end_iter, timestamp,
-                *other_tags_for_time)
+            if other_tags_for_time:
+                buffer_.insert_with_tags_by_name(end_iter, timestamp,
+                    *other_tags_for_time)
+            else:
+                buffer_.insert (end_iter, timestamp)
         elif current_print_time == 'sometimes' and kind != 'info' and not simple:
             every_foo_seconds = 60 * gajim.config.get(
                 'print_ichat_every_foo_minutes')
@@ -1312,7 +1314,7 @@ class ConversationTextview(gobject.GObject):
                 else:
                     tim_format = self.get_time_to_show(tim, direction_mark)
                 buffer_.insert_with_tags_by_name(end_iter, tim_format + '\n',
-                        'time_sometimes')
+                    'time_sometimes')
         # If there's a displaymarking, print it here.
         if displaymarking:
             self.print_displaymarking(displaymarking, iter_=end_iter)
@@ -1368,9 +1370,9 @@ class ConversationTextview(gobject.GObject):
             # we are at the end or we are sending something
             # scroll to the end (via idle in case the scrollbar has appeared)
             if gajim.config.get('use_smooth_scrolling'):
-                gobject.idle_add(self.smooth_scroll_to_end)
+                GLib.idle_add(self.smooth_scroll_to_end)
             else:
-                gobject.idle_add(self.scroll_to_end)
+                GLib.idle_add(self.scroll_to_end)
 
         self.just_cleared = False
         buffer_.end_user_action()
@@ -1385,9 +1387,9 @@ class ConversationTextview(gobject.GObject):
         # get difference in days since epoch (86400 = 24*3600)
         # number of days since epoch for current time (in GMT) -
         # number of days since epoch for message (in GMT)
-        diff_day = int(timegm(time.localtime())) / 86400 -\
-                int(timegm(tim)) / 86400
-        if diff_day == 0:
+        diff_day = int(int(timegm(time.localtime())) / 86400 -\
+                int(timegm(tim)) / 86400)
+        if diff_day == 0.0:
             day_str = ''
         else:
             #%i is day in year (1-365)
@@ -1400,10 +1402,6 @@ class ConversationTextview(gobject.GObject):
         timestamp_str = helpers.from_one_line(timestamp_str)
         format_ += timestamp_str
         tim_format = time.strftime(format_, tim)
-        if locale.getpreferredencoding() not in ('KOI8-R', 'cp1251'):
-            # if tim_format comes as unicode because of day_str.
-            # we convert it to the encoding that we want (and that is utf-8)
-            tim_format = helpers.ensure_utf8_string(tim_format)
         return tim_format
 
     def detect_other_text_tag(self, text, kind):
@@ -1465,11 +1463,10 @@ class ConversationTextview(gobject.GObject):
             try:
                 if name and (text.startswith('/me ') or text.startswith('/me\n')):
                     xhtml = xhtml.replace('/me', '* %s ' % (name,), 1)
-                self.tv.display_html(xhtml.encode('utf-8'), self.tv, self,
-                    iter_=iter_)
+                self.tv.display_html(xhtml, self.tv, self, iter_=iter_)
                 return
-            except Exception, e:
-                gajim.log.debug('Error processing xhtml' + str(e))
+            except Exception as e:
+                gajim.log.debug('Error processing xhtml: ' + str(e))
                 gajim.log.debug('with |' + xhtml + '|')
 
         # /me is replaced by name if name is given
diff --git a/src/dataforms_widget.py b/src/dataforms_widget.py
index 3eabc22f5..9a0a278a1 100644
--- a/src/dataforms_widget.py
+++ b/src/dataforms_widget.py
@@ -25,8 +25,11 @@ Words single and multiple refers here to types of data forms:
 single means these with one record of data (without ' + pep.ACTIVITIES[category]['category'] + ' ')
+            hbox = Gtk.HBox(False, 5)
+            hbox.pack_start(gtkgui_helpers.load_activity_icon(category,
+                activity), False, False, 0)
+            lbl = Gtk.Label(label='' + pep.ACTIVITIES[category]['category'] \
+                + ' ')
             lbl.set_use_markup(True)
             hbox.pack_start(lbl, False, False, 0)
             rbtns[act].add(hbox)
@@ -394,7 +400,6 @@ class ChangeActivityDialog:
             for activity in pep.ACTIVITIES[category]:
                 activities.append(activity)
             activities.sort()
-
             for activity in activities:
                 if activity == 'category':
                     continue
@@ -402,14 +407,15 @@ class ChangeActivityDialog:
                 act = category + '_' + activity
 
                 if group:
-                    rbtns[act] = gtk.RadioButton(group)
+                    rbtns[act] = Gtk.RadioButton()
+                    rbtns[act].join_group(group)
                 else:
-                    rbtns[act] = group = gtk.RadioButton()
+                    rbtns[act] = group = Gtk.RadioButton()
 
-                hbox = gtk.HBox(False, 5)
+                hbox = Gtk.HBox(False, 5)
                 hbox.pack_start(gtkgui_helpers.load_activity_icon(category,
                         activity), False, False, 0)
-                hbox.pack_start(gtk.Label(pep.ACTIVITIES[category][activity]),
+                hbox.pack_start(Gtk.Label(pep.ACTIVITIES[category][activity]),
                         False, False, 0)
                 rbtns[act].connect('toggled', self.on_rbtn_toggled,
                         [category, activity])
@@ -438,7 +444,7 @@ class ChangeActivityDialog:
             self.checkbutton.set_active(False)
 
         self.xml.connect_signals(self)
-        self.window.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
+        self.window.set_position(Gtk.WindowPosition.CENTER_ON_PARENT)
         self.window.show_all()
 
     def on_enable_checkbutton_toggled(self, widget):
@@ -458,7 +464,7 @@ class ChangeActivityDialog:
         """
         if self.checkbutton.get_active():
             self.on_response(self.activity, self.subactivity,
-                    self.entry.get_text().decode('utf-8'))
+                    self.entry.get_text())
         else:
             self.on_response(None, None, '')
         self.window.destroy()
@@ -499,10 +505,11 @@ class ChangeMoodDialog:
         self.MOODS.sort()
 
         for mood in self.MOODS:
-            self.mood_buttons[mood] = gtk.RadioButton(no_mood_button)
+            self.mood_buttons[mood] = Gtk.RadioButton()
+            self.mood_buttons[mood].join_group(no_mood_button)
             self.mood_buttons[mood].set_mode(False)
             self.mood_buttons[mood].add(gtkgui_helpers.load_mood_icon(mood))
-            self.mood_buttons[mood].set_relief(gtk.RELIEF_NONE)
+            self.mood_buttons[mood].set_relief(Gtk.ReliefStyle.NONE)
             self.mood_buttons[mood].set_tooltip_text(pep.MOODS[mood])
             self.mood_buttons[mood].connect('clicked',
                     self.on_mood_button_clicked, mood)
@@ -526,7 +533,7 @@ class ChangeMoodDialog:
             self.entry.set_sensitive(False)
 
         self.xml.connect_signals(self)
-        self.window.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
+        self.window.set_position(Gtk.WindowPosition.CENTER_ON_PARENT)
         self.window.show_all()
 
     def on_mood_button_clicked(self, widget, data):
@@ -541,7 +548,7 @@ class ChangeMoodDialog:
 
     def on_ok_button_clicked(self, widget):
         '''Return mood and messsage (None if no mood selected)'''
-        message = self.entry.get_text().decode('utf-8')
+        message = self.entry.get_text()
         self.on_response(self.mood, message)
         self.window.destroy()
 
@@ -562,7 +569,7 @@ class TimeoutDialog:
     def run_timeout(self):
         if self.countdown_left > 0:
             self.countdown()
-            gobject.timeout_add_seconds(1, self.countdown)
+            GLib.timeout_add_seconds(1, self.countdown)
 
     def on_timeout():
         """
@@ -635,10 +642,10 @@ class ChangeStatusMessageDialog(TimeoutDialog):
             self.preset_messages_dict[msg_name] = opts
         sorted_keys_list = helpers.get_sorted_keys(self.preset_messages_dict)
 
-        self.message_liststore = gtk.ListStore(str) # msg_name
+        self.message_liststore = Gtk.ListStore(str) # msg_name
         self.message_combobox = self.xml.get_object('message_combobox')
         self.message_combobox.set_model(self.message_liststore)
-        cellrenderertext = gtk.CellRendererText()
+        cellrenderertext = Gtk.CellRendererText()
         self.message_combobox.pack_start(cellrenderertext, True)
         self.message_combobox.add_attribute(cellrenderertext, 'text', 0)
         for msg_name in sorted_keys_list:
@@ -661,7 +668,7 @@ class ChangeStatusMessageDialog(TimeoutDialog):
         self.xml.connect_signals(self)
         self.run_timeout()
         self.dialog.connect('response', self.on_dialog_response)
-        self.dialog.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
+        self.dialog.set_position(Gtk.WindowPosition.CENTER_ON_PARENT)
         self.dialog.show_all()
 
     def draw_activity(self):
@@ -708,13 +715,12 @@ class ChangeStatusMessageDialog(TimeoutDialog):
     def on_timeout(self):
         # Prevent GUI freeze when the combobox menu is opened on close
         self.message_combobox.popdown()
-        self.dialog.response(gtk.RESPONSE_OK)
+        self.dialog.response(Gtk.ResponseType.OK)
 
     def on_dialog_response(self, dialog, response):
-        if response == gtk.RESPONSE_OK:
+        if response == Gtk.ResponseType.OK:
             beg, end = self.message_buffer.get_bounds()
-            message = self.message_buffer.get_text(beg, end).decode('utf-8')\
-                    .strip()
+            message = self.message_buffer.get_text(beg, end, True).strip()
             message = helpers.remove_invalid_xml_chars(message)
             msg = helpers.to_one_line(message)
             if self.show:
@@ -742,7 +748,7 @@ class ChangeStatusMessageDialog(TimeoutDialog):
         active = widget.get_active()
         if active < 0:
             return None
-        name = model[active][0].decode('utf-8')
+        name = model[active][0]
         self.message_buffer.set_text(self.preset_messages_dict[name][0])
         self.pep_dict['activity'] = self.preset_messages_dict[name][1]
         self.pep_dict['subactivity'] = self.preset_messages_dict[name][2]
@@ -754,10 +760,10 @@ class ChangeStatusMessageDialog(TimeoutDialog):
 
     def on_change_status_message_dialog_key_press_event(self, widget, event):
         self.countdown_enabled = False
-        if event.keyval == gtk.keysyms.Return or \
-           event.keyval == gtk.keysyms.KP_Enter: # catch CTRL+ENTER
-            if (event.state & gtk.gdk.CONTROL_MASK):
-                self.dialog.response(gtk.RESPONSE_OK)
+        if event.keyval == Gdk.KEY_Return or \
+           event.keyval == Gdk.KEY_KP_Enter: # catch CTRL+ENTER
+            if (event.get_state() & Gdk.ModifierType.CONTROL_MASK):
+                self.dialog.response(Gtk.ResponseType.OK)
                 # Stop the event
                 return True
 
@@ -776,12 +782,12 @@ class ChangeStatusMessageDialog(TimeoutDialog):
         self.countdown_enabled = False
         start_iter, finish_iter = self.message_buffer.get_bounds()
         status_message_to_save_as_preset = self.message_buffer.get_text(
-                start_iter, finish_iter)
+                start_iter, finish_iter, True)
         def on_ok(msg_name):
-            msg_text = status_message_to_save_as_preset.decode('utf-8')
+            msg_text = status_message_to_save_as_preset
             msg_text_1l = helpers.to_one_line(msg_text)
             if not msg_name: # msg_name was ''
-                msg_name = msg_text_1l.decode('utf-8')
+                msg_name = msg_text_1l
 
             def on_ok2():
                 self.preset_messages_dict[msg_name] = [
@@ -915,11 +921,11 @@ class AddNewContactWindow:
                             'prompt': None}
                 self.available_types.append(type_)
         # Combobox with transport/jabber icons
-        liststore = gtk.ListStore(str, gtk.gdk.Pixbuf, str)
-        cell = gtk.CellRendererPixbuf()
+        liststore = Gtk.ListStore(str, GdkPixbuf.Pixbuf, str)
+        cell = Gtk.CellRendererPixbuf()
         self.protocol_combobox.pack_start(cell, False)
         self.protocol_combobox.add_attribute(cell, 'pixbuf', 1)
-        cell = gtk.CellRendererText()
+        cell = Gtk.CellRendererText()
         cell.set_property('xpad', 5)
         self.protocol_combobox.pack_start(cell, True)
         self.protocol_combobox.add_attribute(cell, 'text', 0)
@@ -947,7 +953,7 @@ class AddNewContactWindow:
                     gajim.connections[account].request_gateway_prompt(service)
         self.protocol_combobox.set_active(0)
         self.auto_authorize_checkbutton.show()
-        liststore = gtk.ListStore(str)
+        liststore = Gtk.ListStore(str)
         self.protocol_jid_combobox.set_model(liststore)
         if jid:
             self.jid_escaped = True
@@ -1007,7 +1013,7 @@ class AddNewContactWindow:
             self.account_label.hide()
             self.account_hbox.hide()
         else:
-            liststore = gtk.ListStore(str, str)
+            liststore = Gtk.ListStore(str, str)
             for acct in accounts:
                 liststore.append([acct, acct])
             self.account_combobox.set_model(liststore)
@@ -1036,11 +1042,13 @@ class AddNewContactWindow:
             self._nec_gateway_prompt_received)
 
     def on_register_button_clicked(self, widget):
-        jid = self.protocol_jid_combobox.get_active_text().decode('utf-8')
+        model = self.protocol_jid_combobox.get_model()
+        row = self.protocol_jid_combobox.get_active()
+        jid = model[row][0]
         gajim.connections[self.account].request_register_agent_info(jid)
 
     def on_add_new_contact_window_key_press_event(self, widget, event):
-        if event.keyval == gtk.keysyms.Escape: # ESCAPE
+        if event.keyval == Gdk.KEY_Escape: # ESCAPE
             self.window.destroy()
 
     def on_cancel_button_clicked(self, widget):
@@ -1053,17 +1061,18 @@ class AddNewContactWindow:
         """
         When Subscribe button is clicked
         """
-        jid = self.uid_entry.get_text().decode('utf-8').strip()
+        jid = self.uid_entry.get_text().strip()
         if not jid:
             return
 
         model = self.protocol_combobox.get_model()
-        iter_ = self.protocol_combobox.get_active_iter()
-        type_ = model[iter_][2]
-        if type_ != 'jabber' and not self.jid_escaped:
-            transport = self.protocol_jid_combobox.get_active_text().decode(
-                'utf-8')
-            if self.account:
+        row = self.protocol_combobox.get_active_iter()
+        type_ = model[row][2]
+        if type_ != 'jabber':
+            model = self.protocol_jid_combobox.get_model()
+            row = self.protocol_jid_combobox.get_active()
+            transport = model[row][0]
+            if self.account and not self.jid_escaped:
                 self.adding_jid = (jid, transport, type_)
                 gajim.connections[self.account].request_gateway_prompt(
                     transport, jid)
@@ -1077,7 +1086,7 @@ class AddNewContactWindow:
         # check if jid is conform to RFC and stringprep it
         try:
             jid = helpers.parse_jid(jid)
-        except helpers.InvalidFormat, s:
+        except helpers.InvalidFormat as s:
             pritext = _('Invalid User ID')
             ErrorDialog(pritext, str(s))
             return
@@ -1093,7 +1102,7 @@ class AddNewContactWindow:
             ErrorDialog(pritext, _('You cannot add yourself to your roster.'))
             return
 
-        nickname = self.nickname_entry.get_text().decode('utf-8') or ''
+        nickname = self.nickname_entry.get_text() or ''
         # get value of account combobox, if account was not specified
         if not self.account:
             model = self.account_combobox.get_model()
@@ -1112,14 +1121,14 @@ class AddNewContactWindow:
             message_buffer = self.message_textview.get_buffer()
             start_iter = message_buffer.get_start_iter()
             end_iter = message_buffer.get_end_iter()
-            message = message_buffer.get_text(start_iter, end_iter).decode('utf-8')
+            message = message_buffer.get_text(start_iter, end_iter, True)
             if self.save_message_checkbutton.get_active():
                 msg = helpers.to_one_line(message)
                 gajim.config.set_per('accounts', self.account,
                     'subscription_request_msg', msg)
         else:
             message= ''
-        group = self.group_comboboxentry.child.get_text().decode('utf-8')
+        group = self.group_comboboxentry.get_child().get_text()
         groups = []
         if group:
             groups = [group]
@@ -1210,7 +1219,9 @@ class AddNewContactWindow:
         else:
             self.register_hbox.hide()
             if type_ != 'jabber':
-                jid = self.protocol_jid_combobox.get_active_text()
+                model = self.protocol_jid_combobox.get_model()
+                row = self.protocol_jid_combobox.get_active()
+                jid = model[row][0]
                 contact = gajim.contacts.get_first_contact_from_jid(
                     self.account, jid)
                 if contact.show in ('offline', 'error'):
@@ -1225,7 +1236,10 @@ class AddNewContactWindow:
             self.add_button.set_sensitive(True)
 
     def transport_signed_in(self, jid):
-        if self.protocol_jid_combobox.get_active_text() == jid:
+        model = self.protocol_jid_combobox.get_model()
+        row = self.protocol_jid_combobox.get_active()
+        _jid = model[row][0]
+        if _jid == jid:
             self.register_hbox.hide()
             self.connected_label.hide()
             self.subscription_table.show()
@@ -1233,7 +1247,10 @@ class AddNewContactWindow:
             self.add_button.set_sensitive(True)
 
     def transport_signed_out(self, jid):
-        if self.protocol_jid_combobox.get_active_text() == jid:
+        model = self.protocol_jid_combobox.get_model()
+        row = self.protocol_jid_combobox.get_active()
+        _jid = model[row][0]
+        if _jid == jid:
             self.subscription_table.hide()
             self.auto_authorize_checkbutton.hide()
             self.connected_label.show()
@@ -1266,26 +1283,30 @@ class AboutDialog:
     """
 
     def __init__(self):
-        dlg = gtk.AboutDialog()
+        dlg = Gtk.AboutDialog()
         dlg.set_transient_for(gajim.interface.roster.window)
         dlg.set_name('Gajim')
         dlg.set_version(gajim.version)
-        s = u'Copyright © 2003-2013 Gajim Team'
+        s = 'Copyright © 2003-2013 Gajim Team'
         dlg.set_copyright(s)
         copying_file_path = self.get_path('COPYING')
         if copying_file_path:
-            text = open(copying_file_path).read()
+            with open(copying_file_path) as a_file:
+                text = a_file.read()
             dlg.set_license(text)
 
+        gtk_ver = '%i.%i.%i' % (Gtk.get_major_version(),
+            Gtk.get_minor_version(), Gtk.get_micro_version())
+        gobject_ver = self.tuple2str(GObject.pygobject_version)
         dlg.set_comments('%s\n%s %s\n%s %s' % (_('A GTK+ Jabber/XMPP client'),
-            _('GTK+ Version:'), self.tuple2str(gtk.gtk_version), \
-            _('PyGTK Version:'), self.tuple2str(gtk.pygtk_version)))
+            _('GTK+ Version:'), gtk_ver, _('PyGobject Version:'), gobject_ver))
         dlg.set_website('http://gajim.org/')
 
         authors_file_path = self.get_path('AUTHORS')
         if authors_file_path:
             authors = []
-            authors_file = open(authors_file_path).read()
+            with open(authors_file_path) as a_file:
+                authors_file = a_file.read()
             authors_file = authors_file.split('\n')
             for author in authors_file:
                 if author == 'CURRENT DEVELOPERS:':
@@ -1298,13 +1319,13 @@ class AboutDialog:
             thanks_file_path = self.get_path('THANKS')
             if thanks_file_path:
                 authors.append('\n' + _('THANKS:'))
-
-                text = open(thanks_file_path).read()
+                with open(thanks_file_path) as a_file:
+                    text = a_file.read()
                 text_splitted = text.split('\n')
                 text = '\n'.join(text_splitted[:-2]) # remove one english sentence
                 # and add it manually as translatable
-                text += '\n%s\n' % _('Last but not least, we would like to thank all '
-                    'the package maintainers.')
+                text += '\n%s\n' % _('Last but not least, we would like to '
+                    'thank all the package maintainers.')
                 authors.append(text)
 
             dlg.set_authors(authors)
@@ -1319,15 +1340,18 @@ class AboutDialog:
 
         thanks_artists_file_path = self.get_path('THANKS.artists')
         if thanks_artists_file_path:
-            artists_text = open(thanks_artists_file_path).read()
+            with open(thanks_artists_file_path) as a_file:
+                artists_text = a_file.read()
             artists = artists_text.split('\n')
             dlg.set_artists(artists)
-        # connect close button to destroy() function
-        for button in dlg.action_area.get_children():
-            if button.get_property('label') == gtk.STOCK_CLOSE:
-                button.connect('clicked', lambda x:dlg.destroy())
+
+        dlg.connect('response', self.on_response)
         dlg.show_all()
 
+    def on_response(self, dialog, response_id):
+        if response_id == Gtk.ResponseType.CANCEL:
+            dialog.destroy()
+
     def tuple2str(self, tuple_):
         str_ = ''
         for num in tuple_:
@@ -1345,11 +1369,11 @@ class AboutDialog:
         else:
             return None
 
-class Dialog(gtk.Dialog):
+class Dialog(Gtk.Dialog):
     def __init__(self, parent, title, buttons, default=None,
     on_response_ok=None, on_response_cancel=None):
-        gtk.Dialog.__init__(self, title, parent,
-            gtk.DIALOG_DESTROY_WITH_PARENT | gtk.DIALOG_NO_SEPARATOR)
+        GObject.GObject.__init__(self, title, parent,
+            Gtk.DialogFlags.DESTROY_WITH_PARENT | Gtk.DialogFlags.NO_SEPARATOR)
 
         self.user_response_ok = on_response_ok
         self.user_response_cancel = on_response_cancel
@@ -1357,8 +1381,8 @@ class Dialog(gtk.Dialog):
         self.vbox.set_spacing(12)
         self.set_resizable(False)
 
-        possible_responses = {gtk.STOCK_OK: self.on_response_ok,
-            gtk.STOCK_CANCEL: self.on_response_cancel}
+        possible_responses = {Gtk.STOCK_OK: self.on_response_ok,
+            Gtk.STOCK_CANCEL: self.on_response_cancel}
         for stock, response in buttons:
             b = self.add_button(stock, response)
             for response in possible_responses:
@@ -1395,21 +1419,21 @@ class Dialog(gtk.Dialog):
         return index < len(buttons) and buttons[index] or None
 
 
-class HigDialog(gtk.MessageDialog):
+class HigDialog(Gtk.MessageDialog):
     def __init__(self, parent, type_, buttons, pritext, sectext,
     on_response_ok=None, on_response_cancel=None, on_response_yes=None,
     on_response_no=None):
         self.call_cancel_on_destroy = True
-        gtk.MessageDialog.__init__(self, parent,
-           gtk.DIALOG_DESTROY_WITH_PARENT | gtk.DIALOG_MODAL,
+        Gtk.MessageDialog.__init__(self, parent,
+           Gtk.DialogFlags.DESTROY_WITH_PARENT | Gtk.DialogFlags.MODAL,
            type_, buttons, message_format = pritext)
 
         self.format_secondary_markup(sectext)
 
         buttons = self.action_area.get_children()
-        self.possible_responses = {gtk.STOCK_OK: on_response_ok,
-                gtk.STOCK_CANCEL: on_response_cancel, gtk.STOCK_YES: on_response_yes,
-                gtk.STOCK_NO: on_response_no}
+        self.possible_responses = {Gtk.STOCK_OK: on_response_ok,
+                Gtk.STOCK_CANCEL: on_response_cancel, Gtk.STOCK_YES: on_response_yes,
+                Gtk.STOCK_NO: on_response_no}
         for b in buttons:
             for response in self.possible_responses:
                 if b.get_label() == response:
@@ -1429,7 +1453,7 @@ class HigDialog(gtk.MessageDialog):
     def on_dialog_destroy(self, widget):
         if not self.call_cancel_on_destroy:
             return
-        cancel_handler = self.possible_responses[gtk.STOCK_CANCEL]
+        cancel_handler = self.possible_responses[Gtk.STOCK_CANCEL]
         if not cancel_handler:
             return False
         if isinstance(cancel_handler, tuple):
@@ -1445,21 +1469,23 @@ class HigDialog(gtk.MessageDialog):
         Show dialog
         """
         vb = self.get_children()[0].get_children()[0] # Give focus to top vbox
-        vb.set_flags(gtk.CAN_FOCUS)
+#        vb.set_flags(Gtk.CAN_FOCUS)
         vb.grab_focus()
         self.show_all()
 
-class FileChooserDialog(gtk.FileChooserDialog):
+class FileChooserDialog(Gtk.FileChooserDialog):
     """
-    Non-blocking FileChooser Dialog around gtk.FileChooserDialog
+    Non-blocking FileChooser Dialog around Gtk.FileChooserDialog
     """
     def __init__(self, title_text, action, buttons, default_response,
     select_multiple=False, current_folder=None, on_response_ok=None,
-    on_response_cancel=None):
-
-        gtk.FileChooserDialog.__init__(self, title=title_text, action=action,
-            buttons=buttons)
+    on_response_cancel=None, transient_for=None):
 
+        GObject.GObject.__init__(self, title=title_text, parent=transient_for,
+            action=action)
+        self.add_button(buttons[0],buttons[1])
+        if len(buttons) ==4:
+            self.add_button(buttons[2],buttons[3])
         self.set_default_response(default_response)
         self.set_select_multiple(select_multiple)
         if current_folder and os.path.isdir(current_folder):
@@ -1474,7 +1500,7 @@ class FileChooserDialog(gtk.FileChooserDialog):
         self.show_all()
 
     def on_dialog_response(self, dialog, response):
-        if response in (gtk.RESPONSE_CANCEL, gtk.RESPONSE_CLOSE):
+        if response in (Gtk.ResponseType.CANCEL, Gtk.ResponseType.CLOSE):
             if self.response_cancel:
                 if isinstance(self.response_cancel, tuple):
                     self.response_cancel[0](dialog, *self.response_cancel[1:])
@@ -1482,7 +1508,7 @@ class FileChooserDialog(gtk.FileChooserDialog):
                     self.response_cancel(dialog)
             else:
                 self.just_destroy(dialog)
-        elif response == gtk.RESPONSE_OK:
+        elif response == Gtk.ResponseType.OK:
             if self.response_ok:
                 if isinstance(self.response_ok, tuple):
                     self.response_ok[0](dialog, *self.response_ok[1:])
@@ -1513,7 +1539,7 @@ class ConfirmationDialog(HigDialog):
         self.user_response_ok = on_response_ok
         self.user_response_cancel = on_response_cancel
         HigDialog.__init__(self, transient_for,
-           gtk.MESSAGE_QUESTION, gtk.BUTTONS_OK_CANCEL, pritext, sectext,
+           Gtk.MessageType.QUESTION, Gtk.ButtonsType.OK_CANCEL, pritext, sectext,
            self.on_response_ok, self.on_response_cancel)
         self.popup()
 
@@ -1548,8 +1574,8 @@ class NonModalConfirmationDialog(HigDialog):
             parent = gajim.interface.roster.window
         else:
             parent = None
-        HigDialog.__init__(self, parent, gtk.MESSAGE_QUESTION,
-            gtk.BUTTONS_OK_CANCEL, pritext, sectext, self.on_response_ok,
+        HigDialog.__init__(self, parent, Gtk.MessageType.QUESTION,
+            Gtk.ButtonsType.OK_CANCEL, pritext, sectext, self.on_response_ok,
             self.on_response_cancel)
         self.set_modal(False)
 
@@ -1580,8 +1606,8 @@ class WarningDialog(HigDialog):
         if not transient_for and hasattr(gajim.interface, 'roster') and \
         gajim.interface.roster:
             transient_for = gajim.interface.roster.window
-        HigDialog.__init__(self, transient_for, gtk.MESSAGE_WARNING,
-            gtk.BUTTONS_OK, pritext, sectext)
+        HigDialog.__init__(self, transient_for, Gtk.MessageType.WARNING,
+            Gtk.ButtonsType.OK, pritext, sectext)
         self.set_modal(False)
         self.popup()
 
@@ -1597,7 +1623,7 @@ class InformationDialog(HigDialog):
             parent = gajim.interface.roster.window
         else:
             parent = None
-        HigDialog.__init__(self, parent, gtk.MESSAGE_INFO, gtk.BUTTONS_OK,
+        HigDialog.__init__(self, parent, Gtk.MessageType.INFO, Gtk.ButtonsType.OK,
             pritext, sectext)
         self.set_modal(False)
         self.popup()
@@ -1615,7 +1641,7 @@ class ErrorDialog(HigDialog):
             parent = gajim.interface.roster.window
         else:
             parent = None
-        HigDialog.__init__(self, parent, gtk.MESSAGE_ERROR, gtk.BUTTONS_OK,
+        HigDialog.__init__(self, parent, Gtk.MessageType.ERROR, Gtk.ButtonsType.OK,
             pritext, sectext, on_response_ok=on_response_ok,
             on_response_cancel=on_response_cancel)
         self.popup()
@@ -1626,7 +1652,7 @@ class YesNoDialog(HigDialog):
     """
 
     def __init__(self, pritext, sectext='', checktext='', text_label=None,
-    on_response_yes=None, on_response_no=None, type_=gtk.MESSAGE_QUESTION,
+    on_response_yes=None, on_response_no=None, type_=Gtk.MessageType.QUESTION,
     transient_for=None):
         self.user_response_yes = on_response_yes
         self.user_response_no = on_response_no
@@ -1636,24 +1662,24 @@ class YesNoDialog(HigDialog):
             parent = gajim.interface.roster.window
         else:
             parent = None
-        HigDialog.__init__(self, parent, type_, gtk.BUTTONS_YES_NO, pritext,
+        HigDialog.__init__(self, parent, type_, Gtk.ButtonsType.YES_NO, pritext,
             sectext, on_response_yes=self.on_response_yes,
             on_response_no=self.on_response_no)
 
         if checktext:
-            self.checkbutton = gtk.CheckButton(checktext)
-            self.vbox.pack_start(self.checkbutton, expand=False, fill=True)
+            self.checkbutton = Gtk.CheckButton(checktext)
+            self.vbox.pack_start(self.checkbutton, False, True, 0)
         else:
             self.checkbutton = None
         if text_label:
-            label = gtk.Label(text_label)
-            self.vbox.pack_start(label, expand=False, fill=True)
-            buff = gtk.TextBuffer()
-            self.textview = gtk.TextView(buff)
-            frame = gtk.Frame()
-            frame.set_shadow_type(gtk.SHADOW_IN)
+            label = Gtk.Label(label=text_label)
+            self.vbox.pack_start(label, False, True, 0)
+            buff = Gtk.TextBuffer()
+            self.textview = Gtk.TextView.new_with_buffer(buff)
+            frame = Gtk.Frame()
+            frame.set_shadow_type(Gtk.ShadowType.IN)
             frame.add(self.textview)
-            self.vbox.pack_start(frame, expand=False, fill=True)
+            self.vbox.pack_start(frame, False, True, 0)
         else:
             self.textview = None
         self.set_modal(False)
@@ -1664,7 +1690,7 @@ class YesNoDialog(HigDialog):
             if self.textview:
                 buff = self.textview.get_buffer()
                 start, end = buff.get_bounds()
-                txt = self.textview.get_buffer().get_text(start, end)
+                txt = self.textview.get_buffer().get_text(start, end, True)
 
             if isinstance(self.user_response_yes, tuple):
                 if self.textview:
@@ -1686,7 +1712,7 @@ class YesNoDialog(HigDialog):
             if self.textview:
                 buff = self.textview.get_buffer()
                 start, end = buff.get_bounds()
-                txt = self.textview.get_buffer().get_text(start, end)
+                txt = self.textview.get_buffer().get_text(start, end, True)
 
             if isinstance(self.user_response_no, tuple):
                 if self.textview:
@@ -1725,17 +1751,17 @@ class ConfirmationDialogCheck(ConfirmationDialog):
             parent = gajim.interface.roster.window
         else:
             parent = None
-        HigDialog.__init__(self, parent, gtk.MESSAGE_QUESTION,
-           gtk.BUTTONS_OK_CANCEL, pritext, sectext, self.on_response_ok,
+        HigDialog.__init__(self, parent, Gtk.MessageType.QUESTION,
+           Gtk.ButtonsType.OK_CANCEL, pritext, sectext, self.on_response_ok,
            self.on_response_cancel)
 
-        self.set_default_response(gtk.RESPONSE_OK)
+        self.set_default_response(Gtk.ResponseType.OK)
 
         ok_button = self.action_area.get_children()[0] # right to left
         ok_button.grab_focus()
 
-        self.checkbutton = gtk.CheckButton(checktext)
-        self.vbox.pack_start(self.checkbutton, expand=False, fill=True)
+        self.checkbutton = Gtk.CheckButton(checktext)
+        self.vbox.pack_start(self.checkbutton, False, True, 0)
         self.set_modal(is_modal)
         self.popup()
 
@@ -1780,27 +1806,27 @@ class ConfirmationDialogDoubleCheck(ConfirmationDialog):
             parent = gajim.interface.roster.window
         else:
             parent = None
-        HigDialog.__init__(self, parent, gtk.MESSAGE_QUESTION,
-           gtk.BUTTONS_OK_CANCEL, pritext, sectext, self.on_response_ok,
+        HigDialog.__init__(self, parent, Gtk.MessageType.QUESTION,
+           Gtk.ButtonsType.OK_CANCEL, pritext, sectext, self.on_response_ok,
            self.on_response_cancel)
 
-        self.set_default_response(gtk.RESPONSE_OK)
+        self.set_default_response(Gtk.ResponseType.OK)
 
         ok_button = self.action_area.get_children()[0] # right to left
         ok_button.grab_focus()
 
         if checktext1:
-            self.checkbutton1 = gtk.CheckButton(checktext1)
+            self.checkbutton1 = Gtk.CheckButton(checktext1)
             if tooltip1:
                 self.checkbutton1.set_tooltip_text(tooltip1)
-            self.vbox.pack_start(self.checkbutton1, expand=False, fill=True)
+            self.vbox.pack_start(self.checkbutton1, False, True, 0)
         else:
             self.checkbutton1 = None
         if checktext2:
-            self.checkbutton2 = gtk.CheckButton(checktext2)
+            self.checkbutton2 = Gtk.CheckButton(checktext2)
             if tooltip2:
                 self.checkbutton2.set_tooltip_text(tooltip2)
-            self.vbox.pack_start(self.checkbutton2, expand=False, fill=True)
+            self.vbox.pack_start(self.checkbutton2, False, True, 0)
         else:
             self.checkbutton2 = None
 
@@ -1878,21 +1904,21 @@ class ConfirmationDialogDoubleRadio(ConfirmationDialog):
             parent = gajim.interface.roster.window
         else:
             parent = None
-        HigDialog.__init__(self, parent, gtk.MESSAGE_QUESTION,
-                gtk.BUTTONS_OK_CANCEL, pritext, sectext, self.on_response_ok,
+        HigDialog.__init__(self, parent, Gtk.MessageType.QUESTION,
+                Gtk.ButtonsType.OK_CANCEL, pritext, sectext, self.on_response_ok,
                 self.on_response_cancel)
 
-        self.set_default_response(gtk.RESPONSE_OK)
+        self.set_default_response(Gtk.ResponseType.OK)
 
         ok_button = self.action_area.get_children()[0] # right to left
         ok_button.grab_focus()
 
-        self.radiobutton1 = gtk.RadioButton(label=radiotext1)
-        self.vbox.pack_start(self.radiobutton1, expand=False, fill=True)
+        self.radiobutton1 = Gtk.RadioButton(label=radiotext1)
+        self.vbox.pack_start(self.radiobutton1, False, True, 0)
 
-        self.radiobutton2 = gtk.RadioButton(group=self.radiobutton1,
+        self.radiobutton2 = Gtk.RadioButton(group=self.radiobutton1,
                 label=radiotext2)
-        self.vbox.pack_start(self.radiobutton2, expand=False, fill=True)
+        self.vbox.pack_start(self.radiobutton2, False, True, 0)
 
         self.set_modal(is_modal)
         self.popup()
@@ -1934,18 +1960,20 @@ class FTOverwriteConfirmationDialog(ConfirmationDialog):
     """
 
     def __init__(self, pritext, sectext='', propose_resume=True,
-    on_response=None):
-        if hasattr(gajim.interface, 'roster') and gajim.interface.roster:
+    on_response=None, transient_for=None):
+        if transient_for:
+            parent = transient_for
+        elif hasattr(gajim.interface, 'roster') and gajim.interface.roster:
             parent = gajim.interface.roster.window
         else:
             parent = None
-        HigDialog.__init__(self, parent, gtk.MESSAGE_QUESTION,
-            gtk.BUTTONS_CANCEL, pritext, sectext)
+        HigDialog.__init__(self, parent, Gtk.MessageType.QUESTION,
+            Gtk.ButtonsType.CANCEL, pritext, sectext)
 
         self.on_response = on_response
 
         if propose_resume:
-            b = gtk.Button('', gtk.STOCK_REFRESH)
+            b = Gtk.Button('', Gtk.STOCK_REFRESH)
             align = b.get_children()[0]
             hbox = align.get_children()[0]
             label = hbox.get_children()[1]
@@ -1953,7 +1981,7 @@ class FTOverwriteConfirmationDialog(ConfirmationDialog):
             label.set_use_underline(True)
             self.add_action_widget(b, 100)
 
-        b = gtk.Button('', gtk.STOCK_SAVE_AS)
+        b = Gtk.Button('', Gtk.STOCK_SAVE_AS)
         align = b.get_children()[0]
         hbox = align.get_children()[0]
         label = hbox.get_children()[1]
@@ -2004,7 +2032,7 @@ class CommonInputDialog:
     def on_okbutton_clicked(self, widget):
         user_input = self.get_text()
         if user_input:
-            user_input = user_input.decode('utf-8')
+            user_input = user_input
         self.cancel_handler = None
         self.dialog.destroy()
         if isinstance(self.ok_handler, tuple):
@@ -2043,7 +2071,7 @@ class InputDialog(CommonInputDialog):
         self.input_entry.select_region(0, -1) # select all
 
     def get_text(self):
-        return self.input_entry.get_text().decode('utf-8')
+        return self.input_entry.get_text()
 
 class InputDialogCheck(InputDialog):
     """
@@ -2062,14 +2090,14 @@ class InputDialogCheck(InputDialog):
             self.input_entry.select_region(0, -1) # select all
 
         if checktext:
-            self.checkbutton = gtk.CheckButton(checktext)
-            self.vbox.pack_start(self.checkbutton, expand=False, fill=True)
+            self.checkbutton = Gtk.CheckButton(checktext)
+            self.vbox.pack_start(self.checkbutton, False, True, 0)
             self.checkbutton.show()
 
     def on_okbutton_clicked(self, widget):
         user_input = self.get_text()
         if user_input:
-            user_input = user_input.decode('utf-8')
+            user_input = user_input
         self.cancel_handler = None
         self.dialog.destroy()
         if isinstance(self.ok_handler, tuple):
@@ -2078,7 +2106,7 @@ class InputDialogCheck(InputDialog):
             self.ok_handler(user_input, self.is_checked())
 
     def get_text(self):
-        return self.input_entry.get_text().decode('utf-8')
+        return self.input_entry.get_text()
 
     def is_checked(self):
         """
@@ -2147,7 +2175,7 @@ class ChangeNickDialog(InputDialogCheck):
     def on_okbutton_clicked(self, widget):
         nick = self.get_text()
         if nick:
-            nick = nick.decode('utf-8')
+            nick = nick
         # send presence to room
         try:
             nick = helpers.parse_resource(nick)
@@ -2199,7 +2227,7 @@ class InputTextDialog(CommonInputDialog):
 
     def get_text(self):
         start_iter, end_iter = self.input_buffer.get_bounds()
-        return self.input_buffer.get_text(start_iter, end_iter).decode('utf-8')
+        return self.input_buffer.get_text(start_iter, end_iter, True)
 
 class DoubleInputDialog:
     """
@@ -2247,8 +2275,8 @@ class DoubleInputDialog:
             self.cancel_handler()
 
     def on_okbutton_clicked(self, widget):
-        user_input1 = self.input_entry1.get_text().decode('utf-8')
-        user_input2 = self.input_entry2.get_text().decode('utf-8')
+        user_input1 = self.input_entry1.get_text()
+        user_input2 = self.input_entry2.get_text()
         self.cancel_handler = None
         self.dialog.destroy()
         if not self.ok_handler:
@@ -2349,7 +2377,7 @@ class SubscriptionRequestWindow:
         menu = self.prepare_popup_menu()
         menu.show_all()
         gtkgui_helpers.popup_emoticons_under_button(menu, widget,
-            self.window.window)
+            self.window.get_window())
 
 
 class JoinGroupchatWindow:
@@ -2364,13 +2392,13 @@ class JoinGroupchatWindow:
             if room_jid != '' and room_jid in gajim.gc_connected[account] and \
             gajim.gc_connected[account][room_jid]:
                 ErrorDialog(_('You are already in group chat %s') % room_jid)
-                raise GajimGeneralException, 'You are already in this group chat'
+                raise GajimGeneralException('You are already in this group chat')
             if nick == '':
                 nick = gajim.nicks[account]
             if gajim.connections[account].connected < 2:
                 ErrorDialog(_('You are not connected to the server'),
                     _('You can not join a group chat unless you are connected.'))
-                raise GajimGeneralException, 'You must be connected to join a groupchat'
+                raise GajimGeneralException('You must be connected to join a groupchat')
 
         self.xml = gtkgui_helpers.get_gtk_builder('join_groupchat_window.ui')
 
@@ -2378,9 +2406,9 @@ class JoinGroupchatWindow:
         account_combobox = self.xml.get_object('account_combobox')
         account_label.set_no_show_all(False)
         account_combobox.set_no_show_all(False)
-        liststore = gtk.ListStore(str)
+        liststore = Gtk.ListStore(str)
         account_combobox.set_model(liststore)
-        cell = gtk.CellRendererText()
+        cell = Gtk.CellRendererText()
         account_combobox.pack_start(cell, True)
         account_combobox.add_attribute(cell, 'text', 0)
         account_combobox.set_active(-1)
@@ -2390,7 +2418,7 @@ class JoinGroupchatWindow:
         gajim.account_is_connected(a)]:
             if gajim.connections[acct].is_zeroconf:
                 continue
-            account_combobox.append_text(acct)
+            liststore.append([acct])
             if account and account == acct:
                 account_combobox.set_active(liststore.iter_n_children(None)-1)
 
@@ -2418,12 +2446,13 @@ class JoinGroupchatWindow:
             title = _('Join Group Chat')
         self.window.set_title(title)
 
-        self.server_comboboxentry = self.xml.get_object('server_comboboxentry')
-        self.server_model = self.server_comboboxentry.get_model()
-        server_list = []
-        # get the muc server of our server
-        if 'jabber' in gajim.connections[account].muc_jid:
-            server_list.append(gajim.connections[account].muc_jid['jabber'])
+
+        self.server_model = Gtk.ListStore(str)
+        self.server_comboboxentry = Gtk.ComboBox.new_with_model_and_entry(
+            self.server_model)
+        self.server_comboboxentry.set_entry_text_column(0)
+        hbox1 = self.xml.get_object('hbox1')
+        hbox1.pack_start(self.server_comboboxentry, False, False, 0)
 
         entry = self.server_comboboxentry.child
         entry.connect('changed', self.on_server_entry_changed)
@@ -2431,12 +2460,17 @@ class JoinGroupchatWindow:
         self.browse_button.set_sensitive(False)
 
         self.recently_combobox = self.xml.get_object('recently_combobox')
-        liststore = gtk.ListStore(str, str)
+        liststore = Gtk.ListStore(str, str)
         self.recently_combobox.set_model(liststore)
-        cell = gtk.CellRendererText()
+        cell = Gtk.CellRendererText()
         self.recently_combobox.pack_start(cell, True)
         self.recently_combobox.add_attribute(cell, 'text', 0)
         self.recently_groupchat = gajim.config.get('recently_groupchat').split()
+
+        server_list = []
+        # get the muc server of our server
+        if 'jabber' in gajim.connections[account].muc_jid:
+            server_list.append(gajim.connections[account].muc_jid['jabber'])
         for g in self.recently_groupchat:
             r_jid = gajim.get_jid_without_resource(g)
             nick = gajim.get_resource_from_jid(g)
@@ -2452,7 +2486,7 @@ class JoinGroupchatWindow:
 
         for s in server_list:
             self.server_model.append([s])
-        self.server_comboboxentry.set_active(0)
+
 
         self._set_room_jid(room_jid)
 
@@ -2495,7 +2529,7 @@ class JoinGroupchatWindow:
             del gajim.interface.instances[self.account]['join_gc']
 
     def on_join_groupchat_window_key_press_event(self, widget, event):
-        if event.keyval == gtk.keysyms.Escape: # ESCAPE
+        if event.keyval == Gdk.KEY_Escape: # ESCAPE
             widget.destroy()
 
     def on_required_entry_changed(self, widget):
@@ -2513,31 +2547,32 @@ class JoinGroupchatWindow:
                 room_jid, server = text.split('@', 1)
                 self._room_jid_entry.set_text(room_jid)
                 if server:
-                    self.server_comboboxentry.child.set_text(server)
+                    self.server_comboboxentry.get_child().set_text(server)
                 self.server_comboboxentry.grab_focus()
 
     def on_account_combobox_changed(self, widget):
         model = widget.get_model()
         iter_ = widget.get_active_iter()
-        self.account = model[iter_][0].decode('utf-8')
+        self.account = model[iter_][0]
         self.on_required_entry_changed(self._nickname_entry)
 
     def _set_room_jid(self, full_jid):
         room_jid, nick = gajim.get_room_and_nick_from_fjid(full_jid)
         room, server = gajim.get_name_and_server_from_jid(room_jid)
         self._room_jid_entry.set_text(room)
-        self.server_comboboxentry.child.set_text(server)
+        model = self.server_comboboxentry.get_model()
+        self.server_comboboxentry.get_child().set_text(server)
         if nick:
             self._nickname_entry.set_text(nick)
 
     def on_recently_combobox_changed(self, widget):
         model = widget.get_model()
         iter_ = widget.get_active_iter()
-        full_jid = model[iter_][1].decode('utf-8')
+        full_jid = model[iter_][1]
         self._set_room_jid(full_jid)
 
     def on_browse_rooms_button_clicked(self, widget):
-        server = self.server_comboboxentry.child.get_text().decode('utf-8')
+        server = self.server_comboboxentry.get_child().get_text()
         self.requested_jid = server
         gajim.connections[self.account].discoverInfo(server)
 
@@ -2547,8 +2582,9 @@ class JoinGroupchatWindow:
         if obj.jid != self.requested_jid:
             return
         self.requested_jid = None
+        window = gajim.interface.instances[self.account]['join_gc'].window
         ErrorDialog(_('Wrong server'), _('%s is not a groupchat server') % \
-            obj.jid)
+            obj.jid, transient_for=window)
 
     def _nec_agent_info_received(self, obj):
         if obj.conn.name != self.account:
@@ -2557,8 +2593,9 @@ class JoinGroupchatWindow:
             return
         self.requested_jid = None
         if nbxmpp.NS_MUC not in obj.features:
+            window = gajim.interface.instances[self.account]['join_gc'].window
             ErrorDialog(_('Wrong server'), _('%s is not a groupchat server') % \
-                obj.jid)
+                obj.jid, transient_for=window)
             return
         if obj.jid in gajim.interface.instances[self.account]['disco']:
             gajim.interface.instances[self.account]['disco'][obj.jid].window.\
@@ -2601,12 +2638,11 @@ class JoinGroupchatWindow:
                 _('You have to choose an account from which you want to join the '
                 'groupchat.'))
             return
-        nickname = self._nickname_entry.get_text().decode('utf-8')
-        server = self.server_comboboxentry.child.get_text().decode('utf-8').\
-            strip()
-        room = self._room_jid_entry.get_text().decode('utf-8').strip()
+        nickname = self._nickname_entry.get_text()
+        server = self.server_comboboxentry.get_child().get_text()
+        room = self._room_jid_entry.get_text().strip()
         room_jid = room + '@' + server
-        password = self._password_entry.get_text().decode('utf-8')
+        password = self._password_entry.get_text()
         try:
             nickname = helpers.parse_resource(nickname)
         except Exception:
@@ -2663,18 +2699,19 @@ class SynchroniseSelectAccountDialog:
         if not account or gajim.connections[account].connected < 2:
             ErrorDialog(_('You are not connected to the server'),
                 _('Without a connection, you can not synchronise your contacts.'))
-            raise GajimGeneralException, 'You are not connected to the server'
+            raise GajimGeneralException('You are not connected to the server')
         self.account = account
         self.xml = gtkgui_helpers.get_gtk_builder('synchronise_select_account_dialog.ui')
         self.dialog = self.xml.get_object('synchronise_select_account_dialog')
+        self.dialog.set_transient_for(gajim.interface.instances['accounts'].window)
         self.accounts_treeview = self.xml.get_object('accounts_treeview')
-        model = gtk.ListStore(str, str, bool)
+        model = Gtk.ListStore(str, str, bool)
         self.accounts_treeview.set_model(model)
         # columns
-        renderer = gtk.CellRendererText()
+        renderer = Gtk.CellRendererText()
         self.accounts_treeview.insert_column_with_attributes(-1, _('Name'),
             renderer, text=0)
-        renderer = gtk.CellRendererText()
+        renderer = Gtk.CellRendererText()
         self.accounts_treeview.insert_column_with_attributes(-1, _('Server'),
             renderer, text=1)
 
@@ -2683,7 +2720,7 @@ class SynchroniseSelectAccountDialog:
         self.dialog.show_all()
 
     def on_accounts_window_key_press_event(self, widget, event):
-        if event.keyval == gtk.keysyms.Escape:
+        if event.keyval == Gdk.KEY_Escape:
             self.window.destroy()
 
     def init_accounts(self):
@@ -2708,7 +2745,7 @@ class SynchroniseSelectAccountDialog:
         (model, iter_) = sel.get_selected()
         if not iter_:
             return
-        remote_account = model.get_value(iter_, 0).decode('utf-8')
+        remote_account = model.get_value(iter_, 0)
 
         if gajim.connections[remote_account].connected < 2:
             ErrorDialog(_('This account is not connected to the server'),
@@ -2730,15 +2767,15 @@ class SynchroniseSelectContactsDialog:
             'synchronise_select_contacts_dialog.ui')
         self.dialog = self.xml.get_object('synchronise_select_contacts_dialog')
         self.contacts_treeview = self.xml.get_object('contacts_treeview')
-        model = gtk.ListStore(bool, str)
+        model = Gtk.ListStore(bool, str)
         self.contacts_treeview.set_model(model)
         # columns
-        renderer1 = gtk.CellRendererToggle()
+        renderer1 = Gtk.CellRendererToggle()
         renderer1.set_property('activatable', True)
         renderer1.connect('toggled', self.toggled_callback)
         self.contacts_treeview.insert_column_with_attributes(-1,
             _('Synchronise'), renderer1, active=0)
-        renderer2 = gtk.CellRendererText()
+        renderer2 = Gtk.CellRendererText()
         self.contacts_treeview.insert_column_with_attributes(-1, _('Name'),
             renderer2, text=1)
 
@@ -2752,7 +2789,7 @@ class SynchroniseSelectContactsDialog:
         model[iter_][0] = not cell.get_active()
 
     def on_contacts_window_key_press_event(self, widget, event):
-        if event.keyval == gtk.keysyms.Escape:
+        if event.keyval == Gdk.KEY_Escape:
             self.window.destroy()
 
     def init_contacts(self):
@@ -2777,11 +2814,11 @@ class SynchroniseSelectContactsDialog:
 
     def on_ok_button_clicked(self, widget):
         model = self.contacts_treeview.get_model()
-        iter_ = model.get_iter_root()
+        iter_ = model.get_iter_first()
         while iter_:
             if model[iter_][0]:
                 # it is selected
-                remote_jid = model[iter_][1].decode('utf-8')
+                remote_jid = model[iter_][1]
                 message = 'I\'m synchronizing my contacts from my %s account, could you please add this address to your contact list?' % \
                     gajim.get_hostname_from_account(self.remote_account)
                 remote_contact = gajim.contacts.get_first_contact_from_jid(
@@ -2803,6 +2840,7 @@ class NewChatDialog(InputDialog):
             title = _('Start Chat')
         prompt_text = _('Fill in the nickname or the Jabber ID of the contact you would like\nto send a chat message to:')
         InputDialog.__init__(self, title, prompt_text, is_modal=False)
+        self.input_entry.set_placeholder_text(_('Nickname / Jabber ID'))
 
         self.completion_dict = {}
         liststore = gtkgui_helpers.get_completion_liststore(self.input_entry)
@@ -2837,8 +2875,8 @@ class NewChatDialog(InputDialog):
         else:
             try:
                 jid = helpers.parse_jid(jid)
-            except helpers.InvalidFormat, e:
-                ErrorDialog(_('Invalid JID'), e[0])
+            except helpers.InvalidFormat as e:
+                ErrorDialog(_('Invalid JID'), str(e))
                 return
             except:
                 ErrorDialog(_('Invalid JID'), _('Unable to parse "%s".') % jid)
@@ -2846,16 +2884,17 @@ class NewChatDialog(InputDialog):
         gajim.interface.new_chat_from_jid(self.account, jid)
 
 class ChangePasswordDialog:
-    def __init__(self, account, on_response):
+    def __init__(self, account, on_response, transient_for=None):
         # 'account' can be None if we are about to create our first one
         if not account or gajim.connections[account].connected < 2:
             ErrorDialog(_('You are not connected to the server'),
                 _('Without a connection, you can not change your password.'))
-            raise GajimGeneralException, 'You are not connected to the server'
+            raise GajimGeneralException('You are not connected to the server')
         self.account = account
         self.on_response = on_response
         self.xml = gtkgui_helpers.get_gtk_builder('change_password_dialog.ui')
         self.dialog = self.xml.get_object('change_password_dialog')
+        self.dialog.set_transient_for(transient_for)
         self.password1_entry = self.xml.get_object('password1_entry')
         self.password2_entry = self.xml.get_object('password2_entry')
         self.dialog.connect('response', self.on_dialog_response)
@@ -2863,15 +2902,15 @@ class ChangePasswordDialog:
         self.dialog.show_all()
 
     def on_dialog_response(self, dialog, response):
-        if response != gtk.RESPONSE_OK:
+        if response != Gtk.ResponseType.OK:
             dialog.destroy()
             self.on_response(None)
             return
-        password1 = self.password1_entry.get_text().decode('utf-8')
+        password1 = self.password1_entry.get_text()
         if not password1:
             ErrorDialog(_('Invalid password'), _('You must enter a password.'))
             return
-        password2 = self.password2_entry.get_text().decode('utf-8')
+        password2 = self.password2_entry.get_text()
         if password1 != password2:
             ErrorDialog(_('Passwords do not match'),
                 _('The passwords typed in both fields must be identical.'))
@@ -2889,7 +2928,7 @@ class PopupNotificationWindow:
 
         xml = gtkgui_helpers.get_gtk_builder('popup_notification_window.ui')
         self.window = xml.get_object('popup_notification_window')
-        self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_TOOLTIP)
+        self.window.set_type_hint(Gdk.WindowTypeHint.TOOLTIP)
         close_button = xml.get_object('close_button')
         event_type_label = xml.get_object('event_type_label')
         event_description_label = xml.get_object('event_description_label')
@@ -2903,10 +2942,12 @@ class PopupNotificationWindow:
 
         event_type_label.set_markup(
             '%s ' %
-            gobject.markup_escape_text(title))
+            GLib.markup_escape_text(title))
 
         # set colors [ http://www.pitt.edu/~nisg/cis/web/cgi/rgb.html ]
-        self.window.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse('black'))
+        color = Gdk.RGBA()
+        Gdk.RGBA.parse(color, 'black')
+        self.window.override_background_color(Gtk.StateType.NORMAL, color)
 
         # default image
         if not path_to_image:
@@ -2932,11 +2973,13 @@ class PopupNotificationWindow:
             bg_color = gajim.config.get('notif_status_color')
         else: # Unknown event! Shouldn't happen but deal with it
             bg_color = gajim.config.get('notif_other_color')
-        popup_bg_color = gtk.gdk.color_parse(bg_color)
-        close_button.modify_bg(gtk.STATE_NORMAL, popup_bg_color)
-        eventbox.modify_bg(gtk.STATE_NORMAL, popup_bg_color)
+        popup_bg_color = Gdk.RGBA()
+        Gdk.RGBA.parse(popup_bg_color, bg_color)
+        close_button.override_background_color(Gtk.StateType.NORMAL,
+            popup_bg_color)
+        eventbox.override_background_color(Gtk.StateType.NORMAL, popup_bg_color)
         event_description_label.set_markup('%s ' %
-            gobject.markup_escape_text(text))
+            GLib.markup_escape_text(text))
 
         # set the image
         image.set_from_file(path_to_image)
@@ -2946,17 +2989,17 @@ class PopupNotificationWindow:
         gajim.interface.roster.popups_notification_height += self.window_height
         pos_x = gajim.config.get('notification_position_x')
         if pos_x < 0:
-            pos_x = gtk.gdk.screen_width() - window_width + pos_x + 1
+            pos_x = Gdk.Screen.width() - window_width + pos_x + 1
         pos_y = gajim.config.get('notification_position_y')
         if pos_y < 0:
-            pos_y = gtk.gdk.screen_height() - \
+            pos_y = Gdk.Screen.height() - \
                 gajim.interface.roster.popups_notification_height + pos_y + 1
         self.window.move(pos_x, pos_y)
 
         xml.connect_signals(self)
         self.window.show_all()
         if timeout > 0:
-            gobject.timeout_add_seconds(timeout, self.on_timeout)
+            GLib.timeout_add_seconds(timeout, self.on_timeout)
 
     def on_close_button_clicked(self, widget):
         self.adjust_height_and_move_popup_notification_windows()
@@ -2981,8 +3024,8 @@ class PopupNotificationWindow:
             current_index += 1
             window_width, window_height = window_instance.window.get_size()
             gajim.interface.roster.popups_notification_height += window_height
-            window_instance.window.move(gtk.gdk.screen_width() - window_width,
-                gtk.gdk.screen_height() - \
+            window_instance.window.move(Gdk.Screen.width() - window_width,
+                Gdk.Screen.height() - \
                 gajim.interface.roster.popups_notification_height)
 
     def on_popup_notification_window_button_press_event(self, widget, event):
@@ -3066,7 +3109,7 @@ class SingleMessageWindow:
                     lang = gajim.LANG
                 gtkspell.Spell(self.conversation_textview.tv, lang)
                 gtkspell.Spell(self.message_textview, lang)
-            except (gobject.GError, TypeError, RuntimeError, OSError):
+            except (GObject.GError, TypeError, RuntimeError, OSError):
                 AspellDictError(lang)
 
         self.prepare_widgets_for(self.action)
@@ -3154,7 +3197,7 @@ class SingleMessageWindow:
                 self.cancel_button.hide()
                 self.close_button.show()
                 self.message_tv_buffer.set_text(self.message)
-                gobject.idle_add(self.set_cursor_to_end)
+                GLib.idle_add(self.set_cursor_to_end)
             else: # we write a new message (not from reply)
                 self.close_button.hide()
                 if self.to: # do we already have jid?
@@ -3207,7 +3250,7 @@ class SingleMessageWindow:
 
     def update_char_counter(self, widget):
         characters_no = self.message_tv_buffer.get_char_count()
-        self.count_chars_label.set_text(unicode(characters_no))
+        self.count_chars_label.set_text(str(characters_no))
 
     def send_single_message(self):
         if gajim.connections[self.account].connected <= 1:
@@ -3223,12 +3266,12 @@ class SingleMessageWindow:
                 else:
                     sender_list.append(i[0].jid)
         else:
-            sender_list = [j.strip() for j in self.to_entry.get_text().decode(
-                'utf-8').split(',')]
+            sender_list = [j.strip() for j in self.to_entry.get_text().split(
+                ',')]
 
-        subject = self.subject_entry.get_text().decode('utf-8')
+        subject = self.subject_entry.get_text()
         begin, end = self.message_tv_buffer.get_bounds()
-        message = self.message_tv_buffer.get_text(begin, end).decode('utf-8')
+        message = self.message_tv_buffer.get_text(begin, end, True)
 
         if self.form_widget:
             form_node = self.form_widget.data_form
@@ -3283,7 +3326,7 @@ class SingleMessageWindow:
         self.window.destroy()
 
     def on_single_message_window_key_press_event(self, widget, event):
-        if event.keyval == gtk.keysyms.Escape: # ESCAPE
+        if event.keyval == Gdk.KEY_Escape: # ESCAPE
             self.save_pos()
             self.window.destroy()
 
@@ -3324,8 +3367,9 @@ class XMLConsoleWindow:
         self.enabled = True
         self.xml.get_object('enable_checkbutton').set_active(True)
 
-        self.input_textview.modify_text(
-            gtk.STATE_NORMAL, gtk.gdk.color_parse(color))
+        col = Gdk.RGBA()
+        Gdk.RGBA.parse(col, color)
+        self.input_textview.override_color(Gtk.StateType.NORMAL, col)
 
         if len(gajim.connections) > 1:
             title = _('XML Console for %s') % self.account
@@ -3434,7 +3478,7 @@ class XMLConsoleWindow:
         buffer.insert_with_tags_by_name(end_iter, stanza.replace('><', '>\n<') \
             + '\n\n', type_)
         if at_the_end:
-            gobject.idle_add(self.scroll_to_end)
+            GLib.idle_add(self.scroll_to_end)
 
     def _nec_stanza_received(self, obj):
         if obj.conn.name != self.account:
@@ -3454,8 +3498,7 @@ class XMLConsoleWindow:
                 self.account)
             return
         begin_iter, end_iter = self.input_tv_buffer.get_bounds()
-        stanza = self.input_tv_buffer.get_text(begin_iter, end_iter).decode(
-            'utf-8')
+        stanza = self.input_tv_buffer.get_text(begin_iter, end_iter, True)
         if stanza:
             gajim.connections[self.account].send_stanza(stanza)
             self.input_tv_buffer.set_text('') # we sent ok, clear the textview
@@ -3518,10 +3561,10 @@ class RosterItemExchangeWindow:
         else:
             self.body_scrolledwindow.hide()
         # Treeview
-        model = gtk.ListStore(bool, str, str, str, str)
+        model = Gtk.ListStore(bool, str, str, str, str)
         self.items_list_treeview.set_model(model)
         # columns
-        renderer1 = gtk.CellRendererToggle()
+        renderer1 = Gtk.CellRendererToggle()
         renderer1.set_property('activatable', True)
         renderer1.connect('toggled', self.toggled_callback)
         if self.action == 'add':
@@ -3532,13 +3575,13 @@ class RosterItemExchangeWindow:
             title = _('Delete')
         self.items_list_treeview.insert_column_with_attributes(-1, title,
             renderer1, active=0)
-        renderer2 = gtk.CellRendererText()
+        renderer2 = Gtk.CellRendererText()
         self.items_list_treeview.insert_column_with_attributes(-1, _('Jabber ID'),
             renderer2, text=1)
-        renderer3 = gtk.CellRendererText()
+        renderer3 = Gtk.CellRendererText()
         self.items_list_treeview.insert_column_with_attributes(-1, _('Name'),
             renderer3, text=2)
-        renderer4 = gtk.CellRendererText()
+        renderer4 = Gtk.CellRendererText()
         self.items_list_treeview.insert_column_with_attributes(-1, _('Groups'),
             renderer4, text=3)
 
@@ -3639,21 +3682,21 @@ class RosterItemExchangeWindow:
 
     def on_accept_button_clicked(self, widget):
         model = self.items_list_treeview.get_model()
-        iter_ = model.get_iter_root()
+        iter_ = model.get_iter_first()
         if self.action == 'add':
             a = 0
             while iter_:
                 if model[iter_][0]:
                     a+=1
                     # it is selected
-                    #remote_jid = model[iter_][1].decode('utf-8')
+                    #remote_jid = model[iter_][1]
                     message = _('%s suggested me to add you in my roster.'
                             % self.jid_from)
                     # keep same groups and same nickname
                     groups = model[iter_][3].split(', ')
                     if groups == ['']:
                         groups = []
-                    jid = model[iter_][1].decode('utf-8')
+                    jid = model[iter_][1]
                     if gajim.jid_is_transport(self.jid_from):
                         gajim.connections[self.account].automatically_added.append(
                                 jid)
@@ -3669,7 +3712,7 @@ class RosterItemExchangeWindow:
                 if model[iter_][0]:
                     a+=1
                     # it is selected
-                    jid = model[iter_][1].decode('utf-8')
+                    jid = model[iter_][1]
                     # keep same groups and same nickname
                     groups = model[iter_][3].split(', ')
                     if groups == ['']:
@@ -3694,7 +3737,7 @@ class RosterItemExchangeWindow:
                 if model[iter_][0]:
                     a+=1
                     # it is selected
-                    jid = model[iter_][1].decode('utf-8')
+                    jid = model[iter_][1]
                     gajim.connections[self.account].unsubscribe(jid)
                     gajim.interface.roster.remove_contact(jid, self.account)
                     gajim.contacts.remove_jid(self.account, jid)
@@ -3770,7 +3813,7 @@ class ItemArchivingPreferencesWindow:
         if self.item != 'Default':
             try:
                 item = helpers.parse_jid(item)
-            except helpers.InvalidFormat, s:
+            except helpers.InvalidFormat as s:
                 pritext = _('Invalid User ID')
                 ErrorDialog(pritext, str(s))
                 return
@@ -3817,8 +3860,8 @@ class ItemArchivingPreferencesWindow:
 
     def launch_progressbar(self):
         self.progressbar.show()
-        self.update_progressbar_timeout_id = gobject.timeout_add(
-            100, self.update_progressbar)
+        self.update_progressbar_timeout_id = GLib.timeout_add(100,
+            self.update_progressbar)
 
     def response_arrived(self, data):
         if self.waiting:
@@ -3865,26 +3908,26 @@ class ArchivingPreferencesWindow:
             self.method_foo_index[gajim.connections[self.account].\
                 method_manual])
 
-        model = gtk.ListStore(str, str, str, str)
+        model = Gtk.ListStore(str, str, str, str)
         self.item_treeview.set_model(model)
-        col = gtk.TreeViewColumn('jid')
+        col = Gtk.TreeViewColumn('jid')
         self.item_treeview.append_column(col)
-        renderer = gtk.CellRendererText()
-        col.pack_start(renderer, True)
+        renderer = Gtk.CellRendererText()
+        col.pack_start(renderer, True, True, 0)
         col.set_attributes(renderer, text=0)
 
-        col = gtk.TreeViewColumn('expire')
-        col.pack_start(renderer, True)
+        col = Gtk.TreeViewColumn('expire')
+        col.pack_start(renderer, True, True, 0)
         col.set_attributes(renderer, text=1)
         self.item_treeview.append_column(col)
 
-        col = gtk.TreeViewColumn('otr')
-        col.pack_start(renderer, True)
+        col = Gtk.TreeViewColumn('otr')
+        col.pack_start(renderer, True, True, 0)
         col.set_attributes(renderer, text=2)
         self.item_treeview.append_column(col)
 
-        col = gtk.TreeViewColumn('save')
-        col.pack_start(renderer, True)
+        col = Gtk.TreeViewColumn('save')
+        col.pack_start(renderer, True, True, 0)
         col.set_attributes(renderer, text=3)
         self.item_treeview.append_column(col)
 
@@ -3892,7 +3935,7 @@ class ArchivingPreferencesWindow:
 
         self.current_item = None
 
-        def sort_items(model, iter1, iter2):
+        def sort_items(model, iter1, iter2, data=None):
             item1 = model.get_value(iter1, 0)
             item2 = model.get_value(iter2, 0)
             if item1 == 'Default':
@@ -3911,7 +3954,7 @@ class ArchivingPreferencesWindow:
             # item1 == item2 ? WTF?
             return 0
 
-        model.set_sort_column_id(0, gtk.SORT_ASCENDING)
+        model.set_sort_column_id(0, Gtk.SortType.ASCENDING)
         model.set_sort_func(0, sort_items)
 
         self.remove_button.set_sensitive(False)
@@ -4117,7 +4160,7 @@ class PrivacyListWindow:
 
         self.privacy_lists_title_label.set_label(
                 _('Privacy List %s r')
-        accel_group.connect_group(keyval, mod, gtk.ACCEL_VISIBLE,
+        accel_group = Gtk.AccelGroup()
+        keyval, mod = Gtk.accelerator_parse('r')
+        accel_group.connect(keyval, mod, Gtk.AccelFlags.VISIBLE,
             self.accel_group_func)
         self.window.add_accel_group(accel_group)
 
@@ -599,7 +600,7 @@ _('Without a connection, you can not browse available services'))
             self.browser.account = value
 
     def accel_group_func(self, accel_group, acceleratable, keyval, modifier):
-        if (modifier & gtk.gdk.CONTROL_MASK) and (keyval == gtk.keysyms.r):
+        if (modifier & Gdk.ModifierType.CONTROL_MASK) and (keyval == Gdk.KEY_r):
             self.reload()
 
     def _initial_state(self):
@@ -621,15 +622,15 @@ _('Without a connection, you can not browse available services'))
                 'bannerfontattrs')
 
         if bannerfont:
-            font = pango.FontDescription(bannerfont)
+            font = Pango.FontDescription(bannerfont)
         else:
-            font = pango.FontDescription('Normal')
+            font = Pango.FontDescription('Normal')
         if bannerfontattrs:
             # B is attribute set by default
             if 'B' in bannerfontattrs:
-                font.set_weight(pango.WEIGHT_HEAVY)
+                font.set_weight(Pango.Weight.HEAVY)
             if 'I' in bannerfontattrs:
-                font.set_style(pango.STYLE_ITALIC)
+                font.set_style(Pango.Style.ITALIC)
 
         font_attrs = 'font_desc="%s"' % font.to_string()
         font_size = font.get_size()
@@ -639,7 +640,7 @@ _('Without a connection, you can not browse available services'))
             font_attrs = '%s size="large"' % font_attrs
         markup = '%s ' % (font_attrs, text)
         if text_after:
-            font.set_weight(pango.WEIGHT_NORMAL)
+            font.set_weight(Pango.Weight.NORMAL)
             markup = '%s\n%s ' % \
                 (markup, font.to_string(), text_after)
         self.banner.set_markup(markup)
@@ -653,15 +654,18 @@ _('Without a connection, you can not browse available services'))
         textcolor = gajim.config.get_per('themes', theme, 'bannertextcolor')
         self.disconnect_style_event()
         if bgcolor:
-            color = gtk.gdk.color_parse(bgcolor)
-            self.banner_eventbox.modify_bg(gtk.STATE_NORMAL, color)
+            color = Gdk.RGBA()
+            Gdk.RGBA.parse(color, bgcolor)
+            self.banner_eventbox.override_background_color(Gtk.StateType.NORMAL,
+                color)
             default_bg = False
         else:
             default_bg = True
 
         if textcolor:
-            color = gtk.gdk.color_parse(textcolor)
-            self.banner.modify_fg(gtk.STATE_NORMAL, color)
+            color = Gdk.RGBA()
+            Gdk.RGBA.parse(color, textcolor)
+            self.banner.override_color(Gtk.StateType.NORMAL, color)
             default_fg = False
         else:
             default_fg = True
@@ -687,12 +691,14 @@ _('Without a connection, you can not browse available services'))
                 opts[1] == True -> set bg color
         """
         self.disconnect_style_event()
+        context = widget.get_style_context()
         if opts[1]:
-            bg_color = widget.style.bg[gtk.STATE_SELECTED]
-            self.banner_eventbox.modify_bg(gtk.STATE_NORMAL, bg_color)
+            bg_color = context.get_background_color(Gtk.StateFlags.SELECTED)
+            self.banner_eventbox.override_background_color(Gtk.StateType.NORMAL,
+                bg_color)
         if opts[0]:
-            fg_color = widget.style.fg[gtk.STATE_SELECTED]
-            self.banner.modify_fg(gtk.STATE_NORMAL, fg_color)
+            fg_color = context.get_color(Gtk.StateFlags.SELECTED)
+            self.banner.override_color(Gtk.StateType.NORMAL, fg_color)
         self.banner.ensure_style()
         self.connect_style_event(opts[0], opts[1])
 
@@ -763,7 +769,7 @@ _('Without a connection, you can not browse available services'))
         if self.dying or jid != self.jid or node != self.node:
             return
         if not identities:
-            if not self.address_comboboxentry:
+            if not self.address_comboboxtext:
                 # We can't travel anywhere else.
                 self.destroy()
             dialogs.ErrorDialog(_('The service could not be found'),
@@ -808,23 +814,23 @@ _('Without a connection, you can not browse available services'))
     def on_close_button_clicked(self, widget):
         self.destroy()
 
-    def on_address_comboboxentry_changed(self, widget):
-        if self.address_comboboxentry.get_active() != -1:
+    def on_address_comboboxtext_changed(self, widget):
+        if self.address_comboboxtext.get_active() != -1:
             # user selected one of the entries so do auto-visit
-            jid = self.address_comboboxentry.child.get_text().decode('utf-8')
+            jid = self.address_comboboxtext_entry.get_text()
             try:
                 jid = helpers.parse_jid(jid)
-            except helpers.InvalidFormat, s:
+            except helpers.InvalidFormat as s:
                 pritext = _('Invalid Server Name')
                 dialogs.ErrorDialog(pritext, str(s))
                 return
             self.travel(jid, '')
 
     def on_go_button_clicked(self, widget):
-        jid = self.address_comboboxentry.child.get_text().decode('utf-8')
+        jid = self.address_comboboxtext_entry.get_text()
         try:
             jid = helpers.parse_jid(jid)
-        except helpers.InvalidFormat, s:
+        except helpers.InvalidFormat as s:
             pritext = _('Invalid Server Name')
             dialogs.ErrorDialog(pritext, str(s))
             return
@@ -835,9 +841,9 @@ _('Without a connection, you can not browse available services'))
         self.latest_addresses.insert(0, jid)
         if len(self.latest_addresses) > 10:
             self.latest_addresses = self.latest_addresses[0:10]
-        self.address_comboboxentry.get_model().clear()
+        self.address_comboboxtext.get_model().clear()
         for j in self.latest_addresses:
-            self.address_comboboxentry.append_text(j)
+            self.address_comboboxtext.append_text(j)
         gajim.config.set('latest_disco_addresses',
                 ' '.join(self.latest_addresses))
         self.travel(jid, '')
@@ -890,21 +896,21 @@ class AgentBrowser:
         the JID and node of the item respectively
         """
         # JID, node, name, address
-        self.model = gtk.ListStore(str, str, str, str)
-        self.model.set_sort_column_id(3, gtk.SORT_ASCENDING)
+        self.model = Gtk.ListStore(str, str, str, str)
+        self.model.set_sort_column_id(3, Gtk.SortType.ASCENDING)
         self.window.services_treeview.set_model(self.model)
         # Name column
-        col = gtk.TreeViewColumn(_('Name'))
-        renderer = gtk.CellRendererText()
-        col.pack_start(renderer)
-        col.set_attributes(renderer, text = 2)
+        col = Gtk.TreeViewColumn(_('Name'))
+        renderer = Gtk.CellRendererText()
+        col.pack_start(renderer, True)
+        col.add_attribute(renderer, 'text', 2)
         self.window.services_treeview.insert_column(col, -1)
         col.set_resizable(True)
         # Address column
-        col = gtk.TreeViewColumn(_('JID'))
-        renderer = gtk.CellRendererText()
-        col.pack_start(renderer)
-        col.set_attributes(renderer, text = 3)
+        col = Gtk.TreeViewColumn(_('JID'))
+        renderer = Gtk.CellRendererText()
+        col.pack_start(renderer, True)
+        col.add_attribute(renderer, 'text', 3)
         self.window.services_treeview.insert_column(col, -1)
         col.set_resizable(True)
         self.window.services_treeview.set_headers_visible(True)
@@ -920,16 +926,13 @@ class AgentBrowser:
         Add the action buttons to the buttonbox for actions the browser can
         perform
         """
-        self.browse_button = gtk.Button()
-        image = gtk.image_new_from_stock(gtk.STOCK_OPEN, gtk.ICON_SIZE_BUTTON)
-        label = gtk.Label(_('_Browse'))
-        label.set_use_underline(True)
-        hbox = gtk.HBox()
-        hbox.pack_start(image, False, True, 6)
-        hbox.pack_end(label, True, True)
-        self.browse_button.add(hbox)
+        self.browse_button = Gtk.Button()
         self.browse_button.connect('clicked', self.on_browse_button_clicked)
         self.window.action_buttonbox.add(self.browse_button)
+        image = Gtk.Image.new_from_stock(Gtk.STOCK_OPEN, Gtk.IconSize.BUTTON)
+        self.browse_button.set_image(image)
+        label = _('_Browse')
+        self.browse_button.set_label(label)
         self.browse_button.show_all()
 
     def _clean_actions(self):
@@ -945,9 +948,18 @@ class AgentBrowser:
         Set the window title based on agent info
         """
         # Set the banner and window title
-        if 'name' in identities[0]:
-            name = identities[0]['name']
-            self.window._set_window_banner_text(self._get_agent_address(), name)
+        name = ''
+        if len(identities) > 1:
+            # Check if an identity with server category is present
+            for i, _identity in enumerate(identities):
+                if _identity['category'] == 'server' and 'name' in _identity:
+                    name = _identity['name']
+                    break
+                elif 'name' in identities[0]:
+                    name = identities[0]['name']
+
+        if name:
+          self.window._set_window_banner_text(self._get_agent_address(), name)
 
         # Add an icon to the banner.
         pix = self.cache.get_icon(identities, addr=self._get_agent_address())
@@ -975,7 +987,7 @@ class AgentBrowser:
         # or pack_end, so we repack the close button here to make sure it's last
         close_button = self.window.xml.get_object('close_button')
         self.window.action_buttonbox.remove(close_button)
-        self.window.action_buttonbox.pack_end(close_button)
+        self.window.action_buttonbox.pack_end(close_button, True, True, 0)
         close_button.show_all()
 
         self.update_actions()
@@ -1009,9 +1021,9 @@ class AgentBrowser:
         model, iter_ = self.window.services_treeview.get_selection().get_selected()
         if not iter_:
             return
-        jid = model[iter_][0].decode('utf-8')
+        jid = model[iter_][0]
         if jid:
-            node = model[iter_][1].decode('utf-8')
+            node = model[iter_][1]
             self.window.open(jid, node)
 
     def update_actions(self):
@@ -1023,8 +1035,8 @@ class AgentBrowser:
         model, iter_ = self.window.services_treeview.get_selection().get_selected()
         if not iter_:
             return
-        jid = model[iter_][0].decode('utf-8')
-        node = model[iter_][1].decode('utf-8')
+        jid = model[iter_][0]
+        node = model[iter_][1]
         if jid:
             self.cache.get_info(jid, node, self._update_actions, nofetch = True)
 
@@ -1046,8 +1058,8 @@ class AgentBrowser:
         model, iter_ = self.window.services_treeview.get_selection().get_selected()
         if not iter_:
             return
-        jid = model[iter_][0].decode('utf-8')
-        node = model[iter_][1].decode('utf-8')
+        jid = model[iter_][0]
+        node = model[iter_][1]
         if jid:
             self.cache.get_info(jid, node, self._default_action, nofetch = True)
 
@@ -1068,7 +1080,7 @@ class AgentBrowser:
         self.model.clear()
         self._total_items = self._progress = 0
         self.window.progressbar.show()
-        self._pulse_timeout = gobject.timeout_add(250, self._pulse_timeout_cb)
+        self._pulse_timeout = GLib.timeout_add(250, self._pulse_timeout_cb)
         self.cache.get_items(self.jid, self.node, self._agent_items,
                 force=force, args=(force,))
 
@@ -1086,10 +1098,10 @@ class AgentBrowser:
         Check if an item is already in the treeview. Return an iter to it if so,
         None otherwise
         """
-        iter_ = self.model.get_iter_root()
+        iter_ = self.model.get_iter_first()
         while iter_:
-            cjid = self.model.get_value(iter_, 0).decode('utf-8')
-            cnode = self.model.get_value(iter_, 1).decode('utf-8')
+            cjid = self.model.get_value(iter_, 0)
+            cnode = self.model.get_value(iter_, 1)
             if jid == cjid and node == cnode:
                 break
             iter_ = self.model.iter_next(iter_)
@@ -1107,15 +1119,16 @@ class AgentBrowser:
         self.model.clear()
         self.add_self_line()
         self._total_items = 0
-        gobject.source_remove(self._pulse_timeout)
+        GLib.source_remove(self._pulse_timeout)
         self.window.progressbar.hide()
         # The server returned an error
         if items == 0:
-            if not self.window.address_comboboxentry:
+            if not self.window.address_comboboxtext:
                 # We can't travel anywhere else.
                 self.window.destroy()
             dialogs.ErrorDialog(_('The service is not browsable'),
-_('This service does not contain any items to browse.'))
+                _('This service does not contain any items to browse.'),
+                transient_for=self.window.window)
             return
         # We got a list of items
         def fill_partial_rows(items):
@@ -1139,7 +1152,7 @@ _('This service does not contain any items to browse.'))
             #stop idle_add()
             yield False
         loader = fill_partial_rows(items)
-        gobject.idle_add(loader.next)
+        GLib.idle_add(next, loader)
 
     def _agent_info(self, jid, node, identities, features, data):
         """
@@ -1224,7 +1237,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         # Grab info on the service
         self.cache.get_info(self.jid, self.node, self._agent_info, force=False)
 
-    def _pixbuf_renderer_data_func(self, col, cell, model, iter_):
+    def _pixbuf_renderer_data_func(self, col, cell, model, iter_, data=None):
         """
         Callback for setting the pixbuf renderer's properties
         """
@@ -1236,7 +1249,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         else:
             cell.set_property('visible', False)
 
-    def _text_renderer_data_func(self, col, cell, model, iter_):
+    def _text_renderer_data_func(self, col, cell, model, iter_, data=None):
         """
         Callback for setting the text renderer's properties
         """
@@ -1259,35 +1272,39 @@ class ToplevelAgentBrowser(AgentBrowser):
                 cell.set_property('cell_background_set', True)
             cell.set_property('foreground_set', False)
 
-    def _treemodel_sort_func(self, model, iter1, iter2):
+    def _treemodel_sort_func(self, model, iter1, iter2, data=None):
         """
         Sort function for our treemode
         """
         # Compare state
-        statecmp = cmp(model.get_value(iter1, 4), model.get_value(iter2, 4))
-        if statecmp == 0:
-            # These can be None, apparently
-            descr1 = model.get_value(iter1, 3)
-            if descr1:
-                descr1 = descr1.decode('utf-8')
-            descr2 = model.get_value(iter2, 3)
-            if descr2:
-                descr2 = descr2.decode('utf-8')
-            # Compare strings
-            return cmp(descr1, descr2)
-        return statecmp
+        state1 = model.get_value(iter1, 4)
+        state2 = model.get_value(iter2, 4)
+        if state1 > state2:
+            return 1
+        if state1 < state2:
+            return -1
+        descr1 = model.get_value(iter1, 3)
+        descr2 = model.get_value(iter2, 3)
+        # Compare strings
+        if descr1 > descr2:
+            return 1
+        if descr1 < descr2:
+            return -1
+        return 0
 
     def _show_tooltip(self, state):
         view = self.window.services_treeview
-        pointer = view.get_pointer()
-        props = view.get_path_at_pos(pointer[0], pointer[1])
+        w = view.get_window()
+        device = w.get_display().get_device_manager().get_client_pointer()
+        pointer = w.get_device_position(device)
+        props = view.get_path_at_pos(pointer[1], pointer[2])
         # check if the current pointer is at the same path
         # as it was before setting the timeout
         if props and self.tooltip.id == props[0]:
             # bounding rectangle of coordinates for the cell within the treeview
             rect = view.get_cell_area(props[0], props[1])
             # position of the treeview on the screen
-            position = view.window.get_origin()
+            position = w.get_origin()[1:]
             self.tooltip.show_tooltip(state, rect.height, position[1] + rect.y)
         else:
             self.tooltip.hide_tooltip()
@@ -1318,8 +1335,8 @@ class ToplevelAgentBrowser(AgentBrowser):
             if jid and state > 0 and \
             (self.tooltip.timeout == 0 or self.tooltip.id != props[0]):
                 self.tooltip.id = row
-                self.tooltip.timeout = gobject.timeout_add(500,
-                        self._show_tooltip, state)
+                self.tooltip.timeout = GLib.timeout_add(500, self._show_tooltip,
+                    state)
 
     def on_treeview_event_hide_tooltip(self, widget, event):
         """
@@ -1331,20 +1348,20 @@ class ToplevelAgentBrowser(AgentBrowser):
         # JID, node, icon, description, state
         # State means 2 when error, 1 when fetching, 0 when succes.
         view = self.window.services_treeview
-        self.model = gtk.TreeStore(str, str, gtk.gdk.Pixbuf, str, int)
+        self.model = Gtk.TreeStore(str, str, GdkPixbuf.Pixbuf, str, int)
         self.model.set_sort_func(4, self._treemodel_sort_func)
-        self.model.set_sort_column_id(4, gtk.SORT_ASCENDING)
+        self.model.set_sort_column_id(4, Gtk.SortType.ASCENDING)
         view.set_model(self.model)
 
-        col = gtk.TreeViewColumn()
+        col = Gtk.TreeViewColumn()
         # Icon Renderer
-        renderer = gtk.CellRendererPixbuf()
+        renderer = Gtk.CellRendererPixbuf()
         renderer.set_property('xpad', 6)
-        col.pack_start(renderer, expand=False)
+        col.pack_start(renderer, False)
         col.set_cell_data_func(renderer, self._pixbuf_renderer_data_func)
         # Text Renderer
-        renderer = gtk.CellRendererText()
-        col.pack_start(renderer, expand=True)
+        renderer = Gtk.CellRendererText()
+        col.pack_start(renderer, True)
         col.set_cell_data_func(renderer, self._text_renderer_data_func)
         renderer.set_property('foreground', 'dark gray')
         # Save this so we can go along with theme changes
@@ -1381,46 +1398,37 @@ class ToplevelAgentBrowser(AgentBrowser):
 
     def _add_actions(self):
         AgentBrowser._add_actions(self)
-        self.execute_button = gtk.Button()
-        image = gtk.image_new_from_stock(gtk.STOCK_EXECUTE, gtk.ICON_SIZE_BUTTON)
-        label = gtk.Label(_('_Execute Command'))
-        label.set_use_underline(True)
-        hbox = gtk.HBox()
-        hbox.pack_start(image, False, True, 6)
-        hbox.pack_end(label, True, True)
-        self.execute_button.add(hbox)
+        self.execute_button = Gtk.Button()
         self.execute_button.connect('clicked', self.on_execute_button_clicked)
         self.window.action_buttonbox.add(self.execute_button)
+        image = Gtk.Image.new_from_stock(Gtk.STOCK_EXECUTE, Gtk.IconSize.BUTTON)
+        self.execute_button.set_image(image)
+        label = _('_Execute Command')
+        self.execute_button.set_label(label)
         self.execute_button.show_all()
 
-        self.register_button = gtk.Button(label=_("Re_gister"),
+        self.register_button = Gtk.Button(label=_("Re_gister"),
                 use_underline=True)
         self.register_button.connect('clicked', self.on_register_button_clicked)
         self.window.action_buttonbox.add(self.register_button)
         self.register_button.show_all()
 
-        self.join_button = gtk.Button()
-        image = gtk.image_new_from_stock(gtk.STOCK_CONNECT, gtk.ICON_SIZE_BUTTON)
-        label = gtk.Label(_('_Join'))
-        label.set_use_underline(True)
-        hbox = gtk.HBox()
-        hbox.pack_start(image, False, True, 6)
-        hbox.pack_end(label, True, True)
-        self.join_button.add(hbox)
+        self.join_button = Gtk.Button()
         self.join_button.connect('clicked', self.on_join_button_clicked)
         self.window.action_buttonbox.add(self.join_button)
+        image = Gtk.Image.new_from_stock(Gtk.STOCK_CONNECT, Gtk.IconSize.BUTTON)
+        self.join_button.set_image(image)
+        label = _('_Join')
+        self.join_button.set_label(label)
         self.join_button.show_all()
 
-        self.search_button = gtk.Button()
-        image = gtk.image_new_from_stock(gtk.STOCK_FIND, gtk.ICON_SIZE_BUTTON)
-        label = gtk.Label(_('_Search'))
-        label.set_use_underline(True)
-        hbox = gtk.HBox()
-        hbox.pack_start(image, False, True, 6)
-        hbox.pack_end(label, True, True)
-        self.search_button.add(hbox)
+        self.search_button = Gtk.Button()
         self.search_button.connect('clicked', self.on_search_button_clicked)
         self.window.action_buttonbox.add(self.search_button)
+        image = Gtk.Image.new_from_stock(Gtk.STOCK_FIND, Gtk.IconSize.BUTTON)
+        self.search_button.set_image(image)
+        label = _('_Search')
+        self.search_button.set_label(label)
         self.search_button.show_all()
 
     def _clean_actions(self):
@@ -1445,7 +1453,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         model, iter_ = self.window.services_treeview.get_selection().get_selected()
         if not iter_:
             return
-        service = model[iter_][0].decode('utf-8')
+        service = model[iter_][0]
         if service in gajim.interface.instances[self.account]['search']:
             gajim.interface.instances[self.account]['search'][service].window.\
                     present()
@@ -1471,8 +1479,8 @@ class ToplevelAgentBrowser(AgentBrowser):
         model, iter_ = self.window.services_treeview.get_selection().get_selected()
         if not iter_:
             return
-        service = model[iter_][0].decode('utf-8')
-        node = model[iter_][1].decode('utf-8')
+        service = model[iter_][0]
+        node = model[iter_][1]
         adhoc_commands.CommandWindow(self.account, service, commandnode=node)
 
     def on_register_button_clicked(self, widget = None):
@@ -1483,7 +1491,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         model, iter_ = self.window.services_treeview.get_selection().get_selected()
         if not iter_:
             return
-        jid = model[iter_][0].decode('utf-8')
+        jid = model[iter_][0]
         if jid:
             gajim.connections[self.account].request_register_agent_info(jid)
             self.window.destroy(chain = True)
@@ -1496,7 +1504,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         model, iter_ = self.window.services_treeview.get_selection().get_selected()
         if not iter_:
             return
-        service = model[iter_][0].decode('utf-8')
+        service = model[iter_][0]
         if 'join_gc' not in gajim.interface.instances[self.account]:
             try:
                 dialogs.JoinGroupchatWindow(self.account, service)
@@ -1529,7 +1537,7 @@ class ToplevelAgentBrowser(AgentBrowser):
                 self.register_button.set_sensitive(True)
             # Guess what kind of service we're dealing with
             if self.browse_button:
-                jid = model[iter_][0].decode('utf-8')
+                jid = model[iter_][0]
                 type_ = gajim.get_transport_name_from_jid(jid,
                                         use_config_setting = False)
                 if type_:
@@ -1593,7 +1601,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         #       self.expanding = False
         #       return False
         #self.expanding = True
-        #gobject.idle_add(expand_all)
+        #GLib.idle_add(expand_all)
         self.window.services_treeview.expand_all()
 
     def _update_progressbar(self):
@@ -1602,7 +1610,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         """
         # Refresh this every update
         if self._progressbar_sourceid:
-            gobject.source_remove(self._progressbar_sourceid)
+            GLib.source_remove(self._progressbar_sourceid)
 
         fraction = 0
         if self._total_items:
@@ -1611,12 +1619,12 @@ class ToplevelAgentBrowser(AgentBrowser):
             fraction = float(self._progress) / float(self._total_items)
             if self._progress >= self._total_items:
                 # We show the progressbar for just a bit before hiding it.
-                id_ = gobject.timeout_add_seconds(2, self._hide_progressbar_cb)
+                id_ = GLib.timeout_add_seconds(2, self._hide_progressbar_cb)
                 self._progressbar_sourceid = id_
             else:
                 self.window.progressbar.show()
                 # Hide the progressbar if we're timing out anyways. (20 secs)
-                id_ = gobject.timeout_add_seconds(20, self._hide_progressbar_cb)
+                id_ = GLib.timeout_add_seconds(20, self._hide_progressbar_cb)
                 self._progressbar_sourceid = id_
         self.window.progressbar.set_fraction(fraction)
 
@@ -1658,9 +1666,9 @@ class ToplevelAgentBrowser(AgentBrowser):
         Looks up a category row and returns the iterator to it, or None
         """
         cat = self._friendly_category(cat, type_)[0]
-        iter_ = self.model.get_iter_root()
+        iter_ = self.model.get_iter_first()
         while iter_:
-            if self.model.get_value(iter_, 3).decode('utf-8') == cat:
+            if self.model.get_value(iter_, 3) == cat:
                 break
             iter_ = self.model.iter_next(iter_)
         if iter_:
@@ -1669,17 +1677,17 @@ class ToplevelAgentBrowser(AgentBrowser):
 
     def _find_item(self, jid, node):
         iter_ = None
-        cat_iter = self.model.get_iter_root()
+        cat_iter = self.model.get_iter_first()
         while cat_iter and not iter_:
-            cjid = self.model.get_value(cat_iter, 0).decode('utf-8')
-            cnode = self.model.get_value(cat_iter, 1).decode('utf-8')
+            cjid = self.model.get_value(cat_iter, 0)
+            cnode = self.model.get_value(cat_iter, 1)
             if jid == cjid and node == cnode:
                 iter_ = cat_iter
                 break
             iter_ = self.model.iter_children(cat_iter)
             while iter_:
-                cjid = self.model.get_value(iter_, 0).decode('utf-8')
-                cnode = self.model.get_value(iter_, 1).decode('utf-8')
+                cjid = self.model.get_value(iter_, 0)
+                cnode = self.model.get_value(iter_, 1)
                 if jid == cjid and node == cnode:
                     break
                 iter_ = self.model.iter_next(iter_)
@@ -1713,7 +1721,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         if not cat:
             cat = self._create_category(*cat_args)
         self.model.append(cat, (jid, node, pix, descr, 1))
-        gobject.idle_add(self._expand_all)
+        GLib.idle_add(self._expand_all)
         # Grab info on the service
         self.cache.get_info(jid, node, self._agent_info, force=force)
         self._update_progressbar()
@@ -1759,7 +1767,7 @@ class ToplevelAgentBrowser(AgentBrowser):
         # Not in the right category, move it.
         self.model.remove(iter_)
 
-        old_cat = self.model.get_value(old_cat_iter, 3).decode('utf-8')
+        old_cat = self.model.get_value(old_cat_iter, 3)
         # Check if the old category is empty
         if not self.model.iter_is_valid(old_cat_iter):
             old_cat_iter = self._find_category(old_cat)
@@ -1788,40 +1796,40 @@ class MucBrowser(AgentBrowser):
         # JID, node, name, users_int, users_str, description, fetched
         # This is rather long, I'd rather not use a data_func here though.
         # Users is a string, because want to be able to leave it empty.
-        self.model = gtk.ListStore(str, str, str, int, str, str, bool)
-        self.model.set_sort_column_id(2, gtk.SORT_ASCENDING)
+        self.model = Gtk.ListStore(str, str, str, int, str, str, bool)
+        self.model.set_sort_column_id(2, Gtk.SortType.ASCENDING)
         self.window.services_treeview.set_model(self.model)
         # Name column
-        col = gtk.TreeViewColumn(_('Name'))
-        col.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)
+        col = Gtk.TreeViewColumn(_('Name'))
+        col.set_sizing(Gtk.TreeViewColumnSizing.FIXED)
         col.set_fixed_width(100)
-        renderer = gtk.CellRendererText()
-        col.pack_start(renderer)
-        col.set_attributes(renderer, text = 2)
+        renderer = Gtk.CellRendererText()
+        col.pack_start(renderer, True)
+        col.add_attribute(renderer, 'text', 2)
         col.set_sort_column_id(2)
         self.window.services_treeview.insert_column(col, -1)
         col.set_resizable(True)
         # Users column
-        col = gtk.TreeViewColumn(_('Users'))
-        renderer = gtk.CellRendererText()
-        col.pack_start(renderer)
-        col.set_attributes(renderer, text = 4)
+        col = Gtk.TreeViewColumn(_('Users'))
+        renderer = Gtk.CellRendererText()
+        col.pack_start(renderer, True)
+        col.add_attribute(renderer, 'text', 4)
         col.set_sort_column_id(3)
         self.window.services_treeview.insert_column(col, -1)
         col.set_resizable(True)
         # Description column
-        col = gtk.TreeViewColumn(_('Description'))
-        renderer = gtk.CellRendererText()
-        col.pack_start(renderer)
-        col.set_attributes(renderer, text = 5)
+        col = Gtk.TreeViewColumn(_('Description'))
+        renderer = Gtk.CellRendererText()
+        col.pack_start(renderer, True)
+        col.add_attribute(renderer, 'text', 5)
         col.set_sort_column_id(4)
         self.window.services_treeview.insert_column(col, -1)
         col.set_resizable(True)
         # Id column
-        col = gtk.TreeViewColumn(_('Id'))
-        renderer = gtk.CellRendererText()
-        col.pack_start(renderer)
-        col.set_attributes(renderer, text = 0)
+        col = Gtk.TreeViewColumn(_('Id'))
+        renderer = Gtk.CellRendererText()
+        col.pack_start(renderer, True)
+        col.add_attribute(renderer, 'text', 0)
         col.set_sort_column_id(0)
         self.window.services_treeview.insert_column(col, -1)
         col.set_resizable(True)
@@ -1848,11 +1856,11 @@ class MucBrowser(AgentBrowser):
         AgentBrowser._clean_treemodel(self)
 
     def _add_actions(self):
-        self.bookmark_button = gtk.Button(label=_('_Bookmark'), use_underline=True)
+        self.bookmark_button = Gtk.Button(label=_('_Bookmark'), use_underline=True)
         self.bookmark_button.connect('clicked', self.on_bookmark_button_clicked)
         self.window.action_buttonbox.add(self.bookmark_button)
         self.bookmark_button.show_all()
-        self.join_button = gtk.Button(label=_('_Join'), use_underline=True)
+        self.join_button = Gtk.Button(label=_('_Join'), use_underline=True)
         self.join_button.connect('clicked', self.on_join_button_clicked)
         self.window.action_buttonbox.add(self.join_button)
         self.join_button.show_all()
@@ -1870,7 +1878,7 @@ class MucBrowser(AgentBrowser):
         if not iter:
             return
         name = gajim.config.get_per('accounts', self.account, 'name')
-        room_jid = model[iter][0].decode('utf-8')
+        room_jid = model[iter][0]
         bm = {
                 'name': room_jid.split('@')[0],
                 'jid': room_jid,
@@ -1883,7 +1891,8 @@ class MucBrowser(AgentBrowser):
         for bookmark in gajim.connections[self.account].bookmarks:
             if bookmark['jid'] == bm['jid']:
                 dialogs.ErrorDialog( _('Bookmark already set'),
-                _('Group Chat "%s" is already in your bookmarks.') % bm['jid'])
+                _('Group Chat "%s" is already in your bookmarks.') % bm['jid'],
+                transient_for=self.window.window)
                 return
 
         gajim.connections[self.account].bookmarks.append(bm)
@@ -1893,7 +1902,8 @@ class MucBrowser(AgentBrowser):
 
         dialogs.InformationDialog(
             _('Bookmark has been added successfully'),
-            _('You can manage your bookmarks via Actions menu in your roster.'))
+            _('You can manage your bookmarks via Actions menu in your roster.'),
+            transient_for=self.window.window)
 
     def on_join_button_clicked(self, *args):
         """
@@ -1903,7 +1913,7 @@ class MucBrowser(AgentBrowser):
         model, iter_ = self.window.services_treeview.get_selection().get_selected()
         if not iter_:
             return
-        service = model[iter_][0].decode('utf-8')
+        service = model[iter_][0]
         if 'join_gc' not in gajim.interface.instances[self.account]:
             try:
                 dialogs.JoinGroupchatWindow(self.account, service)
@@ -1947,40 +1957,24 @@ class MucBrowser(AgentBrowser):
             # We're already fetching
             return
         view = self.window.services_treeview
-        if not view.flags() & gtk.REALIZED:
+        if not view.get_realized():
             # Prevent a silly warning, try again in a bit.
-            self._fetch_source = gobject.timeout_add(100, self._start_info_query)
+            self._fetch_source = GLib.timeout_add(100, self._start_info_query)
             return
-        # We have to do this in a pygtk <2.8 compatible way :/
-        #start, end = self.window.services_treeview.get_visible_range()
-        rect = view.get_visible_rect()
-        iter_ = end = None
-        # Top row
-        try:
-            sx, sy = view.tree_to_widget_coords(rect.x, rect.y)
-            spath = view.get_path_at_pos(sx, sy)[0]
-            iter_ = self.model.get_iter(spath)
-        except TypeError:
-            self._fetch_source = None
+        range_ = view.get_visible_range()
+        if not range_:
             return
-        # Bottom row
-        # Iter compare is broke, use the path instead
-        try:
-            ex, ey = view.tree_to_widget_coords(rect.x + rect.height,
-                    rect.y + rect.height)
-            end = view.get_path_at_pos(ex, ey)[0]
-            # end is the last visible, we want to query that aswell
-            end = (end[0] + 1,)
-        except TypeError:
-            # We're at the end of the model, we can leave end=None though.
-            pass
-        while iter_ and self.model.get_path(iter_) != end:
+        start, end = range_
+        iter_ = self.model.get_iter(start)
+        while iter_:
             if not self.model.get_value(iter_, 6):
-                jid = self.model.get_value(iter_, 0).decode('utf-8')
-                node = self.model.get_value(iter_, 1).decode('utf-8')
+                jid = self.model.get_value(iter_, 0)
+                node = self.model.get_value(iter_, 1)
                 self.cache.get_info(jid, node, self._agent_info)
                 self._fetch_source = True
                 return
+            if self.model.get_path(iter_) == end:
+                break
             iter_ = self.model.iter_next(iter_)
         self._fetch_source = None
 
@@ -2016,7 +2010,7 @@ class MucBrowser(AgentBrowser):
     def _add_item(self, jid, node, parent_node, item, force):
         self.model.append((jid, node, item.get('name', ''), -1, '', '', False))
         if not self._fetch_source:
-            self._fetch_source = gobject.idle_add(self._start_info_query)
+            self._fetch_source = GLib.idle_add(self._start_info_query)
 
     def _update_info(self, iter_, jid, node, identities, features, data):
         name = identities[0].get('name', '')
@@ -2030,7 +2024,7 @@ class MucBrowser(AgentBrowser):
                 if users:
                     self.model[iter_][3] = int(users.getValue())
                     self.model[iter_][4] = users.getValue()
-                if descr:
+                if descr and descr.getValue():
                     self.model[iter_][5] = descr.getValue()
                 # Only set these when we find a form with additional info
                 # Some servers don't support forms and put extra info in
@@ -2085,35 +2079,36 @@ class DiscussionGroupsBrowser(AgentBrowser):
         Create treemodel for the window
         """
         # JID, node, name (with description) - pango markup, dont have info?, subscribed?
-        self.model = gtk.TreeStore(str, str, str, bool, bool)
+        self.model = Gtk.TreeStore(str, str, str, bool, bool)
         # sort by name
-        self.model.set_sort_column_id(2, gtk.SORT_ASCENDING)
+        self.model.set_sort_column_id(2, Gtk.SortType.ASCENDING)
         self.window.services_treeview.set_model(self.model)
 
         # Name column
         # Pango markup for name and description, description printed with
         # %s ' % name
 
         if parent_node:
@@ -2178,19 +2173,19 @@ class DiscussionGroupsBrowser(AgentBrowser):
         return self.found_iter
 
     def _add_actions(self):
-        self.post_button = gtk.Button(label=_('New post'), use_underline=True)
+        self.post_button = Gtk.Button(label=_('New post'), use_underline=True)
         self.post_button.set_sensitive(False)
         self.post_button.connect('clicked', self.on_post_button_clicked)
         self.window.action_buttonbox.add(self.post_button)
         self.post_button.show_all()
 
-        self.subscribe_button = gtk.Button(label=_('_Subscribe'), use_underline=True)
+        self.subscribe_button = Gtk.Button(label=_('_Subscribe'), use_underline=True)
         self.subscribe_button.set_sensitive(False)
         self.subscribe_button.connect('clicked', self.on_subscribe_button_clicked)
         self.window.action_buttonbox.add(self.subscribe_button)
         self.subscribe_button.show_all()
 
-        self.unsubscribe_button = gtk.Button(label=_('_Unsubscribe'), use_underline=True)
+        self.unsubscribe_button = Gtk.Button(label=_('_Unsubscribe'), use_underline=True)
         self.unsubscribe_button.set_sensitive(False)
         self.unsubscribe_button.connect('clicked', self.on_unsubscribe_button_clicked)
         self.window.action_buttonbox.add(self.unsubscribe_button)
diff --git a/src/features_window.py b/src/features_window.py
index 8e63c594d..80f6f9764 100644
--- a/src/features_window.py
+++ b/src/features_window.py
@@ -25,7 +25,7 @@
 
 import os
 import sys
-import gtk
+from gi.repository import Gtk
 import gtkgui_helpers
 
 from common import gajim
@@ -67,10 +67,6 @@ class FeaturesWindow:
                 _('Autodetection of network status.'),
                 _('Requires gnome-network-manager and python-dbus.'),
                 _('Feature not available under Windows.')),
-            _('Session Management'): (self.session_management_available,
-                _('Gajim session is stored on logout and restored on login.'),
-                _('Requires python-gnome2.'),
-                _('Feature not available under Windows.')),
             _('Password encryption'): (self.some_keyring_available,
                 _('Passwords can be stored securely and not just in plaintext.'),
                 _('Requires gnome-keyring and python-gnome2-desktop, or kwalletcli.'),
@@ -114,20 +110,20 @@ class FeaturesWindow:
         }
 
         # name, supported
-        self.model = gtk.ListStore(str, bool)
+        self.model = Gtk.ListStore(str, bool)
         treeview.set_model(self.model)
 
-        col = gtk.TreeViewColumn(Q_('?features:Available'))
+        col = Gtk.TreeViewColumn(Q_('?features:Available'))
         treeview.append_column(col)
-        cell = gtk.CellRendererToggle()
+        cell = Gtk.CellRendererToggle()
         cell.set_property('radio', True)
-        col.pack_start(cell)
-        col.set_attributes(cell, active = 1)
+        col.pack_start(cell, True)
+        col.add_attribute(cell, 'active', 1)
 
-        col = gtk.TreeViewColumn(_('Feature'))
+        col = Gtk.TreeViewColumn(_('Feature'))
         treeview.append_column(col)
-        cell = gtk.CellRendererText()
-        col.pack_start(cell, expand = True)
+        cell = Gtk.CellRendererText()
+        col.pack_start(cell, True)
         col.add_attribute(cell, 'text', 0)
 
         # Fill model
@@ -136,7 +132,7 @@ class FeaturesWindow:
             rep = func()
             self.model.append([feature, rep])
 
-        self.model.set_sort_column_id(0, gtk.SORT_ASCENDING)
+        self.model.set_sort_column_id(0, Gtk.SortType.ASCENDING)
 
         self.xml.connect_signals(self)
         self.window.show_all()
@@ -153,7 +149,7 @@ class FeaturesWindow:
         if not rows:
             return
         path = rows[0]
-        feature = self.model[path][0].decode('utf-8')
+        feature = self.model[path][0]
         text = self.features[feature][1] + '\n'
         if os.name == 'nt':
             text = text + self.features[feature][3]
@@ -192,22 +188,13 @@ class FeaturesWindow:
         import network_manager_listener
         return network_manager_listener.supported
 
-    def session_management_available(self):
-        if os.name == 'nt':
-            return False
-        try:
-            __import__('gnome.ui')
-        except Exception:
-            return False
-        return True
-
     def some_keyring_available(self):
         if os.name == 'nt':
             return False
         if kwalletbinding.kwallet_available():
             return True
         try:
-            __import__('gnomekeyring')
+            from gi.repository import GnomeKeyring
         except Exception:
             return False
         return True
diff --git a/src/filetransfers_window.py b/src/filetransfers_window.py
index f0aa1fc56..8fd765773 100644
--- a/src/filetransfers_window.py
+++ b/src/filetransfers_window.py
@@ -21,9 +21,10 @@
 ## along with Gajim. If not, see %s ' % (font_attrs, u'\u200E' + name)
+        text = '%s ' % (font_attrs, '\u200E' + name)
         self.name_label.set_markup(text)
 
         if self.subject:
             subject = helpers.reduce_chars_newlines(self.subject, max_lines=2)
-            subject = gobject.markup_escape_text(subject)
+            subject = GLib.markup_escape_text(subject)
             subject_text = self.urlfinder.sub(self.make_href, subject)
             subject_text = '%s ' % (font_attrs_small,
                 subject_text)
@@ -823,11 +834,13 @@ class GroupchatControl(ChatControlBase):
         request_voice_separator = xml.get_object('request_voice_separator')
 
         if gtkgui_helpers.gtk_icon_theme.has_icon('bookmark-new'):
-            gtkgui_helpers.add_image_to_menuitem(bookmark_room_menuitem,
-                'bookmark-new')
+            img = Gtk.Image()
+            img.set_from_icon_name('bookmark-new', Gtk.IconSize.MENU)
+            bookmark_room_menuitem.set_image(img)
         if gtkgui_helpers.gtk_icon_theme.has_icon('document-open-recent'):
-            gtkgui_helpers.add_image_to_menuitem(history_menuitem,
-                'document-open-recent')
+            img = Gtk.Image()
+            img.set_from_icon_name('document-open-recent', Gtk.IconSize.MENU)
+            history_menuitem.set_image(img)
 
         if hide_buttonbar_items:
             change_nick_menuitem.hide()
@@ -849,15 +862,15 @@ class GroupchatControl(ChatControlBase):
                     bookmark_separator.hide()
                     break
 
-        ag = gtk.accel_groups_from_object(self.parent_win.window)[0]
-        change_nick_menuitem.add_accelerator('activate', ag, gtk.keysyms.n,
-            gtk.gdk.CONTROL_MASK | gtk.gdk.SHIFT_MASK, gtk.ACCEL_VISIBLE)
+        ag = Gtk.accel_groups_from_object(self.parent_win.window)[0]
+        change_nick_menuitem.add_accelerator('activate', ag, Gdk.KEY_n,
+            Gdk.ModifierType.CONTROL_MASK | Gdk.ModifierType.SHIFT_MASK, Gtk.AccelFlags.VISIBLE)
         change_subject_menuitem.add_accelerator('activate', ag,
-            gtk.keysyms.t, gtk.gdk.MOD1_MASK, gtk.ACCEL_VISIBLE)
-        bookmark_room_menuitem.add_accelerator('activate', ag, gtk.keysyms.b,
-            gtk.gdk.CONTROL_MASK, gtk.ACCEL_VISIBLE)
-        history_menuitem.add_accelerator('activate', ag, gtk.keysyms.h,
-            gtk.gdk.CONTROL_MASK, gtk.ACCEL_VISIBLE)
+            Gdk.KEY_t, Gdk.ModifierType.MOD1_MASK, Gtk.AccelFlags.VISIBLE)
+        bookmark_room_menuitem.add_accelerator('activate', ag, Gdk.KEY_b,
+            Gdk.ModifierType.CONTROL_MASK, Gtk.AccelFlags.VISIBLE)
+        history_menuitem.add_accelerator('activate', ag, Gdk.KEY_h,
+            Gdk.ModifierType.CONTROL_MASK, Gtk.AccelFlags.VISIBLE)
 
         if self.contact.jid in gajim.config.get_per('accounts', self.account,
         'minimized_gc').split(' '):
@@ -932,15 +945,15 @@ class GroupchatControl(ChatControlBase):
     def destroy_menu(self, menu, change_nick_menuitem, change_subject_menuitem,
     bookmark_room_menuitem, history_menuitem):
         # destroy accelerators
-        ag = gtk.accel_groups_from_object(self.parent_win.window)[0]
-        change_nick_menuitem.remove_accelerator(ag, gtk.keysyms.n,
-            gtk.gdk.CONTROL_MASK | gtk.gdk.SHIFT_MASK)
-        change_subject_menuitem.remove_accelerator(ag, gtk.keysyms.t,
-            gtk.gdk.MOD1_MASK)
-        bookmark_room_menuitem.remove_accelerator(ag, gtk.keysyms.b,
-            gtk.gdk.CONTROL_MASK)
-        history_menuitem.remove_accelerator(ag, gtk.keysyms.h,
-            gtk.gdk.CONTROL_MASK)
+        ag = Gtk.accel_groups_from_object(self.parent_win.window)[0]
+        change_nick_menuitem.remove_accelerator(ag, Gdk.KEY_n,
+            Gdk.ModifierType.CONTROL_MASK | Gdk.ModifierType.SHIFT_MASK)
+        change_subject_menuitem.remove_accelerator(ag, Gdk.KEY_t,
+            Gdk.ModifierType.MOD1_MASK)
+        bookmark_room_menuitem.remove_accelerator(ag, Gdk.KEY_b,
+            Gdk.ModifierType.CONTROL_MASK)
+        history_menuitem.remove_accelerator(ag, Gdk.KEY_h,
+            Gdk.ModifierType.CONTROL_MASK)
         # destroy menu
         menu.destroy()
 
@@ -984,15 +997,15 @@ class GroupchatControl(ChatControlBase):
             self.form_widget.connect('validated', on_send_dataform_clicked)
             self.form_widget.show_all()
             vbox = self.xml.get_object('gc_textviews_vbox')
-            vbox.pack_start(self.form_widget, expand=False, fill=False)
+            vbox.pack_start(self.form_widget, False, True, 0)
 
-            valid_button = gtk.Button(stock=gtk.STOCK_OK)
+            valid_button = Gtk.Button(stock=Gtk.STOCK_OK)
             valid_button.connect('clicked', on_send_dataform_clicked)
-            self.btn_box = gtk.HButtonBox()
-            self.btn_box.set_layout(gtk.BUTTONBOX_END)
-            self.btn_box.pack_start(valid_button)
+            self.btn_box = Gtk.HButtonBox()
+            self.btn_box.set_layout(Gtk.ButtonBoxStyle.END)
+            self.btn_box.pack_start(valid_button, True, True, 0)
             self.btn_box.show_all()
-            vbox.pack_start(self.btn_box, expand=False, fill=False)
+            vbox.pack_start(self.btn_box, False, False, 0)
             if self.parent_win:
                 self.parent_win.redraw_tab(self, 'attention')
             else:
@@ -1063,7 +1076,9 @@ class GroupchatControl(ChatControlBase):
         else:
             self._start_private_message(nick)
         # Scroll to line
-        self.list_treeview.expand_row(path[0:1], False)
+        path_ = path
+        path_.up()
+        self.list_treeview.expand_row(path_, False)
         self.list_treeview.scroll_to_cell(path)
         self.list_treeview.set_cursor(path)
         contact = gajim.contacts.get_contact_with_highest_priority(
@@ -1072,11 +1087,11 @@ class GroupchatControl(ChatControlBase):
             gajim.interface.roster.draw_contact(self.room_jid, self.account)
 
     def get_contact_iter(self, nick):
-        role_iter = self.model.get_iter_root()
+        role_iter = self.model.get_iter_first()
         while role_iter:
             user_iter = self.model.iter_children(role_iter)
             while user_iter:
-                if nick == self.model[user_iter][C_NICK].decode('utf-8'):
+                if nick == self.model[user_iter][C_NICK]:
                     return user_iter
                 else:
                     user_iter = self.model.iter_next(user_iter)
@@ -1084,9 +1099,7 @@ class GroupchatControl(ChatControlBase):
         return None
 
     def print_old_conversation(self, text, contact='', tim=None, xhtml = None,
-        displaymarking=None):
-        if isinstance(text, str):
-            text = unicode(text, 'utf-8')
+    displaymarking=None):
         if contact:
             if contact == self.nick: # it's us
                 kind = 'outgoing'
@@ -1112,8 +1125,6 @@ class GroupchatControl(ChatControlBase):
         (contact = 'info' in such a case).
         If contact is not set: it's a message from the server or help.
         """
-        if isinstance(text, str):
-            text = unicode(text, 'utf-8')
         other_tags_for_name = []
         other_tags_for_text = []
         if contact:
@@ -1339,7 +1350,7 @@ class GroupchatControl(ChatControlBase):
     def got_connected(self):
         # Make autorejoin stop.
         if self.autorejoin:
-            gobject.source_remove(self.autorejoin)
+            GLib.source_remove(self.autorejoin)
         self.autorejoin = None
 
         gajim.gc_connected[self.account][self.room_jid] = True
@@ -1406,8 +1417,7 @@ class GroupchatControl(ChatControlBase):
         if self.autorejoin is None and gajim.account_is_connected(self.account):
             ar_to = gajim.config.get('muc_autorejoin_timeout')
             if ar_to:
-                self.autorejoin = gobject.timeout_add_seconds(ar_to,
-                    self.rejoin)
+                self.autorejoin = GLib.timeout_add_seconds(ar_to, self.rejoin)
 
     def rejoin(self):
         if not self.autorejoin:
@@ -1435,7 +1445,7 @@ class GroupchatControl(ChatControlBase):
         contact in a room
         """
         if nick is None:
-            nick = model[iter_][C_NICK].decode('utf-8')
+            nick = model[iter_][C_NICK]
 
         ctrl = self._start_private_message(nick)
         if ctrl and msg:
@@ -1460,7 +1470,7 @@ class GroupchatControl(ChatControlBase):
         else:
             image = state_images[gc_contact.show]
 
-        name = gobject.markup_escape_text(gc_contact.name)
+        name = GLib.markup_escape_text(gc_contact.name)
 
         # Strike name if blocked
         fjid = self.room_jid + '/' + nick
@@ -1479,14 +1489,14 @@ class GroupchatControl(ChatControlBase):
                 colorstring = "#%04x%04x%04x" % (color.red, color.green,
                     color.blue)
                 name += ('\n'
-                    '%s ') % (colorstring, gobject.markup_escape_text(
+                    '%s') % (colorstring, GLib.markup_escape_text(
                     status))
 
-        if image.get_storage_type() == gtk.IMAGE_PIXBUF and \
+        if image.get_storage_type() == Gtk.ImageType.PIXBUF and \
         gc_contact.affiliation != 'none' and gajim.config.get(
         'show_affiliation_in_groupchat'):
             pixbuf1 = image.get_pixbuf().copy()
-            pixbuf2 = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, True, 8, 4, 4)
+            pixbuf2 = GdkPixbuf.Pixbuf.new(GdkPixbuf.Colorspace.RGB, True, 8, 4, 4)
             if gc_contact.affiliation == 'owner':
                 pixbuf2.fill(0xff0000ff) # Red
             elif gc_contact.affiliation == 'admin':
@@ -1495,8 +1505,8 @@ class GroupchatControl(ChatControlBase):
                 pixbuf2.fill(0x00ff00ff) # Green
             pixbuf2.composite(pixbuf1, 12, 12, pixbuf2.get_property('width'),
                 pixbuf2.get_property('height'), 0, 0, 1.0, 1.0,
-                gtk.gdk.INTERP_HYPER, 127)
-            image = gtk.image_new_from_pixbuf(pixbuf1)
+                GdkPixbuf.InterpType.HYPER, 127)
+            image = Gtk.Image.new_from_pixbuf(pixbuf1)
         self.model[iter_][C_IMG] = image
         self.model[iter_][C_TEXT] = name
 
@@ -1509,9 +1519,11 @@ class GroupchatControl(ChatControlBase):
         fake_jid = self.room_jid + '/' + nick
         pixbuf = gtkgui_helpers.get_avatar_pixbuf_from_cache(fake_jid)
         if pixbuf in ('ask', None):
-            scaled_pixbuf = None
+            scaled_pixbuf = empty_pixbuf
         else:
             scaled_pixbuf = gtkgui_helpers.get_scaled_pixbuf(pixbuf, 'roster')
+            if not scaled_pixbuf:
+                scaled_pixbuf = empty_pixbuf
         self.model[iter_][C_AVATAR] = scaled_pixbuf
 
     def draw_role(self, role):
@@ -1912,9 +1924,9 @@ class GroupchatControl(ChatControlBase):
         return iter_
 
     def get_role_iter(self, role):
-        role_iter = self.model.get_iter_root()
+        role_iter = self.model.get_iter_first()
         while role_iter:
-            role_name = self.model[role_iter][C_NICK].decode('utf-8')
+            role_name = self.model[role_iter][C_NICK]
             if role == role_name:
                 return role_iter
             role_iter = self.model.iter_next(role_iter)
@@ -1961,8 +1973,8 @@ class GroupchatControl(ChatControlBase):
                 self.last_sent_msg = msg
                 if self.correcting:
                     self.correcting = False
-                    self.msg_textview.modify_base(gtk.STATE_NORMAL,
-                        self.old_message_tv_color)
+                    self.msg_textview.override_background_color(
+                        Gtk.StateType.NORMAL, self.old_message_tv_color)
 
             if self.correcting and self.last_sent_msg:
                 correction_msg = self.last_sent_msg
@@ -2073,7 +2085,7 @@ class GroupchatControl(ChatControlBase):
         gajim.config.set('gc-hpaned-position', self.hpaned.get_position())
         # remove all register handlers on wigets, created by self.xml
         # to prevent circular references among objects
-        for i in self.handlers.keys():
+        for i in list(self.handlers.keys()):
             if self.handlers[i].handler_is_connected(i):
                 self.handlers[i].disconnect(i)
             del self.handlers[i]
@@ -2202,7 +2214,7 @@ class GroupchatControl(ChatControlBase):
                 reason, jid)
 
         # Ask for a reason
-        dialogs.DoubleInputDialog(_('Destroying %s') % u'\u200E' + \
+        dialogs.DoubleInputDialog(_('Destroying %s') % '\u200E' + \
             self.room_jid, _('You are going to definitively destroy this '
             'room.\nYou may specify a reason below:'),
             _('You may also enter an alternate venue:'), ok_handler=on_ok,
@@ -2236,7 +2248,7 @@ class GroupchatControl(ChatControlBase):
         type_ = model[iter_][2]
         if type_ != 'contact': # source is not a contact
             return
-        contact_jid = data.decode('utf-8')
+        contact_jid = data
         gajim.connections[self.account].send_invite(self.room_jid, contact_jid)
         self.print_conversation(_('%(jid)s has been invited in this room') % {
             'jid': contact_jid}, graphics=False)
@@ -2250,7 +2262,7 @@ class GroupchatControl(ChatControlBase):
             # Textview is not sensitive, don't handle keypress
             return
         # construct event instance from binding
-        event = gtk.gdk.Event(gtk.gdk.KEY_PRESS) # it's always a key-press here
+        event = Gdk.Event(Gdk.EventType.KEY_PRESS) # it's always a key-press here
         event.keyval = event_keyval
         event.state = event_keymod
         event.time = 0 # assign current time
@@ -2258,7 +2270,7 @@ class GroupchatControl(ChatControlBase):
         message_buffer = widget.get_buffer()
         start_iter, end_iter = message_buffer.get_bounds()
 
-        if event.keyval == gtk.keysyms.Tab: # TAB
+        if event.keyval == Gdk.KEY_Tab: # TAB
             cursor_position = message_buffer.get_insert()
             end_iter = message_buffer.get_iter_at_mark(cursor_position)
             text = message_buffer.get_text(start_iter, end_iter, False).decode(
@@ -2301,7 +2313,7 @@ class GroupchatControl(ChatControlBase):
                 self.nick_hits = [] # clear the hit list
                 list_nick = gajim.contacts.get_nick_list(self.account,
                     self.room_jid)
-                list_nick.sort(key=unicode.lower) # case-insensitive sort
+                list_nick.sort(key=str.lower) # case-insensitive sort
                 if begin == '':
                     # empty message, show lasts nicks that highlighted us first
                     for nick in self.attention_list:
@@ -2373,7 +2385,7 @@ class GroupchatControl(ChatControlBase):
             self.last_key_tabs = False
 
     def on_list_treeview_key_press_event(self, widget, event):
-        if event.keyval == gtk.keysyms.Escape:
+        if event.keyval == Gdk.KEY_Escape:
             selection = widget.get_selection()
             iter_ = selection.get_selected()[1]
             if iter_:
@@ -2413,7 +2425,7 @@ class GroupchatControl(ChatControlBase):
         """
         Make contact's popup menu
         """
-        nick = self.model[iter_][C_NICK].decode('utf-8')
+        nick = self.model[iter_][C_NICK]
         c = gajim.contacts.get_gc_contact(self.account, self.room_jid, nick)
         fjid = self.room_jid + '/' + nick
         jid = c.jid
@@ -2498,9 +2510,13 @@ class GroupchatControl(ChatControlBase):
         muc_icon = gtkgui_helpers.load_icon('muc_active')
         if muc_icon:
             item.set_image(muc_icon)
-        if c.jid and c.name != self.nick:
+        if jid and c.name != self.nick:
+            bookmarked = False
+            contact = gajim.contacts.get_contact(self.account, jid, c.resource)
+            if contact and contact.supports(nbxmpp.NS_CONFERENCE):
+                bookmarked=True
             gui_menu_builder.build_invite_submenu(item, ((c, self.account),),
-                ignore_rooms=[self.room_jid])
+                ignore_rooms=[self.room_jid], show_bookmarked=bookmarked)
         else:
             item.set_sensitive(False)
 
@@ -2509,6 +2525,10 @@ class GroupchatControl(ChatControlBase):
         self.handlers[id_] = item
 
         item = xml.get_object('history_menuitem')
+        if gtkgui_helpers.gtk_icon_theme.has_icon('document-open-recent'):
+            img = Gtk.Image()
+            img.set_from_icon_name('document-open-recent', Gtk.IconSize.MENU)
+            item.set_image(img)
         id_ = item.connect('activate', self.on_history, nick)
         self.handlers[id_] = item
 
@@ -2543,7 +2563,7 @@ class GroupchatControl(ChatControlBase):
         pixbuf = gtkgui_helpers.get_icon_pixmap('document-send', quiet=True)
         if not pixbuf:
             pixbuf = gtkgui_helpers.get_icon_pixmap('gajim-upload')
-        img = gtk.image_new_from_pixbuf(pixbuf)
+        img = Gtk.Image.new_from_pixbuf(pixbuf)
         item.set_image(img)
 
         if not c.resource:
@@ -2555,7 +2575,8 @@ class GroupchatControl(ChatControlBase):
         # show the popup now!
         menu = xml.get_object('gc_occupants_menu')
         menu.show_all()
-        menu.popup(None, None, None, event.button, event.time)
+        menu.attach_to_widget(gajim.interface.roster.window, None)
+        menu.popup(None, None, None, None, event.button, event.time)
 
     def _start_private_message(self, nick):
         gc_c = gajim.contacts.get_gc_contact(self.account, self.room_jid, nick)
@@ -2575,13 +2596,13 @@ class GroupchatControl(ChatControlBase):
         When an iter is activated (dubblick or single click if gnome is set this
         way
         """
-        if len(path) == 1: # It's a group
+        if path.get_depth() == 1: # It's a group
             if (widget.row_expanded(path)):
                 widget.collapse_row(path)
             else:
                 widget.expand_row(path, False)
         else: # We want to send a private message
-            nick = self.model[path][C_NICK].decode('utf-8')
+            nick = self.model[path][C_NICK]
             self._start_private_message(nick)
 
     def on_list_treeview_row_activated(self, widget, path, col=0):
@@ -2606,25 +2627,25 @@ class GroupchatControl(ChatControlBase):
         if event.button == 3: # right click
             widget.get_selection().select_path(path)
             iter_ = self.model.get_iter(path)
-            if len(path) == 2:
+            if path.get_depth() == 2:
                 self.mk_menu(event, iter_)
             return True
 
         elif event.button == 2: # middle click
             widget.get_selection().select_path(path)
             iter_ = self.model.get_iter(path)
-            if len(path) == 2:
-                nick = self.model[iter_][C_NICK].decode('utf-8')
+            if path.get_depth() == 2:
+                nick = self.model[iter_][C_NICK]
                 self._start_private_message(nick)
             return True
 
         elif event.button == 1: # left click
-            if gajim.single_click and not event.state & gtk.gdk.SHIFT_MASK:
+            if gajim.single_click and not event.get_state() & Gdk.ModifierType.SHIFT_MASK:
                 self.on_row_activated(widget, path)
                 return True
             else:
                 iter_ = self.model.get_iter(path)
-                nick = self.model[iter_][C_NICK].decode('utf-8')
+                nick = self.model[iter_][C_NICK]
                 if not nick in gajim.contacts.get_nick_list(self.account,
                 self.room_jid):
                     # it's a group
@@ -2633,7 +2654,7 @@ class GroupchatControl(ChatControlBase):
                             widget.collapse_row(path)
                         else:
                             widget.expand_row(path, False)
-                elif event.state & gtk.gdk.SHIFT_MASK:
+                elif event.get_state() & Gdk.ModifierType.SHIFT_MASK:
                     self.append_nick_in_msg_textview(self.msg_textview, nick)
                     self.msg_textview.grab_focus()
                     return True
@@ -2667,14 +2688,14 @@ class GroupchatControl(ChatControlBase):
             except Exception:
                 self.tooltip.hide_tooltip()
                 return
-            typ = self.model[iter_][C_TYPE].decode('utf-8')
+            typ = self.model[iter_][C_TYPE]
             if typ == 'contact':
                 account = self.account
 
                 if self.tooltip.timeout == 0 or self.tooltip.id != props[0]:
                     self.tooltip.id = row
-                    nick = self.model[iter_][C_NICK].decode('utf-8')
-                    self.tooltip.timeout = gobject.timeout_add(500,
+                    nick = self.model[iter_][C_NICK]
+                    self.tooltip.timeout = GLib.timeout_add(500,
                         self.show_tooltip, gajim.contacts.get_gc_contact(
                         account, self.room_jid, nick))
 
@@ -2685,16 +2706,18 @@ class GroupchatControl(ChatControlBase):
                 self.tooltip.hide_tooltip()
 
     def show_tooltip(self, contact):
-        if not self.list_treeview.window:
+        if not self.list_treeview.get_window():
             # control has been destroyed since tooltip was requested
             return
-        pointer = self.list_treeview.get_pointer()
-        props = self.list_treeview.get_path_at_pos(pointer[0], pointer[1])
+        w = self.list_treeview.get_window()
+        device = w.get_display().get_device_manager().get_client_pointer()
+        pointer = w.get_device_position(device)
+        props = self.list_treeview.get_path_at_pos(pointer[1], pointer[2])
         # check if the current pointer is at the same path
         # as it was before setting the timeout
         if props and self.tooltip.id == props[0]:
             rect = self.list_treeview.get_cell_area(props[0], props[1])
-            position = self.list_treeview.window.get_origin()
+            position = w.get_origin()[1:]
             self.tooltip.show_tooltip(contact, rect.height,
                 position[1] + rect.y)
         else:
@@ -2812,8 +2835,9 @@ class GroupchatControl(ChatControlBase):
         if fjid in connection.blocked_contacts:
             return
         max_order = connection.get_max_blocked_list_order()
-        new_rule = {'order': str(max_order + 1), 'type': u'jid', 'action': u'deny',
-            'value' : fjid, 'child': [u'message', u'iq', u'presence-out']}
+        new_rule = {'order': str(max_order + 1), 'type': 'jid',
+            'action': 'deny', 'value' : fjid, 'child': ['message', 'iq',
+            'presence-out']}
         connection.blocked_list.append(new_rule)
         connection.blocked_contacts.append(fjid)
         self.draw_contact(nick)
diff --git a/src/groups.py b/src/groups.py
index 88d661ff2..d3bd70d3e 100644
--- a/src/groups.py
+++ b/src/groups.py
@@ -64,7 +64,7 @@ class GroupsPostWindow:
         item.addChild('title', {}, [self.subject_entry.get_text()])
 
         buf = self.contents_textview.get_buffer()
-        item.addChild('content', {}, [buf.get_text(buf.get_start_iter(), buf.get_end_iter())])
+        item.addChild('content', {}, [buf.get_text(buf.get_start_iter(), buf.get_end_iter(), True)])
 
         # publish it to node
         gajim.connections[self.account].send_pb_publish(self.servicejid, self.groupid, item, '0')
diff --git a/src/gtkexcepthook.py b/src/gtkexcepthook.py
index 45dfa94e7..d448058d9 100644
--- a/src/gtkexcepthook.py
+++ b/src/gtkexcepthook.py
@@ -25,12 +25,13 @@ import os
 import traceback
 import threading
 
-import gtk
-import pango
+from gi.repository import Gtk
+from gi.repository import Gdk
+from gi.repository import Pango
 from common import i18n # installs _() function
-import dialogs
+from dialogs import HigDialog
 
-from cStringIO import StringIO
+from io import StringIO
 from common import helpers
 
 _exception_in_progress = threading.Lock()
@@ -42,7 +43,7 @@ def _info(type_, value, tb):
         _excepthook_save(type_, value, tb)
         return
 
-    dialog = dialogs.HigDialog(None, gtk.MESSAGE_WARNING, gtk.BUTTONS_NONE,
+    dialog = HigDialog(None, Gtk.MessageType.WARNING, Gtk.ButtonsType.NONE,
                             _('A programming error has been detected'),
                             _('It probably is not fatal, but should be reported '
                             'to the developers nonetheless.'))
@@ -50,20 +51,20 @@ def _info(type_, value, tb):
     dialog.set_modal(False)
     #FIXME: add icon to this button
     RESPONSE_REPORT_BUG = 42
-    dialog.add_buttons(gtk.STOCK_CLOSE, gtk.BUTTONS_CLOSE,
+    dialog.add_buttons(Gtk.STOCK_CLOSE, Gtk.ButtonsType.CLOSE,
             _('_Report Bug'), RESPONSE_REPORT_BUG)
     report_button = dialog.action_area.get_children()[0] # right to left
     report_button.grab_focus()
 
     # Details
-    textview = gtk.TextView()
+    textview = Gtk.TextView()
     textview.set_editable(False)
-    textview.modify_font(pango.FontDescription('Monospace'))
-    sw = gtk.ScrolledWindow()
-    sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
+    textview.override_font(Pango.FontDescription('Monospace'))
+    sw = Gtk.ScrolledWindow()
+    sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC)
     sw.add(textview)
-    frame = gtk.Frame()
-    frame.set_shadow_type(gtk.SHADOW_IN)
+    frame = Gtk.Frame()
+    frame.set_shadow_type(Gtk.ShadowType.IN)
     frame.add(sw)
     frame.set_border_width(6)
     textbuffer = textview.get_buffer()
@@ -71,15 +72,15 @@ def _info(type_, value, tb):
     traceback.print_exception(type_, value, tb, None, trace)
     textbuffer.set_text(trace.getvalue())
     textview.set_size_request(
-            gtk.gdk.screen_width() / 3,
-            gtk.gdk.screen_height() / 4)
-    expander = gtk.Expander(_('Details'))
+            Gdk.Screen.width() / 3,
+            Gdk.Screen.height() / 4)
+    expander = Gtk.Expander(label=_('Details'))
     expander.add(frame)
-    dialog.vbox.add(expander)
+    dialog.vbox.pack_start(expander, True, True, 0)
 
     dialog.set_resizable(True)
     # on expand the details the dialog remains centered on screen
-    dialog.set_position(gtk.WIN_POS_CENTER_ALWAYS)
+    dialog.set_position(Gtk.WindowPosition.CENTER_ALWAYS)
 
     def on_dialog_response(dialog, response):
         if response == RESPONSE_REPORT_BUG:
diff --git a/src/gtkgui_helpers.py b/src/gtkgui_helpers.py
index 17b9f34be..240666b3c 100644
--- a/src/gtkgui_helpers.py
+++ b/src/gtkgui_helpers.py
@@ -28,26 +28,29 @@
 ##
 
 import xml.sax.saxutils
-import gtk
-import glib
-import gobject
-import pango
+from gi.repository import Gtk
+from gi.repository import Gdk
+from gi.repository import GdkPixbuf
+from gi.repository import GObject
+from gi.repository import Pango
 import os
 import sys
+import importlib
 
 import logging
 log = logging.getLogger('gajim.gtkgui_helpers')
 
 from common import i18n
 from common import gajim
+from common import pep
 
-gtk_icon_theme = gtk.icon_theme_get_default()
+gtk_icon_theme = Gtk.IconTheme.get_default()
 gtk_icon_theme.append_search_path(gajim.ICONS_DIR)
 
 def get_icon_pixmap(icon_name, size=16, quiet=False):
     try:
         return gtk_icon_theme.load_icon(icon_name, size, 0)
-    except gobject.GError, e:
+    except GObject.GError as e:
         if not quiet:
             log.error('Unable to load icon %s: %s' % (icon_name, str(e)))
 
@@ -59,7 +62,7 @@ def get_icon_path(icon_name, size=16):
             return ""
         else:
             return icon_info.get_filename()
-    except gobject.GError, e:
+    except GObject.GError as e:
         log.error("Unable to find icon %s: %s" % (icon_name, str(e)))
 
 import vcard
@@ -77,11 +80,11 @@ if os.name == 'nt':
 
 from common import helpers
 
-screen_w = gtk.gdk.screen_width()
-screen_h = gtk.gdk.screen_height()
+screen_w = Gdk.Screen.width()
+screen_h = Gdk.Screen.height()
 
 def add_image_to_menuitem(menuitem, icon_name):
-    img = gtk.Image()
+    img = Gtk.Image()
     path_img = get_icon_path(icon_name)
     img.set_from_file(path_img)
     menuitem.set_image(img)
@@ -92,7 +95,7 @@ def add_image_to_button(button, icon_name):
 GUI_DIR = os.path.join(gajim.DATA_DIR, 'gui')
 def get_gtk_builder(file_name, widget=None):
     file_path = os.path.join(GUI_DIR, file_name)
-    builder = gtk.Builder()
+    builder = Gtk.Builder()
     builder.set_translation_domain(i18n.APP)
     if widget:
         builder.add_objects_from_file(file_path, [widget])
@@ -105,16 +108,13 @@ def get_completion_liststore(entry):
     Create a completion model for entry widget completion list consists of
     (Pixbuf, Text) rows
     """
-    completion = gtk.EntryCompletion()
-    liststore = gtk.ListStore(gtk.gdk.Pixbuf, str)
+    completion = Gtk.EntryCompletion()
+    liststore = Gtk.ListStore(GdkPixbuf.Pixbuf, str)
 
-    render_pixbuf = gtk.CellRendererPixbuf()
-    completion.pack_start(render_pixbuf, expand = False)
+    render_pixbuf = Gtk.CellRendererPixbuf()
+    completion.pack_start(render_pixbuf, False)
     completion.add_attribute(render_pixbuf, 'pixbuf', 0)
 
-    render_text = gtk.CellRendererText()
-    completion.pack_start(render_text, expand = True)
-    completion.add_attribute(render_text, 'text', 1)
     completion.set_property('text_column', 1)
     completion.set_model(liststore)
     entry.set_completion(completion)
@@ -125,23 +125,28 @@ def popup_emoticons_under_button(menu, button, parent_win):
     """
     Popup the emoticons menu under button, which is in parent_win
     """
-    window_x1, window_y1 = parent_win.get_origin()
-    def position_menu_under_button(menu):
+    window_x1, window_y1 = parent_win.get_origin()[1:]
+
+    def position_menu_under_button(menu, data):
         # inline function, which will not keep refs, when used as CB
-        button_x, button_y = button.allocation.x, button.allocation.y
+        alloc = button.get_allocation()
+        button_x, button_y = alloc.x, alloc.y
+        translated_coordinates = button.translate_coordinates(
+            gajim.interface.roster.window, 0, 0)
+        if translated_coordinates:
+            button_x, button_y = translated_coordinates
 
         # now convert them to X11-relative
         window_x, window_y = window_x1, window_y1
         x = window_x + button_x
         y = window_y + button_y
 
-        menu_height = menu.size_request()[1]
+        menu_height = menu.size_request().height
 
         ## should we pop down or up?
-        if (y + button.allocation.height + menu_height
-                < gtk.gdk.screen_height()):
+        if (y + alloc.height + menu_height < Gdk.Screen.height()):
             # now move the menu below the button
-            y += button.allocation.height
+            y += alloc.height
         else:
             # now move the menu above the button
             y -= menu_height
@@ -150,21 +155,21 @@ def popup_emoticons_under_button(menu, button, parent_win):
         push_in = True
         return (x, y, push_in)
 
-    menu.popup(None, None, position_menu_under_button, 1, 0)
+    menu.popup(None, None, position_menu_under_button, None, 1, 0)
 
 def get_theme_font_for_option(theme, option):
     """
     Return string description of the font, stored in theme preferences
     """
     font_name = gajim.config.get_per('themes', theme, option)
-    font_desc = pango.FontDescription()
+    font_desc = Pango.FontDescription()
     font_prop_str =  gajim.config.get_per('themes', theme, option + 'attrs')
     if font_prop_str:
         if font_prop_str.find('B') != -1:
-            font_desc.set_weight(pango.WEIGHT_BOLD)
+            font_desc.set_weight(Pango.Weight.BOLD)
         if font_prop_str.find('I') != -1:
-            font_desc.set_style(pango.STYLE_ITALIC)
-    fd = pango.FontDescription(font_name)
+            font_desc.set_style(Pango.Style.ITALIC)
+    fd = Pango.FontDescription(font_name)
     fd.merge(font_desc, True)
     return fd.to_string()
 
@@ -174,11 +179,11 @@ def get_default_font():
     Xfce and last KDE it returns None on failure or else a string 'Font Size'
     """
     try:
-        from gconf import client_get_default
-        client = client_get_default()
+        from gi.repository import GConf
+        client = GConf.Client.get_default()
         value = client.get_string("/desktop/gnome/interface/font_name")
         return value.decode("utf8")
-    except ImportError, glib.GError:
+    except ImportError:
         pass
 
     # try to get Xfce default font
@@ -189,7 +194,7 @@ def get_default_font():
     if xdg_config_home == '':
         xdg_config_home = os.path.expanduser('~/.config') # default
     xfce_config_file = os.path.join(xdg_config_home,
-        'xfce4/mcs_settings/gtk.xml')
+        'xfce4/mcs_settings/Gtk.xml')
 
     kde_config_file = os.path.expanduser('~/.kde/share/config/kdeglobals')
 
@@ -198,11 +203,11 @@ def get_default_font():
             for line in open(xfce_config_file):
                 if line.find('name="Gtk/FontName"') != -1:
                     start = line.find('value="') + 7
-                    return line[start:line.find('"', start)].decode('utf-8')
+                    return line[start:line.find('"', start)]
         except Exception:
             #we talk about file
-            print >> sys.stderr, _('Error: cannot open %s for reading') % \
-                xfce_config_file
+            print(_('Error: cannot open %s for reading') % xfce_config_file,
+                file=sys.stderr)
 
     elif os.path.exists(kde_config_file):
         try:
@@ -214,11 +219,11 @@ def get_default_font():
                     font_name = values[0]
                     font_size = values[1]
                     font_string = '%s %s' % (font_name, font_size) # Verdana 9
-                    return font_string.decode('utf-8')
+                    return font_string
         except Exception:
             #we talk about file
-            print >> sys.stderr, _('Error: cannot open %s for reading') % \
-                kde_config_file
+            print(_('Error: cannot open %s for reading') % kde_config_file,
+                file=sys.stderr)
 
     return None
 
@@ -319,7 +324,7 @@ class HashDigest:
 
     def __str__(self):
         prettydigest = ''
-        for i in xrange(0, len(self.digest), 2):
+        for i in list(range(0, len(self.digest), 2)):
             prettydigest += self.digest[i:i + 2] + ':'
         return prettydigest[:-1]
 
@@ -345,11 +350,11 @@ def parse_server_xml(path_to_file):
         xml.sax.parse(path_to_file, handler)
         return handler.servers
     # handle exception if unable to open file
-    except IOError, message:
-        print >> sys.stderr, _('Error reading file:'), message
+    except IOError as message:
+        print(_('Error reading file:') + str(message), file=sys.stderr)
     # handle exception parsing file
-    except xml.sax.SAXParseException, message:
-        print >> sys.stderr, _('Error parsing file:'), message
+    except xml.sax.SAXParseException as message:
+        print(_('Error parsing file:') + str(message), file=sys.stderr)
 
 def set_unset_urgency_hint(window, unread_messages_no):
     """
@@ -387,12 +392,12 @@ def get_abspath_for_script(scriptname, want_type = False):
                 script += '\nexec python -OOt gajim.py $0 $@\n'
                 f.write(script)
                 f.close()
-                os.chmod(path_to_script, 0700)
+                os.chmod(path_to_script, 0o700)
             except OSError: # do not traceback (could be a permission problem)
                 #we talk about a file here
                 s = _('Could not write to %s. Session Management support will '
                     'not work') % path_to_script
-                print >> sys.stderr, s
+                print(s, file=sys.stderr)
 
     else: # normal user (not svn user)
         type_ = 'install'
@@ -407,15 +412,15 @@ def get_abspath_for_script(scriptname, want_type = False):
 
 def get_pixbuf_from_data(file_data, want_type = False):
     """
-    Get image data and returns gtk.gdk.Pixbuf if want_type is True it also
+    Get image data and returns GdkPixbuf.Pixbuf if want_type is True it also
     returns 'jpeg', 'png' etc
     """
-    pixbufloader = gtk.gdk.PixbufLoader()
+    pixbufloader = GdkPixbuf.PixbufLoader()
     try:
         pixbufloader.write(file_data)
         pixbufloader.close()
         pixbuf = pixbufloader.get_pixbuf()
-    except gobject.GError: # 'unknown image format'
+    except GObject.GError: # 'unknown image format'
         pixbufloader.close()
         pixbuf = None
         if want_type:
@@ -424,15 +429,17 @@ def get_pixbuf_from_data(file_data, want_type = False):
             return None
 
     if want_type:
-        typ = pixbufloader.get_format()['name']
+        typ = pixbufloader.get_format().get_name()
         return pixbuf, typ
     else:
         return pixbuf
 
 def get_invisible_cursor():
-    pixmap = gtk.gdk.Pixmap(None, 1, 1, 1)
-    color = gtk.gdk.Color()
-    cursor = gtk.gdk.Cursor(pixmap, pixmap, color, color, 0, 0)
+    import cairo
+    s = cairo.ImageSurface(cairo.FORMAT_A1, 1, 1)
+    cursor_pixbuf = Gdk.pixbuf_get_from_surface(s, 0, 0, 1, 1)
+    cursor = Gdk.Cursor.new_from_pixbuf(Gdk.Display.get_default(), \
+        cursor_pixbuf, 0, 0)
     return cursor
 
 def get_current_desktop(window):
@@ -458,10 +465,16 @@ def possibly_move_window_in_current_desktop(window):
 
     NOTE: Window is a GDK window.
     """
+    #TODO: property_get doesn't work:
+    #prop_atom = Gdk.Atom.intern('_NET_CURRENT_DESKTOP', False)
+    #type_atom = Gdk.Atom.intern("CARDINAL", False)
+    #w = Gdk.Screen.get_default().get_root_window()
+    #Gdk.property_get(w, prop_atom, type_atom, 0, 9999, False)
+    return False
     if os.name == 'nt':
         return False
 
-    root_window = gtk.gdk.screen_get_default().get_root_window()
+    root_window = Gdk.Screen.get_default().get_root_window()
     # current user's vd
     current_virtual_desktop_no = get_current_desktop(root_window)
 
@@ -512,25 +525,24 @@ def file_is_locked(path_to_file):
 
 def get_fade_color(treeview, selected, focused):
     """
-    Get a gdk color that is between foreground and background in 0.3
+    Get a gdk RGBA color that is between foreground and background in 0.3
     0.7 respectively colors of the cell for the given treeview
     """
-    style = treeview.style
+    context = treeview.get_style_context()
     if selected:
         if focused: # is the window focused?
-            state = gtk.STATE_SELECTED
+            state = Gtk.StateFlags.SELECTED
         else: # is it not? NOTE: many gtk themes change bg on this
-            state = gtk.STATE_ACTIVE
+            state = Gtk.StateFlags.ACTIVE
     else:
-        state = gtk.STATE_NORMAL
-    bg = style.base[state]
-    fg = style.text[state]
+        state = Gtk.StateFlags.NORMAL
+    bg = context.get_background_color(state)
+    fg = context.get_color(state)
 
     p = 0.3 # background
     q = 0.7 # foreground # p + q should do 1.0
-    return gtk.gdk.Color(int(bg.red*p + fg.red*q),
-                                    int(bg.green*p + fg.green*q),
-                                    int(bg.blue*p + fg.blue*q))
+    return Gdk.RGBA(bg.red*p + fg.red*q, bg.green*p + fg.green*q,
+        bg.blue*p + fg.blue*q)
 
 def get_scaled_pixbuf(pixbuf, kind):
     """
@@ -558,7 +570,7 @@ def get_scaled_pixbuf(pixbuf, kind):
     else:
         h = height
         w = int(h * ratio)
-    scaled_buf = pixbuf.scale_simple(w, h, gtk.gdk.INTERP_HYPER)
+    scaled_buf = pixbuf.scale_simple(w, h, GdkPixbuf.InterpType.HYPER)
     return scaled_buf
 
 def get_avatar_pixbuf_from_cache(fjid, use_local=True):
@@ -604,7 +616,7 @@ def get_avatar_pixbuf_from_cache(fjid, use_local=True):
     if not os.path.isfile(path):
         return 'ask'
 
-    vcard_dict = gajim.connections.values()[0].get_cached_vcard(fjid,
+    vcard_dict = list(gajim.connections.values())[0].get_cached_vcard(fjid,
             is_groupchat_contact)
     if not vcard_dict: # This can happen if cached vcard is too old
         return 'ask'
@@ -631,7 +643,8 @@ def make_color_string(color):
     """
     col = '#'
     for i in ('red', 'green', 'blue'):
-        h = hex(getattr(color, i) / (16*16)).split('x')[1]
+        h = hex(int(getattr(color, i) / (16*16)))
+        h = h.split('x')[1]
         if len(h) == 1:
             h = '0' + h
         col += h
@@ -642,28 +655,6 @@ def make_pixbuf_grayscale(pixbuf):
     pixbuf.saturate_and_pixelate(pixbuf2, 0.0, False)
     return pixbuf2
 
-def get_path_to_generic_or_avatar(generic, jid = None, suffix = None):
-    """
-    Choose between avatar image and default image
-
-    Returns full path to the avatar image if it exists, otherwise returns full
-    path to the image.  generic must be with extension and suffix without
-    """
-    if jid:
-        # we want an avatar
-        puny_jid = helpers.sanitize_filename(jid)
-        path_to_file = os.path.join(gajim.AVATAR_PATH, puny_jid) + suffix
-        path_to_local_file = path_to_file + '_local'
-        for extension in ('.png', '.jpeg'):
-            path_to_local_file_full = path_to_local_file + extension
-            if os.path.exists(path_to_local_file_full):
-                return path_to_local_file_full
-        for extension in ('.png', '.jpeg'):
-            path_to_file_full = path_to_file + extension
-            if os.path.exists(path_to_file_full):
-                return path_to_file_full
-    return os.path.abspath(generic)
-
 def decode_filechooser_file_paths(file_paths):
     """
     Decode as UTF-8 under Windows and ask sys.getfilesystemencoding() in POSIX
@@ -681,7 +672,7 @@ def decode_filechooser_file_paths(file_paths):
                 file_path = file_path.decode(sys.getfilesystemencoding())
             except Exception:
                 try:
-                    file_path = file_path.decode('utf-8')
+                    file_path = file_path
                 except Exception:
                     pass
             file_paths_list.append(file_path)
@@ -744,9 +735,9 @@ Description=xmpp
             gajim.config.set('check_if_gajim_is_default', False)
 
     try:
-        import gconf
+        GConf = importlib.import_module('gi.repository.GConf')
         # in try because daemon may not be there
-        client = gconf.client_get_default()
+        client = GConf.Client.get_default()
     except Exception:
         return
 
@@ -787,7 +778,7 @@ def get_state_image_from_file_path_show(file_path, show):
     files = []
     files.append(os.path.join(file_path, state_file + '.png'))
     files.append(os.path.join(file_path, state_file + '.gif'))
-    image = gtk.Image()
+    image = Gtk.Image()
     image.set_from_pixbuf(None)
     for file_ in files:
         if os.path.exists(file_):
@@ -800,7 +791,7 @@ def get_possible_button_event(event):
     """
     Mouse or keyboard caused the event?
     """
-    if event.type == gtk.gdk.KEY_PRESS:
+    if event.type == Gdk.EventType.KEY_PRESS:
         return 0 # no event.button so pass 0
     # BUTTON_PRESS event, so pass event.button
     return event.button
@@ -825,14 +816,14 @@ def on_avatar_save_as_menuitem_activate(widget, jid, default_name=''):
 
         # Save image
         try:
-            pixbuf.save(file_path, image_format)
-        except glib.GError, e:
+            pixbuf.savev(file_path, image_format, [], [])
+        except Exception as e:
             log.debug('Error saving avatar: %s' % str(e))
             if os.path.exists(file_path):
                 os.remove(file_path)
             new_file_path = '.'.join(file_path.split('.')[:-1]) + '.jpeg'
             def on_ok(file_path, pixbuf):
-                pixbuf.save(file_path, 'jpeg')
+                pixbuf.savev(file_path, 'jpeg', [], [])
             dialogs.ConfirmationDialog(_('Extension not supported'),
                 _('Image cannot be saved in %(type)s format. Save as '
                 '%(new_filename)s?') % {'type': image_format,
@@ -854,8 +845,8 @@ def on_avatar_save_as_menuitem_activate(widget, jid, default_name=''):
                 return
             dialog2 = dialogs.FTOverwriteConfirmationDialog(
                 _('This file already exists'), _('What do you want to do?'),
-                propose_resume=False, on_response=(on_continue, file_path))
-            dialog2.set_transient_for(dialog)
+                propose_resume=False, on_response=(on_continue, file_path),
+                transient_for=dialog)
             dialog2.set_destroy_with_parent(True)
         else:
             dirname = os.path.dirname(file_path)
@@ -871,9 +862,9 @@ def on_avatar_save_as_menuitem_activate(widget, jid, default_name=''):
         dialog.destroy()
 
     dialog = dialogs.FileChooserDialog(title_text=_('Save Image as...'),
-        action=gtk.FILE_CHOOSER_ACTION_SAVE, buttons=(gtk.STOCK_CANCEL,
-        gtk.RESPONSE_CANCEL, gtk.STOCK_SAVE, gtk.RESPONSE_OK),
-        default_response=gtk.RESPONSE_OK,
+        action=Gtk.FileChooserAction.SAVE, buttons=(Gtk.STOCK_CANCEL,
+        Gtk.ResponseType.CANCEL, Gtk.STOCK_SAVE, Gtk.ResponseType.OK),
+        default_response=Gtk.ResponseType.OK,
         current_folder=gajim.config.get('last_save_dir'), on_response_ok=on_ok,
         on_response_cancel=on_cancel)
 
@@ -882,15 +873,15 @@ def on_avatar_save_as_menuitem_activate(widget, jid, default_name=''):
         on_cancel(widget))
 
 def on_bm_header_changed_state(widget, event):
-    widget.set_state(gtk.STATE_NORMAL) #do not allow selected_state
+    widget.set_state(Gtk.StateType.NORMAL) #do not allow selected_state
 
 def create_combobox(value_list, selected_value = None):
     """
     Value_list is [(label1, value1)]
     """
-    liststore = gtk.ListStore(str, str)
-    combobox = gtk.ComboBox(liststore)
-    cell = gtk.CellRendererText()
+    liststore = Gtk.ListStore(str, str)
+    combobox = Gtk.ComboBox.new_with_model(liststore)
+    cell = Gtk.CellRendererText()
     combobox.pack_start(cell, True)
     combobox.add_attribute(cell, 'text', 0)
     i = -1
@@ -907,14 +898,14 @@ def create_list_multi(value_list, selected_values=None):
     """
     Value_list is [(label1, value1)]
     """
-    liststore = gtk.ListStore(str, str)
-    treeview = gtk.TreeView(liststore)
-    treeview.get_selection().set_mode(gtk.SELECTION_MULTIPLE)
+    liststore = Gtk.ListStore(str, str)
+    treeview = Gtk.TreeView.new_with_model(liststore)
+    treeview.get_selection().set_mode(Gtk.SelectionMode.MULTIPLE)
     treeview.set_headers_visible(False)
-    col = gtk.TreeViewColumn()
+    col = Gtk.TreeViewColumn()
     treeview.append_column(col)
-    cell = gtk.CellRendererText()
-    col.pack_start(cell, True)
+    cell = Gtk.CellRendererText()
+    col.pack_start(cell, True, True, 0)
     col.set_attributes(cell, text=0)
     for value in value_list:
         iter = liststore.append(value)
@@ -971,6 +962,44 @@ def load_activity_icon(category, activity = None):
     icon_list = _load_icon_list([activity], path)
     return icon_list[activity]
 
+def get_pep_as_pixbuf(pep_class):
+    if isinstance(pep_class, pep.UserMoodPEP):
+        assert not pep_class._retracted
+        received_mood = pep_class._pep_specific_data['mood']
+        mood = received_mood if received_mood in pep.MOODS else 'unknown'
+        pixbuf = load_mood_icon(mood).get_pixbuf()
+        return pixbuf
+    elif isinstance(pep_class, pep.UserTunePEP):
+        icon = get_icon_pixmap('audio-x-generic', quiet=True)
+        if not icon:
+            path = os.path.join(gajim.DATA_DIR, 'emoticons', 'static',
+                'music.png')
+            return GdkPixbuf.Pixbuf.new_from_file(path)
+        return icon
+    elif isinstance(pep_class, pep.UserActivityPEP):
+        assert not pep_class._retracted
+        pep_ = pep_class._pep_specific_data
+        activity = pep_['activity']
+
+        has_known_activity = activity in pep.ACTIVITIES
+        has_known_subactivity = (has_known_activity  and ('subactivity' in pep_)
+                and (pep_['subactivity'] in pep.ACTIVITIES[activity]))
+
+        if has_known_activity:
+            if has_known_subactivity:
+                subactivity = pep_['subactivity']
+                return load_activity_icon(activity, subactivity).get_pixbuf()
+            else:
+                return load_activity_icon(activity).get_pixbuf()
+        else:
+            return load_activity_icon('unknown').get_pixbuf()
+    elif isinstance(pep_class, pep.UserLocationPEP):
+        icon = get_icon_pixmap('applications-internet', quiet=True)
+        if not icon:
+            icon = get_icon_pixmap('gajim-earth')
+        return icon
+    return None
+
 def load_icons_meta():
     """
     Load and return  - AND + small icons to put on top left of an icon for meta
@@ -983,7 +1012,7 @@ def load_icons_meta():
     if not os.path.isfile(path_opened):
         path_opened = os.path.join(path, 'opened.png')
     if os.path.isfile(path_opened):
-        pixo = gtk.gdk.pixbuf_new_from_file(path_opened)
+        pixo = GdkPixbuf.Pixbuf.new_from_file(path_opened)
     else:
         pixo = None
     # Same thing for closed
@@ -991,7 +1020,7 @@ def load_icons_meta():
     if not os.path.isfile(path_closed):
         path_closed = os.path.join(path, 'closed.png')
     if os.path.isfile(path_closed):
-        pixc = gtk.gdk.pixbuf_new_from_file(path_closed)
+        pixc = GdkPixbuf.Pixbuf.new_from_file(path_closed)
     else:
         pixc = None
     return pixo, pixc
@@ -1008,19 +1037,19 @@ def _load_icon_list(icons_list, path, pixbuf2 = None):
         files = []
         files.append(path + icon_file + '.gif')
         files.append(path + icon_file + '.png')
-        image = gtk.Image()
+        image = Gtk.Image()
         image.show()
         imgs[icon] = image
         for file_ in files: # loop seeking for either gif or png
             if os.path.exists(file_):
                 image.set_from_file(file_)
-                if pixbuf2 and image.get_storage_type() == gtk.IMAGE_PIXBUF:
+                if pixbuf2 and image.get_storage_type() == Gtk.ImageType.PIXBUF:
                     # add pixbuf2 on top-left corner of image
                     pixbuf1 = image.get_pixbuf()
                     pixbuf2.composite(pixbuf1, 0, 0,
                             pixbuf2.get_property('width'),
                             pixbuf2.get_property('height'), 0, 0, 1.0, 1.0,
-                            gtk.gdk.INTERP_NEAREST, 255)
+                            GdkPixbuf.InterpType.NEAREST, 255)
                     image.set_from_pixbuf(pixbuf1)
                 break
     return imgs
@@ -1059,21 +1088,21 @@ def make_jabber_state_images():
     else:
         # Resize 32x32 icons to 24x24
         for each in gajim.interface.jabber_state_images['32']:
-            img = gtk.Image()
+            img = Gtk.Image()
             pix = gajim.interface.jabber_state_images['32'][each]
             pix_type = pix.get_storage_type()
-            if pix_type == gtk.IMAGE_ANIMATION:
+            if pix_type == Gtk.ImageType.ANIMATION:
                 animation = pix.get_animation()
                 pixbuf = animation.get_static_image()
-            elif pix_type == gtk.IMAGE_EMPTY:
+            elif pix_type == Gtk.ImageType.EMPTY:
                 pix = gajim.interface.jabber_state_images['16'][each]
                 pix_16_type = pix.get_storage_type()
-                if pix_16_type == gtk.IMAGE_ANIMATION:
+                if pix_16_type == Gtk.ImageType.ANIMATION:
                     animation = pix.get_animation()
                     pixbuf = animation.get_static_image()
             else:
                 pixbuf = pix.get_pixbuf()
-            scaled_pix = pixbuf.scale_simple(24, 24, gtk.gdk.INTERP_BILINEAR)
+            scaled_pix = pixbuf.scale_simple(24, 24, GdkPixbuf.InterpType.BILINEAR)
             img.set_from_pixbuf(scaled_pix)
             gajim.interface.jabber_state_images['24'][each] = img
 
@@ -1086,11 +1115,11 @@ def label_set_autowrap(widget):
     Make labels automatically re-wrap if their containers are resized.
     Accepts label or container widgets
     """
-    if isinstance (widget, gtk.Container):
+    if isinstance (widget, Gtk.Container):
         children = widget.get_children()
-        for i in xrange (len (children)):
+        for i in list(range (len (children))):
             label_set_autowrap(children[i])
-    elif isinstance(widget, gtk.Label):
+    elif isinstance(widget, Gtk.Label):
         widget.set_line_wrap(True)
         widget.connect_after('size-allocate', __label_size_allocate)
 
@@ -1102,13 +1131,13 @@ def __label_size_allocate(widget, allocation):
 
     lw_old, lh_old = layout.get_size()
     # fixed width labels
-    if lw_old/pango.SCALE == allocation.width:
+    if lw_old/Pango.SCALE == allocation.width:
         return
 
-    # set wrap width to the pango.Layout of the labels ###
+    # set wrap width to the Pango.Layout of the labels ###
     widget.set_alignment(0.0, 0.0)
-    layout.set_width (allocation.width * pango.SCALE)
+    layout.set_width (allocation.width * Pango.SCALE)
     lh = layout.get_size()[1]
 
     if lh_old != lh:
-        widget.set_size_request (-1, lh / pango.SCALE)
+        widget.set_size_request (-1, lh / Pango.SCALE)
diff --git a/src/gtkspell.py b/src/gtkspell.py
index aa1adaec7..9d334c529 100644
--- a/src/gtkspell.py
+++ b/src/gtkspell.py
@@ -19,7 +19,7 @@
 import ctypes
 import ctypes.util
 
-import gtk
+from gi.repository import Gtk
 
 
 gboolean = ctypes.c_int
@@ -63,14 +63,15 @@ def ensure_attached(func):
 class Spell(object):
 
     def __init__(self, textview, language=None, create=True):
-        if not isinstance(textview, gtk.TextView):
-            raise TypeError("Textview must be derived from gtk.TextView")
+        if not isinstance(textview, Gtk.TextView):
+            raise TypeError("Textview must be derived from Gtk.TextView")
         tv = PyGObject.from_address(id(textview)).obj
         spell = libgtkspell.gtkspell_get_from_text_view(tv)
         if create:
             if spell:
                 raise RuntimeError("Textview has already a Spell obj attached")
-            self.spell = libgtkspell.gtkspell_new_attach(tv, language, None)
+            self.spell = libgtkspell.gtkspell_new_attach(tv, language.encode(
+                'utf-8'), None)
             if not self.spell:
                 raise OSError("Unable to attach spell object. "
                               "Language: '%s'" % str(language))
@@ -82,7 +83,8 @@ class Spell(object):
 
     @ensure_attached
     def set_language(self, language):
-        if libgtkspell.gtkspell_set_language(self.spell, language, None) == 0:
+        if libgtkspell.gtkspell_set_language(self.spell, language.encode(
+        'utf-8'), None) == 0:
             raise OSError("Unable to set language '%s'" % str(language))
 
     @ensure_attached
diff --git a/src/gui_interface.py b/src/gui_interface.py
index ef50cd5d6..63f051f19 100644
--- a/src/gui_interface.py
+++ b/src/gui_interface.py
@@ -41,8 +41,9 @@ import time
 import math
 from subprocess import Popen
 
-import gtk
-import gobject
+from gi.repository import Gtk
+from gi.repository import GdkPixbuf
+from gi.repository import GLib
 
 from common import i18n
 from common import gajim
@@ -67,7 +68,7 @@ from groupchat_control import PrivateChatControl
 from atom_window import AtomWindow
 from session import ChatControlSession
 
-import common.sleepy
+from common import sleepy
 
 from nbxmpp import idlequeue
 from nbxmpp import Hashes
@@ -93,7 +94,7 @@ import config
 from threading import Thread
 from common import ged
 
-gajimpaths = common.configpaths.gajimpaths
+from common.configpaths import gajimpaths
 config_filename = gajimpaths['CONFIG_FILE']
 
 from common import optparser
@@ -164,7 +165,7 @@ class Interface:
 
     def handle_event_iq_error(self, obj):
         #('ERROR_ANSWER', account, (id_, fjid, errmsg, errcode))
-        if unicode(obj.errcode) in ('400', '403', '406') and obj.id_:
+        if str(obj.errcode) in ('400', '403', '406') and obj.id_:
             # show the error dialog
             ft = self.instances['file_transfers']
             sid = obj.id_
@@ -172,7 +173,7 @@ class Interface:
                 sid = obj.id_[3:]
             file_props = FilesProp.getFileProp(obj.conn.name, sid)
             if file_props :
-                if unicode(obj.errcode) == '400':
+                if str(obj.errcode) == '400':
                     file_props.error = -3
                 else:
                     file_props.error = -4
@@ -181,7 +182,7 @@ class Interface:
                     error_msg=obj.errmsg))
                 obj.conn.disconnect_transfer(file_props)
                 return
-        elif unicode(obj.errcode) == '404':
+        elif str(obj.errcode) == '404':
             sid = obj.id_
             if len(obj.id_) > 3 and obj.id_[2] == '_':
                 sid = obj.id_[3:]
@@ -210,7 +211,7 @@ class Interface:
         #('STATUS', account, show)
         account = obj.conn.name
         if obj.show in ('offline', 'error'):
-            for name in self.instances[account]['online_dialog'].keys():
+            for name in list(self.instances[account]['online_dialog'].keys()):
                 # .keys() is needed to not have a dictionary length changed
                 # during iteration error
                 self.instances[account]['online_dialog'][name].destroy()
@@ -229,8 +230,8 @@ class Interface:
             # we stop blocking notifications of any kind
             # this prevents from getting the roster items as 'just signed in'
             # contacts. 30 seconds should be enough time
-            gobject.timeout_add_seconds(30,
-                self.unblock_signed_in_notifications, account)
+            GLib.timeout_add_seconds(30, self.unblock_signed_in_notifications,
+                account)
 
         if account in self.show_vcard_when_connect and obj.show not in (
         'offline', 'error'):
@@ -370,8 +371,8 @@ class Interface:
             # popup notifications for 30s
             account_jid = account + '/' + jid
             gajim.block_signed_in_notifications[account_jid] = True
-            gobject.timeout_add_seconds(30,
-                self.unblock_signed_in_notifications, account_jid)
+            GLib.timeout_add_seconds(30, self.unblock_signed_in_notifications,
+                account_jid)
 
         highest = gajim.contacts.get_contact_with_highest_priority(account, jid)
         is_highest = (highest and highest.resource == resource)
@@ -449,7 +450,7 @@ class Interface:
         if not obj.session:
             # No session. This can happen when sending a message from
             # gajim-remote
-            log.warn(msg)
+            log.warning(msg)
             return
         obj.session.roster_message(obj.jid, msg, obj.time_, obj.conn.name,
             msg_type='error')
@@ -695,7 +696,7 @@ class Interface:
         #('GPG_ALWAYS_TRUST', account, callback)
         def on_yes(checked):
             if checked:
-                obj.conn.gpg.always_trust = True
+                obj.conn.gpg.always_trust.append(obj.keyID)
             obj.callback(True)
 
         def on_no():
@@ -960,7 +961,7 @@ class Interface:
         ft_win = self.instances['file_transfers']
         if not file_props.hash_:
             # We disn't get the hash, sender probably don't support that
-            jid = unicode(file_props.sender)
+            jid = file_props.sender
             self.popup_ft_result(account, jid, file_props)
             ft_win.set_status(file_props, 'ok')
         h = Hashes()
@@ -972,15 +973,15 @@ class Interface:
         file_.close()
         # If the hash we received and the hash of the file are the same,
         # then the file is not corrupt
-        jid = unicode(file_props.sender)
+        jid = file_props.sender
         if file_props.hash_ == hash_:
-            gobject.idle_add(self.popup_ft_result, account, jid, file_props)
-            gobject.idle_add(ft_win.set_status, file_props, 'ok')
+            GLib.idle_add(self.popup_ft_result, account, jid, file_props)
+            GLib.idle_add(ft_win.set_status, file_props, 'ok')
         else:
             # wrong hash, we need to get the file again!
             file_props.error = -10
-            gobject.idle_add(self.popup_ft_result, account, jid, file_props)
-            gobject.idle_add(ft_win.set_status, file_props, 'hash_error')
+            GLib.idle_add(self.popup_ft_result, account, jid, file_props)
+            GLib.idle_add(ft_win.set_status, file_props, 'hash_error')
         # End jingle session
         if session:
             session.end_session()
@@ -996,15 +997,15 @@ class Interface:
             return
 
         if file_props.type_ == 'r' and file_props.hash_: # we receive a file
+            gajim.socks5queue.remove_receiver(file_props.sid, True, True)
             # we compare hashes
             if file_props.session_type == 'jingle':
                 # Compare hashes in a new thread
                 self.hashThread = Thread(target=self.__compare_hashes,
                     args=(account, file_props))
                 self.hashThread.start()
-            gajim.socks5queue.remove_receiver(file_props.sid, True, True)
         else: # we send a file
-            jid = unicode(file_props.receiver)
+            jid = file_props.receiver
             gajim.socks5queue.remove_sender(file_props.sid, True, True)
             self.popup_ft_result(account, jid, file_props)
 
@@ -1022,6 +1023,9 @@ class Interface:
                     error_msg=_('Error opening file'))
             elif file_props.error == -10:
                 ft.show_hash_error(jid, file_props, account)
+            elif file_props.error == -12:
+                ft.show_stopped(jid, file_props,
+                    error_msg=_('SSL certificate error'))
             return
 
         msg_type = ''
@@ -1051,7 +1055,7 @@ class Interface:
         if file_props is not None:
             if file_props.type_ == 'r':
                 # get the name of the sender, as it is in the roster
-                sender = unicode(file_props.sender).split('/')[0]
+                sender = file_props.sender.split('/')[0]
                 name = gajim.contacts.get_first_contact_from_jid(account,
                     sender).get_shown_name()
                 filename = os.path.basename(file_props.file_name)
@@ -1119,12 +1123,12 @@ class Interface:
         if gajim.config.get('ask_offline_status_on_connection'):
             # Ask offline status in 1 minute so w'are sure we got all online
             # presences
-            gobject.timeout_add_seconds(60, self.ask_offline_status, account)
-        if state != common.sleepy.STATE_UNKNOWN and connected in (2, 3):
+            GLib.timeout_add_seconds(60, self.ask_offline_status, account)
+        if state != sleepy.STATE_UNKNOWN and connected in (2, 3):
             # we go online or free for chat, so we activate auto status
             gajim.sleeper_state[account] = 'online'
-        elif not ((state == common.sleepy.STATE_AWAY and connected == 4) or \
-        (state == common.sleepy.STATE_XA and connected == 5)):
+        elif not ((state == sleepy.STATE_AWAY and connected == 4) or \
+        (state == sleepy.STATE_XA and connected == 5)):
             # If we are autoaway/xa and come back after a disconnection, do
             # nothing
             # Else disable autoaway
@@ -1175,7 +1179,7 @@ class Interface:
         dlg = dialogs.InputDialog(_('Username Conflict'),
             _('Please type a new username for your local account'),
             input_str=obj.alt_name, is_modal=True, ok_handler=on_ok,
-            cancel_handler=on_cancel)
+            cancel_handler=on_cancel, transient_for=self.roster.window)
 
     def handle_event_resource_conflict(self, obj):
         # ('RESOURCE_CONFLICT', account, ())
@@ -1567,7 +1571,7 @@ class Interface:
 
         This is part of rewriting whole events handling system to use GED.
         """
-        for event_name, event_handlers in self.handlers.iteritems():
+        for event_name, event_handlers in self.handlers.items():
             for event_handler in event_handlers:
                 prio = ged.GUI1
                 if type(event_handler) == tuple:
@@ -1688,6 +1692,8 @@ class Interface:
             event = gajim.events.get_first_event(account, fjid, type_)
             if not event:
                 event = gajim.events.get_first_event(account, jid, type_)
+            if not event:
+                return
 
             if type_ == 'printed_pm':
                 ctrl = event.parameters[2]
@@ -1757,7 +1763,7 @@ class Interface:
             self.roster.draw_contact(jid, account)
         if w:
             w.set_active_tab(ctrl)
-            w.window.window.focus(gtk.get_current_event_time())
+            w.window.get_window().focus(Gtk.get_current_event_time())
             # Using isinstance here because we want to catch all derived types
             if isinstance(ctrl, ChatControlBase):
                 tv = ctrl.conv_textview
@@ -1770,13 +1776,13 @@ class Interface:
     def image_is_ok(self, image):
         if not os.path.exists(image):
             return False
-        img = gtk.Image()
+        img = Gtk.Image()
         try:
             img.set_from_file(image)
         except Exception:
             return False
         t = img.get_storage_type()
-        if t != gtk.IMAGE_PIXBUF and t != gtk.IMAGE_ANIMATION:
+        if t != Gtk.ImageType.PIXBUF and t != Gtk.ImageType.ANIMATION:
             return False
         return True
 
@@ -1874,7 +1880,6 @@ class Interface:
             emoticons_pattern_postmatch = ''
             emoticon_length = 0
             for emoticon in keys: # travel thru emoticons list
-                emoticon = emoticon.decode('utf-8')
                 emoticon_escaped = re.escape(emoticon) # espace regexp metachars
                 # | means or in regexp
                 emoticons_pattern += emoticon_escaped + '|'
@@ -1906,8 +1911,8 @@ class Interface:
         self.sth_at_sth_dot_sth = r'\S+@\S+\.\S*[^\s)?]'
 
         # Invalid XML chars
-        self.invalid_XML_chars = u'[\x00-\x08]|[\x0b-\x0c]|[\x0e-\x1f]|'\
-            u'[\ud800-\udfff]|[\ufffe-\uffff]'
+        self.invalid_XML_chars = '[\x00-\x08]|[\x0b-\x0c]|[\x0e-\x1f]|'\
+            '[\ud800-\udfff]|[\ufffe-\uffff]'
 
     def popup_emoticons_under_button(self, button, parent_win):
         """
@@ -1917,7 +1922,7 @@ class Interface:
             button, parent_win)
 
     def prepare_emoticons_menu(self):
-        menu = gtk.Menu()
+        menu = Gtk.Menu()
         def emoticon_clicked(w, str_):
             if self.emoticon_menuitem_clicked:
                 self.emoticon_menuitem_clicked(str_)
@@ -1932,12 +1937,15 @@ class Interface:
         # Calculate the side lenght of the popup to make it a square
         size = int(round(math.sqrt(len(self.emoticons_images))))
         for image in self.emoticons_images:
-            item = gtk.MenuItem()
-            img = gtk.Image()
-            if isinstance(image[1], gtk.gdk.PixbufAnimation):
+            # In Gtk 3.6, Gtk.MenuItem() doesn't contain a label child
+            item = Gtk.MenuItem('q')
+            img = Gtk.Image()
+            if isinstance(image[1], GdkPixbuf.PixbufAnimation):
                 img.set_from_animation(image[1])
             else:
                 img.set_from_pixbuf(image[1])
+            c = item.get_child()
+            item.remove(c)
             item.add(img)
             item.connect('activate', emoticon_clicked, image[0])
             # add tooltip with ascii
@@ -1955,26 +1963,30 @@ class Interface:
         self.emoticons = dict()
         self.emoticons_animations = dict()
 
-        sys.path.append(path)
+        sys.path.insert(0, path)
         import emoticons
-        if need_reload:
-            # we need to reload else that doesn't work when changing emoticon
-            # set
-            reload(emoticons)
-        emots = emoticons.emoticons
+        try:
+            if need_reload:
+                # we need to reload else that doesn't work when changing
+                # emoticons set
+                import imp
+                imp.reload(emoticons)
+            emots = emoticons.emoticons
+        except Exception as e:
+            return True
         for emot_filename in emots:
             emot_file = os.path.join(path, emot_filename)
             if not self.image_is_ok(emot_file):
                 continue
             for emot in emots[emot_filename]:
-                emot = emot.decode('utf-8')
+                emot = emot
                 # This avoids duplicated emoticons with the same image eg. :)
                 # and :-)
                 if not emot_file in self.emoticons.values():
                     if emot_file.endswith('.gif'):
-                        pix = gtk.gdk.PixbufAnimation(emot_file)
+                        pix = GdkPixbuf.PixbufAnimation.new_from_file(emot_file)
                     else:
-                        pix = gtk.gdk.pixbuf_new_from_file_at_size(emot_file,
+                        pix = GdkPixbuf.Pixbuf.new_from_file_at_size(emot_file,
                             16, 16)
                     self.emoticons_images.append((emot, pix))
                 self.emoticons[emot.upper()] = emot_file
@@ -1986,6 +1998,10 @@ class Interface:
         if not emot_theme:
             return
 
+        transient_for = None
+        if 'preferences' in gajim.interface.instances:
+            transient_for = gajim.interface.instances['preferences'].window
+
         path = os.path.join(gajim.DATA_DIR, 'emoticons', emot_theme)
         if not os.path.exists(path):
             # It's maybe a user theme
@@ -1994,10 +2010,18 @@ class Interface:
                 # theme doesn't exist, disable emoticons
                 dialogs.WarningDialog(_('Emoticons disabled'),
                     _('Your configured emoticons theme has not been found, so '
-                    'emoticons have been disabled.'))
+                    'emoticons have been disabled.'),
+                    transient_for=transient_for)
                 gajim.config.set('emoticons_theme', '')
                 return
-        self._init_emoticons(path, need_reload)
+        if self._init_emoticons(path, need_reload):
+            dialogs.WarningDialog(_('Emoticons disabled'),
+                    _('Your configured emoticons theme cannot been loaded. You '
+                    'maybe need to update the format of emoticons.py file. See '
+                    'http://trac.gajim.org/wiki/Emoticons for more details.'),
+                    transient_for=transient_for)
+            gajim.config.set('emoticons_theme', '')
+            return
         if len(self.emoticons) == 0:
             # maybe old format of emoticons file, try to convert it
             try:
@@ -2018,7 +2042,9 @@ class Interface:
                 dialogs.WarningDialog(_('Emoticons disabled'),
                     _('Your configured emoticons theme cannot been loaded. You '
                     'maybe need to update the format of emoticons.py file. See '
-                    'http://trac.gajim.org/wiki/Emoticons for more details.'))
+                    'http://trac.gajim.org/wiki/Emoticons for more details.'),
+                    transient_for=transient_for)
+                gajim.config.set('emoticons_theme', '')
         if self.emoticons_menu:
             self.emoticons_menu.destroy()
         self.emoticons_menu = self.prepare_emoticons_menu()
@@ -2100,6 +2126,7 @@ class Interface:
         gc_control = GroupchatControl(mw, contact, account,
             is_continued=is_continued)
         mw.new_tab(gc_control)
+        mw.set_active_tab(gc_control)
 
     def new_private_chat(self, gc_contact, account, session=None):
         conn = gajim.connections[account]
@@ -2187,7 +2214,7 @@ class Interface:
         # For JEP-0172
         if added_to_roster:
             ctrl.user_nick = gajim.nicks[account]
-        gobject.idle_add(mw.window.grab_focus)
+        GLib.idle_add(mw.window.grab_focus)
 
         return ctrl
 
@@ -2295,38 +2322,6 @@ class Interface:
             gajim.connections[acct].send_tune(artist, title, source)
             gajim.connections[acct].music_track_info = music_track_info
 
-    def get_bg_fg_colors(self):
-        def gdkcolor_to_rgb (gdkcolor):
-            return [c / 65535. for c in (gdkcolor.red, gdkcolor.green,
-                gdkcolor.blue)]
-
-        def format_rgb (r, g, b):
-            return ' '.join([str(c) for c in ('rgb', r, g, b)])
-
-        def format_gdkcolor (gdkcolor):
-            return format_rgb (*gdkcolor_to_rgb (gdkcolor))
-
-        # get style colors and create string for dvipng
-        dummy = gtk.Invisible()
-        dummy.ensure_style()
-        style = dummy.get_style()
-        bg_str = format_gdkcolor(style.base[gtk.STATE_NORMAL])
-        fg_str = format_gdkcolor(style.text[gtk.STATE_NORMAL])
-        return (bg_str, fg_str)
-
-    def get_fg_color(self, fmt='hex'):
-        def format_gdkcolor (c):
-            if fmt == 'tex':
-                return ' '.join([str(s) for s in
-                    ('rgb', c.red_float, c.green_float, c.blue_float)])
-            elif fmt == 'hex':
-                return str(c)
-
-        # get foreground style color and create string
-        dummy = gtk.Invisible()
-        dummy.ensure_style()
-        return format_gdkcolor(dummy.get_style().text[gtk.STATE_NORMAL])
-
     def read_sleepy(self):
         """
         Check idle status and change that status if needed
@@ -2339,14 +2334,14 @@ class Interface:
             if account not in gajim.sleeper_state or \
             not gajim.sleeper_state[account]:
                 continue
-            if state == common.sleepy.STATE_AWAKE and \
+            if state == sleepy.STATE_AWAKE and \
             gajim.sleeper_state[account] in ('autoaway', 'autoxa'):
                 # we go online
                 self.roster.send_status(account, 'online',
                         gajim.status_before_autoaway[account])
                 gajim.status_before_autoaway[account] = ''
                 gajim.sleeper_state[account] = 'online'
-            elif state == common.sleepy.STATE_AWAY and \
+            elif state == sleepy.STATE_AWAY and \
             gajim.sleeper_state[account] == 'online' and \
             gajim.config.get('autoaway'):
                 # we save out online status
@@ -2366,7 +2361,7 @@ class Interface:
                 self.roster.send_status(account, 'away', auto_message,
                     auto=True)
                 gajim.sleeper_state[account] = 'autoaway'
-            elif state == common.sleepy.STATE_XA and \
+            elif state == sleepy.STATE_XA and \
             gajim.sleeper_state[account] in ('online', 'autoaway',
             'autoaway-forced') and gajim.config.get('autoxa'):
                 # we go extended away [we pass True to auto param]
@@ -2435,16 +2430,16 @@ class Interface:
             # Otherwise, an exception will stop our loop
             timeout, in_seconds = gajim.idlequeue.PROCESS_TIMEOUT
             if in_seconds:
-                gobject.timeout_add_seconds(timeout, self.process_connections)
+                GLib.timeout_add_seconds(timeout, self.process_connections)
             else:
-                gobject.timeout_add(timeout, self.process_connections)
+                GLib.timeout_add(timeout, self.process_connections)
             raise
         return True # renew timeout (loop for ever)
 
     def save_config(self):
         err_str = parser.write()
         if err_str is not None:
-            print >> sys.stderr, err_str
+            print(err_str, file=sys.stderr)
             # it is good to notify the user
             # in case he or she cannot see the output of the console
             dialogs.ErrorDialog(_('Could not save your settings and '
@@ -2487,8 +2482,8 @@ class Interface:
                 extension = '.png'
         path_to_original_file = path_to_file + extension
         try:
-            pixbuf.save(path_to_original_file, typ)
-        except Exception, e:
+            pixbuf.savev(path_to_original_file, typ, [], [])
+        except Exception as e:
             log.error('Error writing avatar file %s: %s' % (
                 path_to_original_file, str(e)))
         # Generate and save the resized, color avatar
@@ -2497,8 +2492,8 @@ class Interface:
             path_to_normal_file = path_to_file + '_notif_size_colored' + \
                 extension
             try:
-                pixbuf.save(path_to_normal_file, 'png')
-            except Exception, e:
+                pixbuf.savev(path_to_normal_file, 'png', [], [])
+            except Exception as e:
                 log.error('Error writing avatar file %s: %s' % \
                     (path_to_original_file, str(e)))
             # Generate and save the resized, black and white avatar
@@ -2507,8 +2502,8 @@ class Interface:
             if bwbuf:
                 path_to_bw_file = path_to_file + '_notif_size_bw' + extension
                 try:
-                    bwbuf.save(path_to_bw_file, 'png')
-                except Exception, e:
+                    bwbuf.savev(path_to_bw_file, 'png', [], [])
+                except Exception as e:
                     log.error('Error writing avatar file %s: %s' % \
                         (path_to_original_file, str(e)))
 
@@ -2639,23 +2634,23 @@ class Interface:
         try:
             from ipython_view import IPythonView
         except ImportError:
-            print 'ipython_view not found'
+            print('ipython_view not found')
             return
-        import pango
+        from gi.repository import Pango
 
         if os.name == 'nt':
             font = 'Lucida Console 9'
         else:
             font = 'Luxi Mono 10'
 
-        window = gtk.Window()
+        window = Gtk.Window()
         window.set_size_request(750, 550)
         window.set_resizable(True)
-        sw = gtk.ScrolledWindow()
-        sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
+        sw = Gtk.ScrolledWindow()
+        sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC)
         view = IPythonView()
-        view.modify_font(pango.FontDescription(font))
-        view.set_wrap_mode(gtk.WRAP_CHAR)
+        view.override_font(Pango.FontDescription(font))
+        view.set_wrap_mode(Gtk.WrapMode.CHAR)
         sw.add(view)
         window.add(sw)
         window.show_all()
@@ -2683,18 +2678,18 @@ class Interface:
         # get instances for windows/dialogs that will show_all()/hide()
         self.instances['file_transfers'] = dialogs.FileTransfersWindow()
 
-        gobject.timeout_add(100, self.autoconnect)
+        GLib.timeout_add(100, self.autoconnect)
         timeout, in_seconds = gajim.idlequeue.PROCESS_TIMEOUT
         if in_seconds:
-            gobject.timeout_add_seconds(timeout, self.process_connections)
+            GLib.timeout_add_seconds(timeout, self.process_connections)
         else:
-            gobject.timeout_add(timeout, self.process_connections)
-        gobject.timeout_add_seconds(gajim.config.get(
+            GLib.timeout_add(timeout, self.process_connections)
+        GLib.timeout_add_seconds(gajim.config.get(
                 'check_idle_every_foo_seconds'), self.read_sleepy)
 
         # when using libasyncns we need to process resolver in regular intervals
         if resolver.USE_LIBASYNCNS:
-            gobject.timeout_add(200, gajim.resolver.process)
+            GLib.timeout_add(200, gajim.resolver.process)
 
         def remote_init():
             if gajim.config.get('remote_control'):
@@ -2703,7 +2698,7 @@ class Interface:
                     self.remote_ctrl = remote_control.Remote()
                 except Exception:
                     pass
-        gobject.timeout_add_seconds(5, remote_init)
+        GLib.timeout_add_seconds(5, remote_init)
 
     def __init__(self):
         gajim.interface = self
@@ -2764,8 +2759,8 @@ class Interface:
                 break
         # Is gnome configured to activate row on single click ?
         try:
-            import gconf
-            client = gconf.client_get_default()
+            from gi.repository import GConf
+            client = GConf.Client.get_default()
             click_policy = client.get_string(
                     '/apps/nautilus/preferences/click_policy')
             if click_policy == 'single':
@@ -2848,9 +2843,9 @@ class Interface:
                 gajim.connections[account] = Connection(account)
 
         # gtk hooks
-        gtk.about_dialog_set_email_hook(self.on_launch_browser_mailer, 'mail')
-        gtk.about_dialog_set_url_hook(self.on_launch_browser_mailer, 'url')
-        gtk.link_button_set_uri_hook(self.on_launch_browser_mailer, 'url')
+#        Gtk.about_dialog_set_email_hook(self.on_launch_browser_mailer, 'mail')
+#        Gtk.about_dialog_set_url_hook(self.on_launch_browser_mailer, 'url')
+#        Gtk.link_button_set_uri_hook(self.on_launch_browser_mailer, 'url')
 
         self.instances = {}
 
@@ -2945,7 +2940,7 @@ class Interface:
 
         self.show_vcard_when_connect = []
 
-        self.sleeper = common.sleepy.Sleepy(
+        self.sleeper = sleepy.Sleepy(
             gajim.config.get('autoawaytime') * 60, # make minutes to seconds
             gajim.config.get('autoxatime') * 60)
 
@@ -2963,7 +2958,7 @@ class Interface:
                 pixs.append(pix)
         if pixs:
             # set the icon to all windows
-            gtk.window_set_default_icon_list(*pixs)
+            Gtk.Window.set_default_icon_list(pixs)
 
         self.init_emoticons()
         self.make_regexps()
@@ -2976,7 +2971,7 @@ class Interface:
             lang = gajim.config.get('speller_language')
             if not lang:
                 lang = gajim.LANG
-            tv = gtk.TextView()
+            tv = Gtk.TextView()
             try:
                 import gtkspell
                 spell = gtkspell.Spell(tv, lang)
@@ -2985,11 +2980,13 @@ class Interface:
 
         if gajim.config.get('soundplayer') == '':
             # only on first time Gajim starts
-            commands = ('aplay', 'play', 'esdplay', 'artsplay', 'ossplay')
+            commands = ('aplay', 'play', 'ossplay')
             for command in commands:
                 if helpers.is_in_path(command):
-                    if command == 'aplay':
+                    if command in ('aplay', 'play'):
                         command += ' -q'
+                    elif command == 'ossplay':
+                        command += ' -qq'
                     gajim.config.set('soundplayer', command)
                     break
 
@@ -3033,8 +3030,8 @@ class PassphraseRequest:
         self.passphrase = passphrase
         self.completed = True
         if passphrase is not None:
-            gobject.timeout_add_seconds(30,
-                gajim.interface.forget_gpg_passphrase, self.keyid)
+            GLib.timeout_add_seconds(30, gajim.interface.forget_gpg_passphrase,
+                self.keyid)
         for (account, cb) in self.callbacks:
             self.run_callback(account, cb)
         self.callbacks = []
@@ -3085,7 +3082,7 @@ class ThreadInterface:
         def thread_function(func, func_args, callback, callback_args):
             output = func(*func_args)
             if callback:
-                gobject.idle_add(callback, output, *callback_args)
+                GLib.idle_add(callback, output, *callback_args)
 
         Thread(target=thread_function, args=(func, func_args, callback,
                 callback_args)).start()
diff --git a/src/gui_menu_builder.py b/src/gui_menu_builder.py
index 0cc03fb10..fc1252c0a 100644
--- a/src/gui_menu_builder.py
+++ b/src/gui_menu_builder.py
@@ -18,7 +18,7 @@
 ## along with Gajim. If not, see %s ' % \
-                        gobject.markup_escape_text(message)
-                self.logs_liststore.append((log_line_id, jid_id, time_,
-                    message_, subject, nickname))
+                message_ += '>%s' % GLib.markup_escape_text(message)
+                self.logs_liststore.append((str(log_line_id), str(jid_id),
+                    time_, message_, subject, nickname))
 
     def _fill_search_results_listview(self, text):
         """
@@ -448,8 +447,7 @@ class HistoryManager:
             # log_line_id, jid (from jid_id), time, message, subject, nickname
             log_line_id, jid_id, time_, message, subject, nickname = row
             try:
-                time_ = time.strftime('%x', time.localtime(float(time_))
-                    ).decode(locale.getpreferredencoding())
+                time_ = time.strftime('%x', time.localtime(float(time_)))
             except ValueError:
                 pass
             else:
@@ -461,20 +459,20 @@ class HistoryManager:
     def on_logs_listview_key_press_event(self, widget, event):
         liststore, list_of_paths = self.logs_listview.get_selection()\
                 .get_selected_rows()
-        if event.keyval == gtk.keysyms.Delete:
+        if event.keyval == Gdk.KEY_Delete:
             self._delete_logs(liststore, list_of_paths)
 
     def on_listview_button_press_event(self, widget, event):
         if event.button == 3:  # right click
             xml = gtkgui_helpers.get_gtk_builder('history_manager.ui',
                 'context_menu')
-            if gtk.Buildable.get_name(widget) != 'jids_listview':
+            if Gtk.Buildable.get_name(widget) != 'jids_listview':
                 xml.get_object('export_menuitem').hide()
             xml.get_object('delete_menuitem').connect('activate',
                     self.on_delete_menuitem_activate, widget)
 
             xml.connect_signals(self)
-            xml.get_object('context_menu').popup(None, None, None,
+            xml.get_object('context_menu').popup(None, None, None, None,
                     event.button, event.time)
             return True
 
@@ -489,7 +487,7 @@ class HistoryManager:
         dlg.props.do_overwrite_confirmation = True
         response = dlg.run()
 
-        if response == gtk.RESPONSE_OK:  # user want us to export ;)
+        if response == Gtk.ResponseType.OK:  # user want us to export ;)
             liststore, list_of_paths = self.jids_listview.get_selection()\
                     .get_selected_rows()
             path_to_file = dlg.get_filename()
@@ -499,7 +497,7 @@ class HistoryManager:
         dlg.destroy()
 
     def on_delete_menuitem_activate(self, widget, listview):
-        widget_name = gtk.Buildable.get_name(listview)
+        widget_name = Gtk.Buildable.get_name(listview)
         liststore, list_of_paths = listview.get_selection().get_selected_rows()
         if widget_name == 'jids_listview':
             self._delete_jid_logs(liststore, list_of_paths)
@@ -511,7 +509,7 @@ class HistoryManager:
     def on_jids_listview_key_press_event(self, widget, event):
         liststore, list_of_paths = self.jids_listview.get_selection()\
                 .get_selected_rows()
-        if event.keyval == gtk.keysyms.Delete:
+        if event.keyval == Gdk.KEY_Delete:
             self._delete_jid_logs(liststore, list_of_paths)
 
     def _export_jids_logs_to_file(self, liststore, list_of_paths, path_to_file):
@@ -521,7 +519,7 @@ class HistoryManager:
 
         list_of_rowrefs = []
         for path in list_of_paths:  # make them treerowrefs (it's needed)
-            list_of_rowrefs.append(gtk.TreeRowReference(liststore, path))
+            list_of_rowrefs.append(Gtk.TreeRowReference.new(liststore, path))
 
         for rowref in list_of_rowrefs:
             path = rowref.get_path()
@@ -556,8 +554,7 @@ class HistoryManager:
                 continue
 
             try:
-                time_ = time.strftime('%c', time.localtime(float(time_))
-                    ).decode(locale.getpreferredencoding())
+                time_ = time.strftime('%c', time.localtime(float(time_)))
             except ValueError:
                 pass
 
@@ -573,7 +570,7 @@ class HistoryManager:
             # delete all rows from db that match jid_id
             list_of_rowrefs = []
             for path in list_of_paths:  # make them treerowrefs (it's needed)
-                list_of_rowrefs.append(gtk.TreeRowReference(liststore, path))
+                list_of_rowrefs.append(Gtk.TreeRowReference.new(liststore, path))
 
             for rowref in list_of_rowrefs:
                 path = rowref.get_path()
@@ -622,7 +619,7 @@ class HistoryManager:
             # delete rows from db that match log_line_id
             list_of_rowrefs = []
             for path in list_of_paths:  # make them treerowrefs (it's needed)
-                list_of_rowrefs.append(gtk.TreeRowReference(liststore, path))
+                list_of_rowrefs.append(Gtk.TreeRowReference.new(liststore, path))
 
             for rowref in list_of_rowrefs:
                 path = rowref.get_path()
@@ -652,7 +649,7 @@ class HistoryManager:
         dialog.set_transient_for(self.window)
 
     def on_search_db_button_clicked(self, widget):
-        text = self.search_entry.get_text().decode('utf-8')
+        text = self.search_entry.get_text()
         if not text:
             return
 
@@ -665,12 +662,12 @@ class HistoryManager:
     def on_search_results_listview_row_activated(self, widget, path, column):
         # get log_line_id, jid_id from row we double clicked
         log_line_id = self.search_results_liststore[path][0]
-        jid = self.search_results_liststore[path][1].decode('utf-8')
+        jid = self.search_results_liststore[path][1]
         # make it string as in gtk liststores I have them all as strings
         # as this is what db returns so I don't have to fight with types
         jid_id = self._get_jid_id(jid)
 
-        iter_ = self.jids_liststore.get_iter_root()
+        iter_ = self.jids_liststore.get_iter_first()
         while iter_:
             # self.jids_liststore[iter_][1] holds jid_ids
             if self.jids_liststore[iter_][1] == jid_id:
@@ -683,7 +680,7 @@ class HistoryManager:
         path = self.jids_liststore.get_path(iter_)
         self.jids_listview.set_cursor(path)
 
-        iter_ = self.logs_liststore.get_iter_root()
+        iter_ = self.logs_liststore.get_iter_first()
         while iter_:
             # self.logs_liststore[iter_][0] holds lon_line_ids
             if self.logs_liststore[iter_][0] == log_line_id:
@@ -696,4 +693,4 @@ class HistoryManager:
 if __name__ == '__main__':
     signal.signal(signal.SIGINT, signal.SIG_DFL)  # ^C exits the application
     HistoryManager()
-    gtk.main()
+    Gtk.main()
diff --git a/src/history_window.py b/src/history_window.py
index 5a2a42837..1e67c1ee0 100644
--- a/src/history_window.py
+++ b/src/history_window.py
@@ -25,8 +25,9 @@
 ## along with Gajim. If not, see '
         self.end_tags['bold'] = ' '
         self.other_tags['italic'] = _buffer.create_tag('italic')
-        self.other_tags['italic'].set_property('style', pango.STYLE_ITALIC)
+        self.other_tags['italic'].set_property('style', Pango.Style.ITALIC)
         self.begin_tags['italic'] = ''
         self.end_tags['italic'] = ' '
         self.other_tags['underline'] = _buffer.create_tag('underline')
-        self.other_tags['underline'].set_property('underline', pango.UNDERLINE_SINGLE)
+        self.other_tags['underline'].set_property('underline', Pango.Underline.SINGLE)
         self.begin_tags['underline'] = ''
         self.end_tags['underline'] = ' '
         self.other_tags['strike'] = _buffer.create_tag('strike')
@@ -145,19 +147,23 @@ class MessageTextView(gtk.TextView):
         start, finish = self.get_active_iters()
         _buffer.remove_all_tags(start, finish)
 
-    def color_set(self, widget, response, color):
-        if response == -6:
+    def color_set(self, widget, response):
+        if response == -6 or response == -4:
             widget.destroy()
             return
-        _buffer = self.get_buffer()
-        color = color.get_current_color()
+
+        color = widget.get_property('rgba')
         widget.destroy()
-        color_string = gtkgui_helpers.make_color_string(color)
+        _buffer = self.get_buffer()
+        # Create #aabbcc color string from rgba color
+        color_string = '#%02X%02X%02X' % (round(color.red*255),
+            round(color.green*255), round(color.blue*255))
+
         tag_name = 'color' + color_string
         if not tag_name in self.color_tags:
             tagColor = _buffer.create_tag(tag_name)
             tagColor.set_property('foreground', color_string)
-            self.begin_tags[tag_name] = ''
+            self.begin_tags[tag_name] = '' % color_string
             self.end_tags[tag_name] = ' '
             self.color_tags.append(tag_name)
 
@@ -168,23 +174,23 @@ class MessageTextView(gtk.TextView):
 
         _buffer.apply_tag_by_name(tag_name, start, finish)
 
-    def font_set(self, widget, response, font):
-        if response == -6:
+    def font_set(self, widget, response, start, finish):
+        if response == -6 or response == -4:
             widget.destroy()
             return
 
-        _buffer = self.get_buffer()
-
-        font = font.get_font_name()
-        font_desc = pango.FontDescription(font)
+        font = widget.get_font()
+        font_desc = widget.get_font_desc()
         family = font_desc.get_family()
         size = font_desc.get_size()
-        size = size / pango.SCALE
+        size = size / Pango.SCALE
         weight = font_desc.get_weight()
         style = font_desc.get_style()
 
         widget.destroy()
 
+        _buffer = self.get_buffer()
+
         tag_name = 'font' + font
         if not tag_name in self.fonts_tags:
             tagFont = _buffer.create_tag(tag_name)
@@ -195,19 +201,17 @@ class MessageTextView(gtk.TextView):
             self.end_tags[tag_name] = ' '
             self.fonts_tags.append(tag_name)
 
-        start, finish = self.get_active_iters()
-
         for tag in self.fonts_tags:
             _buffer.remove_tag_by_name(tag, start, finish)
 
         _buffer.apply_tag_by_name(tag_name, start, finish)
 
-        if weight == pango.WEIGHT_BOLD:
+        if weight == Pango.Weight.BOLD:
             _buffer.apply_tag_by_name('bold', start, finish)
         else:
             _buffer.remove_tag_by_name('bold', start, finish)
 
-        if style == pango.STYLE_ITALIC:
+        if style == Pango.Style.ITALIC:
             _buffer.apply_tag_by_name('italic', start, finish)
         else:
             _buffer.remove_tag_by_name('italic', start, finish)
@@ -217,7 +221,7 @@ class MessageTextView(gtk.TextView):
         old = _buffer.get_start_iter()
         tags = {}
         tags['bold'] = False
-        iter = _buffer.get_start_iter()
+        iter_ = _buffer.get_start_iter()
         old = _buffer.get_start_iter()
         text = ''
         modified = False
@@ -229,31 +233,31 @@ class MessageTextView(gtk.TextView):
             text = text.replace('\n', 'b', 'F4',
                 'w', 'Page_Up', 'Page_Down', 'Right',
                 'Left', 'd', 'c', 'm', 't', 'Escape'] + \
-                [''+str(i) for i in xrange(10)]
-        accel_group = gtk.AccelGroup()
+                [''+str(i) for i in list(range(10))]
+        accel_group = Gtk.AccelGroup()
         for key in keys:
-            keyval, mod = gtk.accelerator_parse(key)
-            accel_group.connect_group(keyval, mod, gtk.ACCEL_VISIBLE,
+            keyval, mod = Gtk.accelerator_parse(key)
+            accel_group.connect(keyval, mod, Gtk.AccelFlags.VISIBLE,
                 self.accel_group_func)
         self.window.add_accel_group(accel_group)
 
         # gtk+ doesn't make use of the motion notify on gtkwindow by default
         # so this line adds that
-        self.window.add_events(gtk.gdk.POINTER_MOTION_MASK)
+        self.window.add_events(Gdk.EventMask.POINTER_MOTION_MASK)
 
         id_ = self.notebook.connect('switch-page',
             self._on_notebook_switch_page)
@@ -127,13 +129,13 @@ class MessageWindow(object):
         # Tab customizations
         pref_pos = gajim.config.get('tabs_position')
         if pref_pos == 'bottom':
-            nb_pos = gtk.POS_BOTTOM
+            nb_pos = Gtk.PositionType.BOTTOM
         elif pref_pos == 'left':
-            nb_pos = gtk.POS_LEFT
+            nb_pos = Gtk.PositionType.LEFT
         elif pref_pos == 'right':
-            nb_pos = gtk.POS_RIGHT
+            nb_pos = Gtk.PositionType.RIGHT
         else:
-            nb_pos = gtk.POS_TOP
+            nb_pos = Gtk.PositionType.TOP
         self.notebook.set_tab_pos(nb_pos)
         window_mode = gajim.interface.msg_win_mgr.mode
         if gajim.config.get('tabs_always_visible') or \
@@ -252,7 +254,7 @@ class MessageWindow(object):
         self._controls.clear()
         # Clean up handlers connected to the parent window, this is important since
         # self.window may be the RosterWindow
-        for i in self.handlers.keys():
+        for i in list(self.handlers.keys()):
             if self.handlers[i].handler_is_connected(i):
                 self.handlers[i].disconnect(i)
             del self.handlers[i]
@@ -276,17 +278,17 @@ class MessageWindow(object):
                 scrolled = True
             self.notebook.set_show_tabs(True)
             if scrolled:
-                gobject.idle_add(conv_textview.scroll_to_end_iter)
+                GLib.idle_add(conv_textview.scroll_to_end_iter)
 
         # Add notebook page and connect up to the tab's close button
         xml = gtkgui_helpers.get_gtk_builder('message_window.ui', 'chat_tab_ebox')
         tab_label_box = xml.get_object('chat_tab_ebox')
         widget = xml.get_object('tab_close_button')
-        #this reduces the size of the button
-        style = gtk.RcStyle()
-        style.xthickness = 0
-        style.ythickness = 0
-        widget.modify_style(style)
+        # this reduces the size of the button
+#        style = Gtk.RcStyle()
+#        style.xthickness = 0
+#        style.ythickness = 0
+#        widget.modify_style(style)
 
         id_ = widget.connect('clicked', self._on_close_button_clicked, control)
         control.handlers[id_] = widget
@@ -306,7 +308,7 @@ class MessageWindow(object):
         # NOTE: we do not call set_control_active(True) since we don't know
         # whether the tab is the active one.
         self.show_title()
-        gobject.timeout_add(500, control.msg_textview.grab_focus)
+        GLib.timeout_add(500, control.msg_textview.grab_focus)
 
     def on_tab_eventbox_button_press_event(self, widget, event, child):
         if event.button == 3: # right click
@@ -318,28 +320,28 @@ class MessageWindow(object):
             self.remove_tab(ctrl, self.CLOSE_TAB_MIDDLE_CLICK)
         else:
             ctrl = self._widget_to_control(child)
-            gobject.idle_add(ctrl.msg_textview.grab_focus)
+            GLib.idle_add(ctrl.msg_textview.grab_focus)
 
     def _on_message_textview_mykeypress_event(self, widget, event_keyval,
             event_keymod):
         # NOTE: handles mykeypress which is custom signal; see message_textview.py
 
         # construct event instance from binding
-        event = gtk.gdk.Event(gtk.gdk.KEY_PRESS) # it's always a key-press here
+        event = Gdk.Event(Gdk.EventType.KEY_PRESS) # it's always a key-press here
         event.keyval = event_keyval
         event.state = event_keymod
         event.time = 0 # assign current time
 
-        if event.state & gtk.gdk.CONTROL_MASK:
+        if event.get_state() & Gdk.ModifierType.CONTROL_MASK:
             # Tab switch bindings
-            if event.keyval == gtk.keysyms.Tab: # CTRL + TAB
+            if event.keyval == Gdk.KEY_Tab: # CTRL + TAB
                 self.move_to_next_unread_tab(True)
-            elif event.keyval == gtk.keysyms.ISO_Left_Tab: # CTRL + SHIFT + TAB
+            elif event.keyval == Gdk.KEY_ISO_Left_Tab: # CTRL + SHIFT + TAB
                 self.move_to_next_unread_tab(False)
-            elif event.keyval == gtk.keysyms.Page_Down: # CTRL + PAGE DOWN
-                self.notebook.emit('key_press_event', event)
-            elif event.keyval == gtk.keysyms.Page_Up: # CTRL + PAGE UP
-                self.notebook.emit('key_press_event', event)
+            elif event.keyval == Gdk.KEY_Page_Down: # CTRL + PAGE DOWN
+                self.notebook.event(event)
+            elif event.keyval == Gdk.KEY_Page_Up: # CTRL + PAGE UP
+                self.notebook.event(event)
 
     def accel_group_func(self, accel_group, acceleratable, keyval, modifier):
         st = '1234567890' # alt+1 means the first tab (tab 0)
@@ -349,76 +351,76 @@ class MessageWindow(object):
             return
 
         # CTRL mask
-        if modifier & gtk.gdk.CONTROL_MASK:
-            if keyval == gtk.keysyms.h: # CTRL + h
-                if gtk.settings_get_default().get_property(
+        if modifier & Gdk.ModifierType.CONTROL_MASK:
+            if keyval == Gdk.KEY_h: # CTRL + h
+                if Gtk.Settings.get_default().get_property(
                 'gtk-key-theme-name') != 'Emacs':
                     control._on_history_menuitem_activate()
                     return True
             elif control.type_id == message_control.TYPE_CHAT and \
-            keyval == gtk.keysyms.f: # CTRL + f
+            keyval == Gdk.KEY_f: # CTRL + f
                 # CTRL + f moves cursor one char forward when user uses Emacs
                 # theme
-                if not gtk.settings_get_default().get_property(
+                if not Gtk.Settings.get_default().get_property(
                 'gtk-key-theme-name') == 'Emacs':
                     control._on_send_file_menuitem_activate(None)
                     return True
             elif control.type_id == message_control.TYPE_CHAT and \
-            keyval == gtk.keysyms.g: # CTRL + g
+            keyval == Gdk.KEY_g: # CTRL + g
                 control._on_convert_to_gc_menuitem_activate(None)
                 return True
             elif control.type_id in (message_control.TYPE_CHAT,
-            message_control.TYPE_PM) and keyval == gtk.keysyms.i: # CTRL + i
+            message_control.TYPE_PM) and keyval == Gdk.KEY_i: # CTRL + i
                 control._on_contact_information_menuitem_activate(None)
                 return True
-            elif keyval == gtk.keysyms.l or keyval == gtk.keysyms.L: # CTRL + l|L
+            elif keyval == Gdk.KEY_l or keyval == Gdk.KEY_L: # CTRL + l|L
                 control.conv_textview.clear()
                 return True
-            elif keyval == gtk.keysyms.u: # CTRL + u: emacs style clear line
+            elif keyval == Gdk.KEY_u: # CTRL + u: emacs style clear line
                 control.clear(control.msg_textview)
                 return True
             elif control.type_id == message_control.TYPE_GC and \
-            keyval == gtk.keysyms.b: # CTRL + b
+            keyval == Gdk.KEY_b: # CTRL + b
                 control._on_bookmark_room_menuitem_activate(None)
                 return True
             # Tab switch bindings
-            elif keyval == gtk.keysyms.F4: # CTRL + F4
+            elif keyval == Gdk.KEY_F4: # CTRL + F4
                 self.remove_tab(control, self.CLOSE_CTRL_KEY)
                 return True
-            elif keyval == gtk.keysyms.w: # CTRL + w
+            elif keyval == Gdk.KEY_w: # CTRL + w
                 # CTRL + w removes latest word before sursor when User uses emacs
                 # theme
-                if not gtk.settings_get_default().get_property(
+                if not Gtk.Settings.get_default().get_property(
                 'gtk-key-theme-name') == 'Emacs':
                     self.remove_tab(control, self.CLOSE_CTRL_KEY)
                     return True
-            elif keyval in (gtk.keysyms.Page_Up, gtk.keysyms.Page_Down):
+            elif keyval in (Gdk.KEY_Page_Up, Gdk.KEY_Page_Down):
                 # CTRL + PageUp | PageDown
                 # Create event and send it to notebook
-                event = gtk.gdk.Event(gtk.gdk.KEY_PRESS)
-                event.window = self.window.window
+                event = Gdk.Event(Gdk.EventType.KEY_PRESS)
+                event.window = self.window.get_window()
                 event.time = int(time.time())
-                event.state = gtk.gdk.CONTROL_MASK
+                event.state = Gdk.ModifierType.CONTROL_MASK
                 event.keyval = int(keyval)
-                self.notebook.emit('key_press_event', event)
+                self.notebook.event(event)
                 return True
 
-            if modifier & gtk.gdk.SHIFT_MASK:
+            if modifier & Gdk.ModifierType.SHIFT_MASK:
                 # CTRL + SHIFT
                 if control.type_id == message_control.TYPE_GC and \
-                keyval == gtk.keysyms.n: # CTRL + SHIFT + n
+                keyval == Gdk.KEY_n: # CTRL + SHIFT + n
                     control._on_change_nick_menuitem_activate(None)
                     return True
         # MOD1 (ALT) mask
-        elif modifier & gtk.gdk.MOD1_MASK:
+        elif modifier & Gdk.ModifierType.MOD1_MASK:
             # Tab switch bindings
-            if keyval == gtk.keysyms.Right: # ALT + RIGHT
+            if keyval == Gdk.KEY_Right: # ALT + RIGHT
                 new = self.notebook.get_current_page() + 1
                 if new >= self.notebook.get_n_pages():
                     new = 0
                 self.notebook.set_current_page(new)
                 return True
-            elif keyval == gtk.keysyms.Left: # ALT + LEFT
+            elif keyval == Gdk.KEY_Left: # ALT + LEFT
                 new = self.notebook.get_current_page() - 1
                 if new < 0:
                     new = self.notebook.get_n_pages() - 1
@@ -427,23 +429,23 @@ class MessageWindow(object):
             elif chr(keyval) in st: # ALT + 1,2,3..
                 self.notebook.set_current_page(st.index(chr(keyval)))
                 return True
-            elif keyval == gtk.keysyms.c: # ALT + C toggles chat buttons
+            elif keyval == Gdk.KEY_c: # ALT + C toggles chat buttons
                 control.chat_buttons_set_visible(not control.hide_chat_buttons)
                 return True
-            elif keyval == gtk.keysyms.m: # ALT + M show emoticons menu
+            elif keyval == Gdk.KEY_m: # ALT + M show emoticons menu
                 control.show_emoticons_menu()
                 return True
-            elif keyval == gtk.keysyms.d: # ALT + D show actions menu
-                if gtk.settings_get_default().get_property(
+            elif keyval == Gdk.KEY_d: # ALT + D show actions menu
+                if Gtk.Settings.get_default().get_property(
                 'gtk-key-theme-name') != 'Emacs':
                     control.on_actions_button_clicked(control.actions_button)
                     return True
             elif control.type_id == message_control.TYPE_GC and \
-            keyval == gtk.keysyms.t: # ALT + t
+            keyval == Gdk.KEY_t: # ALT + t
                 control._on_change_subject_menuitem_activate(None)
                 return True
         # Close tab bindings
-        elif keyval == gtk.keysyms.Escape and \
+        elif keyval == Gdk.KEY_Escape and \
         gajim.config.get('escape_key_closes'): # Escape
             self.remove_tab(control, self.CLOSE_ESC)
             return True
@@ -498,7 +500,7 @@ class MessageWindow(object):
 
         unread_str = ''
         if unread > 1:
-            unread_str = '[' + unicode(unread) + '] '
+            unread_str = '[' + str(unread) + '] '
         elif unread == 1:
             unread_str = '* '
         else:
@@ -546,7 +548,7 @@ class MessageWindow(object):
         ctrl_page = self.notebook.page_num(ctrl.widget)
         self.notebook.set_current_page(ctrl_page)
         self.window.present()
-        gobject.idle_add(ctrl.msg_textview.grab_focus)
+        GLib.idle_add(ctrl.msg_textview.grab_focus)
 
     def remove_tab(self, ctrl, method, reason = None, force = False):
         """
@@ -623,7 +625,10 @@ class MessageWindow(object):
             self.notebook.set_show_tabs(show_tabs_if_one_tab)
 
     def redraw_tab(self, ctrl, chatstate = None):
-        hbox = self.notebook.get_tab_label(ctrl.widget).get_children()[0]
+        tab = self.notebook.get_tab_label(ctrl.widget)
+        if not tab:
+            return
+        hbox = tab.get_children()[0]
         status_img = hbox.get_children()[0]
         nick_label = hbox.get_children()[1]
 
@@ -639,12 +644,12 @@ class MessageWindow(object):
         (tab_label_str, tab_label_color) = ctrl.get_tab_label(chatstate)
         nick_label.set_markup(tab_label_str)
         if tab_label_color:
-            nick_label.modify_fg(gtk.STATE_NORMAL, tab_label_color)
-            nick_label.modify_fg(gtk.STATE_ACTIVE, tab_label_color)
+            nick_label.override_color(Gtk.StateFlags.NORMAL, tab_label_color)
+            nick_label.override_color(Gtk.StateFlags.ACTIVE, tab_label_color)
 
         tab_img = ctrl.get_tab_image()
         if tab_img:
-            if tab_img.get_storage_type() == gtk.IMAGE_ANIMATION:
+            if tab_img.get_storage_type() == Gtk.ImageType.ANIMATION:
                 status_img.set_from_animation(tab_img.get_animation())
             else:
                 status_img.set_from_pixbuf(tab_img.get_pixbuf())
@@ -686,17 +691,15 @@ class MessageWindow(object):
         return self.window.is_active()
 
     def get_origin(self):
-        return self.window.window.get_origin()
+        return self.window.get_window().get_origin()
 
     def get_control(self, key, acct):
         """
         Return the MessageControl for jid or n, where n is a notebook page index.
         When key is an int index acct may be None
         """
-        if isinstance(key, str):
-            key = unicode(key, 'utf-8')
 
-        if isinstance(key, unicode):
+        if isinstance(key, str):
             jid = key
             try:
                 return self._controls[acct][jid]
@@ -736,8 +739,8 @@ class MessageWindow(object):
             del gajim.last_message_time[acct][old_jid]
 
     def controls(self):
-        for jid_dict in self._controls.values():
-            for ctrl in jid_dict.values():
+        for jid_dict in list(self._controls.values()):
+            for ctrl in list(jid_dict.values()):
                 yield ctrl
 
     def get_nb_controls(self):
@@ -791,8 +794,9 @@ class MessageWindow(object):
     def popup_menu(self, event):
         menu = self.get_active_control().prepare_context_menu()
         # show the menu
-        menu.popup(None, None, None, event.button, event.time)
+        menu.attach_to_widget(gajim.interface.roster.window, None)
         menu.show_all()
+        menu.popup(None, None, None, None, event.button, event.time)
 
     def _on_notebook_switch_page(self, notebook, page, page_num):
         old_no = notebook.get_current_page()
@@ -811,42 +815,42 @@ class MessageWindow(object):
     def _on_notebook_key_press(self, widget, event):
         # when tab itself is selected,
         # make sure <- and -> are allowed for navigating between tabs
-        if event.keyval in (gtk.keysyms.Left, gtk.keysyms.Right):
+        if event.keyval in (Gdk.KEY_Left, Gdk.KEY_Right):
             return False
 
         control = self.get_active_control()
 
-        if event.state & gtk.gdk.SHIFT_MASK:
+        if event.get_state() & Gdk.ModifierType.SHIFT_MASK:
             # CTRL + SHIFT + TAB
-            if event.state & gtk.gdk.CONTROL_MASK and \
-            event.keyval == gtk.keysyms.ISO_Left_Tab:
+            if event.get_state() & Gdk.ModifierType.CONTROL_MASK and \
+            event.keyval == Gdk.KEY_ISO_Left_Tab:
                 self.move_to_next_unread_tab(False)
                 return True
             # SHIFT + PAGE_[UP|DOWN]: send to conv_textview
-            elif event.keyval in (gtk.keysyms.Page_Down, gtk.keysyms.Page_Up):
-                control.conv_textview.tv.emit('key_press_event', event)
+            elif event.keyval in (Gdk.KEY_Page_Down, Gdk.KEY_Page_Up):
+                control.conv_textview.tv.event(event)
                 return True
-        elif event.state & gtk.gdk.CONTROL_MASK:
-            if event.keyval == gtk.keysyms.Tab: # CTRL + TAB
+        elif event.get_state() & Gdk.ModifierType.CONTROL_MASK:
+            if event.keyval == Gdk.KEY_Tab: # CTRL + TAB
                 self.move_to_next_unread_tab(True)
                 return True
             # Ctrl+PageUP / DOWN has to be handled by notebook
-            elif event.keyval == gtk.keysyms.Page_Down:
+            elif event.keyval == Gdk.KEY_Page_Down:
                 self.move_to_next_unread_tab(True)
                 return True
-            elif event.keyval == gtk.keysyms.Page_Up:
+            elif event.keyval == Gdk.KEY_Page_Up:
                 self.move_to_next_unread_tab(False)
                 return True
-        if event.keyval in (gtk.keysyms.Shift_L, gtk.keysyms.Shift_R,
-        gtk.keysyms.Control_L, gtk.keysyms.Control_R, gtk.keysyms.Caps_Lock,
-        gtk.keysyms.Shift_Lock, gtk.keysyms.Meta_L, gtk.keysyms.Meta_R,
-        gtk.keysyms.Alt_L, gtk.keysyms.Alt_R, gtk.keysyms.Super_L,
-        gtk.keysyms.Super_R, gtk.keysyms.Hyper_L, gtk.keysyms.Hyper_R):
+        if event.keyval in (Gdk.KEY_Shift_L, Gdk.KEY_Shift_R,
+        Gdk.KEY_Control_L, Gdk.KEY_Control_R, Gdk.KEY_Caps_Lock,
+        Gdk.KEY_Shift_Lock, Gdk.KEY_Meta_L, Gdk.KEY_Meta_R,
+        Gdk.KEY_Alt_L, Gdk.KEY_Alt_R, Gdk.KEY_Super_L,
+        Gdk.KEY_Super_R, Gdk.KEY_Hyper_L, Gdk.KEY_Hyper_R):
             return True
 
         if isinstance(control, ChatControlBase):
             # we forwarded it to message textview
-            control.msg_textview.emit('key_press_event', event)
+            control.msg_textview.event(event)
             control.msg_textview.grab_focus()
 
     def get_tab_at_xy(self, x, y):
@@ -856,9 +860,9 @@ class MessageWindow(object):
         """
         page_num = -1
         to_right = False
-        horiz = self.notebook.get_tab_pos() == gtk.POS_TOP or \
-                self.notebook.get_tab_pos() == gtk.POS_BOTTOM
-        for i in xrange(self.notebook.get_n_pages()):
+        horiz = self.notebook.get_tab_pos() == Gtk.PositionType.TOP or \
+                self.notebook.get_tab_pos() == Gtk.PositionType.BOTTOM
+        for i in list(range(self.notebook.get_n_pages())):
             page = self.notebook.get_nth_page(i)
             tab = self.notebook.get_tab_label(page)
             tab_alloc = tab.get_allocation()
@@ -884,7 +888,7 @@ class MessageWindow(object):
         Find the page num of the tab label
         """
         page_num = -1
-        for i in xrange(self.notebook.get_n_pages()):
+        for i in list(range(self.notebook.get_n_pages())):
             page = self.notebook.get_nth_page(i)
             tab = self.notebook.get_tab_label(page)
             if tab == tab_label:
@@ -893,13 +897,13 @@ class MessageWindow(object):
         return page_num
 
 ################################################################################
-class MessageWindowMgr(gobject.GObject):
+class MessageWindowMgr(GObject.GObject):
     """
     A manager and factory for MessageWindow objects
     """
 
     __gsignals__ = {
-            'window-delete': (gobject.SIGNAL_RUN_LAST, None, (object,)),
+            'window-delete': (GObject.SignalFlags.RUN_LAST, None, (object,)),
     }
 
     # These constants map to common.config.opt_one_window_types indices
@@ -924,7 +928,7 @@ class MessageWindowMgr(gobject.GObject):
             ONE_MSG_WINDOW_PERACCT: The key is the account name
             ONE_MSG_WINDOW_PERTYPE: The key is a message type constant
         """
-        gobject.GObject.__init__(self)
+        GObject.GObject.__init__(self)
         self._windows = {}
 
         # Map the mode to a int constant for frequent compares
@@ -985,7 +989,10 @@ class MessageWindowMgr(gobject.GObject):
                 parent_size = win.window.get_size()
                 # Need to add the size of the now visible paned handle, otherwise
                 # the saved width of the message window decreases by this amount
-                handle_size = win.parent_paned.style_get_property('handle-size')
+                s = GObject.Value()
+                s.init(GObject.TYPE_INT)
+                win.parent_paned.style_get_property('handle-size', s)
+                handle_size = s.get_int()
                 size = (parent_size[0] + size[0] + handle_size, size[1])
         elif self.mode == self.ONE_MSG_WINDOW_PERACCT:
             size = (gajim.config.get_per('accounts', acct, 'msgwin-width'),
@@ -1149,7 +1156,7 @@ class MessageWindowMgr(gobject.GObject):
         return ctrls
 
     def windows(self):
-        for w in self._windows.values():
+        for w in list(self._windows.values()):
             yield w
 
     def controls(self):
@@ -1196,7 +1203,7 @@ class MessageWindowMgr(gobject.GObject):
             size_height_key = type_ + '-msgwin-height'
         elif self.mode == self.ONE_MSG_WINDOW_ALWAYS_WITH_ROSTER:
             # Ignore any hpaned width
-            width = msg_win.notebook.allocation.width
+            width = msg_win.notebook.get_allocation().width
 
         if acct:
             gajim.config.set_per('accounts', acct, size_width_key, width)
@@ -1207,8 +1214,8 @@ class MessageWindowMgr(gobject.GObject):
                 gajim.config.set_per('accounts', acct, pos_y_key, y)
 
         else:
-            win_maximized = msg_win.window.window.get_state() == \
-                    gtk.gdk.WINDOW_STATE_MAXIMIZED
+            win_maximized = msg_win.window.get_window().get_state() == \
+                    Gdk.WindowState.MAXIMIZED
             gajim.config.set(max_win_key, win_maximized)
             width += width_adjust
             gajim.config.set(size_width_key, width)
@@ -1236,7 +1243,7 @@ class MessageWindowMgr(gobject.GObject):
             else:
                 # Stash current size so it can be restored if the MessageWindow
                 # is not longer embedded
-                roster_width = w.parent_paned.get_child1().allocation.width
+                roster_width = w.parent_paned.get_position()
                 gajim.config.set('roster_width', roster_width)
 
             while w.notebook.get_n_pages():
diff --git a/src/music_track_listener.py b/src/music_track_listener.py
index ced9268ba..4768f90db 100644
--- a/src/music_track_listener.py
+++ b/src/music_track_listener.py
@@ -23,7 +23,7 @@
 ## along with Gajim. If not, see