From 652e0406afe29d53423059561d1d4f8672001fcf Mon Sep 17 00:00:00 2001
From: dblouin <dominique.blouin@telecom-paristech.fr>
Date: Fri, 27 Jul 2018 15:57:45 +0200
Subject: [PATCH] Code cleanup

---
 .../proverifspec/ProVerifResultTrace.java     |   4 +-
 .../java/ui/AttackTreePanelTranslator.java    |   8 +-
 src/main/java/ui/AvatarDesignPanel.java       |  74 +-
 .../java/ui/AvatarDesignPanelTranslator.java  | 913 +++++++++---------
 src/main/java/ui/DesignPanelTranslator.java   |  24 +-
 src/main/java/ui/GTURTLEModeling.java         |  30 +-
 src/main/java/ui/MainGUI.java                 |  25 +-
 src/main/java/ui/TGComponent.java             |  15 +-
 src/main/java/ui/avatarbd/AvatarBDBlock.java  |  95 +-
 src/main/java/ui/avatarbd/AvatarBDPanel.java  | 171 ++--
 .../avatarbd/AvatarBDPerformancePragma.java   |  21 +-
 src/main/java/ui/avatarbd/AvatarBDPragma.java |   1 +
 .../avatarbd/AvatarBDStateMachineOwner.java   |  20 +-
 .../java/ui/avatarsmd/AvatarSMDConnector.java |   1 -
 .../ui/avatarsmd/AvatarSMDExpireTimer.java    |  35 +-
 .../ui/avatarsmd/AvatarSMDReceiveSignal.java  |  53 +-
 .../ui/avatarsmd/AvatarSMDResetTimer.java     |  43 +-
 .../ui/avatarsmd/AvatarSMDSendSignal.java     |  52 +-
 .../java/ui/avatarsmd/AvatarSMDSetTimer.java  |  36 +-
 .../ui/avatarsmd/AvatarSMDTransitionInfo.java |  14 +-
 .../java/ui/window/JDialogAvatarBlock.java    |  21 +-
 .../java/ui/window/JDialogAvatarSignal.java   |  31 +-
 .../java/ui/window/JDialogAvatarTimer.java    |  42 +-
 .../ui/window/JDialogAvatarTransition.java    |  38 +-
 .../java/ui/window/JDialogModelChecking.java  |  25 +-
 .../ui/window/JDialogPerformancePragma.java   |  22 +-
 src/main/java/ui/window/JDialogPragma.java    |  27 +-
 .../java/ui/window/JDialogSafetyPragma.java   |  27 +-
 .../ui/window/JDialogSelectAvatarBlock.java   |  26 +-
 .../ui/window/JDialogSignalAssociation.java   |  55 +-
 30 files changed, 1045 insertions(+), 904 deletions(-)

diff --git a/src/main/java/proverifspec/ProVerifResultTrace.java b/src/main/java/proverifspec/ProVerifResultTrace.java
index 1dbf4c6c64..80cc8c1284 100644
--- a/src/main/java/proverifspec/ProVerifResultTrace.java
+++ b/src/main/java/proverifspec/ProVerifResultTrace.java
@@ -191,7 +191,7 @@ public class ProVerifResultTrace {
         }
     }
 
