diff --git a/src/ui/avatarbd/AvatarBDBlock.java b/src/ui/avatarbd/AvatarBDBlock.java
index 006a5326bc553ea13c279ee4b1a6fd970f9969e5..c0fc938fed0dcec3d0db025d6bee7854c29ba937 100644
--- a/src/ui/avatarbd/AvatarBDBlock.java
+++ b/src/ui/avatarbd/AvatarBDBlock.java
@@ -801,6 +801,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
             boolean implementation = false;
             String crypt;
 	    String attached;
+	    boolean mustAddCryptoFunctions = false;
 
 
             //System.out.println("Loading attributes");
@@ -861,14 +862,18 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
                                     implementation = false;
                                 }
 
-                                if (method.startsWith("aencrypt(")) {
+				//TraceManager.addDev("Method = " + method + ". Starting with aencrypt?");
+                                if (method.startsWith("bool verifyMAC(")) {
                                     isCryptoBlock = true;
+				    //TraceManager.addDev("Add crypto methods");
+				    //addCryptoElements();
                                 }
 
                                 am = AvatarMethod.isAValidMethod(method);
                                 if (am != null) {
                                     //TraceManager.addDev("Setting to " + implementation + " the implementation of " + am);
                                     am.setImplementationProvided(implementation);
+				    //addMethodIfApplicable(am);
                                     this.myMethods.add(am);
                                 }
                             }
@@ -907,6 +912,10 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
             throw new MalformedModelingException();
         }
 
+	if (isCryptoBlock()) {
+	    addCryptoElements();
+	}
+
         if (tmpGlobalCode.trim().length() == 0) {
             globalCode = null;
         } else {
diff --git a/src/ui/window/JDialogAvatarBlock.java b/src/ui/window/JDialogAvatarBlock.java
index bac920055b1c7c4cfdc7416c15620354858368c5..c26b6d5ffc184351005f9a72a974906e7e9f9529 100755
--- a/src/ui/window/JDialogAvatarBlock.java
+++ b/src/ui/window/JDialogAvatarBlock.java
@@ -748,11 +748,11 @@ public class JDialogAvatarBlock extends javax.swing.JDialog implements ActionLis
         //TraceManager.addDev("addMethod");
         String s = methodText.getText();
         AvatarMethod am = AvatarMethod.isAValidMethod(s);
-        
+
         AvatarMethod amtmp;
 
         if (am != null) {
-	    am.setImplementationProvided(implementationProvided.isSelected());
+            am.setImplementationProvided(implementationProvided.isSelected());
 
             // Checks whether the same method already belongs to the list
             int index = -1;
@@ -984,7 +984,7 @@ public class JDialogAvatarBlock extends javax.swing.JDialog implements ActionLis
         } else {
             AvatarMethod am = methods.get (i);
             methodText.setText(am.toString());
-            TraceManager.addDev("Implementation of " + am + " is: " +  am.isImplementationProvided());
+            //TraceManager.addDev("Implementation of " + am + " is: " +  am.isImplementationProvided());
             implementationProvided.setSelected(am.isImplementationProvided());
             removeMethodButton.setEnabled(true);
             if (i > 0) {