From 67cd031d7f9acd9b79cfcc749c2e5eb294f48889 Mon Sep 17 00:00:00 2001 From: Chrissi <christopher@hbsc-werner.de> Date: Thu, 20 Jun 2019 13:23:47 +0200 Subject: [PATCH] remove unused imports and old model documents --- solutions/RSync/Generated.bddmodel | 79 ---------- solutions/RSync/TT.ecore | 41 ------ solutions/RSync/TT.ttmodel | 137 ------------------ solutions/RSync/TTTest.ttmodel | 66 --------- .../metamodels/create/LoadEObject.java | 1 - 5 files changed, 324 deletions(-) delete mode 100644 solutions/RSync/Generated.bddmodel delete mode 100644 solutions/RSync/TT.ecore delete mode 100644 solutions/RSync/TT.ttmodel delete mode 100644 solutions/RSync/TTTest.ttmodel diff --git a/solutions/RSync/Generated.bddmodel b/solutions/RSync/Generated.bddmodel deleted file mode 100644 index 36153b8..0000000 --- a/solutions/RSync/Generated.bddmodel +++ /dev/null @@ -1,79 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<bdd:BDD xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bdd="https://www.transformation-tool-contest.eu/2019/bdd" name="TableI4O2Seed42"> - <ports xsi:type="bdd:InputPort" name="I2" subtrees="//@tree/@treeForOne/@treeForOne //@tree/@treeForOne/@treeForZero //@tree/@treeForZero/@treeForOne"/> - <ports xsi:type="bdd:InputPort" name="I3" subtrees="//@tree/@treeForOne //@tree/@treeForZero"/> - <ports xsi:type="bdd:OutputPort" name="O0" assignments="//@tree/@treeForOne/@treeForZero/@treeForZero/@assignments.0 //@tree/@treeForOne/@treeForZero/@treeForOne/@treeForOne/@assignments.0 //@tree/@treeForOne/@treeForOne/@treeForZero/@treeForZero/@assignments.0 //@tree/@treeForZero/@treeForZero/@assignments.0 //@tree/@treeForZero/@treeForOne/@treeForOne/@treeForZero/@assignments.1 //@tree/@treeForOne/@treeForZero/@treeForOne/@treeForZero/@assignments.0 //@tree/@treeForOne/@treeForOne/@treeForOne/@treeForOne/@assignments.1 //@tree/@treeForZero/@treeForOne/@treeForZero/@treeForOne/@assignments.1 //@tree/@treeForOne/@treeForOne/@treeForOne/@treeForZero/@assignments.1 //@tree/@treeForZero/@treeForOne/@treeForOne/@treeForOne/@assignments.1 //@tree/@treeForZero/@treeForOne/@treeForZero/@treeForZero/@assignments.1 //@tree/@treeForOne/@treeForOne/@treeForZero/@treeForOne/@assignments.1"/> - <ports xsi:type="bdd:OutputPort" name="O1" assignments="//@tree/@treeForOne/@treeForOne/@treeForOne/@treeForOne/@assignments.0 //@tree/@treeForOne/@treeForOne/@treeForOne/@treeForZero/@assignments.0 //@tree/@treeForZero/@treeForOne/@treeForOne/@treeForZero/@assignments.0 //@tree/@treeForZero/@treeForOne/@treeForZero/@treeForZero/@assignments.0 //@tree/@treeForZero/@treeForOne/@treeForZero/@treeForOne/@assignments.0 //@tree/@treeForOne/@treeForZero/@treeForZero/@assignments.1 //@tree/@treeForZero/@treeForOne/@treeForOne/@treeForOne/@assignments.0 //@tree/@treeForOne/@treeForOne/@treeForZero/@treeForZero/@assignments.1 //@tree/@treeForOne/@treeForZero/@treeForOne/@treeForOne/@assignments.1 //@tree/@treeForOne/@treeForOne/@treeForZero/@treeForOne/@assignments.0 //@tree/@treeForOne/@treeForZero/@treeForOne/@treeForZero/@assignments.1 //@tree/@treeForZero/@treeForZero/@assignments.1"/> - <ports xsi:type="bdd:InputPort" name="I1" subtrees="//@tree"/> - <ports xsi:type="bdd:InputPort" name="I0" subtrees="//@tree/@treeForOne/@treeForOne/@treeForOne //@tree/@treeForOne/@treeForOne/@treeForZero //@tree/@treeForOne/@treeForZero/@treeForOne //@tree/@treeForZero/@treeForOne/@treeForOne //@tree/@treeForZero/@treeForOne/@treeForZero"/> - <tree xsi:type="bdd:Subtree" port="//@ports.4"> - <treeForZero xsi:type="bdd:Subtree" port="//@ports.1"> - <treeForZero xsi:type="bdd:Leaf"> - <assignments value="true" port="//@ports.2"/> - <assignments port="//@ports.3"/> - </treeForZero> - <treeForOne xsi:type="bdd:Subtree" port="//@ports.0"> - <treeForZero xsi:type="bdd:Subtree" port="//@ports.5"> - <treeForZero xsi:type="bdd:Leaf"> - <assignments value="true" port="//@ports.3"/> - <assignments port="//@ports.2"/> - </treeForZero> - <treeForOne xsi:type="bdd:Leaf"> - <assignments value="true" port="//@ports.3"/> - <assignments value="true" port="//@ports.2"/> - </treeForOne> - </treeForZero> - <treeForOne xsi:type="bdd:Subtree" port="//@ports.5"> - <treeForZero xsi:type="bdd:Leaf"> - <assignments value="true" port="//@ports.3"/> - <assignments value="true" port="//@ports.2"/> - </treeForZero> - <treeForOne xsi:type="bdd:Leaf"> - <assignments value="true" port="//@ports.3"/> - <assignments port="//@ports.2"/> - </treeForOne> - </treeForOne> - </treeForOne> - </treeForZero> - <treeForOne xsi:type="bdd:Subtree" port="//@ports.1"> - <treeForZero xsi:type="bdd:Subtree" port="//@ports.0"> - <treeForZero xsi:type="bdd:Leaf"> - <assignments port="//@ports.2"/> - <assignments value="true" port="//@ports.3"/> - </treeForZero> - <treeForOne xsi:type="bdd:Subtree" port="//@ports.5"> - <treeForZero xsi:type="bdd:Leaf"> - <assignments port="//@ports.2"/> - <assignments port="//@ports.3"/> - </treeForZero> - <treeForOne xsi:type="bdd:Leaf"> - <assignments port="//@ports.2"/> - <assignments value="true" port="//@ports.3"/> - </treeForOne> - </treeForOne> - </treeForZero> - <treeForOne xsi:type="bdd:Subtree" port="//@ports.0"> - <treeForZero xsi:type="bdd:Subtree" port="//@ports.5"> - <treeForZero xsi:type="bdd:Leaf"> - <assignments value="true" port="//@ports.2"/> - <assignments port="//@ports.3"/> - </treeForZero> - <treeForOne xsi:type="bdd:Leaf"> - <assignments port="//@ports.3"/> - <assignments port="//@ports.2"/> - </treeForOne> - </treeForZero> - <treeForOne xsi:type="bdd:Subtree" port="//@ports.5"> - <treeForZero xsi:type="bdd:Leaf"> - <assignments port="//@ports.3"/> - <assignments port="//@ports.2"/> - </treeForZero> - <treeForOne xsi:type="bdd:Leaf"> - <assignments port="//@ports.3"/> - <assignments value="true" port="//@ports.2"/> - </treeForOne> - </treeForOne> - </treeForOne> - </treeForOne> - </tree> -</bdd:BDD> diff --git a/solutions/RSync/TT.ecore b/solutions/RSync/TT.ecore deleted file mode 100644 index 1437208..0000000 --- a/solutions/RSync/TT.ecore +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> - <ecore:EPackage name="TT" nsURI="https://www.transformation-tool-contest.eu/2019/tt" xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" - nsPrefix="tt"> - <eClassifiers xsi:type="ecore:EClass" name="LocatedElement"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="location" ordered="false" - unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="TruthTable" eSuperTypes="#/0/LocatedElement"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" - unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="ports" ordered="false" - lowerBound="1" upperBound="-1" eType="#/0/Port" containment="true" eOpposite="#/0/Port/owner"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="rows" ordered="false" - lowerBound="2" upperBound="-1" eType="#/0/Row" containment="true" eOpposite="#/0/Row/owner"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Port" abstract="true" eSuperTypes="#/0/LocatedElement"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" - unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="owner" ordered="false" - lowerBound="1" eType="#/0/TruthTable" eOpposite="#/0/TruthTable/ports"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="cells" ordered="false" - upperBound="-1" eType="#/0/Cell" eOpposite="#/0/Cell/port"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="InputPort" eSuperTypes="#/0/Port"/> - <eClassifiers xsi:type="ecore:EClass" name="OutputPort" eSuperTypes="#/0/Port"/> - <eClassifiers xsi:type="ecore:EClass" name="Row" eSuperTypes="#/0/LocatedElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="owner" ordered="false" - lowerBound="1" eType="#/0/TruthTable" eOpposite="#/0/TruthTable/rows"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="cells" ordered="false" - lowerBound="1" upperBound="-1" eType="#/0/Cell" containment="true" eOpposite="#/0/Cell/owner"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Cell" eSuperTypes="#/0/LocatedElement"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" ordered="false" - unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="owner" ordered="false" - lowerBound="1" eType="#/0/Row" eOpposite="#/0/Row/cells"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="port" ordered="false" - lowerBound="1" eType="#/0/Port" eOpposite="#/0/Port/cells"/> - </eClassifiers> - </ecore:EPackage> diff --git a/solutions/RSync/TT.ttmodel b/solutions/RSync/TT.ttmodel deleted file mode 100644 index 55150aa..0000000 --- a/solutions/RSync/TT.ttmodel +++ /dev/null @@ -1,137 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<tt:TruthTable xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tt="https://www.transformation-tool-contest.eu/2019/tt" name="TableI4O2Seed42"> - <ports xsi:type="tt:InputPort" name="I0" cells="//@rows.0/@cells.0 //@rows.1/@cells.0 //@rows.2/@cells.0 //@rows.3/@cells.0 //@rows.4/@cells.0 //@rows.5/@cells.0 //@rows.6/@cells.0 //@rows.7/@cells.0 //@rows.8/@cells.0 //@rows.9/@cells.0 //@rows.10/@cells.0 //@rows.11/@cells.0 //@rows.12/@cells.0 //@rows.13/@cells.0 //@rows.14/@cells.0 //@rows.15/@cells.0"/> - <ports xsi:type="tt:InputPort" name="I1" cells="//@rows.0/@cells.1 //@rows.1/@cells.1 //@rows.2/@cells.1 //@rows.3/@cells.1 //@rows.4/@cells.1 //@rows.5/@cells.1 //@rows.6/@cells.1 //@rows.7/@cells.1 //@rows.8/@cells.1 //@rows.9/@cells.1 //@rows.10/@cells.1 //@rows.11/@cells.1 //@rows.12/@cells.1 //@rows.13/@cells.1 //@rows.14/@cells.1 //@rows.15/@cells.1"/> - <ports xsi:type="tt:InputPort" name="I2" cells="//@rows.0/@cells.2 //@rows.1/@cells.2 //@rows.2/@cells.2 //@rows.3/@cells.2 //@rows.4/@cells.2 //@rows.5/@cells.2 //@rows.6/@cells.2 //@rows.7/@cells.2 //@rows.8/@cells.2 //@rows.9/@cells.2 //@rows.10/@cells.2 //@rows.11/@cells.2 //@rows.12/@cells.2 //@rows.13/@cells.2 //@rows.14/@cells.2 //@rows.15/@cells.2"/> - <ports xsi:type="tt:InputPort" name="I3" cells="//@rows.0/@cells.3 //@rows.1/@cells.3 //@rows.2/@cells.3 //@rows.3/@cells.3 //@rows.4/@cells.3 //@rows.5/@cells.3 //@rows.6/@cells.3 //@rows.7/@cells.3 //@rows.8/@cells.3 //@rows.9/@cells.3 //@rows.10/@cells.3 //@rows.11/@cells.3 //@rows.12/@cells.3 //@rows.13/@cells.3 //@rows.14/@cells.3 //@rows.15/@cells.3"/> - <ports xsi:type="tt:OutputPort" name="O0" cells="//@rows.0/@cells.4 //@rows.1/@cells.4 //@rows.2/@cells.4 //@rows.3/@cells.4 //@rows.4/@cells.4 //@rows.5/@cells.4 //@rows.6/@cells.4 //@rows.7/@cells.4 //@rows.8/@cells.4 //@rows.9/@cells.4 //@rows.10/@cells.4 //@rows.11/@cells.4 //@rows.12/@cells.4 //@rows.13/@cells.4 //@rows.14/@cells.4 //@rows.15/@cells.4"/> - <ports xsi:type="tt:OutputPort" name="O1" cells="//@rows.0/@cells.5 //@rows.1/@cells.5 //@rows.2/@cells.5 //@rows.3/@cells.5 //@rows.4/@cells.5 //@rows.5/@cells.5 //@rows.6/@cells.5 //@rows.7/@cells.5 //@rows.8/@cells.5 //@rows.9/@cells.5 //@rows.10/@cells.5 //@rows.11/@cells.5 //@rows.12/@cells.5 //@rows.13/@cells.5 //@rows.14/@cells.5 //@rows.15/@cells.5"/> - <rows> - <cells port="//@ports.0"/> - <cells port="//@ports.1"/> - <cells port="//@ports.2"/> - <cells port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells port="//@ports.1"/> - <cells port="//@ports.2"/> - <cells port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> - <rows> - <cells port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells port="//@ports.2"/> - <cells port="//@ports.3"/> - <cells port="//@ports.4"/> - <cells value="true" port="//@ports.5"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells port="//@ports.2"/> - <cells port="//@ports.3"/> - <cells port="//@ports.4"/> - <cells value="true" port="//@ports.5"/> - </rows> - <rows> - <cells port="//@ports.0"/> - <cells port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> - <rows> - <cells port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells port="//@ports.3"/> - <cells port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells port="//@ports.3"/> - <cells port="//@ports.4"/> - <cells value="true" port="//@ports.5"/> - </rows> - <rows> - <cells port="//@ports.0"/> - <cells port="//@ports.1"/> - <cells port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells port="//@ports.4"/> - <cells value="true" port="//@ports.5"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells port="//@ports.1"/> - <cells port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - <cells value="true" port="//@ports.5"/> - </rows> - <rows> - <cells port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> - <rows> - <cells port="//@ports.0"/> - <cells port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - <cells value="true" port="//@ports.5"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells port="//@ports.4"/> - <cells value="true" port="//@ports.5"/> - </rows> - <rows> - <cells port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - <cells port="//@ports.5"/> - </rows> -</tt:TruthTable> diff --git a/solutions/RSync/TTTest.ttmodel b/solutions/RSync/TTTest.ttmodel deleted file mode 100644 index 98d2058..0000000 --- a/solutions/RSync/TTTest.ttmodel +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> -<TruthTable xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://www.transformation-tool-contest.eu/2019/tt" name="Test"> - <ports xsi:type="InputPort" name="a" cells="//@rows.0/@cells.0 //@rows.1/@cells.0 //@rows.2/@cells.0 //@rows.3/@cells.0 //@rows.4/@cells.0 //@rows.5/@cells.0 //@rows.6/@cells.0 //@rows.7/@cells.0 //@rows.8/@cells.0"/> - <ports xsi:type="InputPort" name="b" cells="//@rows.0/@cells.1 //@rows.1/@cells.1 //@rows.2/@cells.1 //@rows.3/@cells.1 //@rows.4/@cells.1 //@rows.5/@cells.1 //@rows.7/@cells.1 //@rows.8/@cells.1"/> - <ports xsi:type="InputPort" name="c" cells="//@rows.1/@cells.2 //@rows.2/@cells.2 //@rows.3/@cells.2 //@rows.4/@cells.2 //@rows.5/@cells.2 //@rows.7/@cells.2 //@rows.8/@cells.2"/> - <ports xsi:type="InputPort" name="d" cells="//@rows.1/@cells.3 //@rows.2/@cells.3 //@rows.4/@cells.3 //@rows.5/@cells.3 //@rows.6/@cells.1 //@rows.7/@cells.3 //@rows.8/@cells.3"/> - <ports xsi:type="OutputPort" name="s" cells="//@rows.0/@cells.2 //@rows.1/@cells.4 //@rows.2/@cells.4 //@rows.3/@cells.3 //@rows.4/@cells.4 //@rows.5/@cells.4 //@rows.6/@cells.2 //@rows.7/@cells.4 //@rows.8/@cells.4"/> - <rows> - <cells value="false" port="//@ports.0"/> - <cells value="false" port="//@ports.1"/> - <cells value="false" port="//@ports.4"/> - </rows> - <rows> - <cells value="false" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="false" port="//@ports.2"/> - <cells value="false" port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - </rows> - <rows> - <cells value="false" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="false" port="//@ports.2"/> - <cells value="true" port="//@ports.3"/> - <cells value="false" port="//@ports.4"/> - </rows> - <rows> - <cells value="false" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells value="false" port="//@ports.4"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="false" port="//@ports.1"/> - <cells value="false" port="//@ports.2"/> - <cells value="false" port="//@ports.3"/> - <cells value="false" port="//@ports.4"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="false" port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells value="false" port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="true" port="//@ports.3"/> - <cells value="false" port="//@ports.4"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="false" port="//@ports.2"/> - <cells value="false" port="//@ports.3"/> - <cells value="true" port="//@ports.4"/> - </rows> - <rows> - <cells value="true" port="//@ports.0"/> - <cells value="true" port="//@ports.1"/> - <cells value="true" port="//@ports.2"/> - <cells value="false" port="//@ports.3"/> - <cells value="false" port="//@ports.4"/> - </rows> -</TruthTable> diff --git a/solutions/RSync/src/main/java/ttc2019/metamodels/create/LoadEObject.java b/solutions/RSync/src/main/java/ttc2019/metamodels/create/LoadEObject.java index 33690e0..6c3d8e6 100644 --- a/solutions/RSync/src/main/java/ttc2019/metamodels/create/LoadEObject.java +++ b/solutions/RSync/src/main/java/ttc2019/metamodels/create/LoadEObject.java @@ -1,6 +1,5 @@ package ttc2019.metamodels.create; -import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.Map; -- GitLab