-    public ProVerifResultTrace(LinkedList<String> proverifProcess)
+    public ProVerifResultTrace(List<String> proverifProcess)
     {
         this.proverifProcess = proverifProcess;
         this.trace = new LinkedList<ProVerifResultTraceStep> ();
@@ -271,7 +271,7 @@ public class ProVerifResultTrace {
                     else
                     {
                         // TODO: is it possible that subtype is itself composed ?
-                        LinkedList<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(attr.getTypeOther());
+                        List<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(attr.getTypeOther());
                         if (types.size() > 1)
                             attrPart = attrName[0] + "." + attrName[1];
                         else
diff --git a/src/main/java/ui/AttackTreePanelTranslator.java b/src/main/java/ui/AttackTreePanelTranslator.java
index cd1642f894..b9de2310ee 100644
--- a/src/main/java/ui/AttackTreePanelTranslator.java
+++ b/src/main/java/ui/AttackTreePanelTranslator.java
@@ -57,10 +57,10 @@ public class AttackTreePanelTranslator {
 
     protected AttackTree at;
     protected AttackTreePanel atp;
-    protected LinkedList<CheckingError> checkingErrors, warnings;
+    protected List<CheckingError> checkingErrors, warnings;
     protected CorrespondanceTGElement listE; // usual list
     //protected CorrespondanceTGElement listB; // list for particular element -> first element of group of blocks
-    protected LinkedList<TDiagramPanel> panels;
+    protected List<TDiagramPanel> panels;
 
 
     public AttackTreePanelTranslator(AttackTreePanel _atp) {
@@ -75,11 +75,11 @@ public class AttackTreePanelTranslator {
         panels = new LinkedList<TDiagramPanel>();
     }
 
-    public LinkedList<CheckingError> getCheckingErrors() {
+    public List<CheckingError> getCheckingErrors() {
         return checkingErrors;
     }
 
-    public LinkedList<CheckingError> getWarnings() {
+    public List<CheckingError> getWarnings() {
         return warnings;
     }
 
diff --git a/src/main/java/ui/AvatarDesignPanel.java b/src/main/java/ui/AvatarDesignPanel.java
index bda2bf683f..dbf621edbb 100644
--- a/src/main/java/ui/AvatarDesignPanel.java
+++ b/src/main/java/ui/AvatarDesignPanel.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
 import avatartranslator.AvatarAttribute;
@@ -65,8 +62,12 @@ import javax.swing.*;
 import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
 import java.awt.*;
-import java.util.*;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedList;
 import java.util.List;
+import java.util.Map;
+import java.util.Vector;
 
 /**
    * Class AvatarDesignPanel
@@ -77,8 +78,8 @@ import java.util.List;
    * @see MainGUI
  */
 public class AvatarDesignPanel extends TURTLEPanel {
-    public AvatarBDPanel abdp;
-
+    
+	public AvatarBDPanel abdp;
 
     public AvatarDesignPanel(MainGUI _mgui) {
         super(_mgui);
@@ -103,13 +104,13 @@ public class AvatarDesignPanel extends TURTLEPanel {
     }
 
 
-    public void setValidated(LinkedList<AvatarBDStateMachineOwner> _validated) {
+    public void setValidated( List<AvatarBDStateMachineOwner> _validated) {
         if (abdp != null) {
             abdp.setValidated(_validated);
         }
     }
 
-    public void setIgnored(LinkedList<AvatarBDStateMachineOwner> _ignored) {
+    public void setIgnored( List<AvatarBDStateMachineOwner> _ignored) {
         if (abdp != null) {
             abdp.setIgnored(_ignored);
         }
@@ -121,14 +122,14 @@ public class AvatarDesignPanel extends TURTLEPanel {
         }
     }
 
-    public LinkedList<AvatarBDStateMachineOwner> getValidated() {
+    public List<AvatarBDStateMachineOwner> getValidated() {
         if (abdp != null) {
             return abdp.getValidated();
         }
         return null;
     }
 
-    public LinkedList<AvatarBDStateMachineOwner> getIgnored() {
+    public List<AvatarBDStateMachineOwner> getIgnored() {
         if (abdp != null) {
             return abdp.getIgnored();
         }
@@ -179,6 +180,7 @@ public class AvatarDesignPanel extends TURTLEPanel {
         return;
     }
 
+    @Override
     public void init() {
 
         //  Class Diagram toolbar
@@ -209,37 +211,41 @@ public class AvatarDesignPanel extends TURTLEPanel {
 
     }
 
-    public LinkedList<AvatarBDLibraryFunction> getAllLibraryFunctions(String _name) {
+    public List<AvatarBDLibraryFunction> getAllLibraryFunctions(String _name) {
         return abdp.getAllLibraryFunctionsForBlock (_name);
     }
 
-    public LinkedList<TAttribute> getAllAttributes(String _name) {
+    public List<TAttribute> getAllAttributes(String _name) {
         return abdp.getAllAttributesOfBlock(_name);
     }
 
-    public LinkedList<AvatarMethod> getAllMethods(String _name) {
+    public List<AvatarMethod> getAllMethods(String _name) {
         return abdp.getAllMethodsOfBlock(_name);
     }
 
-    public LinkedList<AvatarSignal> getAllSignals(String _name) {
+    public List<AvatarSignal> getAllSignals(String _name) {
         return abdp.getAllSignalsOfBlock(_name);
     }
 
-    public LinkedList<String> getAllTimers(String _name) {
+    public List<String> getAllTimers(String _name) {
         return abdp.getAllTimersOfBlock(_name);
     }
     
+    @Override
     public String saveHeaderInXml(String extensionToName) {
-	if (extensionToName == null) {
-	    return "<Modeling type=\"AVATAR Design\" nameTab=\"" + mgui.getTabName(this) + "\" >\n";
-	}
-	return "<Modeling type=\"AVATAR Design\" nameTab=\"" + mgui.getTabName(this) + extensionToName + "\" >\n";
+		if (extensionToName == null) {
+		    return "<Modeling type=\"AVATAR Design\" nameTab=\"" + mgui.getTabName(this) + "\" >\n";
+		}
+
+		return "<Modeling type=\"AVATAR Design\" nameTab=\"" + mgui.getTabName(this) + extensionToName + "\" >\n";
     }
 
+    @Override
     public String saveTailInXml() {
         return "</Modeling>\n\n\n";
     }
 
+    @Override
     public String toString() {
         return mgui.getTitleAt(this) + " (Design)";
     }
@@ -260,13 +266,11 @@ public class AvatarDesignPanel extends TURTLEPanel {
 
     }
 
-
-
-    public LinkedList<TGComponent> getListOfComponentsInMutex() {
+    public List<TGComponent> getListOfComponentsInMutex() {
         TGComponent tgc;
         TDiagramPanel tdp;
 
-        LinkedList<TGComponent> list = new LinkedList<TGComponent>();
+        List<TGComponent> list = new LinkedList<TGComponent>();
 
         for(int i=0; i<panels.size(); i++) {
             tdp = panels.get(i);
@@ -337,8 +341,8 @@ public class AvatarDesignPanel extends TURTLEPanel {
 
     }
 
-    public LinkedList<String> getPropertyPragmas() {
-        LinkedList<String> result = new LinkedList<String> ();
+    public List<String> getPropertyPragmas() {
+        List<String> result = new LinkedList<String> ();
         for (Object tgc: abdp.getComponentList()) {
             if (tgc instanceof AvatarBDPragma) {
                 result.addAll(((AvatarBDPragma) tgc).getProperties());
@@ -348,8 +352,8 @@ public class AvatarDesignPanel extends TURTLEPanel {
         return result;
     }
 
-    public LinkedList<String> getModelPragmas() {
-        LinkedList<String> result = new LinkedList<String> ();
+    public List<String> getModelPragmas() {
+        List<String> result = new LinkedList<String> ();
         for (Object tgc: abdp.getComponentList()) {
             if (tgc instanceof AvatarBDPragma) {
                 result.addAll(((AvatarBDPragma) tgc).getModels());
@@ -359,7 +363,6 @@ public class AvatarDesignPanel extends TURTLEPanel {
         return result;
     }
 
-
     public void resetModelBacktracingProVerif() {
         if (abdp == null) {
             return;
@@ -445,7 +448,6 @@ public class AvatarDesignPanel extends TURTLEPanel {
 		}
 	}
 
-
     public void modelBacktracingProVerif(ProVerifOutputAnalyzer pvoa) {
 
         if (abdp == null) {
@@ -456,8 +458,8 @@ public class AvatarDesignPanel extends TURTLEPanel {
 
         // Confidential attributes
         Map<AvatarPragmaSecret, ProVerifQueryResult> confResults = pvoa.getConfidentialityResults();
-        HashMap<AvatarAttribute, AvatarPragma> secretAttributes = new HashMap<AvatarAttribute, AvatarPragma> ();
-        HashMap<AvatarAttribute, AvatarPragma> nonSecretAttributes = new HashMap<AvatarAttribute, AvatarPragma> ();
+        Map<AvatarAttribute, AvatarPragma> secretAttributes = new HashMap<AvatarAttribute, AvatarPragma> ();
+        Map<AvatarAttribute, AvatarPragma> nonSecretAttributes = new HashMap<AvatarAttribute, AvatarPragma> ();
         for (AvatarPragmaSecret pragma: confResults.keySet())
         {
             ProVerifQueryResult result = confResults.get(pragma);
@@ -473,7 +475,7 @@ public class AvatarDesignPanel extends TURTLEPanel {
         for (AvatarBDBlock bdBlock: abdp.getFullBlockList ())
             for (TAttribute tattr: bdBlock.getAttributeList ()) {
                 if (tattr.getType () == TAttribute.OTHER) {
-                    LinkedList<TAttribute> types = abdp.getAttributesOfDataType (tattr.getTypeOther ());
+                    List<TAttribute> types = abdp.getAttributesOfDataType (tattr.getTypeOther ());
                     int toBeFound = types.size ();
                     boolean ko = false;
                     for (TAttribute type: types) {
@@ -584,7 +586,7 @@ public class AvatarDesignPanel extends TURTLEPanel {
                             if (! tattrA.getTypeOther ().equals (tattrB.getTypeOther ()))
                                 continue;
 
-                            LinkedList<TAttribute> types = abdp.getAttributesOfDataType (tattrA.getTypeOther ());
+                            List<TAttribute> types = abdp.getAttributesOfDataType (tattrA.getTypeOther ());
                             int toBeFound = types.size ();
                             boolean ko = false;
                             boolean weakKo = false;
@@ -711,13 +713,11 @@ public class AvatarDesignPanel extends TURTLEPanel {
             }
     }
 
-    public ArrayList<String> getAllNonMappedAvatarBlockNames(String _name, ADDDiagramPanel _tadp, boolean ref, String name) {
+    public List<String> getAllNonMappedAvatarBlockNames(String _name, ADDDiagramPanel _tadp, boolean ref, String name) {
         return abdp.getAllNonMappedAvatarBlockNames(_name, _tadp, ref, name);
     }
 
-    public ArrayList<String> getAllNonMappedAvatarChannelNames(String _name, ADDDiagramPanel _tadp, boolean ref, String name) {
+    public List<String> getAllNonMappedAvatarChannelNames(String _name, ADDDiagramPanel _tadp, boolean ref, String name) {
         return abdp.getAllNonMappedAvatarChannelNames(_name, _tadp);
     }
-
-
 }
diff --git a/src/main/java/ui/AvatarDesignPanelTranslator.java b/src/main/java/ui/AvatarDesignPanelTranslator.java
index a0dc17705e..a0bab6e8d3 100644
--- a/src/main/java/ui/AvatarDesignPanelTranslator.java
+++ b/src/main/java/ui/AvatarDesignPanelTranslator.java
@@ -36,9 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui;
 
 import avatartranslator.*;
@@ -57,24 +54,24 @@ import java.util.*;
  */
 public class AvatarDesignPanelTranslator {
 
-    protected AvatarDesignPanel adp;
-    protected List<CheckingError> checkingErrors, warnings;
-    protected CorrespondanceTGElement listE; // usual list
+    private final AvatarDesignPanel adp;
+    private final List<CheckingError> checkingErrors, warnings;
+    private final CorrespondanceTGElement listE; // usual list
     //protected CorrespondanceTGElement listB; // list for particular element -> first element of group of blocks
-    protected List <TDiagramPanel> panels;
-    protected Map<String, List<TAttribute>> typeAttributesMap;
-    protected Map<String, String> nameTypeMap;
+    //protected List <TDiagramPanel> panels;
+    private Map<String, List<TAttribute>> typeAttributesMap;
+    private Map<String, String> nameTypeMap;
     
     public AvatarDesignPanelTranslator(AvatarDesignPanel _adp) {
         adp = _adp;
-        reinit();
-    }
+     //   reinit();
+   // }
 
-    public void reinit() {
+    //public void reinit() {
         checkingErrors = new LinkedList<CheckingError> ();
         warnings = new LinkedList<CheckingError> ();
         listE = new CorrespondanceTGElement();
-        panels = new LinkedList <TDiagramPanel>();
+        //panels = new LinkedList <TDiagramPanel>();
     }
 
     public List<CheckingError> getErrors() {
@@ -130,19 +127,21 @@ public class AvatarDesignPanelTranslator {
     public class ErrorAccumulator extends avatartranslator.ErrorAccumulator {
         private TGComponent tgc;
         private TDiagramPanel tdp;
-        private AvatarBlock ab;
+       // private AvatarBlock ab;
 
-        public ErrorAccumulator (TGComponent tgc, TDiagramPanel tdp, AvatarBlock ab) {
-            this.tgc = tgc;
-            this.tdp = tdp;
-            this.ab = ab;
-        }
+//        public ErrorAccumulator (TGComponent tgc, TDiagramPanel tdp, AvatarBlock ab) {
+//            this.tgc = tgc;
+//            this.tdp = tdp;
+//            this.ab = ab;
+//        }
 
         public ErrorAccumulator (TGComponent tgc, TDiagramPanel tdp) {
-            this (tgc, tdp, null);
+        	this.tgc = tgc;
+        	this.tdp = tdp;
+//            this (tgc, tdp, null);
         }
 
-        public CheckingError createError (String msg) {
+        public CheckingError createError(String msg) {
             UICheckingError ce = new UICheckingError (CheckingError.BEHAVIOR_ERROR, msg);
             ce.setTGComponent (this.tgc);
             ce.setTDiagramPanel (this.tdp);
@@ -167,7 +166,7 @@ public class AvatarDesignPanelTranslator {
         }
     }
 
-    public void createPragmas(AvatarSpecification _as, List<AvatarBDBlock> _blocks) {
+    private void createPragmas(AvatarSpecification _as, List<AvatarBDBlock> _blocks) {
         Iterator<TGComponent> iterator = adp.getAvatarBDPanel().getComponentList().listIterator();
         TGComponent tgc;
         AvatarBDPragma tgcn;
@@ -240,7 +239,7 @@ public class AvatarDesignPanelTranslator {
         }
     }
 	
-	public AvatarPragmaLatency checkPerformancePragma(String _pragma, List<AvatarBDBlock> _blocks, AvatarSpecification as, TGComponent tgc){	
+    public AvatarPragmaLatency checkPerformancePragma(String _pragma, List<AvatarBDBlock> _blocks, AvatarSpecification as, TGComponent tgc){	
 		if (_pragma.contains("=") || (!_pragma.contains(">") && !_pragma.contains("<") && !_pragma.contains("?")) || !_pragma.contains("Latency(")){
 			UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "No latency expression found in pragma "+ _pragma);
 		   	ce.setTDiagramPanel(adp.getAvatarBDPanel());
@@ -416,7 +415,8 @@ public class AvatarDesignPanelTranslator {
 
 
 	}
-    public boolean checkSafetyPragma(String _pragma, List<AvatarBDBlock> _blocks, AvatarSpecification as, TGComponent tgc){
+	
+	private boolean checkSafetyPragma(String _pragma, List<AvatarBDBlock> _blocks, AvatarSpecification as, TGComponent tgc){
         //Todo: check types
         //Todo: handle complex types
         _pragma = _pragma.trim();
@@ -466,7 +466,8 @@ public class AvatarDesignPanelTranslator {
         }
         return true;
     }
-    public boolean statementParser(String state, AvatarSpecification as, String _pragma, TGComponent tgc){
+    
+    private boolean statementParser(String state, AvatarSpecification as, String _pragma, TGComponent tgc){
         //check the syntax of a single statement
        
 
@@ -659,243 +660,243 @@ public class AvatarDesignPanelTranslator {
         }
         return true;
     }
-    public String reworkPragma(String _pragma, LinkedList<AvatarBDBlock> _blocks) {
-        String ret = "";
-        int i;
-
-        // Identify first keyword
-        _pragma = _pragma.trim();
-
-        int index = _pragma.indexOf(" ");
-
-        if (index == -1) {
-            return null;
-        }
-
-        String header = _pragma.substring(0, index).trim();
-
-        for(i=0; i<AvatarPragma.PRAGMAS.length; i++) {
-            if (header.compareTo(AvatarPragma.PRAGMAS[i]) == 0) {
-                break;
-            }
-        }
-
-        // Invalid header?
-        if (i == AvatarPragma.PRAGMAS.length) {
-            TraceManager.addDev("Invalid Pragma " + 0);
-            return null;
-        }
-
-
-
-        ret = AvatarPragma.PRAGMAS_TRANSLATION[i] + " ";
-
-        // Checking for arguments
-
-
-        boolean b = ret.startsWith("Authenticity ");
-        boolean b1 = ret.startsWith("PrivatePublicKeys ");
-        String arguments [] = _pragma.substring(index+1, _pragma.length()).trim().split(" ");
-        String tmp;
-        String blockName, stateName, paramName = "";
-        boolean found = false;
-        LinkedList<TAttribute> types;
-        AvatarBDBlock block;
-        TAttribute ta;
-     //   AvatarBlock ab;
-        String myBlockName = "";
-
-
-
-
-        for(i=0; i<arguments.length; i++) {
-            tmp = arguments[i];
-            TraceManager.addDev("arguments #=" + arguments.length + " pragma=" + _pragma + " tmp=" + tmp);
-
-            if (b1) {
-
-                // Private Public keys?
-                if (i == 0) {
-                    // Must be a block name
-                    // Look for at least a block
-                    found = false;
-                    for(Object o: _blocks) {
-                        block = (AvatarBDBlock)o;
-                        //TraceManager.addDev("Comparing " + block.getBlockName() + " with " + tmp);
-                        if (block.getBlockName().compareTo(tmp) ==0) {
-                            myBlockName = block.getBlockName();
-                            found = true;
-                            ret = ret + tmp;
-                            break;
-                        }
-                        /*for(Object oo: block.getAttributeList()) {
-                          ta = (TAttribute)oo;
-                          if (ta.getId().compareTo(tmp) == 0) {
-                          found = true;
-
-                          if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) {
-                          ret = ret  + tmp + " ";
-                          } else if (ta.getType() == TAttribute.OTHER) {
-                          // Must find all subsequent types
-                          types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther());
-                          if (types == null) {
-                          TraceManager.addDev("Invalid Pragma " + 1);
-                          return null;
-
-                          } else {
-                          for(int j=0; j<types.size(); j++) {
-                          ret = ret + tmp + "__" + ((TAttribute)(types.elementAt(j))).getId() + " ";
-                          }
-                          }
-                          }
-
-                          }
-                          }*/
-                    }
-                    if (found == false) {
-                        TraceManager.addDev("Invalid Pragma " + 2);
-                        return null;
-                    }
-
-                } else if ((i == 1) || (i == 2)) {
-                    // Shall be an attribute
-                    TraceManager.addDev("i= " + i);
-                    for(Object o: _blocks) {
-                        block = (AvatarBDBlock)o;
-                        TraceManager.addDev("block= " + block.getBlockName() + " my block name=" + myBlockName);
-                        if (block.getBlockName().compareTo(myBlockName) == 0) {
-                            TraceManager.addDev("Found the block " + ret);
-                            for(Object oo: block.getAttributeList()) {
-                                ta = (TAttribute)oo;
-                                TraceManager.addDev("Attribute: " + ta.getId());
-                                if (ta.getId().compareTo(tmp) == 0) {
-                                    paramName = ta.getId();
-                                    found = true;
-                                    TraceManager.addDev("Pragma " + ret + " found=" + found);
-                                    if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) {
-                                        ret = ret  + " " + paramName + " ";
-                                    } else if (ta.getType() == TAttribute.OTHER) {
-                                        // Must find all subsequent types
-                                        types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther());
-                                        if (types == null) {
-                                            TraceManager.addDev("Invalid Pragma " + 3);
-                                            return null;
-                                        } else {
-                                            TraceManager.addDev("Pragma " + ret + " types size=" + types.size());
-                                            for (TAttribute type: types)
-                                                ret = ret  + " " + paramName + "__" + type.getId() + " ";
-                                        }
-
-                                    } else {
-                                        TraceManager.addDev("Invalid Pragma " + 4);
-                                        return null;
-                                    }
-
-                                    break;
-                                }
-                            }
-                        }
-                    }
-                } else {
-                    // Badly formatted
-                    TraceManager.addDev("Invalid Pragma " + 5);
-                    return null;
-                }
-
-                // Other than PrivatePublicKeys
-            } else {
-                index = tmp.indexOf(".");
-                if (index == -1) {
-                    return null;
-                }
-                blockName = tmp.substring(0, index);
-
-                //TraceManager.addDev("blockName=" + blockName);
-                // Search for the block
-                for(Object o: _blocks) {
-                    block = (AvatarBDBlock)o;
-                    if (block.getBlockName().compareTo(blockName) == 0) {
-
-                        if (b) {
-                            // Authenticity
-                            stateName = tmp.substring(index+1, tmp.length());
-                            //TraceManager.addDev("stateName=" + stateName);
-                            index = stateName.indexOf(".");
-                            if (index == -1) {
-                                return null;
-                            }
-                            paramName = stateName.substring(index+1, stateName.length());
-                            stateName = stateName.substring(0, index);
-
-                            for(Object oo: block.getAttributeList()) {
-                                ta = (TAttribute)oo;
-                                if (ta.getId().compareTo(paramName) == 0) {
-                                    found = true;
-
-                                    if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) {
-                                        ret = ret + blockName + "." + stateName + "." + paramName + " ";
-                                    } else if (ta.getType() == TAttribute.OTHER) {
-                                        // Must find all subsequent types
-                                        types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther());
-                                        if (types == null) {
-                                            return null;
-                                        } else {
-                                            for (TAttribute type: types)
-                                                ret = ret + blockName + "." + stateName + "." + paramName + "__" + type.getId() + " ";
-                                        }
-
-                                    } else {
-                                        return null;
-                                    }
-
-                                    break;
-                                }
-                            }
-
-                        } else {
-                            // Other: confidentiality, initial system knowledge, initial session knowledge, constant
-
-                            paramName = tmp.substring(index+1, tmp.length());
-                            for(Object oo: block.getAttributeList()) {
-                                ta = (TAttribute)oo;
-                                if (ta.getId().compareTo(paramName) == 0) {
-                                    found = true;
-
-                                    if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) {
-                                        ret = ret + blockName + "." + paramName + " ";
-                                    } else if (ta.getType() == TAttribute.OTHER) {
-                                        // Must find all subsequent types
-                                        types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther());
-                                        if (types == null) {
-                                            return null;
-                                        } else {
-                                            for (TAttribute type: types)
-                                                ret = ret + blockName + "." + paramName + "__" + type.getId() + " ";
-                                        }
-
-                                    } else {
-                                        return null;
-                                    }
-
-                                    break;
-                                }
-                            }
-
-                        }
-                    }
-                }
-            }
-
-            if (!found) {
-                return null;
-            }
-
-        }
-
-        TraceManager.addDev("Reworked pragma: " + ret);
-
-        return ret.trim();
-    }
+//    public String reworkPragma(String _pragma, LinkedList<AvatarBDBlock> _blocks) {
+//        String ret = "";
+//        int i;
+//
+//        // Identify first keyword
+//        _pragma = _pragma.trim();
+//
+//        int index = _pragma.indexOf(" ");
+//
+//        if (index == -1) {
+//            return null;
+//        }
+//
+//        String header = _pragma.substring(0, index).trim();
+//
+//        for(i=0; i<AvatarPragma.PRAGMAS.length; i++) {
+//            if (header.compareTo(AvatarPragma.PRAGMAS[i]) == 0) {
+//                break;
+//            }
+//        }
+//
+//        // Invalid header?
+//        if (i == AvatarPragma.PRAGMAS.length) {
+//            TraceManager.addDev("Invalid Pragma " + 0);
+//            return null;
+//        }
+//
+//
+//
+//        ret = AvatarPragma.PRAGMAS_TRANSLATION[i] + " ";
+//
+//        // Checking for arguments
+//
+//
+//        boolean b = ret.startsWith("Authenticity ");
+//        boolean b1 = ret.startsWith("PrivatePublicKeys ");
+//        String arguments [] = _pragma.substring(index+1, _pragma.length()).trim().split(" ");
+//        String tmp;
+//        String blockName, stateName, paramName = "";
+//        boolean found = false;
+//        LinkedList<TAttribute> types;
+//        AvatarBDBlock block;
+//        TAttribute ta;
+//     //   AvatarBlock ab;
+//        String myBlockName = "";
+//
+//
+//
+//
+//        for(i=0; i<arguments.length; i++) {
+//            tmp = arguments[i];
+//            TraceManager.addDev("arguments #=" + arguments.length + " pragma=" + _pragma + " tmp=" + tmp);
+//
+//            if (b1) {
+//
+//                // Private Public keys?
+//                if (i == 0) {
+//                    // Must be a block name
+//                    // Look for at least a block
+//                    found = false;
+//                    for(Object o: _blocks) {
+//                        block = (AvatarBDBlock)o;
+//                        //TraceManager.addDev("Comparing " + block.getBlockName() + " with " + tmp);
+//                        if (block.getBlockName().compareTo(tmp) ==0) {
+//                            myBlockName = block.getBlockName();
+//                            found = true;
+//                            ret = ret + tmp;
+//                            break;
+//                        }
+//                        /*for(Object oo: block.getAttributeList()) {
+//                          ta = (TAttribute)oo;
+//                          if (ta.getId().compareTo(tmp) == 0) {
+//                          found = true;
+//
+//                          if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) {
+//                          ret = ret  + tmp + " ";
+//                          } else if (ta.getType() == TAttribute.OTHER) {
+//                          // Must find all subsequent types
+//                          types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther());
+//                          if (types == null) {
+//                          TraceManager.addDev("Invalid Pragma " + 1);
+//                          return null;
+//
+//                          } else {
+//                          for(int j=0; j<types.size(); j++) {
+//                          ret = ret + tmp + "__" + ((TAttribute)(types.elementAt(j))).getId() + " ";
+//                          }
+//                          }
+//                          }
+//
+//                          }
+//                          }*/
+//                    }
+//                    if (found == false) {
+//                        TraceManager.addDev("Invalid Pragma " + 2);
+//                        return null;
+//                    }
+//
+//                } else if ((i == 1) || (i == 2)) {
+//                    // Shall be an attribute
+//                    TraceManager.addDev("i= " + i);
+//                    for(Object o: _blocks) {
+//                        block = (AvatarBDBlock)o;
+//                        TraceManager.addDev("block= " + block.getBlockName() + " my block name=" + myBlockName);
+//                        if (block.getBlockName().compareTo(myBlockName) == 0) {
+//                            TraceManager.addDev("Found the block " + ret);
+//                            for(Object oo: block.getAttributeList()) {
+//                                ta = (TAttribute)oo;
+//                                TraceManager.addDev("Attribute: " + ta.getId());
+//                                if (ta.getId().compareTo(tmp) == 0) {
+//                                    paramName = ta.getId();
+//                                    found = true;
+//                                    TraceManager.addDev("Pragma " + ret + " found=" + found);
+//                                    if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) {
+//                                        ret = ret  + " " + paramName + " ";
+//                                    } else if (ta.getType() == TAttribute.OTHER) {
+//                                        // Must find all subsequent types
+//                                        types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther());
+//                                        if (types == null) {
+//                                            TraceManager.addDev("Invalid Pragma " + 3);
+//                                            return null;
+//                                        } else {
+//                                            TraceManager.addDev("Pragma " + ret + " types size=" + types.size());
+//                                            for (TAttribute type: types)
+//                                                ret = ret  + " " + paramName + "__" + type.getId() + " ";
+//                                        }
+//
+//                                    } else {
+//                                        TraceManager.addDev("Invalid Pragma " + 4);
+//                                        return null;
+//                                    }
+//
+//                                    break;
+//                                }
+//                            }
+//                        }
+//                    }
+//                } else {
+//                    // Badly formatted
+//                    TraceManager.addDev("Invalid Pragma " + 5);
+//                    return null;
+//                }
+//
+//                // Other than PrivatePublicKeys
+//            } else {
+//                index = tmp.indexOf(".");
+//                if (index == -1) {
+//                    return null;
+//                }
+//                blockName = tmp.substring(0, index);
+//
+//                //TraceManager.addDev("blockName=" + blockName);
+//                // Search for the block
+//                for(Object o: _blocks) {
+//                    block = (AvatarBDBlock)o;
+//                    if (block.getBlockName().compareTo(blockName) == 0) {
+//
+//                        if (b) {
+//                            // Authenticity
+//                            stateName = tmp.substring(index+1, tmp.length());
+//                            //TraceManager.addDev("stateName=" + stateName);
+//                            index = stateName.indexOf(".");
+//                            if (index == -1) {
+//                                return null;
+//                            }
+//                            paramName = stateName.substring(index+1, stateName.length());
+//                            stateName = stateName.substring(0, index);
+//
+//                            for(Object oo: block.getAttributeList()) {
+//                                ta = (TAttribute)oo;
+//                                if (ta.getId().compareTo(paramName) == 0) {
+//                                    found = true;
+//
+//                                    if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) {
+//                                        ret = ret + blockName + "." + stateName + "." + paramName + " ";
+//                                    } else if (ta.getType() == TAttribute.OTHER) {
+//                                        // Must find all subsequent types
+//                                        types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther());
+//                                        if (types == null) {
+//                                            return null;
+//                                        } else {
+//                                            for (TAttribute type: types)
+//                                                ret = ret + blockName + "." + stateName + "." + paramName + "__" + type.getId() + " ";
+//                                        }
+//
+//                                    } else {
+//                                        return null;
+//                                    }
+//
+//                                    break;
+//                                }
+//                            }
+//
+//                        } else {
+//                            // Other: confidentiality, initial system knowledge, initial session knowledge, constant
+//
+//                            paramName = tmp.substring(index+1, tmp.length());
+//                            for(Object oo: block.getAttributeList()) {
+//                                ta = (TAttribute)oo;
+//                                if (ta.getId().compareTo(paramName) == 0) {
+//                                    found = true;
+//
+//                                    if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) {
+//                                        ret = ret + blockName + "." + paramName + " ";
+//                                    } else if (ta.getType() == TAttribute.OTHER) {
+//                                        // Must find all subsequent types
+//                                        types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther());
+//                                        if (types == null) {
+//                                            return null;
+//                                        } else {
+//                                            for (TAttribute type: types)
+//                                                ret = ret + blockName + "." + paramName + "__" + type.getId() + " ";
+//                                        }
+//
+//                                    } else {
+//                                        return null;
+//                                    }
+//
+//                                    break;
+//                                }
+//                            }
+//
+//                        }
+//                    }
+//                }
+//            }
+//
+//            if (!found) {
+//                return null;
+//            }
+//
+//        }
+//
+//        TraceManager.addDev("Reworked pragma: " + ret);
+//
+//        return ret.trim();
+//    }
 
     private AvatarAttribute createRegularAttribute (AvatarStateMachineOwner _ab, TAttribute _a, String _preName) {
         AvatarType type = AvatarType.UNDEFINED;
@@ -914,11 +915,11 @@ public class AvatarDesignPanelTranslator {
         return aa;
     }
 
-    public void addRegularAttribute(AvatarBlock _ab, TAttribute _a, String _preName) {
+    private void addRegularAttribute(AvatarBlock _ab, TAttribute _a, String _preName) {
         _ab.addAttribute(this.createRegularAttribute (_ab, _a, _preName));
     }
 
-    public void createLibraryFunctions (AvatarSpecification _as, List<AvatarBDLibraryFunction> _libraryFunctions) {
+    private void createLibraryFunctions (AvatarSpecification _as, List<AvatarBDLibraryFunction> _libraryFunctions) {
         for (AvatarBDLibraryFunction libraryFunction: _libraryFunctions) {
             AvatarLibraryFunction alf = new AvatarLibraryFunction (libraryFunction.getFunctionName (), _as, libraryFunction);
             _as.addLibraryFunction (alf);
@@ -934,7 +935,7 @@ public class AvatarDesignPanelTranslator {
                     alf.addParameter (this.createRegularAttribute (alf, attr, ""));
                 else {
                     // other
-                    LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ());
+                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ());
                     if (types == null) {
                         UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + attr.getTypeOther() + " used in " + alf.getName());
                         // TODO: adapt
@@ -964,7 +965,7 @@ public class AvatarDesignPanelTranslator {
                     alf.addReturnAttribute (this.createRegularAttribute (alf, attr, ""));
                 else {
                     // other
-                    LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ());
+                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ());
                     if (types == null) {
                         UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + attr.getTypeOther() + " used in " + alf.getName());
                         ce.setTDiagramPanel(adp.getAvatarBDPanel());
@@ -993,7 +994,7 @@ public class AvatarDesignPanelTranslator {
                     alf.addAttribute (this.createRegularAttribute (alf, attr, ""));
                 else {
                     // other
-                    LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ());
+                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ());
                     if (types == null) {
                         UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + attr.getTypeOther() + " used in " + alf.getName());
                         ce.setTDiagramPanel(adp.getAvatarBDPanel());
@@ -1036,7 +1037,7 @@ public class AvatarDesignPanelTranslator {
         }
     }
 
-    public void createBlocks(AvatarSpecification _as, List<AvatarBDBlock> _blocks) {
+    private void createBlocks(AvatarSpecification _as, List<AvatarBDBlock> _blocks) {
         for(AvatarBDBlock block: _blocks) {
             AvatarBlock ab = new AvatarBlock(block.getBlockName(), _as, block);
             _as.addBlock(ab);
@@ -1056,7 +1057,7 @@ public class AvatarDesignPanelTranslator {
                 } else {
                     // other
                     // TraceManager.addDev(" -> Other type found: " + a.getTypeOther());
-                    LinkedList<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(a.getTypeOther());
+                    List<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(a.getTypeOther());
                     if (types == null) {
                         UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + a.getTypeOther() + " used in " + ab.getName());
                         ce.setTDiagramPanel(adp.getAvatarBDPanel());
@@ -1117,7 +1118,7 @@ public class AvatarDesignPanelTranslator {
         }
     }
 
-    public void makeBlockStateMachines(AvatarSpecification _as) {
+    private void makeBlockStateMachines(AvatarSpecification _as) {
         // Make state machine of blocks
         for(AvatarBlock block: _as.getListOfBlocks())
             this.makeStateMachine(_as, block);
@@ -1127,7 +1128,7 @@ public class AvatarDesignPanelTranslator {
             this.makeStateMachine (_as, libraryFunction);
     }
 
-    public void makeReturnParameters(AvatarStateMachineOwner _ab, AvatarBDStateMachineOwner _block, avatartranslator.AvatarMethod _atam, ui.AvatarMethod _uiam) {
+    private void makeReturnParameters(AvatarStateMachineOwner _ab, AvatarBDStateMachineOwner _block, avatartranslator.AvatarMethod _atam, ui.AvatarMethod _uiam) {
         String rt = _uiam.getReturnType().trim();
         AvatarAttribute aa;
         AvatarType type = AvatarType.UNDEFINED;
@@ -1140,7 +1141,7 @@ public class AvatarDesignPanelTranslator {
             aa = new AvatarAttribute("return__0", AvatarType.getType(rt), _ab, _block);
             _atam.addReturnParameter(aa);
         } else {
-            LinkedList<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(rt);
+            List<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(rt);
             if (types == null) {
                 UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + rt + " declared as a return parameter of a method of " + _block.getOwnerName());
                 // TODO: adapt
@@ -1167,12 +1168,12 @@ public class AvatarDesignPanelTranslator {
 
     }
 
-    public void makeParameters(AvatarStateMachineOwner _block, avatartranslator.AvatarMethod _atam, ui.AvatarMethod _uiam) {
+    private void makeParameters(AvatarStateMachineOwner _block, avatartranslator.AvatarMethod _atam, ui.AvatarMethod _uiam) {
         String typeIds[] = _uiam.getTypeIds();
         String types[] = _uiam.getTypes();
 
         for(int i=0; i<types.length; i++) {
-            LinkedList<TAttribute> v = adp.getAvatarBDPanel().getAttributesOfDataType(types[i]);
+            List<TAttribute> v = adp.getAvatarBDPanel().getAttributesOfDataType(types[i]);
             if (v == null) {
                 if (AvatarType.getType(types[i]) == AvatarType.UNDEFINED) {
                     UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type:  \"" + types[i] + "\" declared in method " + _atam + " of block " + _block.getName());
@@ -1202,7 +1203,7 @@ public class AvatarDesignPanelTranslator {
         }
     }
 
-    public void manageAttribute (String _name, AvatarStateMachineOwner _ab, AvatarActionOnSignal _aaos, TDiagramPanel _tdp, TGComponent _tgc, String _idOperator) {
+    private void manageAttribute (String _name, AvatarStateMachineOwner _ab, AvatarActionOnSignal _aaos, TDiagramPanel _tdp, TGComponent _tgc, String _idOperator) {
         TAttribute ta =  adp.getAvatarBDPanel().getAttribute(_name, _ab.getName());
         if (ta == null) {
             UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed parameter: " + _name + " in signal expression: " + _idOperator);
@@ -1217,7 +1218,7 @@ public class AvatarDesignPanelTranslator {
 
         //TraceManager.addDev("Found: " + ta.getId());
 
-        LinkedList<String> v = new LinkedList<String> ();
+        List<String> v = new LinkedList<String> ();
 
         if (ta.getType() == TAttribute.OTHER)
             for (TAttribute tatmp: adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()))
@@ -1236,81 +1237,81 @@ public class AvatarDesignPanelTranslator {
                 ce.setTGComponent(_tgc);
                 addCheckingError(ce);
                 return ;
-            } else {
+            }// else {
                 //TraceManager.addDev("-> Adding attr in action on signal in block " + _ab.getName() + ":" + _name + "__" + tatmp.getId());
-                _aaos.addValue(name);
-            }
+            _aaos.addValue(name);
+            //}
         }
     }
 
     private void translateAvatarSMDSendSignal (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDSendSignal asmdss) throws CheckingError {
-        AvatarStateMachine asm = _ab.getStateMachine ();
-        avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdss.getSignalName ());
-        if (atas == null)
-            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown signal: " + asmdss.getSignalName());
-
-        // Get relation of that signal
-        if (_ab instanceof AvatarBlock) {
-            // Note that for library functions, signals are just placeholders so they don't need to be connected to anything
-            AvatarRelation ar = _as.getAvatarRelationWithSignal (atas);
-            if (ar == null) {
-		if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
-		    //TraceManager.addDev("Send/ Setting as attached " + atas);
-		    ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = false;
-		}
-		//TraceManager.addDev("Spec:" + _as.toString());
-		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal used for sending in " + asmdss.getValue() + " is not connected to a channel");
-	    }
-	    if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
-		//TraceManager.addDev("Send/ Setting as attached " + atas);
-		((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true;
-	    }
-        }
-	
-        AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdss);
-        if (asmdss.hasCheckedAccessibility())
-            aaos.setCheckable();
-
-        if (asmdss.hasCheckedAccessibility())
-            aaos.setChecked();
-
-        if (aaos.isReceiving ())
-            throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A receiving signal is used for sending: " + asmdss.getValue());
-
-        if (asmdss.getNbOfValues() == -1)
-            throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdss.getValue());
-
-        for(int i=0; i<asmdss.getNbOfValues(); i++) {
-            String tmp = asmdss.getValue(i);
-            if (tmp.isEmpty ())
-                throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdss.getValue());
-
-            this.manageAttribute (tmp, _ab, aaos, tdp, asmdss, asmdss.getValue());
-        }
-
-        if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ())
-            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal sending: " + asmdss.getValue() + " -> nb of parameters does not match definition");
-
-        // Checking expressions passed as parameter
-        for (int i=0; i<aaos.getNbOfValues(); i++) {
-            String theVal = aaos.getValue(i);
-            if (atas.getListOfAttributes ().get (i).isInt ()) {
-                if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0)
-                    throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition");
-            } else {
-                // We assume it is a bool attribute
-                if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0)
-                    throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition");
-            }
-        }
-
-        this.listE.addCor (aaos, asmdss);
-        asmdss.setAVATARID (aaos.getID());
-		if (asmdss.getCheckLatency()){
-			aaos.setCheckLatency(true);
-			_as.checkedIDs.add(asmdss.getName()+"-"+ asmdss.getSignalName()+":"+aaos.getID());
-		}
-        asm.addElement (aaos);
+    	AvatarStateMachine asm = _ab.getStateMachine ();
+    	avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdss.getSignalName ());
+    	if (atas == null)
+    		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown signal: " + asmdss.getSignalName());
+
+    	// Get relation of that signal
+    	if (_ab instanceof AvatarBlock) {
+    		// Note that for library functions, signals are just placeholders so they don't need to be connected to anything
+    		AvatarRelation ar = _as.getAvatarRelationWithSignal (atas);
+    		if (ar == null) {
+    			if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
+    				//TraceManager.addDev("Send/ Setting as attached " + atas);
+    				((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = false;
+    			}
+    			//TraceManager.addDev("Spec:" + _as.toString());
+    			throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal used for sending in " + asmdss.getValue() + " is not connected to a channel");
+    		}
+    		if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
+    			//TraceManager.addDev("Send/ Setting as attached " + atas);
+    			((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true;
+    		}
+    	}
+
+    	AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdss);
+    	if (asmdss.hasCheckedAccessibility())
+    		aaos.setCheckable();
+
+    	if (asmdss.hasCheckedAccessibility())
+    		aaos.setChecked();
+
+    	if (aaos.isReceiving ())
+    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A receiving signal is used for sending: " + asmdss.getValue());
+
+    	if (asmdss.getNbOfValues() == -1)
+    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdss.getValue());
+
+    	for(int i=0; i<asmdss.getNbOfValues(); i++) {
+    		String tmp = asmdss.getValue(i);
+    		if (tmp.isEmpty ())
+    			throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdss.getValue());
+
+    		this.manageAttribute (tmp, _ab, aaos, tdp, asmdss, asmdss.getValue());
+    	}
+
+    	if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ())
+    		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal sending: " + asmdss.getValue() + " -> nb of parameters does not match definition");
+
+    	// Checking expressions passed as parameter
+    	for (int i=0; i<aaos.getNbOfValues(); i++) {
+    		String theVal = aaos.getValue(i);
+    		if (atas.getListOfAttributes ().get (i).isInt ()) {
+    			if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0)
+    				throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition");
+    		} else {
+    			// We assume it is a bool attribute
+    			if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0)
+    				throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition");
+    		}
+    	}
+
+    	this.listE.addCor (aaos, asmdss);
+    	asmdss.setAVATARID (aaos.getID());
+    	if (asmdss.getCheckLatency()){
+    		aaos.setCheckLatency(true);
+    		_as.checkedIDs.add(asmdss.getName()+"-"+ asmdss.getSignalName()+":"+aaos.getID());
+    	}
+    	asm.addElement (aaos);
     }
 
     private void translateAvatarSMDLibraryFunctionCall (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDLibraryFunctionCall asmdlfc) throws CheckingError {
@@ -1330,7 +1331,7 @@ public class AvatarDesignPanelTranslator {
         AvatarLibraryFunctionCall alfc = new AvatarLibraryFunctionCall ("library_function_call", aLibraryFunction, asmdlfc);
 
         /* Get the list of parameters passed to the function */
-        LinkedList<TAttribute> parameters = asmdlfc.getParameters ();
+        List<TAttribute> parameters = asmdlfc.getParameters ();
         /* If the number of parameters does not match raise an error */
         if (parameters.size () != libraryFunction.getParameters ().size ())
             throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getParameters ().size () + "parameters (" + parameters.size () + " provided)");
@@ -1349,14 +1350,14 @@ public class AvatarDesignPanelTranslator {
                 throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of parameter #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match");
 
             /* Creates all the parameters corresponding to this parameter */
-            LinkedList<String> parameterNames = new LinkedList<String> ();
+            List<String> parameterNames = new LinkedList<String> ();
             if (ta.getType() == TAttribute.INTEGER
                 || ta.getType() == TAttribute.NATURAL
                 || ta.getType() == TAttribute.BOOLEAN
                 || ta.getType() == TAttribute.TIMER)
                 parameterNames.add (ta.getId ());
             else {
-                LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ());
+                List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ());
                 if (types == null || types.isEmpty ())
                     throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
 
@@ -1376,7 +1377,7 @@ public class AvatarDesignPanelTranslator {
         }
 
         /* Get the list of signals mapped to the function's placeholders */
-        LinkedList<ui.AvatarSignal> signals = asmdlfc.getSignals ();
+        List<ui.AvatarSignal> signals = asmdlfc.getSignals ();
         /* If the number of signals does not match raise an error */
         if (signals.size () != libraryFunction.getSignals ().size ())
             throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getSignals ().size () + " signals (" + signals.size () + " mapped)");
@@ -1403,7 +1404,7 @@ public class AvatarDesignPanelTranslator {
         }
 
         /* Get the list of return attributes passed to the function */
-        LinkedList<TAttribute> returnAttributes = asmdlfc.getReturnAttributes ();
+        List<TAttribute> returnAttributes = asmdlfc.getReturnAttributes ();
         /* If the number of return attributes is greater that what the function can return raise an error */
         if (returnAttributes.size () > libraryFunction.getReturnAttributes ().size ())
             throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " can only return " + libraryFunction.getReturnAttributes ().size () + " values (" + returnAttributes.size () + " expected)");
@@ -1411,7 +1412,7 @@ public class AvatarDesignPanelTranslator {
         /* Loop through the return attributes */
         i=0;
         for (TAttribute ta: returnAttributes) {
-            LinkedList<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> ();
+            List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> ();
             /* If return attribute has not be filled in, add a dummy one */
             if (ta == null) {
                 TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i);
@@ -1429,7 +1430,7 @@ public class AvatarDesignPanelTranslator {
                     }
                     attrs.add (attr);
                 } else {
-                    LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ());
+                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ());
                     if (types == null || types.isEmpty ())
                         throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
 
@@ -1450,14 +1451,14 @@ public class AvatarDesignPanelTranslator {
                     throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of return attribute #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not match");
 
                 /* Creates all the attributes corresponding to this return attribute */
-                LinkedList<String> attributeNames = new LinkedList<String> ();
+                List<String> attributeNames = new LinkedList<String> ();
                 if (ta.getType() == TAttribute.INTEGER
                     || ta.getType() == TAttribute.NATURAL
                     || ta.getType() == TAttribute.BOOLEAN
                     || ta.getType() == TAttribute.TIMER)
                     attributeNames.add (ta.getId ());
                 else {
-                    LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ());
+                    List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ());
                     if (types == null || types.isEmpty ())
                         throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
 
@@ -1485,7 +1486,7 @@ public class AvatarDesignPanelTranslator {
             TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i);
             String dummyName = "__dummy_return_attribute_" + returnTA.getId ();
 
-            LinkedList<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> ();
+            List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> ();
             /* Creates all the attributes corresponding to this return attribute */
             if (returnTA.getType() == TAttribute.INTEGER
                 || returnTA.getType() == TAttribute.NATURAL
@@ -1498,7 +1499,7 @@ public class AvatarDesignPanelTranslator {
                 }
                 attrs.add (attr);
             } else {
-                LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ());
+                List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ());
                 if (types == null || types.isEmpty ())
                     throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type:  " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ());
 
@@ -1524,75 +1525,75 @@ public class AvatarDesignPanelTranslator {
 
 
     private void translateAvatarSMDReceiveSignal (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDReceiveSignal asmdrs) throws CheckingError {
-        AvatarStateMachine asm = _ab.getStateMachine ();
-        avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdrs.getSignalName ());
-        if (atas == null)
-            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown signal: " + asmdrs.getSignalName());
-
-        // Get relation of that signal
-        if (_ab instanceof AvatarBlock) {
-            // Note that for library functions, signals are just placeholders so they don't need to be connected to anything
-            AvatarRelation ar = _as.getAvatarRelationWithSignal (atas);
-            if (ar == null) {
-		if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
-		    //TraceManager.addDev("Receive/ Setting as attached " + atas);
-		    ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = false;
-		}
-                throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal used for receiving in " + asmdrs.getValue() + " is not connected to a channel");
-	    }
-	    if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
-		//TraceManager.addDev("Receive/ Setting as attached " + atas);
-		((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true;
-	    }
-        }
-	if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
-	    ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true;
-	}
-	
-        AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdrs);
-        if (asmdrs.hasCheckableAccessibility())
-            aaos.setCheckable();
-
-        if (asmdrs.hasCheckedAccessibility())
-            aaos.setChecked();
-
-        if (aaos.isSending())
-            throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A sending signal is used for receiving: " + asmdrs.getValue());
-
-        if (asmdrs.getNbOfValues() == -1)
-            throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdrs.getValue());
-
-        for(int i=0; i<asmdrs.getNbOfValues(); i++) {
-            String tmp = asmdrs.getValue(i);
-            if (tmp.isEmpty ())
-                throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdrs.getValue());
-
-            this.manageAttribute (tmp, _ab, aaos, tdp, asmdrs, asmdrs.getValue());
-        }
-
-        if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ())
-            throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> nb of parameters does not match definition");
-
-        // Checking expressions passed as parameter
-        for (int i=0; i<aaos.getNbOfValues(); i++) {
-            String theVal = aaos.getValue(i);
-            if (atas.getListOfAttributes ().get (i).isInt ()) {
-                if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0)
-                    throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition");
-            } else {
-                // We assume it is a bool attribute
-                if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0)
-                    throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition");
-            }
-        }
-
-        this.listE.addCor (aaos, asmdrs);
-        asmdrs.setAVATARID (aaos.getID());
-        asm.addElement (aaos);
-		if (asmdrs.getCheckLatency()){
-			aaos.setCheckLatency(true);
-			_as.checkedIDs.add(asmdrs.getName()+"-"+asmdrs.getSignalName()+":"+aaos.getID());
-		}
+    	AvatarStateMachine asm = _ab.getStateMachine ();
+    	avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdrs.getSignalName ());
+    	if (atas == null)
+    		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown signal: " + asmdrs.getSignalName());
+
+    	// Get relation of that signal
+    	if (_ab instanceof AvatarBlock) {
+    		// Note that for library functions, signals are just placeholders so they don't need to be connected to anything
+    		AvatarRelation ar = _as.getAvatarRelationWithSignal (atas);
+    		if (ar == null) {
+    			if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
+    				//TraceManager.addDev("Receive/ Setting as attached " + atas);
+    				((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = false;
+    			}
+    			throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal used for receiving in " + asmdrs.getValue() + " is not connected to a channel");
+    		}
+    		if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
+    			//TraceManager.addDev("Receive/ Setting as attached " + atas);
+    			((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true;
+    		}
+    	}
+    	if (atas.getReferenceObject() instanceof ui.AvatarSignal) {
+    		((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true;
+    	}
+
+    	AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdrs);
+    	if (asmdrs.hasCheckableAccessibility())
+    		aaos.setCheckable();
+
+    	if (asmdrs.hasCheckedAccessibility())
+    		aaos.setChecked();
+
+    	if (aaos.isSending())
+    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A sending signal is used for receiving: " + asmdrs.getValue());
+
+    	if (asmdrs.getNbOfValues() == -1)
+    		throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdrs.getValue());
+
+    	for(int i=0; i<asmdrs.getNbOfValues(); i++) {
+    		String tmp = asmdrs.getValue(i);
+    		if (tmp.isEmpty ())
+    			throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdrs.getValue());
+
+    		this.manageAttribute (tmp, _ab, aaos, tdp, asmdrs, asmdrs.getValue());
+    	}
+
+    	if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ())
+    		throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> nb of parameters does not match definition");
+
+    	// Checking expressions passed as parameter
+    	for (int i=0; i<aaos.getNbOfValues(); i++) {
+    		String theVal = aaos.getValue(i);
+    		if (atas.getListOfAttributes ().get (i).isInt ()) {
+    			if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0)
+    				throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition");
+    		} else {
+    			// We assume it is a bool attribute
+    			if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0)
+    				throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition");
+    		}
+    	}
+
+    	this.listE.addCor (aaos, asmdrs);
+    	asmdrs.setAVATARID (aaos.getID());
+    	asm.addElement (aaos);
+    	if (asmdrs.getCheckLatency()){
+    		aaos.setCheckLatency(true);
+    		_as.checkedIDs.add(asmdrs.getName()+"-"+asmdrs.getSignalName()+":"+aaos.getID());
+    	}
     }
 
     private void translateAvatarSMDState (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDState tgc) throws CheckingError {
@@ -1886,21 +1887,21 @@ public class AvatarDesignPanelTranslator {
                             at.setDelays(tmp1, tmp2);
 
                         // Compute min and max
-                        tmp1 = modifyString (asmdco.getComputeMinDelay ());
-                        error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1);
-                        if (error < 0) {
-                            this.makeError (error, tdp, _ab, tgc, "compute min ", tmp1);
-                            tmp1 = null;
-                        }
-                        tmp2 = modifyString(asmdco.getComputeMaxDelay());
-                        error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2);
-                        if (error < 0) {
-                            this.makeError (error, tdp, _ab, tgc, "compute max ", tmp2);
-                            tmp2 = null;
-                        }
-
-                        if (tmp1 != null && tmp2 != null)
-                            at.setComputes(tmp1, tmp2);
+//                        tmp1 = modifyString (asmdco.getComputeMinDelay ());
+//                        error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1);
+//                        if (error < 0) {
+//                            this.makeError (error, tdp, _ab, tgc, "compute min ", tmp1);
+//                            tmp1 = null;
+//                        }
+//                        tmp2 = modifyString(asmdco.getComputeMaxDelay());
+//                        error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2);
+//                        if (error < 0) {
+//                            this.makeError (error, tdp, _ab, tgc, "compute max ", tmp2);
+//                            tmp2 = null;
+//                        }
+//
+//                        if (tmp1 != null && tmp2 != null)
+//                            at.setComputes(tmp1, tmp2);
 
                         // Probability
                         tmp1 = asmdco.getProbability ();
@@ -2018,15 +2019,14 @@ public class AvatarDesignPanelTranslator {
         return null;
     }
 
-
-    public void createRelationsBetweenBlocks(AvatarSpecification _as, List<AvatarBDBlock> _blocks) {
+    private void createRelationsBetweenBlocks(AvatarSpecification _as, List<AvatarBDBlock> _blocks) {
         adp.getAvatarBDPanel().updateAllSignalsOnConnectors();
         Iterator<TGComponent> iterator = adp.getAvatarBDPanel().getComponentList().listIterator();
 
         TGComponent tgc;
         AvatarBDPortConnector port;
         AvatarBDBlock block1, block2;
-        LinkedList<String> l1, l2;
+        List<String> l1, l2;
         int i;
         String name1, name2;
         AvatarRelation r;
@@ -2094,16 +2094,16 @@ public class AvatarDesignPanelTranslator {
     }
 
     private void addCheckingError(CheckingError ce) {
-        if (checkingErrors == null) {
-            checkingErrors = new LinkedList<CheckingError> ();
-        }
+//        if (checkingErrors == null) {
+//            checkingErrors = new LinkedList<CheckingError> ();
+//        }
         checkingErrors.add (ce);
     }
 
     private void addWarning(CheckingError ce) {
-        if (warnings == null) {
-            warnings = new LinkedList<CheckingError> ();
-        }
+//        if (warnings == null) {
+//            warnings = new LinkedList<CheckingError> ();
+//        }
         warnings.add (ce);
     }
 
@@ -2190,7 +2190,7 @@ public class AvatarDesignPanelTranslator {
         return s;
     }
 
-    public boolean isAVariableAssignation (String _input) {
+   private boolean isAVariableAssignation (String _input) {
         int index = _input.indexOf('=');
         if (index == -1) {
             return false;
@@ -2216,11 +2216,8 @@ public class AvatarDesignPanelTranslator {
 
         return !(TAttribute.isAValidId(tmp, false, false));
     }
-
-    public void checkForAfterOnCompositeTransition() {
-
-    }
-
-
-
+//
+//    public void checkForAfterOnCompositeTransition() {
+//
+//    }
 }
diff --git a/src/main/java/ui/DesignPanelTranslator.java b/src/main/java/ui/DesignPanelTranslator.java
index 82c6fef4c4..ec674a54c8 100755
--- a/src/main/java/ui/DesignPanelTranslator.java
+++ b/src/main/java/ui/DesignPanelTranslator.java
@@ -60,11 +60,11 @@ import java.util.Vector;
  */
 public class DesignPanelTranslator {
     protected TURTLEDesignPanelInterface dp;
-    protected LinkedList<CheckingError> checkingErrors, warnings;
+    protected List<CheckingError> checkingErrors, warnings;
     protected CorrespondanceTGElement listE; // usual list
     protected CorrespondanceTGElement listB; // list for particular element -> first element of group of blocks
-    protected LinkedList <TDiagramPanel> panels;
-    protected LinkedList <ActivityDiagram> activities;
+    protected List <TDiagramPanel> panels;
+    protected List <ActivityDiagram> activities;
 
     public DesignPanelTranslator(TURTLEDesignPanelInterface _dp) {
         dp = _dp;
@@ -80,11 +80,11 @@ public class DesignPanelTranslator {
         activities = new LinkedList <ActivityDiagram>();
     }
 
-    public LinkedList<CheckingError> getErrors() {
+    public List<CheckingError> getErrors() {
         return checkingErrors;
     }
 
-    public LinkedList<CheckingError> getWarnings() {
+    public List<CheckingError> getWarnings() {
         return warnings;
     }
 
@@ -93,7 +93,7 @@ public class DesignPanelTranslator {
     }
 
     public TURTLEModeling generateTURTLEModeling() {
-        LinkedList<TClassInterface> tclasses = new LinkedList<TClassInterface>();
+        List<TClassInterface> tclasses = new LinkedList<TClassInterface>();
 
         for (Object tgc: dp.getStructurePanel ().getComponentList ())
             if (tgc instanceof TClassInterface)
@@ -102,7 +102,7 @@ public class DesignPanelTranslator {
         return generateTURTLEModeling(tclasses, "");
     }
 
-    public TURTLEModeling generateTURTLEModeling(LinkedList<TClassInterface> tclasses, String preName) {
+    public TURTLEModeling generateTURTLEModeling(List<TClassInterface> tclasses, String preName) {
         TURTLEModeling tmodel = new TURTLEModeling();
         addTClasses(dp, tclasses, preName, tmodel);
         addRelations(dp, tmodel);
@@ -124,7 +124,7 @@ public class DesignPanelTranslator {
     }
 
 
-    public void addTClasses(TURTLEDesignPanelInterface dp, LinkedList<TClassInterface> tclasses, String preName, TURTLEModeling tm) {
+    public void addTClasses(TURTLEDesignPanelInterface dp, List<TClassInterface> tclasses, String preName, TURTLEModeling tm) {
         TDiagramPanel tdp;
         // search for class diagram panels
         tdp = dp.panelAt(0);
@@ -135,8 +135,8 @@ public class DesignPanelTranslator {
             addTClassesFromPanel(tdp, (ClassDiagramPanelInterface)tdp, tclasses, preName, tm);
     }
 
-    private void addTClassesFromPanel(TDiagramPanel diag, ClassDiagramPanelInterface tdp, LinkedList<TClassInterface> tclasses, String preName, TURTLEModeling tm) {
-       // LinkedList list = tdp.getComponentList();
+    private void addTClassesFromPanel(TDiagramPanel diag, ClassDiagramPanelInterface tdp, List<TClassInterface> tclasses, String preName, TURTLEModeling tm) {
+       // List list = tdp.getComponentList();
 
         // search for tclasses
         for (Object tgc: tdp.getComponentList ())
@@ -1156,7 +1156,7 @@ public class DesignPanelTranslator {
         return -1;
     }
 
-    private void setGatesOf(Relation r, LinkedList<TTwoAttributes> gates, TClass tc1, TClass tc2) {
+    private void setGatesOf(Relation r, List<TTwoAttributes> gates, TClass tc1, TClass tc2) {
         Gate g1, g2;
 
         for (TTwoAttributes tt: gates) {
@@ -1174,7 +1174,7 @@ public class DesignPanelTranslator {
      * Seems like we can't instantiate TCDWatchdogOperator
      * and the setWatchdogGatesOf function is buggy: it uses
      * TTwoAttributes as if they were TAttribute.
-    private void setWatchdogGatesOf(Relation r, LinkedList<TTwoAttributes> gates, TClass tc1, TClass tc2) {
+    private void setWatchdogGatesOf(Relation r, List<TTwoAttributes> gates, TClass tc1, TClass tc2) {
 
         for (TTwoAttributes t: gates) {
             Gate g1 = tc1.getGateByName(((TAttribute) t).getId());
diff --git a/src/main/java/ui/GTURTLEModeling.java b/src/main/java/ui/GTURTLEModeling.java
index 445d871d33..7cab795552 100644
--- a/src/main/java/ui/GTURTLEModeling.java
+++ b/src/main/java/ui/GTURTLEModeling.java
@@ -58,8 +58,6 @@ import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import org.xml.sax.SAXException;
 import proverifspec.ProVerifOutputAnalyzer;
-import proverifspec.ProVerifQueryAuthResult;
-import proverifspec.ProVerifQueryResult;
 import proverifspec.ProVerifSpec;
 import req.ebrdd.EBRDD;
 import sddescription.HMSC;
@@ -744,11 +742,11 @@ outerloop:
 		List<HwLink> links = map.getTMLArchitecture().getHwLinks();
 		List<HwNode> found = new ArrayList<HwNode>();
 		List<HwNode> done = new ArrayList<HwNode>();
-		List<HwNode> path = new ArrayList<HwNode>();
+		//List<HwNode> path = new ArrayList<HwNode>();
 
 		HwExecutionNode node1 = (HwExecutionNode) map.getHwNodeOf(t1);
 
-		Map<HwNode, List<HwNode>> pathMap = new HashMap<HwNode, List<HwNode>>();
+		//Map<HwNode, List<HwNode>> pathMap = new HashMap<HwNode, List<HwNode>>();
 		for (HwLink link : links) {
 			if (link.hwnode == node1) {
 				found.add(link.bus);
@@ -819,7 +817,7 @@ outerloop:
 			TraceManager.addDev("Found firewall " + firewallNode.getName());
 			TMLCPrimitiveComponent firewallComp = null;
 			TMLADStartState adStart = null;
-			TMLADForEverLoop adLoop = null;
+			//TMLADForEverLoop adLoop = null;
 			TMLADChoice adChoice = null;
 			TMLADChoice adChoice2 = null;
 			TMLADChoice adChoiceMain = null;
@@ -1334,7 +1332,7 @@ outerloop:
         			xpos = wr.getX();
             	    ypos = wr.getY();
             	    fromStart = tad.findTGConnectorEndingAt(wr.getTGConnectingPointAtIndex(0));
-            	    TGConnectingPoint point = fromStart.getTGConnectingPointP2();
+            	    //TGConnectingPoint point = fromStart.getTGConnectingPointP2();
 					int yShift = 50;
             	        
 					TMLADSendRequest sendreq = new TMLADSendRequest(xpos, ypos, tad.getMinX(), tad.getMaxX(), tad.getMinY(), tad.getMaxY(), false, null, tad);
@@ -2518,7 +2516,7 @@ memloop:
 		}
 
 		// Assume the inputData is in AUT format: generated by RTL or CADP
-		public String performProjection(String inputData, LinkedList<TClassAndGateDS> gates) {
+		public String performProjection(String inputData, List<TClassAndGateDS> gates) {
 			StringBuffer result = new StringBuffer("");
 			StringReader sr = new StringReader(inputData);
 			BufferedReader br = new BufferedReader(sr);
@@ -2940,7 +2938,7 @@ memloop:
 
 
 		// BUILDING A TURTLE MODELING AND CHECKING IT
-		public boolean checkTURTLEModeling(LinkedList<TClassInterface> tclasses, DesignPanel dp, boolean overideSyntaxChecking) {
+		public boolean checkTURTLEModeling(List<TClassInterface> tclasses, DesignPanel dp, boolean overideSyntaxChecking) {
 			// Builds a TURTLE modeling from diagrams
 			//warnings = new Vector();
 			//checkingErrors = null;
@@ -2980,7 +2978,7 @@ memloop:
 		}
 
 		// BUILDING An AVATAR Design AND CHECKING IT
-		public boolean checkAvatarDesign(LinkedList<AvatarBDStateMachineOwner> blocks, AvatarDesignPanel adp, boolean _optimize) {
+		public boolean checkAvatarDesign( List<AvatarBDStateMachineOwner> blocks, AvatarDesignPanel adp, boolean _optimize) {
 			// Builds a TURTLE modeling from diagrams
 			//warnings = new Vector();
 			//checkingErrors = null;
@@ -3042,14 +3040,14 @@ memloop:
 			}
 
 			// Building the list of all states in the mutex
-			LinkedList<TGComponent> compInMutex = adp.getListOfComponentsInMutex();
+			List<TGComponent> compInMutex = adp.getListOfComponentsInMutex();
 			TraceManager.addDev("Nb of elements in mutex:" + compInMutex.size());
 
 			if (compInMutex.size() == 0) {
 				return -2;
 			}
 
-			LinkedList<TGComponent> comps;
+			List<TGComponent> comps;
 			boolean found;
 			int nbOfFound;
 			int cpt = 0;
@@ -3300,7 +3298,7 @@ memloop:
 			if (tgc instanceof AvatarBDBlock) {
 				AvatarSMDPanel asmdp = mgui.getAvatarSMDPanel(mgui.getCurrentSelectedIndex(), tgc.getValue());
 				s.append(asmdp.saveInXML());
-				LinkedList<AvatarBDBlock> list = ((AvatarBDBlock) tgc).getFullBlockList();
+				List<AvatarBDBlock> list = ((AvatarBDBlock) tgc).getFullBlockList();
 				for (AvatarBDBlock b : list) {
 					asmdp = mgui.getAvatarSMDPanel(mgui.getCurrentSelectedIndex(), b.getValue());
 					s.append(asmdp.saveInXML());
@@ -7093,7 +7091,7 @@ memloop:
 				boolean latencyCheck = false;
 				boolean invariant = false;
 				boolean breakpoint = false;
-				boolean hidden = false;
+				//boolean hidden = false;
 				boolean masterMutex = false;
 				boolean enable = true;
 
@@ -7119,8 +7117,8 @@ memloop:
 						} else if (elt.getTagName().equals("infoparam")) {
 							myName = elt.getAttribute("name");
 							myValue = elt.getAttribute("value");
-						} else if (elt.getTagName().equals("hidden")) {
-							hidden = elt.getAttribute("value").equals("true");
+//						} else if (elt.getTagName().equals("hidden")) {
+//							hidden = elt.getAttribute("value").equals("true");
 						} else if (elt.getTagName().equals("enabled")) {
 							enable = elt.getAttribute("value").equals("true");
 						} else if (elt.getTagName().equals("TGConnectingPoint")) {
@@ -7811,7 +7809,7 @@ memloop:
 					dp2 = art.getDesignPanel();
 
 					final Iterator<TGComponent> iterator2 = dp2.tcdp.getComponentList().listIterator();
-					LinkedList<TClassInterface> tclasses = new LinkedList<TClassInterface>();
+					List<TClassInterface> tclasses = new LinkedList<TClassInterface>();
 					while (iterator2.hasNext()) {
 						tgc = iterator2.next();
 						if (tgc instanceof TClassInterface) {
diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java
index 0ee2defe06..2c4bdc9acb 100644
--- a/src/main/java/ui/MainGUI.java
+++ b/src/main/java/ui/MainGUI.java
@@ -110,8 +110,6 @@ import java.util.*;
 import java.util.List;
 import java.util.concurrent.ConcurrentHashMap;
 
-import static myutil.FileUtils.checkFileForOpen;
-
 // AVATAR
 
 /**
@@ -172,7 +170,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
     public KeyListener keyHandler;
 
     // Validation
-    public LinkedList<TClassInterface> tclassesToValidate = new LinkedList<TClassInterface>();
+    public List<TClassInterface> tclassesToValidate = new LinkedList<TClassInterface>();
 
     // Status bar
     private JLabel status;
@@ -3458,7 +3456,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
             DesignPanel dp = (DesignPanel) tp;
             JDialogModelChecking.validated = dp.validated;
             JDialogModelChecking.ignored = dp.ignored;
-            LinkedList<TClassInterface> tclassesToValidate = new LinkedList<TClassInterface>();
+            List<TClassInterface> tclassesToValidate = new LinkedList<TClassInterface>();
             JDialogModelChecking jdmc = new JDialogModelChecking(frame, tclassesToValidate, dp.tcdp.getComponentList(), "Choosing Tclasses to validate");
             if (!automatic) {
                 GraphicLib.centerOnParent(jdmc);
@@ -3570,7 +3568,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
             AvatarDesignPanel adp = (AvatarDesignPanel) tp;
             //JDialogModelChecking.validated = adp.validated;
             //JDialogModelChecking.ignored = adp.ignored;
-            LinkedList<AvatarBDStateMachineOwner> blocksToValidate = new LinkedList<AvatarBDStateMachineOwner>();
+            List<AvatarBDStateMachineOwner> blocksToValidate = new LinkedList<AvatarBDStateMachineOwner>();
             JDialogSelectAvatarBlock jdmc = new JDialogSelectAvatarBlock(frame, blocksToValidate, adp.getAvatarBDPanel().getFullStateMachineOwnerList(), "Choosing blocks to validate", adp.getValidated(), adp.getIgnored(), adp.getOptimized());
             if (!automatic) {
                 GraphicLib.centerOnParent(jdmc);
@@ -3630,7 +3628,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
 
             //JDialogModelChecking.validated = adp.validated;
             //JDialogModelChecking.ignored = adp.ignored;
-            LinkedList<AvatarBDStateMachineOwner> blocksToValidate = new LinkedList<AvatarBDStateMachineOwner>();
+            List<AvatarBDStateMachineOwner> blocksToValidate = new LinkedList<AvatarBDStateMachineOwner>();
             JDialogSelectAvatarBlock jdmc = new JDialogSelectAvatarBlock(frame, blocksToValidate, adp.getAvatarBDPanel().getFullStateMachineOwnerList(), "Choosing blocks to validate", adp.getValidated(), adp.getIgnored(), adp.getOptimized());
             if (!automatic) {
                 GraphicLib.centerOnParent(jdmc);
@@ -4018,14 +4016,14 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
         return ret;
     }
 
-    public LinkedList<TAttribute> getAllAttributes() {
+    public List<TAttribute> getAllAttributes() {
         TURTLEPanel tp = getCurrentTURTLEPanel();
         String name = getCurrentTDiagramPanel().getName();
 
         return this.getAllAttributes(tp, name);
     }
 
-    public LinkedList<TAttribute> getAllAttributes(TURTLEPanel tp, String name) {
+    public List<TAttribute> getAllAttributes(TURTLEPanel tp, String name) {
         if (tp == null) {
             return null;
         }
@@ -4038,8 +4036,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
         return adp.getAllAttributes(name);
     }
 
-
-    public LinkedList<AvatarMethod> getAllMethods() {
+    public List<AvatarMethod> getAllMethods() {
         TURTLEPanel tp = getCurrentTURTLEPanel();
         if (tp == null) {
             return null;
@@ -4055,13 +4052,13 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
         return adp.getAllMethods(name);
     }
 
-    public LinkedList<AvatarSignal> getAllSignals() {
+    public List<AvatarSignal> getAllSignals() {
         TURTLEPanel tp = getCurrentTURTLEPanel();
         String name = getCurrentTDiagramPanel().getName();
         return this.getAllSignals(tp, name);
     }
 
-    public LinkedList<AvatarSignal> getAllSignals(TURTLEPanel tp, String name) {
+    public List<AvatarSignal> getAllSignals(TURTLEPanel tp, String name) {
         if (tp == null) {
             return null;
         }
@@ -4315,7 +4312,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
         return tmlcomp.getAllOutRequests(name);
     }
 
-    public LinkedList<String> getAllTimers() {
+    public List<String> getAllTimers() {
         TURTLEPanel tp = getCurrentTURTLEPanel();
         if (tp == null) {
             return null;
@@ -8329,7 +8326,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
 
         AvatarDesignPanelTranslator avdesigntranslator = new AvatarDesignPanelTranslator(designDiagramPanel);
 
-        LinkedList<AvatarBDStateMachineOwner> adp = designDiagramPanel.getAvatarBDPanel().getFullStateMachineOwnerList();
+        List<AvatarBDStateMachineOwner> adp = designDiagramPanel.getAvatarBDPanel().getFullStateMachineOwnerList();
         AvatarSpecification avaspec = avdesigntranslator.generateAvatarSpecification(adp);
 
         // Generator for block tasks and application main file
diff --git a/src/main/java/ui/TGComponent.java b/src/main/java/ui/TGComponent.java
index e94e968e40..3d48762e9b 100755
--- a/src/main/java/ui/TGComponent.java
+++ b/src/main/java/ui/TGComponent.java
@@ -59,12 +59,17 @@ import ui.tmldd.TMLArchiFirewallNode;
 import ui.util.IconManager;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
+import java.awt.Point;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.geom.Point2D;
 import java.util.ArrayList;
 import java.util.LinkedList;
+import java.util.List;
 import java.util.Vector;
 
 /**
@@ -482,13 +487,14 @@ public abstract class TGComponent implements CDElement, GenericTree {
         latencyCheck = b;
     }
 
-    public LinkedList<TGComponent> getAllCheckableInvariant() {
-        LinkedList<TGComponent> list = new LinkedList<TGComponent>();
+    public List<TGComponent> getAllCheckableInvariant() {
+        List<TGComponent> list = new LinkedList<TGComponent>();
         getAllCheckableInvariant(list);
+        
         return list;
     }
 
-    public void getAllCheckableInvariant(LinkedList<TGComponent> _list) {
+    public void getAllCheckableInvariant( List<TGComponent> _list) {
         if (invariant) {
             _list.add(this);
         }
@@ -606,7 +612,6 @@ public abstract class TGComponent implements CDElement, GenericTree {
         GraphicLib.dashedRect(g, x + width + s2 + s3, y + s3, w + 15, h - 12);
     }
 
-
     public void drawAttributes(Graphics g, String attr) {
         if (attr == null) {
             return;
diff --git a/src/main/java/ui/avatarbd/AvatarBDBlock.java b/src/main/java/ui/avatarbd/AvatarBDBlock.java
index e5e3297669..5edc8eddbf 100644
--- a/src/main/java/ui/avatarbd/AvatarBDBlock.java
+++ b/src/main/java/ui/avatarbd/AvatarBDBlock.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.avatarbd;
 
 import myutil.Conversion;
@@ -57,16 +56,20 @@ import java.io.InputStreamReader;
 import java.io.OutputStreamWriter;
 import java.io.PipedInputStream;
 import java.io.PipedOutputStream;
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
 import java.io.BufferedReader;
 import java.io.BufferedWriter;
 
 
 import javax.swing.*;
-import java.awt.*;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Iterator;
 import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
 import java.util.HashMap;
 import proverifspec.ProVerifResultTrace;
 import proverifspec.ProVerifResultTraceStep;
@@ -89,8 +92,8 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
     private static String stereotype = "block";
     private static String stereotypeCrypto = "cryptoblock";
 
-    protected static ArrayList<String> BLOCK_TYPE_STR = new ArrayList<String>(Arrays.asList("block", "cryptoblock"));
-    protected static ArrayList<Color> BLOCK_TYPE_COLOR = new ArrayList<Color>(Arrays.asList(ColorManager.AVATAR_BLOCK, ColorManager.AVATAR_BLOCK));
+    protected static List<String> BLOCK_TYPE_STR = new ArrayList<String>(Arrays.asList("block", "cryptoblock"));
+    protected static List<Color> BLOCK_TYPE_COLOR = new ArrayList<Color>(Arrays.asList(ColorManager.AVATAR_BLOCK, ColorManager.AVATAR_BLOCK));
     private int typeStereotype = 0; // <<block>> by default
 
     private int maxFontSize = 12;
@@ -111,13 +114,13 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
 
 
     // TAttribute, AvatarMethod, AvatarSignal
-    protected LinkedList<TAttribute> myAttributes;
-    protected LinkedList<AvatarMethod> myMethods;
-    protected LinkedList<AvatarSignal> mySignals;
+    protected List<TAttribute> myAttributes;
+    protected List<AvatarMethod> myMethods;
+    protected List<AvatarSignal> mySignals;
     protected String[] globalCode;
 
-	protected HashMap<TAttribute, ProVerifResultTrace> attrTraceMap = new HashMap<TAttribute, ProVerifResultTrace>();
-	protected HashMap<TAttribute, Integer> attrLocMap = new HashMap<TAttribute, Integer>();
+	protected Map<TAttribute, ProVerifResultTrace> attrTraceMap = new HashMap<TAttribute, ProVerifResultTrace>();
+	protected Map<TAttribute, Integer> attrLocMap = new HashMap<TAttribute, Integer>();
 	
     public String oldValue;
 
@@ -195,7 +198,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         this.mySignals.add(sig);
     }
 
-    public void internalDrawingAux(Graphics graph) {
+    private void internalDrawingAux(Graphics graph) {
 
         //TraceManager.addDev("Block drawing aux = " + this);
 
@@ -595,7 +598,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
 
     }
 
-
+    @Override
     public TGComponent isOnOnlyMe(int x1, int y1) {
         if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) {
             return this;
@@ -621,6 +624,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return result;
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame, int _x, int _y) {
         int textX = (int) (this.textX * this.tdp.getZoom());
         if (iconIsDrawn) {
@@ -814,16 +818,18 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         _jdab.enableJavaKeyword(false);
     }
 
-
+    @Override
     public int getType() {
         return TGComponentManager.AVATARBD_BLOCK;
     }
 
+    @Override
     public boolean acceptSwallowedTGComponent(TGComponent tgc) {
         return tgc instanceof AvatarBDBlock || tgc instanceof AvatarBDLibraryFunction;
 
     }
 
+    @Override
     public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) {
         boolean swallowed = false;
 
@@ -871,6 +877,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return true;
     }
 
+    @Override
     public void removeSwallowedTGComponent(TGComponent tgc) {
         removeMyInternalComponent(tgc, false);
     }
@@ -908,6 +915,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return false;
     }
 
+    @Override
     protected String translateExtraParam() {
         StringBuffer sb = new StringBuffer("<extraparam>\n");
         sb.append("<blockType data=\"");
@@ -1123,7 +1131,6 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         }
 
         //TraceManager.addDev("LEP End Block  = " + this);
-
     }
 
     public boolean addStereotype(String s, int rgb) {
@@ -1191,7 +1198,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return ret;
     }
 
-
+    @Override
     public void hasBeenResized() {
         for (int i = 0; i < nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarBDBlock) {
@@ -1207,6 +1214,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
 
     }
 
+    @Override
     public void resizeWithFather() {
         if ((father != null) && (father instanceof AvatarBDBlock)) {
             // Too large to fit in the father? -> resize it!
@@ -1217,8 +1225,8 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         }
     }
 
-    public LinkedList<AvatarBDBlock> getBlockList() {
-        LinkedList<AvatarBDBlock> list = new LinkedList<AvatarBDBlock>();
+    public List<AvatarBDBlock> getBlockList() {
+        List<AvatarBDBlock> list = new LinkedList<AvatarBDBlock>();
         for (int i = 0; i < nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarBDBlock) {
                 list.add((AvatarBDBlock) (tgcomponent[i]));
@@ -1227,8 +1235,8 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return list;
     }
 
-    public LinkedList<AvatarBDBlock> getFullBlockList() {
-        LinkedList<AvatarBDBlock> list = new LinkedList<AvatarBDBlock>();
+    public List<AvatarBDBlock> getFullBlockList() {
+        List<AvatarBDBlock> list = new LinkedList<AvatarBDBlock>();
         for (int i = 0; i < nbInternalTGComponent; i++) {
             if (tgcomponent[i] instanceof AvatarBDBlock) {
                 list.add((AvatarBDBlock) (tgcomponent[i]));
@@ -1238,8 +1246,8 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return list;
     }
 
-    public LinkedList<AvatarBDLibraryFunction> getFullLibraryFunctionList() {
-        LinkedList<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction>();
+    public List<AvatarBDLibraryFunction> getFullLibraryFunctionList() {
+        List<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction>();
         for (int i = 0; i < nbInternalTGComponent; i++) {
             if (this.tgcomponent[i] instanceof AvatarBDLibraryFunction)
                 list.add((AvatarBDLibraryFunction) this.tgcomponent[i]);
@@ -1251,13 +1259,13 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
     }
 
     public boolean hasInternalBlockWithName(String name) {
-        LinkedList<AvatarBDBlock> list = getFullBlockList();
+        List<AvatarBDBlock> list = getFullBlockList();
         for (AvatarBDBlock b : list) {
             if (b.getValue().compareTo(name) == 0) {
                 return true;
             }
         }
-        LinkedList<AvatarBDLibraryFunction> llist = getFullLibraryFunctionList();
+        List<AvatarBDLibraryFunction> llist = getFullLibraryFunctionList();
         for (AvatarBDLibraryFunction b : llist) {
             if (b.getFunctionName().compareTo(name) == 0) {
                 return true;
@@ -1267,12 +1275,12 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return false;
     }
 
-
+    @Override
     public int getDefaultConnector() {
         return TGComponentManager.AVATARBD_PORT_CONNECTOR;
     }
 
-    public LinkedList<TAttribute> getAttributeList() {
+    public List<TAttribute> getAttributeList() {
         return this.myAttributes;
     }
 
@@ -1287,54 +1295,54 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         this.myAttributes.add(ta);
     }
 
-    public LinkedList<AvatarMethod> getMethodList() {
+    public List<AvatarMethod> getMethodList() {
         return this.myMethods;
     }
 
-    public LinkedList<AvatarSignal> getSignalList() {
+    public List<AvatarSignal> getSignalList() {
         return this.mySignals;
     }
 
-    public LinkedList<AvatarSignal> getOutSignalList() {
-        LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal>();
+    public List<AvatarSignal> getOutSignalList() {
+        List<AvatarSignal> v = new LinkedList<AvatarSignal>();
         for (AvatarSignal s : this.mySignals)
             if (s.getInOut() == AvatarSignal.OUT)
                 v.add(s);
         return v;
     }
 
-    public LinkedList<AvatarSignal> getInSignalList() {
-        LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal>();
+    public List<AvatarSignal> getInSignalList() {
+        List<AvatarSignal> v = new LinkedList<AvatarSignal>();
         for (AvatarSignal s : this.mySignals)
             if (s.getInOut() == AvatarSignal.IN)
                 v.add(s);
         return v;
     }
 
-    public LinkedList<AvatarMethod> getAllMethodList() {
+    public List<AvatarMethod> getAllMethodList() {
         if (getFather() == null) {
             return this.myMethods;
         }
 
-        LinkedList<AvatarMethod> v = new LinkedList<AvatarMethod>();
+        List<AvatarMethod> v = new LinkedList<AvatarMethod>();
         v.addAll(this.myMethods);
         v.addAll(((AvatarBDBlock) getFather()).getAllMethodList());
         return v;
     }
 
-    public LinkedList<AvatarSignal> getAllSignalList() {
+    public List<AvatarSignal> getAllSignalList() {
         if (getFather() == null) {
             return this.mySignals;
         }
 
-        LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal>();
+        List<AvatarSignal> v = new LinkedList<AvatarSignal>();
         v.addAll(this.mySignals);
         v.addAll(((AvatarBDBlock) getFather()).getAllSignalList());
         return v;
     }
 
-    public LinkedList<String> getAllTimerList() {
-        LinkedList<String> v = new LinkedList<String>();
+    public List<String> getAllTimerList() {
+        List<String> v = new LinkedList<String>();
 
         for (TAttribute a : this.myAttributes)
             if (a.getType() == TAttribute.TIMER)
@@ -1349,19 +1357,18 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return null;
     }
 
-    public LinkedList<AvatarSignal> getListOfAvailableSignals() {
+    public List<AvatarSignal> getListOfAvailableSignals() {
         return ((AvatarBDPanel) (tdp)).getListOfAvailableSignals(this);
     }
 
-    public LinkedList<AvatarSignal> getListOfAvailableOutSignals() {
+    public List<AvatarSignal> getListOfAvailableOutSignals() {
         return ((AvatarBDPanel) (tdp)).getListOfAvailableOutSignals(this);
     }
 
-    public LinkedList<AvatarSignal> getListOfAvailableInSignals() {
+    public List<AvatarSignal> getListOfAvailableInSignals() {
         return ((AvatarBDPanel) (tdp)).getListOfAvailableInSignals(this);
     }
 
-
     // _id may contain the full signal
     public AvatarSignal getSignalNameBySignalDef(String _id) {
         int index0 = _id.indexOf('(');
@@ -1494,6 +1501,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return -1;
     }
 
+    @Override
     public ImageIcon getImageIcon() {
         return myImageIcon;
     }
@@ -1507,11 +1515,11 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         return this.getBlockName();
     }
 
+    @Override
     public String toString() {
         return "Block: " + getValue();
     }
 
-
     public String getAttributes() {
         String attr = "";
         for (TAttribute a: myAttributes) {
@@ -1525,9 +1533,4 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S
         }
         return attr;
     }
-
-
-
-
-
 }
diff --git a/src/main/java/ui/avatarbd/AvatarBDPanel.java b/src/main/java/ui/avatarbd/AvatarBDPanel.java
index 9d2e308199..70c04c5758 100644
--- a/src/main/java/ui/avatarbd/AvatarBDPanel.java
+++ b/src/main/java/ui/avatarbd/AvatarBDPanel.java
@@ -36,12 +36,8 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarbd;
 
-
 import myutil.Conversion;
 import myutil.TraceManager;
 import org.w3c.dom.Element;
@@ -61,7 +57,8 @@ import java.util.*;
    * @author Ludovic APVRILLE
  */
 public class AvatarBDPanel extends TDiagramPanel {
-    private LinkedList<AvatarBDStateMachineOwner> validated, ignored;
+    
+	private List<AvatarBDStateMachineOwner> validated, ignored;
     private String val = null, ign = null;
     private boolean optimized = true;
 
@@ -78,6 +75,7 @@ public class AvatarBDPanel extends TDiagramPanel {
           addMouseMotionListener(tdmm);*/
     }
 
+    @Override
     public boolean actionOnDoubleClick(TGComponent tgc) {
         //
         if (tgc instanceof AvatarBDBlock) {
@@ -94,6 +92,7 @@ public class AvatarBDPanel extends TDiagramPanel {
         return false;
     }
 
+    @Override
     public boolean actionOnAdd(TGComponent tgc) {
         if (tgc instanceof AvatarBDBlock) {
             AvatarBDBlock abdb = (AvatarBDBlock)(tgc);
@@ -109,12 +108,13 @@ public class AvatarBDPanel extends TDiagramPanel {
         return false;
     }
 
+    @Override
     public boolean actionOnRemove(TGComponent tgc) {
         if (tgc instanceof AvatarBDStateMachineOwner) {
             AvatarBDStateMachineOwner abdb = (AvatarBDStateMachineOwner) tgc;
             this.mgui.removeAvatarBlock (tp, abdb.getOwnerName());
             if (tgc instanceof AvatarBDBlock) {
-                LinkedList<AvatarBDBlock> list  = ((AvatarBDBlock) abdb).getFullBlockList();
+                List<AvatarBDBlock> list  = ((AvatarBDBlock) abdb).getFullBlockList();
                 for(AvatarBDBlock b: list)
                     mgui.removeAvatarBlock(tp, b.getBlockName());
 
@@ -130,44 +130,46 @@ public class AvatarBDPanel extends TDiagramPanel {
 
     public void updateSignalAttachement(AvatarBDBlock _b, AvatarBDPortConnector _conn) {
 
-	
-	// Set all signals of B as non connected
-	_b.setSignalsAsNonAttached();
-	
-	
-	Iterator iterator = getComponentList().listIterator();
-	while(iterator.hasNext()) {
-            TGComponent tgc = (TGComponent)(iterator.next());
-            if (tgc instanceof AvatarBDPortConnector) {
-		AvatarBDPortConnector port = (AvatarBDPortConnector)tgc;
-                AvatarBDBlock block1 = port.getAvatarBDBlock1();
-                AvatarBDBlock block2 = port.getAvatarBDBlock2();
-		if ((block1 != null) && (block2 != null)) {
-		    if ((_b == block1) || (_b == block2)) {
-			//TraceManager.addDev("Relation found");
-			LinkedList<String> l;
-			if (_b == block1) {
-			    l = port.getListOfSignalsOrigin();
-			} else {
-			    l = port.getListOfSignalsDestination();
-			}
-
-			for(String name: l) {
-			    name = AvatarSignal.getSignalNameFromFullSignalString(name);
-			    //TraceManager.addDev("Searching for " + name + " in block " + _b);
-			    AvatarSignal sig = _b.getAvatarSignalFromName(name);
-			    if (sig != null) {
-				//TraceManager.addDev("Sig " + name + " is attached to a relation");
-				sig.attachedToARelation = true;
-			    }
-			}
-		    }
-		}
-	    }
-	}
-    }
-    
-
+    	// Set all signals of B as non connected
+    	_b.setSignalsAsNonAttached();
+
+    	Iterator<TGComponent> iterator = getComponentList().listIterator();
+
+    	while(iterator.hasNext()) {
+    		TGComponent tgc = iterator.next();
+    		
+    		if (tgc instanceof AvatarBDPortConnector) {
+    			AvatarBDPortConnector port = (AvatarBDPortConnector)tgc;
+    			AvatarBDBlock block1 = port.getAvatarBDBlock1();
+    			AvatarBDBlock block2 = port.getAvatarBDBlock2();
+    			
+    			if ((block1 != null) && (block2 != null)) {
+    				if ((_b == block1) || (_b == block2)) {
+    					//TraceManager.addDev("Relation found");
+    					List<String> l;
+    					
+    					if (_b == block1) {
+    						l = port.getListOfSignalsOrigin();
+    					} else {
+    						l = port.getListOfSignalsDestination();
+    					}
+
+    					for(String name: l) {
+    						name = AvatarSignal.getSignalNameFromFullSignalString(name);
+    						//TraceManager.addDev("Searching for " + name + " in block " + _b);
+    						AvatarSignal sig = _b.getAvatarSignalFromName(name);
+    						if (sig != null) {
+    							//TraceManager.addDev("Sig " + name + " is attached to a relation");
+    							sig.attachedToARelation = true;
+    						}
+    					}
+    				}
+    			}
+    		}
+    	}
+    }
+
+    @Override
     public boolean actionOnValueChanged(TGComponent tgc) {
         if (tgc instanceof AvatarBDBlock) {
             //updateAllSignalsOnConnectors();
@@ -240,7 +242,7 @@ public class AvatarBDPanel extends TDiagramPanel {
     public String displayParam() {
         String s = "";
         String [] tmp =  Conversion.wrapText(mainCode);
-        String tmps;
+        //String tmps;
         int i;
 
         for(i=0; i<tmp.length; i++) {
@@ -369,10 +371,10 @@ public class AvatarBDPanel extends TDiagramPanel {
             }
     }
 
-    public LinkedList<AvatarSignal> getListOfAvailableSignals(AvatarBDBlock _block) {
-        LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal> ();
+    public List<AvatarSignal> getListOfAvailableSignals(AvatarBDBlock _block) {
+        List<AvatarSignal> v = new LinkedList<AvatarSignal> ();
 
-        LinkedList<AvatarSignal> listOfBlock = _block.getSignalList();
+        List<AvatarSignal> listOfBlock = _block.getSignalList();
         if (listOfBlock.size() == 0)
             return v;
 
@@ -382,11 +384,11 @@ public class AvatarBDPanel extends TDiagramPanel {
             if (tgc instanceof AvatarBDPortConnector) {
                 AvatarBDPortConnector port = (AvatarBDPortConnector) tgc;
                 if (port.getAvatarBDBlock1() == _block) {
-                    LinkedList<String> ll = port.getListOfSignalsOrigin();
+                    List<String> ll = port.getListOfSignalsOrigin();
                     removeSignals(v, ll);
                 }
                 if (port.getAvatarBDBlock2() == _block) {
-                    LinkedList<String> ll = port.getListOfSignalsDestination();
+                    List<String> ll = port.getListOfSignalsDestination();
                     removeSignals(v, ll);
                 }
             }
@@ -394,10 +396,10 @@ public class AvatarBDPanel extends TDiagramPanel {
         return v;
     }
 
-    public LinkedList<AvatarSignal> getListOfAvailableOutSignals (AvatarBDBlock _block) {
-        LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal> ();
+    public List<AvatarSignal> getListOfAvailableOutSignals (AvatarBDBlock _block) {
+        List<AvatarSignal> v = new LinkedList<AvatarSignal> ();
 
-        LinkedList<AvatarSignal> listOfBlock = _block.getOutSignalList();
+        List<AvatarSignal> listOfBlock = _block.getOutSignalList();
         if (listOfBlock.size() == 0)
             return v;
 
@@ -407,11 +409,11 @@ public class AvatarBDPanel extends TDiagramPanel {
             if (tgc instanceof AvatarBDPortConnector) {
                 AvatarBDPortConnector port = (AvatarBDPortConnector)tgc;
                 if (port.getAvatarBDBlock1() == _block) {
-                    LinkedList<String> ll = port.getListOfSignalsOrigin();
+                    List<String> ll = port.getListOfSignalsOrigin();
                     removeSignals(v, ll);
                 }
                 if (port.getAvatarBDBlock2() == _block) {
-                    LinkedList<String> ll = port.getListOfSignalsDestination();
+                    List<String> ll = port.getListOfSignalsDestination();
                     removeSignals(v, ll);
                 }
             }
@@ -419,10 +421,10 @@ public class AvatarBDPanel extends TDiagramPanel {
         return v;
     }
 
-    public LinkedList<AvatarSignal> getListOfAvailableInSignals(AvatarBDBlock _block) {
-        LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal> ();
+    public List<AvatarSignal> getListOfAvailableInSignals(AvatarBDBlock _block) {
+        List<AvatarSignal> v = new LinkedList<AvatarSignal> ();
 
-        LinkedList<AvatarSignal> listOfBlock = _block.getInSignalList();
+        List<AvatarSignal> listOfBlock = _block.getInSignalList();
         if (listOfBlock.size() == 0)
             return v;
 
@@ -432,11 +434,11 @@ public class AvatarBDPanel extends TDiagramPanel {
             if (tgc instanceof AvatarBDPortConnector) {
                 AvatarBDPortConnector port = (AvatarBDPortConnector)tgc;
                 if (port.getAvatarBDBlock1() == _block) {
-                    LinkedList<String> ll = port.getListOfSignalsOrigin();
+                    List<String> ll = port.getListOfSignalsOrigin();
                     removeSignals(v, ll);
                 }
                 if (port.getAvatarBDBlock2() == _block) {
-                    LinkedList<String> ll = port.getListOfSignalsDestination();
+                    List<String> ll = port.getListOfSignalsDestination();
                     removeSignals(v, ll);
                 }
             }
@@ -445,7 +447,7 @@ public class AvatarBDPanel extends TDiagramPanel {
     }
 
     // Remove AvatarSignals of v which name is provided in list
-    private static void removeSignals(List<AvatarSignal> v, LinkedList<String> list) {
+    private static void removeSignals(List<AvatarSignal> v, List<String> list) {
         for(String s: list) {
             Iterator<AvatarSignal> iterator = v.iterator ();
             while (iterator.hasNext ()) {
@@ -458,8 +460,8 @@ public class AvatarBDPanel extends TDiagramPanel {
         }
     }
 
-	public HashMap<String, List<String>> getBlockStrings(boolean addAttributes, boolean addStates, boolean addSignals){
-		HashMap<String,List<String>> blockStringMap = new HashMap<String, List<String>>();
+	public Map<String, List<String>> getBlockStrings(boolean addAttributes, boolean addStates, boolean addSignals){
+		Map<String,List<String>> blockStringMap = new HashMap<String, List<String>>();
 		for (AvatarBDBlock block: getFullBlockList()){
 			List<String> strs = new ArrayList<String>();
 			if (addAttributes){
@@ -481,8 +483,8 @@ public class AvatarBDPanel extends TDiagramPanel {
 		return blockStringMap;
 	}
 
-    public LinkedList<AvatarBDStateMachineOwner> getFullStateMachineOwnerList() {
-        LinkedList<AvatarBDStateMachineOwner> list = new LinkedList<AvatarBDStateMachineOwner>();
+    public List<AvatarBDStateMachineOwner> getFullStateMachineOwnerList() {
+        List<AvatarBDStateMachineOwner> list = new LinkedList<AvatarBDStateMachineOwner>();
 
         for (TGComponent tgc: this.componentList)
             if (tgc instanceof AvatarBDStateMachineOwner) {
@@ -496,8 +498,8 @@ public class AvatarBDPanel extends TDiagramPanel {
         return list;
     }
 
-    public LinkedList<AvatarBDBlock> getFullBlockList () {
-        LinkedList<AvatarBDBlock> list = new LinkedList<AvatarBDBlock> ();
+    public List<AvatarBDBlock> getFullBlockList () {
+        List<AvatarBDBlock> list = new LinkedList<AvatarBDBlock> ();
 
         for (TGComponent tgc: this.componentList)
             if (tgc instanceof AvatarBDBlock) {
@@ -538,8 +540,8 @@ public class AvatarBDPanel extends TDiagramPanel {
         return null;
     }
 
-    public LinkedList<AvatarBDLibraryFunction> getFullLibraryFunctionList () {
-        LinkedList<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction> ();
+    public List<AvatarBDLibraryFunction> getFullLibraryFunctionList () {
+        List<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction> ();
 
         for (TGComponent tgc: this.componentList)
             if (tgc instanceof AvatarBDLibraryFunction)
@@ -548,8 +550,8 @@ public class AvatarBDPanel extends TDiagramPanel {
         return list;
     }
 
-    public LinkedList<AvatarBDLibraryFunction> getAllLibraryFunctionsForBlock (String _name) {
-        LinkedList<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction> ();
+    public List<AvatarBDLibraryFunction> getAllLibraryFunctionsForBlock (String _name) {
+        List<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction> ();
 
         for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList())
         {
@@ -561,7 +563,7 @@ public class AvatarBDPanel extends TDiagramPanel {
     }
 
     public TAttribute getAttributeByBlockName(String _blockName, String attributeName) {
-        TAttribute a;
+        //TAttribute a;
         for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList())
             if (block.getOwnerName().equals (_blockName))
                 return block.getAttributeByName(attributeName);
@@ -569,8 +571,8 @@ public class AvatarBDPanel extends TDiagramPanel {
         return null;
     }
 
-    public LinkedList<TAttribute> getAllAttributesOfBlock (String _name) {
-        LinkedList<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList ();
+    public List<TAttribute> getAllAttributesOfBlock (String _name) {
+        List<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList ();
         for(AvatarBDStateMachineOwner block: list)
             if (block.getOwnerName ().equals (_name))
                 return block.getAttributeList ();
@@ -578,7 +580,7 @@ public class AvatarBDPanel extends TDiagramPanel {
         return new LinkedList<TAttribute> ();
     }
 
-    public LinkedList<AvatarMethod> getAllMethodsOfBlock(String _name) {
+    public List<AvatarMethod> getAllMethodsOfBlock(String _name) {
         for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList())
             if (block.getOwnerName().equals (_name))
                 return block.getAllMethodList();
@@ -586,7 +588,7 @@ public class AvatarBDPanel extends TDiagramPanel {
         return null;
     }
 
-    public LinkedList<AvatarSignal> getAllSignalsOfBlock(String _name) {
+    public List<AvatarSignal> getAllSignalsOfBlock(String _name) {
         for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList())
             if (block.getOwnerName().equals (_name))
                 return block.getAllSignalList();
@@ -594,7 +596,7 @@ public class AvatarBDPanel extends TDiagramPanel {
         return null;
     }
 
-    public LinkedList<String> getAllTimersOfBlock(String _name) {
+    public List<String> getAllTimersOfBlock(String _name) {
         for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList())
             if (block.getOwnerName().equals (_name))
                 return block.getAllTimerList();
@@ -602,7 +604,7 @@ public class AvatarBDPanel extends TDiagramPanel {
         return null;
     }
 
-    public LinkedList<TAttribute> getAttributesOfDataType(String _name) {
+    public List<TAttribute> getAttributesOfDataType(String _name) {
         for (TGComponent tgc: this.componentList)
             if (tgc instanceof AvatarBDDataType) {
                 AvatarBDDataType adt = (AvatarBDDataType)tgc;
@@ -628,14 +630,14 @@ public class AvatarBDPanel extends TDiagramPanel {
         return mainCode;
     }
 
-    public LinkedList<AvatarBDStateMachineOwner> getValidated() {
+    public List<AvatarBDStateMachineOwner> getValidated() {
         if ((val != null) && (validated == null)) {
             makeValidated();
         }
         return validated;
     }
 
-    public LinkedList<AvatarBDStateMachineOwner> getIgnored() {
+    public List<AvatarBDStateMachineOwner> getIgnored() {
         if ((ign != null) && (ignored == null)) {
             makeIgnored();
         }
@@ -646,12 +648,11 @@ public class AvatarBDPanel extends TDiagramPanel {
         return optimized;
     }
 
-
-    public void setValidated(LinkedList<AvatarBDStateMachineOwner> _validated) {
+    public void setValidated( List<AvatarBDStateMachineOwner> _validated) {
         validated = _validated;
     }
 
-    public void setIgnored(LinkedList<AvatarBDStateMachineOwner> _ignored) {
+    public void setIgnored( List<AvatarBDStateMachineOwner> _ignored) {
         ignored = _ignored;
     }
 
@@ -662,7 +663,7 @@ public class AvatarBDPanel extends TDiagramPanel {
     public void makeValidated() {
         TraceManager.addDev("Making validated with val=" + val);
         validated = new LinkedList<AvatarBDStateMachineOwner> ();
-        LinkedList<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList();
+        List<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList();
         String tmp;
 
         String split[] = val.split(";");
@@ -683,7 +684,7 @@ public class AvatarBDPanel extends TDiagramPanel {
     public void makeIgnored() {
         TraceManager.addDev("Making ignored with ign=" + val);
         ignored = new LinkedList<AvatarBDStateMachineOwner> ();
-        LinkedList<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList();
+        List<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList();
         String tmp;
 
         String split[] = ign.split(";");
diff --git a/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java b/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java
index e09477549c..e1b2a7f95f 100644
--- a/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java
+++ b/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java
@@ -36,7 +36,6 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.avatarbd;
 
 import myutil.Conversion;
@@ -49,10 +48,14 @@ import ui.util.IconManager;
 import ui.window.JDialogPerformancePragma;
 
 import javax.swing.*;
-import java.awt.*;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.LinkedList;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -66,7 +69,7 @@ import java.util.Map;
 public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalComponent {
 
     protected String[] values;
-    protected LinkedList<String> properties;
+    protected List<String> properties;
     protected int textX = 40;
     protected int textY = 5;
     protected int marginY = 20;
@@ -74,7 +77,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone
     protected int limit = 15;
     protected int lockX = 1;
     protected int lockY = 5;
-    public ArrayList<String> syntaxErrors;
+    public List<String> syntaxErrors;
     protected Graphics myg;
 
     protected Color myColor;
@@ -83,7 +86,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone
     //    private int maxFontSize = 30;
 //    private int minFontSize = 4;
     private int currentFontSize = -1;
-    private final String[] pPragma = {"A[]", "A<>", "E[]", "E<>"};
+   // private final String[] pPragma = {"A[]", "A<>", "E[]", "E<>"};
     public Map<String, String> verifMap = new HashMap<String, String>();
 
     protected Graphics graphics;
@@ -129,10 +132,11 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone
         return values;
     }
 
-    public LinkedList<String> getProperties() {
+    public List<String> getProperties() {
         return properties;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
         Font f = g.getFont();
         Font fold = f;
@@ -255,7 +259,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone
       }
       }*/
 
-
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = value;
 
@@ -283,6 +287,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone
         return null;
     }
 
+    @Override
     public void rescale(double scaleFactor) {
         /*dlineHeight = (lineHeight + dlineHeight) / oldScaleFactor * scaleFactor;
           lineHeight = (int)(dlineHeight);
@@ -294,10 +299,12 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone
         super.rescale(scaleFactor);
     }
 
+    @Override
     public int getType() {
         return TGComponentManager.PERFORMANCE_PRAGMA;
     }
 
+    @Override
     protected String translateExtraParam() {
         if (values == null) {
             makeValue();
diff --git a/src/main/java/ui/avatarbd/AvatarBDPragma.java b/src/main/java/ui/avatarbd/AvatarBDPragma.java
index 7dd4d58ffc..f3b9419132 100755
--- a/src/main/java/ui/avatarbd/AvatarBDPragma.java
+++ b/src/main/java/ui/avatarbd/AvatarBDPragma.java
@@ -405,6 +405,7 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent {
 
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
         String oldValue = value;
 
diff --git a/src/main/java/ui/avatarbd/AvatarBDStateMachineOwner.java b/src/main/java/ui/avatarbd/AvatarBDStateMachineOwner.java
index f26e17890a..13b68cefd4 100755
--- a/src/main/java/ui/avatarbd/AvatarBDStateMachineOwner.java
+++ b/src/main/java/ui/avatarbd/AvatarBDStateMachineOwner.java
@@ -36,19 +36,15 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarbd;
 
+import java.util.List;
+
 import ui.AvatarMethod;
 import ui.AvatarSignal;
 import ui.TAttribute;
 import ui.avatarsmd.AvatarSMDPanel;
 
-import java.util.LinkedList;
-
-
 /**
  * This interface represent block diagram elements that are associated to a state machine.
  * It defines the functions so that a state machine can deal transparently no matter if
@@ -59,14 +55,14 @@ import java.util.LinkedList;
  */
 public interface AvatarBDStateMachineOwner {
 
-    LinkedList<TAttribute> getAttributeList();
-    LinkedList<String> getAllTimerList();
+    List<TAttribute> getAttributeList();
+    List<String> getAllTimerList();
     TAttribute getAttributeByName(String _name);
-    LinkedList<AvatarSignal> getSignalList();
-    LinkedList<AvatarSignal> getAllSignalList();
+    List<AvatarSignal> getSignalList();
+    List<AvatarSignal> getAllSignalList();
     AvatarSignal getSignalNameBySignalDef(String _id);
-    LinkedList<AvatarMethod> getMethodList();
-    LinkedList<AvatarMethod> getAllMethodList();
+    List<AvatarMethod> getMethodList();
+    List<AvatarMethod> getAllMethodList();
 
     String getOwnerName();
     AvatarSMDPanel getAvatarSMDPanel();
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDConnector.java b/src/main/java/ui/avatarsmd/AvatarSMDConnector.java
index e12766e20c..127a1e7912 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDConnector.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDConnector.java
@@ -109,7 +109,6 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i
        }
        }*/
 
-
     public void setTransitionInfo(String guard, String action) {
         AvatarSMDTransitionInfo tgc = (AvatarSMDTransitionInfo) getInternalTGComponent(0);
         if (!guard.isEmpty()) {
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java
index 802ff5f9fc..c4e16b68cd 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java
@@ -36,22 +36,30 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
+package ui.avatarsmd;
 
+import java.awt.Color;
+import java.awt.Graphics;
+import java.awt.geom.Line2D;
+import java.util.List;
 
-
-package ui.avatarsmd;
+import javax.swing.JFrame;
+import javax.swing.JOptionPane;
 
 import myutil.GraphicLib;
 import myutil.TraceManager;
-import ui.*;
+import ui.AvatarSignal;
+import ui.BasicErrorHighlight;
+import ui.ColorManager;
+import ui.ErrorHighlight;
+import ui.PartOfInvariant;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
 import ui.util.IconManager;
 import ui.window.JDialogAvatarTimer;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
-import java.util.LinkedList;
-
 /**
    * Class AvatarSMDExpireTimer
    * Action of waiting for the expiration of a timer
@@ -97,8 +105,8 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas
         myImageIcon = IconManager.imgic904;
     }
 
+    @Override
     public void internalDrawing(Graphics g) {
-
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX + linebreak);
         if ((w1 != width) & (!tdp.isScaled())) {
@@ -106,7 +114,6 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas
             width = w1;            //updateConnectingPoints();
         }
 
-
         if (stateOfError > 0)  {
             Color c = g.getColor();
             switch(stateOfError) {
@@ -170,6 +177,7 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas
 
     }
 
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width + hourglassSpace + hourglassWidth, height)) {
             return this;
@@ -182,15 +190,16 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas
         return null;
     }
 
-    public void makeValue() {
-    }
+//    public void makeValue() {
+//    }
 
     public String getTimerName() {
         return AvatarSignal.getValue(value, 0);
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
-        LinkedList<String> timers = tdp.getMGUI().getAllTimers();
+        List<String> timers = tdp.getMGUI().getAllTimers();
         TraceManager.addDev("Nb of timers:" + timers.size());
 
         JDialogAvatarTimer jdat = new JDialogAvatarTimer(frame, "Timer expiration",  getTimerName(), "", timers, false);
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java b/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java
index ad21ef15f3..97637c4760 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java
@@ -36,29 +36,36 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
+package ui.avatarsmd;
 
+import java.awt.Color;
+import java.awt.Graphics;
+import java.awt.geom.Line2D;
+import java.util.List;
+import java.util.Vector;
+import java.util.concurrent.ConcurrentHashMap;
 
-
-package ui.avatarsmd;
+import javax.swing.JFrame;
+import javax.swing.JOptionPane;
 
 import myutil.GraphicLib;
 import myutil.TraceManager;
-import ui.*;
-import ui.util.IconManager;
-import ui.window.JDialogAvatarSignal;
-
-import java.util.concurrent.ConcurrentHashMap;
-
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
-import java.util.LinkedList;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Vector;
+import ui.AvatarSignal;
+import ui.BasicErrorHighlight;
+import ui.CheckableAccessibility;
+import ui.CheckableLatency;
+import ui.ColorManager;
+import ui.ErrorHighlight;
+import ui.LinkedReference;
+import ui.PartOfInvariant;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
 import ui.avatarrd.AvatarRDRequirement;
-
 import ui.tmlad.TMLADReadChannel;
+import ui.util.IconManager;
+import ui.window.JDialogAvatarSignal;
 /**
  * Class AvatarSMDReceiveSignal
  * Action of receiving a signal
@@ -112,11 +119,12 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
 		//latencyVals.put("sendChannel: sensorData", "15");
     }
     
-
 	public void addLatency(String name, String num){
 		latencyVals.put(name,num);
 	}
-    public void internalDrawing(Graphics g) {
+    
+	@Override
+	public void internalDrawing(Graphics g) {
 		
         int w  = g.getFontMetrics().stringWidth(value + textX1);
         int w1 = Math.max(minWidth, w + 2 * textX);
@@ -360,14 +368,14 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
         return nParam;
     }*/
 	
-    
+
+	@Override
     public boolean editOndoubleClick(JFrame frame) {
-    //	
-		LinkedList<AvatarSignal> signals = tdp.getMGUI().getAllSignals();
+		List<AvatarSignal> signals = tdp.getMGUI().getAllSignals();
 		TraceManager.addDev("Nb of signals:" + signals.size());
 		
 
-		ArrayList<TGComponent> comps = tdp.getMGUI().getAllLatencyChecks();
+		List<TGComponent> comps = tdp.getMGUI().getAllLatencyChecks();
 		Vector<TGComponent> refs = new Vector<TGComponent>();
 		for (TGComponent req: tdp.getMGUI().getAllRequirements()){
             //
@@ -380,6 +388,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C
 				refs.add(tg);
 			}
 		}
+		
 		JDialogAvatarSignal jdas = new JDialogAvatarSignal(frame, "Setting receive signal",  value, signals, false, reference, refs);
 		//jdas.setSize(350, 300);
         GraphicLib.centerOnParent(jdas, 550, 300);
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java
index 2498e1f818..a65555c45f 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java
@@ -36,22 +36,30 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
+package ui.avatarsmd;
 
+import java.awt.Color;
+import java.awt.Graphics;
+import java.awt.geom.Line2D;
+import java.util.List;
 
-
-package ui.avatarsmd;
+import javax.swing.JFrame;
+import javax.swing.JOptionPane;
 
 import myutil.GraphicLib;
 import myutil.TraceManager;
-import ui.*;
+import ui.AvatarSignal;
+import ui.BasicErrorHighlight;
+import ui.ColorManager;
+import ui.ErrorHighlight;
+import ui.PartOfInvariant;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
 import ui.util.IconManager;
 import ui.window.JDialogAvatarTimer;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
-import java.util.LinkedList;
-
 /**
  * Class AvatarSMDResetTimer
  * Action of resetting a timer
@@ -166,6 +174,7 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi
 		
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width + hourglassSpace + hourglassWidth, height)) {
             return this;
@@ -178,15 +187,16 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi
         return null;
     }
     
-    public void makeValue() {
-    }
+//    public void makeValue() {
+//    }
     
     public String getTimerName() {
         return AvatarSignal.getValue(value, 0);
     }
     
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
-		LinkedList<String> timers = tdp.getMGUI().getAllTimers();
+		List<String> timers = tdp.getMGUI().getAllTimers();
 		TraceManager.addDev("Nb of timers:" + timers.size());
 		
 		JDialogAvatarTimer jdat = new JDialogAvatarTimer(frame, "Reset timer",  getTimerName(), "", timers, false);
@@ -212,20 +222,19 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi
 		value = "reset(" + val0 + ")";
 		
 		return true;
-         
     }
-    
-  
-    
 
+    @Override
     public int getType() {
         return TGComponentManager.AVATARSMD_RESET_TIMER;
     }
     
-     public int getDefaultConnector() {
-      return TGComponentManager.AVATARSMD_CONNECTOR;
+    @Override
+    public int getDefaultConnector() {
+    	return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 	
+    @Override
 	public void setStateAction(int _stateAction) {
 		stateOfError = _stateAction;
 	}
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java b/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java
index b9000b58a5..55fd6ffca7 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java
@@ -36,27 +36,35 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.avatarsmd;
 
-import myutil.GraphicLib;
-import ui.*;
-import ui.util.IconManager;
-import ui.window.JDialogAvatarSignal;
-
-import javax.swing.*;
-import java.awt.*;
+import java.awt.Color;
+import java.awt.Graphics;
 import java.awt.geom.Line2D;
-import java.util.LinkedList;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.concurrent.ConcurrentHashMap;
+import java.util.List;
 import java.util.Vector;
-import ui.avatarrd.AvatarRDRequirement;
+import java.util.concurrent.ConcurrentHashMap;
+
+import javax.swing.JFrame;
+import javax.swing.JOptionPane;
 
+import myutil.GraphicLib;
+import ui.AvatarSignal;
+import ui.BasicErrorHighlight;
+import ui.CheckableAccessibility;
+import ui.CheckableLatency;
+import ui.ColorManager;
+import ui.ErrorHighlight;
+import ui.LinkedReference;
+import ui.PartOfInvariant;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
+import ui.avatarrd.AvatarRDRequirement;
 import ui.tmlad.TMLADWriteChannel;
+import ui.util.IconManager;
+import ui.window.JDialogAvatarSignal;
 /**
    * Class AvatarSMDSendSignal
    * Action of sending a signal
@@ -105,11 +113,13 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
         myImageIcon = IconManager.imgic904;
 		latencyVals = new ConcurrentHashMap<String, String>();
     }
+    
 	public void addLatency(String name, String num){
 		latencyVals.put(name,num);
 	}
+	
+	@Override
     public void internalDrawing(Graphics g) {
-
         int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
         if ((w1 != width) & (!tdp.isScaled())) {
@@ -289,6 +299,7 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
 		}
 	}
 
+	@Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) {
             return this;
@@ -353,10 +364,11 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
         return AvatarSignal.getValue(value, _index);
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
-        LinkedList<AvatarSignal> signals = tdp.getMGUI().getAllSignals();
+        List<AvatarSignal> signals = tdp.getMGUI().getAllSignals();
         //TraceManager.addDev("Nb of signals:" + signals.size());
-		ArrayList<TGComponent> comps = tdp.getMGUI().getAllLatencyChecks();
+		List<TGComponent> comps = tdp.getMGUI().getAllLatencyChecks();
 		
 		Vector<TGComponent> refs = new Vector<TGComponent>();
 		for (TGComponent req: tdp.getMGUI().getAllRequirements()){
@@ -466,15 +478,17 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec
       makeValue();
       }*/
 
-
+	@Override
     public int getType() {
         return TGComponentManager.AVATARSMD_SEND_SIGNAL;
     }
 
+	@Override
     public int getDefaultConnector() {
         return TGComponentManager.AVATARSMD_CONNECTOR;
     }
 
+	@Override
     public void setStateAction(int _stateAction) {
         stateOfError = _stateAction;
     }
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java
index ee71ee4865..952f1039cc 100644
--- a/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java
@@ -36,22 +36,30 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
+package ui.avatarsmd;
 
+import java.awt.Color;
+import java.awt.Graphics;
+import java.awt.geom.Line2D;
+import java.util.List;
 
-
-package ui.avatarsmd;
+import javax.swing.JFrame;
+import javax.swing.JOptionPane;
 
 import myutil.GraphicLib;
 import myutil.TraceManager;
-import ui.*;
+import ui.AvatarSignal;
+import ui.BasicErrorHighlight;
+import ui.ColorManager;
+import ui.ErrorHighlight;
+import ui.PartOfInvariant;
+import ui.TDiagramPanel;
+import ui.TGComponent;
+import ui.TGComponentManager;
+import ui.TGConnectingPoint;
 import ui.util.IconManager;
 import ui.window.JDialogAvatarTimer;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.geom.Line2D;
-import java.util.LinkedList;
-
 /**
  * Class AvatarSMDSetTimer
  * Action of setting a timer
@@ -97,9 +105,9 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE
         myImageIcon = IconManager.imgic904;
     }
     
+    @Override
     public void internalDrawing(Graphics g) {
-		
-        int w  = g.getFontMetrics().stringWidth(value);
+		int w  = g.getFontMetrics().stringWidth(value);
         int w1 = Math.max(minWidth, w + 2 * textX);
         if ((w1 != width) & (!tdp.isScaled())) {
             setCd(x + width/2 - w1/2, y);
@@ -168,6 +176,7 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE
 		
     }
     
+    @Override
     public TGComponent isOnMe(int _x, int _y) {
         if (GraphicLib.isInRectangle(_x, _y, x, y, width + hourglassSpace + hourglassWidth, height)) {
             return this;
@@ -180,8 +189,8 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE
         return null;
     }
     
-    public void makeValue() {
-    }
+//    public void makeValue() {
+//    }
     
     public String getTimerName() {
         return AvatarSignal.getValue(value, 0);
@@ -191,8 +200,9 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE
 		return AvatarSignal.getValue(value, 1);
 	}
     
+	@Override
     public boolean editOndoubleClick(JFrame frame) {
-		LinkedList<String> timers = tdp.getMGUI().getAllTimers();
+		List<String> timers = tdp.getMGUI().getAllTimers();
 		TraceManager.addDev("Nb of timers:" + timers.size());
 		
 		JDialogAvatarTimer jdat = new JDialogAvatarTimer(frame, "Setting timer set",  getTimerName(), getTimerValue(), timers, true);
diff --git a/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java b/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java
index b4652293ed..2b06c17854 100755
--- a/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java
+++ b/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java
@@ -49,11 +49,10 @@ import ui.util.IconManager;
 import ui.window.JDialogAvatarTransition;
 
 import javax.swing.*;
-import java.awt.*;
-import java.util.LinkedList;
-import java.util.Vector;
 
-//import java.awt.geom.*;
+import java.awt.Graphics;
+import java.util.List;
+import java.util.Vector;
 
 /**
  * Class AvatarSMDTransitionInfo
@@ -69,7 +68,6 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
 //    private static String FILE_INFO = "(user files specified)";
     //   private static String CODE_INFO = "(user code specified)";
 
-
     protected String guard;
     protected String afterMin;
     protected String afterMax;
@@ -279,13 +277,15 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme
         return null;
     }
 
+    @Override
     public boolean isInRectangle(int x1, int y1, int width, int height) {
         return !((getX() < x1) || (getY() < y1) || ((getX() + this.width) > (x1 + width)) || ((getY() + this.height) > (y1 + height)));
     }
 
+    @Override
     public boolean editOndoubleClick(JFrame frame) {
-        LinkedList<TAttribute> attributes = tdp.getMGUI().getAllAttributes();
-        LinkedList<AvatarMethod> methods = tdp.getMGUI().getAllMethods();
+        List<TAttribute> attributes = tdp.getMGUI().getAllAttributes();
+        List<AvatarMethod> methods = tdp.getMGUI().getAllMethods();
         JDialogAvatarTransition jdat = new JDialogAvatarTransition(frame, "Setting transition parameters", guard, afterMin, afterMax, computeMin, computeMax, listOfActions, attributes, methods, filesToInclude, codeToInclude, probability);
         //  jdat.setSize(600, 550);
         GraphicLib.centerOnParent(jdat, 600, 550);
diff --git a/src/main/java/ui/window/JDialogAvatarBlock.java b/src/main/java/ui/window/JDialogAvatarBlock.java
index 1990712faa..c3bdb5e325 100644
--- a/src/main/java/ui/window/JDialogAvatarBlock.java
+++ b/src/main/java/ui/window/JDialogAvatarBlock.java
@@ -48,10 +48,19 @@ import ui.TAttribute;
 import javax.swing.*;
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
-import java.awt.*;
+
+import java.awt.BorderLayout;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.Insets;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.util.LinkedList;
+import java.util.List;
 
 
 /**
@@ -64,10 +73,10 @@ import java.util.LinkedList;
  */
 public class JDialogAvatarBlock extends JDialogBase implements ActionListener, ListSelectionListener {
 
-    private LinkedList<TAttribute> attributes, attributesPar, forbidden;
-    private LinkedList<Boolean> initValues;
-    private LinkedList<AvatarMethod> methods, methodsPar;
-    private LinkedList<AvatarSignal> signals, signalsPar;
+    private List<TAttribute> attributes, attributesPar, forbidden;
+    private List<Boolean> initValues;
+    private List<AvatarMethod> methods, methodsPar;
+    private List<AvatarSignal> signals, signalsPar;
     private boolean checkKeyword, checkJavaKeyword;
 
     private boolean cancelled = true;
@@ -122,7 +131,7 @@ public class JDialogAvatarBlock extends JDialogBase implements ActionListener, L
     /**
      * Creates new form
      */
-    public JDialogAvatarBlock(LinkedList<TAttribute> _attributes, LinkedList<AvatarMethod> _methods, LinkedList<AvatarSignal> _signals, LinkedList<TAttribute> _forbidden, Frame f, String title, String attrib, int _tab, String[] _globalCode, boolean _hasGlobalCode, String _mainCode) {
+    public JDialogAvatarBlock( List<TAttribute> _attributes, List<AvatarMethod> _methods, List<AvatarSignal> _signals, List<TAttribute> _forbidden, Frame f, String title, String attrib, int _tab, String[] _globalCode, boolean _hasGlobalCode, String _mainCode) {
         super(f, title, true);
         frame = f;
         attributesPar = _attributes;
diff --git a/src/main/java/ui/window/JDialogAvatarSignal.java b/src/main/java/ui/window/JDialogAvatarSignal.java
index c463100117..555e36aa46 100644
--- a/src/main/java/ui/window/JDialogAvatarSignal.java
+++ b/src/main/java/ui/window/JDialogAvatarSignal.java
@@ -38,19 +38,29 @@
 
 package ui.window;
 
-import ui.AvatarSignal;
-import ui.util.IconManager;
-import ui.TGComponent;
-import myutil.TraceManager;
-
-import javax.swing.*;
-import java.awt.*;
+import java.awt.BorderLayout;
+import java.awt.Container;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Vector;
 
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+
+import myutil.TraceManager;
+import ui.AvatarSignal;
+import ui.TGComponent;
+
 
 /**
  * Class JDialogAvatarSignal
@@ -61,8 +71,8 @@ import java.util.Vector;
  */
 public class JDialogAvatarSignal extends JDialogBase implements ActionListener  {
 
-    private LinkedList<AvatarSignal> signals, realSignals;
-    private LinkedList<String> showSignals;
+    private List<AvatarSignal> signals, realSignals;
+    private List<String> showSignals;
     private String currentSignal;
     private boolean isOut;
 	
@@ -81,7 +91,7 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener
     private JTextField signal;
 
     /** Creates new form  */
-    public JDialogAvatarSignal(Frame _f, String _title, String _currentSignal, LinkedList<AvatarSignal> _signals, boolean _isOut, TGComponent _reference, Vector<TGComponent> _refs) {
+    public JDialogAvatarSignal(Frame _f, String _title, String _currentSignal, List<AvatarSignal> _signals, boolean _isOut, TGComponent _reference, Vector<TGComponent> _refs) {
 
         super(_f, _title, true);
 
@@ -100,7 +110,6 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener
         pack();
     }
 
-
     private void makeSignals() {
         showSignals = new LinkedList<String> ();
         realSignals = new LinkedList<AvatarSignal> ();
diff --git a/src/main/java/ui/window/JDialogAvatarTimer.java b/src/main/java/ui/window/JDialogAvatarTimer.java
index 845172d98b..913b268c5a 100644
--- a/src/main/java/ui/window/JDialogAvatarTimer.java
+++ b/src/main/java/ui/window/JDialogAvatarTimer.java
@@ -36,18 +36,25 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
-
-
 package ui.window;
 
-import ui.util.IconManager;
-
-import javax.swing.*;
-import java.awt.*;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
-import java.util.LinkedList;
+import java.util.List;
+
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.border.TitledBorder;
 
 /**
  * Class JDialogAvatarTimer
@@ -58,7 +65,7 @@ import java.util.LinkedList;
  */
 public class JDialogAvatarTimer extends JDialogBase implements ActionListener  {
 
-    private LinkedList<String> timers;
+    private List<String> timers;
 
     private boolean cancelled = true;
     private JPanel panel1, panel2;
@@ -77,8 +84,7 @@ public class JDialogAvatarTimer extends JDialogBase implements ActionListener  {
 
 
     /** Creates new form  */
-    public JDialogAvatarTimer(Frame _f, String _title, String _timer, String _value, LinkedList<String> _timers, boolean _setValue) {
-
+    public JDialogAvatarTimer(Frame _f, String _title, String _timer, String _value, List<String> _timers, boolean _setValue) {
         super(_f, _title, true);
 
         timers = _timers;
@@ -87,13 +93,13 @@ public class JDialogAvatarTimer extends JDialogBase implements ActionListener  {
         setValue = _setValue;
 
         initComponents();
-        myInitComponents();
+     //   myInitComponents();
         pack();
     }
-
-
-    private void myInitComponents() {
-    }
+//
+//
+//    private void myInitComponents() {
+//    }
 
     private void initComponents() {
         Container c = getContentPane();
@@ -102,7 +108,7 @@ public class JDialogAvatarTimer extends JDialogBase implements ActionListener  {
         GridBagLayout gridbag2 = new GridBagLayout();
         GridBagConstraints c0 = new GridBagConstraints();
         GridBagConstraints c1 = new GridBagConstraints();
-        GridBagConstraints c2 = new GridBagConstraints();
+        //GridBagConstraints c2 = new GridBagConstraints();
 
         setFont(new Font("Helvetica", Font.PLAIN, 14));
         c.setLayout(gridbag0);
@@ -112,7 +118,7 @@ public class JDialogAvatarTimer extends JDialogBase implements ActionListener  {
         panel1 = new JPanel();
         panel1.setLayout(gridbag1);
 
-        panel1.setBorder(new javax.swing.border.TitledBorder("Timer"));
+        panel1.setBorder(new TitledBorder("Timer"));
 
         panel1.setPreferredSize(new Dimension(300, 150));
 
diff --git a/src/main/java/ui/window/JDialogAvatarTransition.java b/src/main/java/ui/window/JDialogAvatarTransition.java
index fa6a477218..e1847f538c 100644
--- a/src/main/java/ui/window/JDialogAvatarTransition.java
+++ b/src/main/java/ui/window/JDialogAvatarTransition.java
@@ -36,24 +36,35 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
+package ui.window;
 
+import java.awt.BorderLayout;
+import java.awt.Container;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.Insets;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.List;
+import java.util.Vector;
 
-
-package ui.window;
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JTabbedPane;
+import javax.swing.JTextArea;
+import javax.swing.JTextField;
 
 import myutil.Conversion;
 import myutil.GraphicLib;
 import ui.AvatarMethod;
-import ui.util.IconManager;
 import ui.TAttribute;
 
-import javax.swing.*;
-import java.awt.*;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.util.LinkedList;
-import java.util.Vector;
-
 /**
    * Class JDialogAvatarTransition
    * Dialog for managing transitions between states
@@ -65,8 +76,8 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
 
     private Vector<String> actions;
     private String guard, afterMin, afterMax, computeMin, computeMax, probability;
-    private LinkedList<TAttribute> myAttributes;
-    private LinkedList<AvatarMethod> myMethods;
+    private List<TAttribute> myAttributes;
+    private List<AvatarMethod> myMethods;
     private Vector<String> allElements, insertElements;
 
     protected String [] filesToInclude;
@@ -91,7 +102,7 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
     // arrayDelay: [0] -> minDelay ; [1] -> maxDelay
     public JDialogAvatarTransition(Frame _f, String _title, String _guard, String _afterMin, String _afterMax,
 								   String _computeMin, String _computeMax, Vector<String> _actions,
-								   LinkedList<TAttribute> _myAttributes, LinkedList<AvatarMethod> _myMethods,
+								   List<TAttribute> _myAttributes, List<AvatarMethod> _myMethods,
 								   String[] _filesToInclude, String[] _codeToInclude, String _probability) {
 
         super(_f, _title, true);
@@ -407,5 +418,4 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen
     public String[] getCodeToInclude() {
         return codeToInclude;
     }
-
 }
diff --git a/src/main/java/ui/window/JDialogModelChecking.java b/src/main/java/ui/window/JDialogModelChecking.java
index 93fb37d7bb..c6978e3a90 100644
--- a/src/main/java/ui/window/JDialogModelChecking.java
+++ b/src/main/java/ui/window/JDialogModelChecking.java
@@ -46,11 +46,20 @@ import ui.util.IconManager;
 import javax.swing.*;
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
-import java.awt.*;
+
+import java.awt.BorderLayout;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.util.Iterator;
 import java.util.LinkedList;
+import java.util.List;
 
 /**
  * Class JDialogModelChecking
@@ -61,10 +70,10 @@ import java.util.LinkedList;
  * @version 1.0 13/12/2003
  */
 public class JDialogModelChecking extends JDialogBase implements ActionListener, ListSelectionListener {
-    public static java.util.List<TClassInterface> validated, ignored;
+    public static List<TClassInterface> validated, ignored;
     private static boolean overideSyntaxChecking = false;
 
-    private java.util.List<TClassInterface> val, ign, back;
+    private List<TClassInterface> val, ign, back;
 
     //subpanels
     private JPanel panel1, panel2, panel3, panel4, panel5, panel6;
@@ -79,7 +88,7 @@ public class JDialogModelChecking extends JDialogBase implements ActionListener,
     /**
      * Creates new form
      */
-    public JDialogModelChecking(Frame f, LinkedList<TClassInterface> _back, java.util.List<TGComponent> componentList, String title) {
+    public JDialogModelChecking(Frame f, List<TClassInterface> _back, List<TGComponent> componentList, String title) {
         super(f, title, true);
 
         back = _back;
@@ -101,8 +110,8 @@ public class JDialogModelChecking extends JDialogBase implements ActionListener,
         pack();
     }
 
-    private java.util.List<TClassInterface> makeNewVal(java.util.List<TGComponent> list) {
-        java.util.List<TClassInterface> v = new LinkedList<TClassInterface>();
+    private List<TClassInterface> makeNewVal(List<TGComponent> list) {
+        List<TClassInterface> v = new LinkedList<TClassInterface>();
 
         for (TGComponent tgc : list)
             if (tgc instanceof TClassInterface)
@@ -111,7 +120,7 @@ public class JDialogModelChecking extends JDialogBase implements ActionListener,
         return v;
     }
 
-    private void checkTClasses(java.util.List<TClassInterface> tobeChecked, java.util.List<TGComponent> source) {
+    private void checkTClasses( List<TClassInterface> tobeChecked, List<TGComponent> source) {
         Iterator<TClassInterface> iter = tobeChecked.iterator();
         while (iter.hasNext()) {
             TClassInterface t = iter.next();
@@ -120,7 +129,7 @@ public class JDialogModelChecking extends JDialogBase implements ActionListener,
         }
     }
 
-    public void addNewTclasses(java.util.List<TClassInterface> added, java.util.List<TGComponent> source, java.util.List<TClassInterface> notSource) {
+    public void addNewTclasses(List<TClassInterface> added, List<TGComponent> source, List<TClassInterface> notSource) {
         for (TGComponent tgc : source)
             if ((tgc instanceof TClassInterface) && (!added.contains(tgc)) && (!notSource.contains(tgc)))
                 added.add((TClassInterface) tgc);
diff --git a/src/main/java/ui/window/JDialogPerformancePragma.java b/src/main/java/ui/window/JDialogPerformancePragma.java
index ab990ef7b2..f204f13efe 100644
--- a/src/main/java/ui/window/JDialogPerformancePragma.java
+++ b/src/main/java/ui/window/JDialogPerformancePragma.java
@@ -43,10 +43,21 @@ import ui.util.IconManager;
 
 import javax.swing.*;
 import javax.swing.text.BadLocationException;
-import java.awt.*;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.ComponentOrientation;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.Insets;
+import java.awt.Point;
 import java.awt.event.*;
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * Class JDialogPragma
@@ -67,7 +78,7 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe
     protected JMenuBar menuBar;
     protected JMenu help;
     protected JPopupMenu helpPopup;
-    public HashMap<String, java.util.List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>();
+    public Map<String, List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>();
 
     /**
      * Creates new form
@@ -85,7 +96,7 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe
         //Form list of all blocks
         //For each block, create a list of all states and signals
 
-        private JList list;
+        private JList<String> list;
         private JPopupMenu popupMenu;
         private String subWord;
         private final int insertionPosition;
@@ -112,8 +123,8 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe
             }
         }
 
-        private JList createSuggestionList(int linePosition, final int position, final String subWord) {
-            ArrayList<String> matches = new ArrayList<String>();
+        private JList<String> createSuggestionList(int linePosition, final int position, final String subWord) {
+            List<String> matches = new ArrayList<String>();
             if (linePosition < 6) {
                 matches.add("Latency(");
             } else if (!subWord.contains(".")) {
@@ -257,7 +268,6 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe
     }
 
     protected void initComponents() {
-
         Container c = getContentPane();
         Font f = new Font("Helvetica", Font.PLAIN, 14);
         setFont(f);
diff --git a/src/main/java/ui/window/JDialogPragma.java b/src/main/java/ui/window/JDialogPragma.java
index b9918ad98d..21d864dcef 100644
--- a/src/main/java/ui/window/JDialogPragma.java
+++ b/src/main/java/ui/window/JDialogPragma.java
@@ -36,17 +36,27 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
-
 package ui.window;
 
 import ui.util.IconManager;
 
 import javax.swing.*;
 import javax.swing.text.BadLocationException;
-import java.awt.*;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.ComponentOrientation;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.Insets;
+import java.awt.Point;
 import java.awt.event.*;
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
@@ -68,8 +78,8 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
     protected JButton cancel;
     protected JMenu help;
     private JPopupMenu helpPopup;
-    public HashMap<String, java.util.List<String>> blockAttributeMap = new HashMap<>();
-    public HashMap<String, java.util.List<String>> blockStateMap = new HashMap<>();
+    public Map<String, java.util.List<String>> blockAttributeMap = new HashMap<>();
+    public Map<String, java.util.List<String>> blockStateMap = new HashMap<>();
 
     /**
      * Creates new form
@@ -85,7 +95,7 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
 
     public class SuggestionPanel {
         private final String[] pragma = {"#Authenticity", "#Confidentiality", "#PublicConstant", "#PrivateConstant", "#InitialSessionKnowledge", "#InitialSystemKnowledge", "#PrivatePublicKeys", "#Public", "#SecrecyAssumption", "#Secret"};
-        private JList list;
+        private JList<String> list;
         private JPopupMenu popupMenu;
         private String subWord;
         private final int insertionPosition;
@@ -111,8 +121,8 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
             }
         }
 
-        private JList createSuggestionList(final int position, final String subWord, String header) {
-            ArrayList<String> matches = new ArrayList<>();
+        private JList<String> createSuggestionList(final int position, final String subWord, String header) {
+            List<String> matches = new ArrayList<>();
             if (subWord.startsWith("#")) {
                 for (String p : pragma) {
                     if (p.startsWith(subWord)) {
@@ -291,7 +301,6 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
     }
 
     protected void initComponents() {
-
         Container c = getContentPane();
         Font f = new Font("Helvetica", Font.PLAIN, 14);
         setFont(f);
@@ -358,12 +367,10 @@ public class JDialogPragma extends JDialogBase implements ActionListener {
             }
         });
 
-
         JScrollPane jsp = new JScrollPane(textarea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
         jsp.setPreferredSize(new Dimension(300, 300));
         c.add(jsp, BorderLayout.CENTER);
 
-
         close = new JButton("Ok", IconManager.imgic25);
         cancel = new JButton("Cancel", IconManager.imgic27);
 
diff --git a/src/main/java/ui/window/JDialogSafetyPragma.java b/src/main/java/ui/window/JDialogSafetyPragma.java
index 66fe30d12f..bb9afff2fe 100644
--- a/src/main/java/ui/window/JDialogSafetyPragma.java
+++ b/src/main/java/ui/window/JDialogSafetyPragma.java
@@ -43,10 +43,21 @@ import ui.util.IconManager;
 
 import javax.swing.*;
 import javax.swing.text.BadLocationException;
-import java.awt.*;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.ComponentOrientation;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.Insets;
+import java.awt.Point;
 import java.awt.event.*;
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * Class JDialogPragma
@@ -67,7 +78,7 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener {
     protected JMenuBar menuBar;
     protected JMenu help;
     protected JPopupMenu helpPopup;
-    public HashMap<String, java.util.List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>();
+    public Map<String, List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>();
 
     /**
      * Creates new form
@@ -86,7 +97,7 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener {
         //Form list of all blocks
         //For each block, create a list of all attribute strings and states
 
-        private JList list;
+        private JList<String> list;
         private JPopupMenu popupMenu;
         private String subWord;
         private final int insertionPosition;
@@ -113,8 +124,8 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener {
             }
         }
 
-        private JList createSuggestionList(int linePosition, final int position, final String subWord) {
-            ArrayList<String> matches = new ArrayList<String>();
+        private JList<String> createSuggestionList(int linePosition, final int position, final String subWord) {
+            List<String> matches = new ArrayList<String>();
             if (linePosition < 3) {
                 for (String p : pragma) {
                     if (p.startsWith(subWord)) {
@@ -264,8 +275,6 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener {
     }
 
     protected void initComponents() {
-
-
         Container c = getContentPane();
         Font f = new Font("Helvetica", Font.PLAIN, 14);
         setFont(f);
@@ -364,6 +373,7 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener {
         c.add(jp, BorderLayout.SOUTH);
     }
 
+    @Override
     public void actionPerformed(ActionEvent evt) {
         String command = evt.getActionCommand();
 
@@ -373,7 +383,6 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener {
         } else if (command.equals("Ok")) {
             close();
         }
-
     }
 
     public void cancel() {
@@ -396,6 +405,4 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener {
     public String getText() {
         return text;
     }
-
-
 }
diff --git a/src/main/java/ui/window/JDialogSelectAvatarBlock.java b/src/main/java/ui/window/JDialogSelectAvatarBlock.java
index 98cb245ad0..2e7eef1348 100644
--- a/src/main/java/ui/window/JDialogSelectAvatarBlock.java
+++ b/src/main/java/ui/window/JDialogSelectAvatarBlock.java
@@ -45,11 +45,19 @@ import ui.util.IconManager;
 import javax.swing.*;
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
-import java.awt.*;
+
+import java.awt.BorderLayout;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.util.Iterator;
 import java.util.LinkedList;
+import java.util.List;
 
 
 /**
@@ -61,10 +69,10 @@ import java.util.LinkedList;
  * @version 1.0 18/05/2010
  */
 public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListener, ListSelectionListener {
-    public LinkedList<AvatarBDStateMachineOwner> validated, ignored;
+    public List<AvatarBDStateMachineOwner> validated, ignored;
     private boolean optimized = true;
 
-    private LinkedList<AvatarBDStateMachineOwner> val, ign, back;
+    private List<AvatarBDStateMachineOwner> val, ign, back;
 
     private JList<AvatarBDStateMachineOwner> listIgnored;
     private JList<AvatarBDStateMachineOwner> listValidated;
@@ -79,7 +87,7 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe
     /**
      * Creates new form
      */
-    public JDialogSelectAvatarBlock(Frame f, LinkedList<AvatarBDStateMachineOwner> _back, LinkedList<AvatarBDStateMachineOwner> componentList, String title, LinkedList<AvatarBDStateMachineOwner> _validated, LinkedList<AvatarBDStateMachineOwner> _ignored, boolean _optimized) {
+    public JDialogSelectAvatarBlock(Frame f, List<AvatarBDStateMachineOwner> _back, List<AvatarBDStateMachineOwner> componentList, String title, List<AvatarBDStateMachineOwner> _validated, List<AvatarBDStateMachineOwner> _ignored, boolean _optimized) {
         super(f, title, true);
 
         back = _back;
@@ -103,7 +111,7 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe
         pack();
     }
 
-    private void checkTask(LinkedList<AvatarBDStateMachineOwner> tobeChecked, LinkedList<AvatarBDStateMachineOwner> source) {
+    private void checkTask( List<AvatarBDStateMachineOwner> tobeChecked, List<AvatarBDStateMachineOwner> source) {
         Iterator<AvatarBDStateMachineOwner> iterator = tobeChecked.iterator();
 
         while (iterator.hasNext()) {
@@ -113,7 +121,7 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe
         }
     }
 
-    private void addNewTask(LinkedList<AvatarBDStateMachineOwner> added, LinkedList<AvatarBDStateMachineOwner> source, LinkedList<AvatarBDStateMachineOwner> notSource) {
+    private void addNewTask( List<AvatarBDStateMachineOwner> added, List<AvatarBDStateMachineOwner> source, List<AvatarBDStateMachineOwner> notSource) {
         for (AvatarBDStateMachineOwner tgc : source)
             if (!added.contains(tgc) && !notSource.contains(tgc))
                 added.add(tgc);
@@ -262,6 +270,7 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe
 
     }
 
+    @Override
     public void actionPerformed(ActionEvent evt) {
         String command = evt.getActionCommand();
 
@@ -380,7 +389,6 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe
         }
     }
 
-
     public void valueChanged(ListSelectionEvent e) {
         setButtons();
     }
@@ -393,11 +401,11 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe
         return hasBeenCancelled;
     }
 
-    public LinkedList<AvatarBDStateMachineOwner> getValidated() {
+    public List<AvatarBDStateMachineOwner> getValidated() {
         return validated;
     }
 
-    public LinkedList<AvatarBDStateMachineOwner> getIgnored() {
+    public List<AvatarBDStateMachineOwner> getIgnored() {
         return ignored;
     }
 }
diff --git a/src/main/java/ui/window/JDialogSignalAssociation.java b/src/main/java/ui/window/JDialogSignalAssociation.java
index 084e1046c1..b87fd0fe74 100644
--- a/src/main/java/ui/window/JDialogSignalAssociation.java
+++ b/src/main/java/ui/window/JDialogSignalAssociation.java
@@ -36,27 +36,39 @@
  * knowledge of the CeCILL license and that you accept its terms.
  */
 
+package ui.window;
 
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.List;
+import java.util.Vector;
 
-
-package ui.window;
+import javax.swing.ButtonGroup;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JList;
+import javax.swing.JPanel;
+import javax.swing.JRadioButton;
+import javax.swing.JScrollPane;
+import javax.swing.JTextField;
+import javax.swing.ListSelectionModel;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
 
 import myutil.TraceManager;
 import ui.AvatarSignal;
-import ui.util.IconManager;
 import ui.avatarbd.AvatarBDBlock;
 import ui.avatarbd.AvatarBDPortConnector;
 
-import javax.swing.*;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-import java.awt.*;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.util.LinkedList;
-import java.util.Vector;
-
-
 /**
    * Class JDialogSignalAssociation
    * Dialog for managing associations between signals (AVATAR profile)
@@ -67,7 +79,7 @@ import java.util.Vector;
 public class JDialogSignalAssociation extends JDialogBase implements ActionListener, ListSelectionListener  {
     private Vector<String> signalAssociation, localSignalAssociations;
     private AvatarBDBlock block1, block2;
-    private LinkedList<AvatarSignal> available1, available2;
+    private List<AvatarSignal> available1, available2;
     private AvatarBDPortConnector connector;
 
     private JRadioButton synchronous, asynchronous;
@@ -88,7 +100,6 @@ public class JDialogSignalAssociation extends JDialogBase implements ActionListe
     private JButton downButton;
     private JButton removeButton;
 
-
     /** Creates new form  */
     public JDialogSignalAssociation(Frame _f, AvatarBDBlock _block1, AvatarBDBlock _block2, Vector<String> _signalAssociation, AvatarBDPortConnector _connector, String _title) {
         super(_f, _title, true);
@@ -100,13 +111,13 @@ public class JDialogSignalAssociation extends JDialogBase implements ActionListe
         localSignalAssociations.addAll(signalAssociation);
 
         // Available signals
-	if (block1 != block2) {
-	    available1 = block1.getListOfAvailableSignals();
-	    available2 = block2.getListOfAvailableSignals();
-	} else {
-	    available1 = block1.getListOfAvailableOutSignals();
-	    available2 = block2.getListOfAvailableInSignals();
-	}
+		if (block1 != block2) {
+		    available1 = block1.getListOfAvailableSignals();
+		    available2 = block2.getListOfAvailableSignals();
+		} else {
+		    available1 = block1.getListOfAvailableOutSignals();
+		    available2 = block2.getListOfAvailableInSignals();
+		}
 
         initComponents();
         myInitComponents();
-- 
GitLab