From 175e7ea15840d8df8d4f2903286f1f49a708d65b Mon Sep 17 00:00:00 2001 From: Florian Dupuy Date: Thu, 21 Jul 2022 17:24:59 +0200 Subject: [PATCH 01/15] Add all layout calculations in Layout::run Signed-off-by: Florian Dupuy --- .../layout/PositionVoltageLevelLayout.java | 9 +++++++- .../PositionVoltageLevelLayoutFactory.java | 7 +++--- .../TestCase15GraphWithVoltageIndicator.java | 5 ++-- ...TestCaseGraphAdaptCellHeightToContent.java | 15 ++++++------ .../java/com/powsybl/sld/raw/TestCase2.java | 5 ++-- .../sld/raw/TestCaseShuntArrangement.java | 10 ++++---- .../powsybl/sld/raw/TestOrderConsistency.java | 23 ++++++++----------- .../sld/raw/TestSerialBlocksInternCells.java | 6 ++--- 8 files changed, 39 insertions(+), 41 deletions(-) diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java index ce919e6a3..36fca3085 100644 --- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java +++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java @@ -31,9 +31,13 @@ public class PositionVoltageLevelLayout extends AbstractVoltageLevelLayout { private static final Logger LOGGER = LoggerFactory.getLogger(PositionVoltageLevelLayout.class); + private final CellDetector cellDetector; + private final BlockOrganizer blockOrganizer; - public PositionVoltageLevelLayout(VoltageLevelGraph graph) { + public PositionVoltageLevelLayout(VoltageLevelGraph graph, CellDetector cellDetector, BlockOrganizer blockOrganizer) { super(graph); + this.cellDetector = cellDetector; + this.blockOrganizer = blockOrganizer; } /** @@ -41,6 +45,9 @@ public PositionVoltageLevelLayout(VoltageLevelGraph graph) { */ @Override public void run(LayoutParameters layoutParam) { + cellDetector.detectCells(getGraph()); + blockOrganizer.organize(getGraph()); + LOGGER.info("Running voltage level layout"); calculateMaxCellHeight(layoutParam); calculateBusNodeCoord(getGraph(), layoutParam); diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayoutFactory.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayoutFactory.java index f9c632efc..e4697264e 100644 --- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayoutFactory.java +++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayoutFactory.java @@ -100,12 +100,11 @@ public PositionVoltageLevelLayoutFactory setBusInfoMap(Map busInfo @Override public Layout create(VoltageLevelGraph graph) { // detect cells - new ImplicitCellDetector(removeUnnecessaryFictitiousNodes, substituteSingularFictitiousByFeederNode, exceptionIfPatternNotHandled) - .detectCells(graph); + ImplicitCellDetector cellDetector = new ImplicitCellDetector(removeUnnecessaryFictitiousNodes, substituteSingularFictitiousByFeederNode, exceptionIfPatternNotHandled); // build blocks from cells - new BlockOrganizer(positionFinder, feederStacked, exceptionIfPatternNotHandled, handleShunts, busInfoMap).organize(graph); + BlockOrganizer blockOrganizer = new BlockOrganizer(positionFinder, feederStacked, exceptionIfPatternNotHandled, handleShunts, busInfoMap); - return new PositionVoltageLevelLayout(graph); + return new PositionVoltageLevelLayout(graph, cellDetector, blockOrganizer); } } diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase15GraphWithVoltageIndicator.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase15GraphWithVoltageIndicator.java index 8aeab8b45..6dca926eb 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase15GraphWithVoltageIndicator.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase15GraphWithVoltageIndicator.java @@ -170,9 +170,8 @@ private void runTest(DiagramStyleProvider styleProvider, String filename, Diagra VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId()); // Run layout - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer(new PositionFromExtension(), true, true, true, labelProvider.getBusInfoSides(g)).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), true, true, true, labelProvider.getBusInfoSides(g)); + new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); // write SVG and compare to reference assertEquals(toString(filename), toSVG(g, filename, labelProvider, styleProvider)); diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCaseGraphAdaptCellHeightToContent.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCaseGraphAdaptCellHeightToContent.java index ffe01fc6d..a16cb4018 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCaseGraphAdaptCellHeightToContent.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCaseGraphAdaptCellHeightToContent.java @@ -13,9 +13,10 @@ import com.powsybl.sld.builders.NetworkGraphBuilder; import com.powsybl.sld.iidm.extensions.ConnectablePosition; import com.powsybl.sld.layout.BlockOrganizer; +import com.powsybl.sld.layout.CellDetector; import com.powsybl.sld.layout.ImplicitCellDetector; -import com.powsybl.sld.layout.positionfromextension.PositionFromExtension; import com.powsybl.sld.layout.PositionVoltageLevelLayout; +import com.powsybl.sld.layout.positionfromextension.PositionFromExtension; import com.powsybl.sld.model.graphs.VoltageLevelGraph; import org.junit.Before; import org.junit.Test; @@ -89,9 +90,9 @@ public void testHeightFixed() { layoutParameters.setAdaptCellHeightToContent(false); VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId()); - new ImplicitCellDetector(false, true, false).detectCells(g); - new BlockOrganizer(new PositionFromExtension(), false).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + CellDetector cellDetector = new ImplicitCellDetector(false, true, false); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), false); + new PositionVoltageLevelLayout(g, cellDetector, blockOrganizer).run(layoutParameters); assertEquals(toString("/TestCaseGraphExternCellHeightFixed.json"), toJson(g, "/TestCaseGraphExternCellHeightFixed.json")); } @@ -102,9 +103,9 @@ public void testAdaptHeight() { layoutParameters.setAdaptCellHeightToContent(true); VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId()); - new ImplicitCellDetector(false, true, false).detectCells(g); - new BlockOrganizer(new PositionFromExtension(), true).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + CellDetector cellDetector = new ImplicitCellDetector(false, true, false); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), true); + new PositionVoltageLevelLayout(g, cellDetector, blockOrganizer).run(layoutParameters); assertEquals(toString("/TestCaseGraphAdaptCellHeightToContent.json"), toJson(g, "/TestCaseGraphAdaptCellHeightToContent.json")); } diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase2.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase2.java index 6c13d339e..fd8bc285a 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase2.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase2.java @@ -69,9 +69,8 @@ public void testStacked() { @Test public void testUnstacked() { VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vlUnstack"); - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer(new PositionFromExtension(), false).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), false); + new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); assertEquals(toString("/TestCase2UnStackedCell.json"), toJson(g, "/TestCase2UnStackedCell.json")); } } diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCaseShuntArrangement.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCaseShuntArrangement.java index 9be05773d..77e46edcc 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCaseShuntArrangement.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCaseShuntArrangement.java @@ -173,18 +173,16 @@ public void setUp() { @Test public void test1() { VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl"); - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer(new PositionFromExtension(), true, true, false).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), true, true, false); + new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); assertEquals(toString("/TestCaseShuntArrangementNo.json"), toJson(g, "/TestCaseShuntArrangementNo.json")); } @Test public void test2() { VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl"); - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer(new PositionFromExtension(), true, true, true).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), true, true, true); + new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); assertEquals(toString("/TestCaseShuntArrangementYes.json"), toJson(g, "/TestCaseShuntArrangementYes.json")); } diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestOrderConsistency.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestOrderConsistency.java index 0ed522b3e..36da3e248 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestOrderConsistency.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestOrderConsistency.java @@ -17,12 +17,11 @@ import com.powsybl.sld.model.nodes.FeederNode; import com.powsybl.sld.model.nodes.FictitiousNode; import com.powsybl.sld.model.nodes.SwitchNode; - import org.junit.Before; import org.junit.Test; -import static org.junit.Assert.assertEquals; import static com.powsybl.sld.model.coordinate.Direction.TOP; +import static org.junit.Assert.assertEquals; /** * @author Benoit Jeanson @@ -94,36 +93,32 @@ private void createCommons(String vlId, boolean middleLeft) { @Test public void testClustMiddleLeft() { VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl1"); - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer(new PositionByClustering()).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionByClustering()); + new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); assertEquals(toString("/orderConsistencyClust1.json"), toJson(g, "/orderConsistencyClust1.json")); } @Test public void testClustNoMiddleLeft() { VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl2"); - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer(new PositionByClustering()).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionByClustering()); + new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); assertEquals(toString("/orderConsistencyClust2.json"), toJson(g, "/orderConsistencyClust2.json")); } @Test public void testExtMiddleLeft() { VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl1"); - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer(new PositionFromExtension()).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension()); + new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); assertEquals(toString("/orderConsistencyExt1.json"), toJson(g, "/orderConsistencyExt1.json")); } @Test public void testExtNoMiddleLeft() { VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl2"); - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer(new PositionFromExtension()).organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension()); + new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); assertEquals(toString("/orderConsistencyExt2.json"), toJson(g, "/orderConsistencyExt2.json")); } } diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestSerialBlocksInternCells.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestSerialBlocksInternCells.java index db26d45d0..80f0986a4 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestSerialBlocksInternCells.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestSerialBlocksInternCells.java @@ -8,6 +8,7 @@ import com.powsybl.sld.builders.VoltageLevelRawBuilder; import com.powsybl.sld.layout.BlockOrganizer; +import com.powsybl.sld.layout.CellDetector; import com.powsybl.sld.layout.ImplicitCellDetector; import com.powsybl.sld.layout.PositionVoltageLevelLayout; import com.powsybl.sld.model.graphs.VoltageLevelGraph; @@ -62,9 +63,8 @@ public void setUp() { @Test public void test() { VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl"); - new ImplicitCellDetector(false, true, false).detectCells(g); - new BlockOrganizer().organize(g); - new PositionVoltageLevelLayout(g).run(layoutParameters); + CellDetector cellDetector = new ImplicitCellDetector(false, true, false); + new PositionVoltageLevelLayout(g, cellDetector, new BlockOrganizer()).run(layoutParameters); assertEquals(toString("/testSerialBlocksInternCells.json"), toJson(g, "/testSerialBlocksInternCells.json")); } } From 8816f8e22a5b453a58364ed13fda498ef5fafd57 Mon Sep 17 00:00:00 2001 From: Florian Dupuy Date: Thu, 21 Jul 2022 17:41:58 +0200 Subject: [PATCH 02/15] Use the LayoutFactory in tests Signed-off-by: Florian Dupuy --- .../TestCase15GraphWithVoltageIndicator.java | 13 ++++++----- ...TestCaseGraphAdaptCellHeightToContent.java | 23 ++++++++++--------- .../com/powsybl/sld/iidm/TestSerialBlock.java | 12 +++------- .../sld/iidm/TestSerialParallelBlock.java | 8 ++----- .../java/com/powsybl/sld/raw/TestCase2.java | 21 +++++++++-------- .../sld/raw/TestCaseShuntArrangement.java | 19 +++++++-------- .../powsybl/sld/raw/TestOrderConsistency.java | 17 ++++---------- .../sld/raw/TestSerialBlocksInternCells.java | 16 ++++++------- 8 files changed, 58 insertions(+), 71 deletions(-) diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase15GraphWithVoltageIndicator.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase15GraphWithVoltageIndicator.java index 6dca926eb..c72944b28 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase15GraphWithVoltageIndicator.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase15GraphWithVoltageIndicator.java @@ -12,10 +12,7 @@ import com.powsybl.iidm.network.TopologyKind; import com.powsybl.sld.builders.NetworkGraphBuilder; import com.powsybl.sld.iidm.extensions.ConnectablePosition; -import com.powsybl.sld.layout.BlockOrganizer; -import com.powsybl.sld.layout.ImplicitCellDetector; -import com.powsybl.sld.layout.PositionVoltageLevelLayout; -import com.powsybl.sld.layout.positionfromextension.PositionFromExtension; +import com.powsybl.sld.layout.PositionVoltageLevelLayoutFactory; import com.powsybl.sld.library.ResourcesComponentLibrary; import com.powsybl.sld.model.coordinate.Side; import com.powsybl.sld.model.graphs.VoltageLevelGraph; @@ -170,8 +167,12 @@ private void runTest(DiagramStyleProvider styleProvider, String filename, Diagra VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId()); // Run layout - BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), true, true, true, labelProvider.getBusInfoSides(g)); - new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters); + new PositionVoltageLevelLayoutFactory() + .setBusInfoMap(labelProvider.getBusInfoSides(g)) + .setExceptionIfPatternNotHandled(true) + .setHandleShunts(true) + .create(g) + .run(layoutParameters); // write SVG and compare to reference assertEquals(toString(filename), toSVG(g, filename, labelProvider, styleProvider)); diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCaseGraphAdaptCellHeightToContent.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCaseGraphAdaptCellHeightToContent.java index a16cb4018..74035b2a4 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCaseGraphAdaptCellHeightToContent.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCaseGraphAdaptCellHeightToContent.java @@ -12,11 +12,7 @@ import com.powsybl.iidm.network.TopologyKind; import com.powsybl.sld.builders.NetworkGraphBuilder; import com.powsybl.sld.iidm.extensions.ConnectablePosition; -import com.powsybl.sld.layout.BlockOrganizer; -import com.powsybl.sld.layout.CellDetector; -import com.powsybl.sld.layout.ImplicitCellDetector; -import com.powsybl.sld.layout.PositionVoltageLevelLayout; -import com.powsybl.sld.layout.positionfromextension.PositionFromExtension; +import com.powsybl.sld.layout.PositionVoltageLevelLayoutFactory; import com.powsybl.sld.model.graphs.VoltageLevelGraph; import org.junit.Before; import org.junit.Test; @@ -90,9 +86,12 @@ public void testHeightFixed() { layoutParameters.setAdaptCellHeightToContent(false); VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId()); - CellDetector cellDetector = new ImplicitCellDetector(false, true, false); - BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), false); - new PositionVoltageLevelLayout(g, cellDetector, blockOrganizer).run(layoutParameters); + + new PositionVoltageLevelLayoutFactory() + .setFeederStacked(false) + .setRemoveUnnecessaryFictitiousNodes(false) + .create(g) + .run(layoutParameters); assertEquals(toString("/TestCaseGraphExternCellHeightFixed.json"), toJson(g, "/TestCaseGraphExternCellHeightFixed.json")); } @@ -103,9 +102,11 @@ public void testAdaptHeight() { layoutParameters.setAdaptCellHeightToContent(true); VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId()); - CellDetector cellDetector = new ImplicitCellDetector(false, true, false); - BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), true); - new PositionVoltageLevelLayout(g, cellDetector, blockOrganizer).run(layoutParameters); + + new PositionVoltageLevelLayoutFactory() + .setRemoveUnnecessaryFictitiousNodes(false) + .create(g) + .run(layoutParameters); assertEquals(toString("/TestCaseGraphAdaptCellHeightToContent.json"), toJson(g, "/TestCaseGraphAdaptCellHeightToContent.json")); } diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialBlock.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialBlock.java index bc4daab3c..690113104 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialBlock.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialBlock.java @@ -9,10 +9,7 @@ import com.powsybl.iidm.network.*; import com.powsybl.sld.builders.NetworkGraphBuilder; import com.powsybl.sld.iidm.extensions.ConnectablePosition; -import com.powsybl.sld.layout.BlockOrganizer; -import com.powsybl.sld.layout.CalculateCoordBlockVisitor; -import com.powsybl.sld.layout.ImplicitCellDetector; -import com.powsybl.sld.layout.LayoutContext; +import com.powsybl.sld.layout.*; import com.powsybl.sld.model.graphs.VoltageLevelGraph; import com.powsybl.sld.model.blocks.Block; import com.powsybl.sld.model.blocks.SerialBlock; @@ -53,11 +50,8 @@ public void test() { // build graph VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId()); - // detect cells - new ImplicitCellDetector().detectCells(g); - - // build blocks - new BlockOrganizer().organize(g); + // layout + new PositionVoltageLevelLayoutFactory().create(g).run(layoutParameters); assertEquals(1, g.getCellStream().count()); Optional oCell = g.getCellStream().findFirst(); diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialParallelBlock.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialParallelBlock.java index 30d008af5..c4368317c 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialParallelBlock.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialParallelBlock.java @@ -9,10 +9,7 @@ import com.powsybl.iidm.network.*; import com.powsybl.sld.builders.NetworkGraphBuilder; import com.powsybl.sld.iidm.extensions.ConnectablePosition; -import com.powsybl.sld.layout.BlockOrganizer; -import com.powsybl.sld.layout.CalculateCoordBlockVisitor; -import com.powsybl.sld.layout.ImplicitCellDetector; -import com.powsybl.sld.layout.LayoutContext; +import com.powsybl.sld.layout.*; import com.powsybl.sld.model.graphs.VoltageLevelGraph; import com.powsybl.sld.model.blocks.Block; import com.powsybl.sld.model.blocks.BodyParallelBlock; @@ -58,8 +55,7 @@ public void test() { VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId()); // detect cells - new ImplicitCellDetector().detectCells(g); - new BlockOrganizer().organize(g); + new PositionVoltageLevelLayoutFactory().create(g).run(layoutParameters); assertEquals(1, g.getCellStream().count()); Optional oCell = g.getCellStream().findFirst(); diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase2.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase2.java index fd8bc285a..fcc6c3d17 100644 --- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase2.java +++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase2.java @@ -7,18 +7,17 @@ package com.powsybl.sld.raw; import com.powsybl.sld.builders.VoltageLevelRawBuilder; -import com.powsybl.sld.layout.BlockOrganizer; -import com.powsybl.sld.layout.ImplicitCellDetector; -import com.powsybl.sld.layout.PositionVoltageLevelLayout; -import com.powsybl.sld.layout.positionfromextension.PositionFromExtension; -import com.powsybl.sld.model.graphs.*; -import com.powsybl.sld.model.nodes.*; - +import com.powsybl.sld.layout.PositionVoltageLevelLayoutFactory; +import com.powsybl.sld.model.graphs.VoltageLevelGraph; +import com.powsybl.sld.model.nodes.BusNode; +import com.powsybl.sld.model.nodes.FeederNode; +import com.powsybl.sld.model.nodes.FictitiousNode; +import com.powsybl.sld.model.nodes.SwitchNode; import org.junit.Before; import org.junit.Test; -import static org.junit.Assert.assertEquals; import static com.powsybl.sld.model.coordinate.Direction.TOP; +import static org.junit.Assert.assertEquals; /** *
@@ -69,8 +68,10 @@ public void testStacked() {
     @Test
     public void testUnstacked() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vlUnstack");
-        BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), false);
-        new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters);
+        new PositionVoltageLevelLayoutFactory()
+                .setFeederStacked(false)
+                .create(g)
+                .run(layoutParameters);
         assertEquals(toString("/TestCase2UnStackedCell.json"), toJson(g, "/TestCase2UnStackedCell.json"));
     }
 }
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCaseShuntArrangement.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCaseShuntArrangement.java
index 77e46edcc..5e0fb9803 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCaseShuntArrangement.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCaseShuntArrangement.java
@@ -7,16 +7,12 @@
 package com.powsybl.sld.raw;
 
 import com.powsybl.sld.builders.VoltageLevelRawBuilder;
-import com.powsybl.sld.layout.BlockOrganizer;
-import com.powsybl.sld.layout.ImplicitCellDetector;
-import com.powsybl.sld.layout.PositionVoltageLevelLayout;
-import com.powsybl.sld.layout.positionfromextension.PositionFromExtension;
+import com.powsybl.sld.layout.PositionVoltageLevelLayoutFactory;
 import com.powsybl.sld.model.graphs.VoltageLevelGraph;
 import com.powsybl.sld.model.nodes.BusNode;
 import com.powsybl.sld.model.nodes.FeederNode;
 import com.powsybl.sld.model.nodes.FictitiousNode;
 import com.powsybl.sld.model.nodes.SwitchNode;
-
 import org.junit.Before;
 import org.junit.Test;
 
@@ -173,16 +169,21 @@ public void setUp() {
     @Test
     public void test1() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl");
-        BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), true, true, false);
-        new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters);
+        new PositionVoltageLevelLayoutFactory()
+                .setExceptionIfPatternNotHandled(true)
+                .create(g)
+                .run(layoutParameters);
         assertEquals(toString("/TestCaseShuntArrangementNo.json"), toJson(g, "/TestCaseShuntArrangementNo.json"));
     }
 
     @Test
     public void test2() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl");
-        BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension(), true, true, true);
-        new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters);
+        new PositionVoltageLevelLayoutFactory()
+                .setExceptionIfPatternNotHandled(true)
+                .setHandleShunts(true)
+                .create(g)
+                .run(layoutParameters);
         assertEquals(toString("/TestCaseShuntArrangementYes.json"), toJson(g, "/TestCaseShuntArrangementYes.json"));
     }
 
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestOrderConsistency.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestOrderConsistency.java
index 36da3e248..9407496eb 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestOrderConsistency.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestOrderConsistency.java
@@ -7,11 +7,8 @@
 package com.powsybl.sld.raw;
 
 import com.powsybl.sld.builders.VoltageLevelRawBuilder;
-import com.powsybl.sld.layout.BlockOrganizer;
-import com.powsybl.sld.layout.ImplicitCellDetector;
-import com.powsybl.sld.layout.PositionVoltageLevelLayout;
+import com.powsybl.sld.layout.PositionVoltageLevelLayoutFactory;
 import com.powsybl.sld.layout.positionbyclustering.PositionByClustering;
-import com.powsybl.sld.layout.positionfromextension.PositionFromExtension;
 import com.powsybl.sld.model.graphs.VoltageLevelGraph;
 import com.powsybl.sld.model.nodes.BusNode;
 import com.powsybl.sld.model.nodes.FeederNode;
@@ -93,32 +90,28 @@ private void createCommons(String vlId, boolean middleLeft) {
     @Test
     public void testClustMiddleLeft() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl1");
-        BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionByClustering());
-        new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters);
+        new PositionVoltageLevelLayoutFactory(new PositionByClustering()).create(g).run(layoutParameters);
         assertEquals(toString("/orderConsistencyClust1.json"), toJson(g, "/orderConsistencyClust1.json"));
     }
 
     @Test
     public void testClustNoMiddleLeft() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl2");
-        BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionByClustering());
-        new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters);
+        new PositionVoltageLevelLayoutFactory(new PositionByClustering()).create(g).run(layoutParameters);
         assertEquals(toString("/orderConsistencyClust2.json"), toJson(g, "/orderConsistencyClust2.json"));
     }
 
     @Test
     public void testExtMiddleLeft() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl1");
-        BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension());
-        new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters);
+        new PositionVoltageLevelLayoutFactory().create(g).run(layoutParameters);
         assertEquals(toString("/orderConsistencyExt1.json"), toJson(g, "/orderConsistencyExt1.json"));
     }
 
     @Test
     public void testExtNoMiddleLeft() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl2");
-        BlockOrganizer blockOrganizer = new BlockOrganizer(new PositionFromExtension());
-        new PositionVoltageLevelLayout(g, new ImplicitCellDetector(), blockOrganizer).run(layoutParameters);
+        new PositionVoltageLevelLayoutFactory().create(g).run(layoutParameters);
         assertEquals(toString("/orderConsistencyExt2.json"), toJson(g, "/orderConsistencyExt2.json"));
     }
 }
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestSerialBlocksInternCells.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestSerialBlocksInternCells.java
index 80f0986a4..b9f762024 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestSerialBlocksInternCells.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestSerialBlocksInternCells.java
@@ -7,13 +7,11 @@
 package com.powsybl.sld.raw;
 
 import com.powsybl.sld.builders.VoltageLevelRawBuilder;
-import com.powsybl.sld.layout.BlockOrganizer;
-import com.powsybl.sld.layout.CellDetector;
-import com.powsybl.sld.layout.ImplicitCellDetector;
-import com.powsybl.sld.layout.PositionVoltageLevelLayout;
+import com.powsybl.sld.layout.PositionVoltageLevelLayoutFactory;
 import com.powsybl.sld.model.graphs.VoltageLevelGraph;
-import com.powsybl.sld.model.nodes.*;
-
+import com.powsybl.sld.model.nodes.BusNode;
+import com.powsybl.sld.model.nodes.FictitiousNode;
+import com.powsybl.sld.model.nodes.SwitchNode;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -63,8 +61,10 @@ public void setUp() {
     @Test
     public void test() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl");
-        CellDetector cellDetector = new ImplicitCellDetector(false, true, false);
-        new PositionVoltageLevelLayout(g, cellDetector, new BlockOrganizer()).run(layoutParameters);
+        new PositionVoltageLevelLayoutFactory()
+                .setRemoveUnnecessaryFictitiousNodes(false)
+                .create(g)
+                .run(layoutParameters);
         assertEquals(toString("/testSerialBlocksInternCells.json"), toJson(g, "/testSerialBlocksInternCells.json"));
     }
 }

From cd48b5384ea1c70a62d3d7cd70c65c6625410453 Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Thu, 21 Jul 2022 17:46:33 +0200
Subject: [PATCH 03/15] Clean BlockOrganizer / ImplicitCellDetector

Signed-off-by: Florian Dupuy 
---
 .../powsybl/sld/layout/BlockOrganizer.java    | 33 +++----------------
 .../sld/layout/ImplicitCellDetector.java      | 11 ++-----
 .../layout/PositionVoltageLevelLayout.java    |  8 +++--
 .../sld/iidm/TestCase7CellDetectionIssue.java |  2 +-
 .../sld/raw/TestCase7CellDetectionIssue.java  |  2 +-
 5 files changed, 15 insertions(+), 41 deletions(-)

diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/BlockOrganizer.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/BlockOrganizer.java
index 8c5371158..532e3e7ed 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/BlockOrganizer.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/BlockOrganizer.java
@@ -6,23 +6,22 @@
  */
 package com.powsybl.sld.layout;
 
-import com.powsybl.sld.layout.positionbyclustering.PositionByClustering;
-import com.powsybl.sld.layout.positionfromextension.PositionFromExtension;
 import com.powsybl.sld.model.blocks.LegPrimaryBlock;
-import com.powsybl.sld.model.cells.*;
+import com.powsybl.sld.model.cells.Cell;
+import com.powsybl.sld.model.cells.ExternCell;
+import com.powsybl.sld.model.cells.InternCell;
 import com.powsybl.sld.model.coordinate.Side;
 import com.powsybl.sld.model.graphs.VoltageLevelGraph;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
 import static com.powsybl.sld.model.blocks.Block.Extremity.END;
 import static com.powsybl.sld.model.blocks.Block.Extremity.START;
-import static com.powsybl.sld.model.cells.Cell.CellType.*;
+import static com.powsybl.sld.model.cells.Cell.CellType.INTERN;
 
 /**
  * @author Benoit Jeanson 
@@ -43,30 +42,6 @@ public class BlockOrganizer {
 
     private final Map busInfoMap;
 
-    public BlockOrganizer() {
-        this(new PositionFromExtension(), true);
-    }
-
-    public BlockOrganizer(boolean stack) {
-        this(new PositionByClustering(), stack);
-    }
-
-    public BlockOrganizer(PositionFinder positionFinder) {
-        this(positionFinder, true);
-    }
-
-    public BlockOrganizer(PositionFinder positionFinder, boolean stack) {
-        this(positionFinder, stack, false);
-    }
-
-    public BlockOrganizer(PositionFinder positionFinder, boolean stack, boolean exceptionIfPatternNotHandled) {
-        this(positionFinder, stack, exceptionIfPatternNotHandled, false, Collections.emptyMap());
-    }
-
-    public BlockOrganizer(PositionFinder positionFinder, boolean stack, boolean exceptionIfPatternNotHandled, boolean handleShunt) {
-        this(positionFinder, stack, exceptionIfPatternNotHandled, handleShunt, Collections.emptyMap());
-    }
-
     public BlockOrganizer(PositionFinder positionFinder, boolean stack, boolean exceptionIfPatternNotHandled, boolean handleShunt, Map busInfoMap) {
         this.positionFinder = Objects.requireNonNull(positionFinder);
         this.stack = stack;
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
index a9644eaab..e2099a1b1 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
@@ -27,9 +27,9 @@
 public class ImplicitCellDetector implements CellDetector {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(ImplicitCellDetector.class);
-    private boolean removeUnnecessaryFictitiousNodes;
-    private boolean substituteSingularFictitiousByFeederNode;
-    private boolean exceptionIfPatternNotHandled;
+    private final boolean removeUnnecessaryFictitiousNodes;
+    private final boolean substituteSingularFictitiousByFeederNode;
+    private final boolean exceptionIfPatternNotHandled;
 
     public ImplicitCellDetector(boolean removeUnnecessaryFictitiousNodes, boolean substituteSingularFictitiousByFeederNode, boolean exceptionIfPatternNotHandled) {
         this.removeUnnecessaryFictitiousNodes = removeUnnecessaryFictitiousNodes;
@@ -37,11 +37,6 @@ public ImplicitCellDetector(boolean removeUnnecessaryFictitiousNodes, boolean su
         this.exceptionIfPatternNotHandled = exceptionIfPatternNotHandled;
     }
 
-    public ImplicitCellDetector() {
-        this(true, true, false);
-    }
-
-
     /**
      * internCell detection : an internal cell is composed of nodes connecting BUSes without connecting Feeder.
      * detectCell is used to detect cells exploring the graph and scanning exclusionTypes and stopTypes
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
index 36fca3085..4857b6440 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
@@ -41,14 +41,18 @@ public PositionVoltageLevelLayout(VoltageLevelGraph graph, CellDetector cellDete
     }
 
     /**
-     * Calculate real coordinate of busNode and blocks connected to busbar
+     * Layout the nodes:
+     * - detect the cells (intern / extern / shunt)
+     * - organize the cells into blocks
+     * - calculate real coordinate of busNode and blocks connected to busbar
      */
     @Override
     public void run(LayoutParameters layoutParam) {
+        LOGGER.info("Running voltage level layout");
+
         cellDetector.detectCells(getGraph());
         blockOrganizer.organize(getGraph());
 
-        LOGGER.info("Running voltage level layout");
         calculateMaxCellHeight(layoutParam);
         calculateBusNodeCoord(getGraph(), layoutParam);
         calculateCellCoord(getGraph(), layoutParam);
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase7CellDetectionIssue.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase7CellDetectionIssue.java
index 51d6d4309..d06a287a9 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase7CellDetectionIssue.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase7CellDetectionIssue.java
@@ -54,7 +54,7 @@ public void test() {
         VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId());
 
         // detect cells
-        new ImplicitCellDetector().detectCells(g);
+        new ImplicitCellDetector(true, true, false).detectCells(g);
 
         // assert cells
         assertEquals(1, g.getCellStream().count());
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase7CellDetectionIssue.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase7CellDetectionIssue.java
index 02687fff8..eb25f99fd 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase7CellDetectionIssue.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase7CellDetectionIssue.java
@@ -40,7 +40,7 @@ public void setUp() {
     @Test
     public void test() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl");
-        new ImplicitCellDetector().detectCells(g);
+        new ImplicitCellDetector(true, true, false).detectCells(g);
         assertEquals(1, g.getCellStream().count());
     }
 }

From 7a3ede7196959c9fec283fb85cd8b3e2489b88a5 Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Thu, 21 Jul 2022 19:35:08 +0200
Subject: [PATCH 04/15] Add LayoutGraphAdapter which cleans the graph before
 cell detection

Signed-off-by: Florian Dupuy 
---
 .../sld/layout/ImplicitCellDetector.java      | 24 +-------------
 .../sld/layout/LayoutGraphAdapter.java        | 31 +++++++++++++++++++
 .../layout/PositionVoltageLevelLayout.java    |  6 +++-
 .../PositionVoltageLevelLayoutFactory.java    | 11 ++++---
 .../sld/iidm/TestCase7CellDetectionIssue.java |  2 +-
 .../sld/raw/TestCase7CellDetectionIssue.java  |  2 +-
 6 files changed, 46 insertions(+), 30 deletions(-)
 create mode 100644 single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java

diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
index e2099a1b1..e9efeb434 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
@@ -27,13 +27,9 @@
 public class ImplicitCellDetector implements CellDetector {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(ImplicitCellDetector.class);
-    private final boolean removeUnnecessaryFictitiousNodes;
-    private final boolean substituteSingularFictitiousByFeederNode;
     private final boolean exceptionIfPatternNotHandled;
 
-    public ImplicitCellDetector(boolean removeUnnecessaryFictitiousNodes, boolean substituteSingularFictitiousByFeederNode, boolean exceptionIfPatternNotHandled) {
-        this.removeUnnecessaryFictitiousNodes = removeUnnecessaryFictitiousNodes;
-        this.substituteSingularFictitiousByFeederNode = substituteSingularFictitiousByFeederNode;
+    public ImplicitCellDetector(boolean exceptionIfPatternNotHandled) {
         this.exceptionIfPatternNotHandled = exceptionIfPatternNotHandled;
     }
 
@@ -51,8 +47,6 @@ public ImplicitCellDetector(boolean removeUnnecessaryFictitiousNodes, boolean su
      */
     @Override
     public void detectCells(VoltageLevelGraph graph) {
-        cleaning(graph);
-
         LOGGER.info("Detecting cells...");
 
         List allocatedNodes = new ArrayList<>();
@@ -92,22 +86,6 @@ private void createExternAndShuntCells(VoltageLevelGraph graph, Set nodes,
         }
     }
 
-    private void cleaning(VoltageLevelGraph graph) {
-        graph.substituteFictitiousNodesMirroringBusNodes();
-        if (removeUnnecessaryFictitiousNodes) {
-            graph.removeUnnecessaryFictitiousNodes();
-        }
-        if (substituteSingularFictitiousByFeederNode) {
-            graph.substituteSingularFictitiousByFeederNode();
-        }
-        graph.insertFictitiousNodesAtFeeders();
-        graph.extendNodeConnectedToBus(node -> node instanceof SwitchNode && ((SwitchNode) node).getKind() != SwitchNode.SwitchKind.DISCONNECTOR);
-        graph.extendNodeConnectedToBus(Middle3WTNode.class::isInstance);
-        graph.extendSwitchBetweenBuses();
-        graph.extendFirstOutsideNode();
-        graph.extendBusConnectedToBus();
-    }
-
     /**
      * @param graph          is the voltage level graph
      * @param typeStops      is the types of node that stops the exploration
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java
new file mode 100644
index 000000000..6eee9aba5
--- /dev/null
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java
@@ -0,0 +1,31 @@
+package com.powsybl.sld.layout;
+
+import com.powsybl.sld.model.graphs.VoltageLevelGraph;
+import com.powsybl.sld.model.nodes.Middle3WTNode;
+import com.powsybl.sld.model.nodes.SwitchNode;
+
+public class LayoutGraphAdapter {
+    private final boolean removeUnnecessaryFictitiousNodes;
+    private final boolean substituteSingularFictitiousByFeederNode;
+
+    public LayoutGraphAdapter(boolean removeUnnecessaryFictitiousNodes, boolean substituteSingularFictitiousByFeederNode) {
+        this.removeUnnecessaryFictitiousNodes = removeUnnecessaryFictitiousNodes;
+        this.substituteSingularFictitiousByFeederNode = substituteSingularFictitiousByFeederNode;
+    }
+
+    void run(VoltageLevelGraph graph) {
+        graph.substituteFictitiousNodesMirroringBusNodes();
+        if (removeUnnecessaryFictitiousNodes) {
+            graph.removeUnnecessaryFictitiousNodes();
+        }
+        if (substituteSingularFictitiousByFeederNode) {
+            graph.substituteSingularFictitiousByFeederNode();
+        }
+        graph.insertFictitiousNodesAtFeeders();
+        graph.extendNodeConnectedToBus(node -> node instanceof SwitchNode && ((SwitchNode) node).getKind() != SwitchNode.SwitchKind.DISCONNECTOR);
+        graph.extendNodeConnectedToBus(Middle3WTNode.class::isInstance);
+        graph.extendSwitchBetweenBuses();
+        graph.extendFirstOutsideNode();
+        graph.extendBusConnectedToBus();
+    }
+}
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
index 4857b6440..f2d5a7033 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
@@ -33,15 +33,18 @@ public class PositionVoltageLevelLayout extends AbstractVoltageLevelLayout {
     private static final Logger LOGGER = LoggerFactory.getLogger(PositionVoltageLevelLayout.class);
     private final CellDetector cellDetector;
     private final BlockOrganizer blockOrganizer;
+    private final LayoutGraphAdapter graphAdapter;
 
-    public PositionVoltageLevelLayout(VoltageLevelGraph graph, CellDetector cellDetector, BlockOrganizer blockOrganizer) {
+    public PositionVoltageLevelLayout(VoltageLevelGraph graph, LayoutGraphAdapter layoutGraphAdapter, CellDetector cellDetector, BlockOrganizer blockOrganizer) {
         super(graph);
+        this.graphAdapter = layoutGraphAdapter;
         this.cellDetector = cellDetector;
         this.blockOrganizer = blockOrganizer;
     }
 
     /**
      * Layout the nodes:
+     * - adapt the graph to have the expected patterns
      * - detect the cells (intern / extern / shunt)
      * - organize the cells into blocks
      * - calculate real coordinate of busNode and blocks connected to busbar
@@ -50,6 +53,7 @@ public PositionVoltageLevelLayout(VoltageLevelGraph graph, CellDetector cellDete
     public void run(LayoutParameters layoutParam) {
         LOGGER.info("Running voltage level layout");
 
+        graphAdapter.run(getGraph());
         cellDetector.detectCells(getGraph());
         blockOrganizer.organize(getGraph());
 
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayoutFactory.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayoutFactory.java
index e4697264e..067a5fdc1 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayoutFactory.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayoutFactory.java
@@ -99,12 +99,15 @@ public PositionVoltageLevelLayoutFactory setBusInfoMap(Map busInfo
 
     @Override
     public Layout create(VoltageLevelGraph graph) {
-        // detect cells
-        ImplicitCellDetector cellDetector = new ImplicitCellDetector(removeUnnecessaryFictitiousNodes, substituteSingularFictitiousByFeederNode, exceptionIfPatternNotHandled);
+        // For adapting the graph to the diagram layout
+        LayoutGraphAdapter layoutGraphAdapter = new LayoutGraphAdapter(removeUnnecessaryFictitiousNodes, substituteSingularFictitiousByFeederNode);
 
-        // build blocks from cells
+        // For cell detection
+        ImplicitCellDetector cellDetector = new ImplicitCellDetector(exceptionIfPatternNotHandled);
+
+        // For building blocks from cells
         BlockOrganizer blockOrganizer = new BlockOrganizer(positionFinder, feederStacked, exceptionIfPatternNotHandled, handleShunts, busInfoMap);
 
-        return new PositionVoltageLevelLayout(graph, cellDetector, blockOrganizer);
+        return new PositionVoltageLevelLayout(graph, layoutGraphAdapter, cellDetector, blockOrganizer);
     }
 }
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase7CellDetectionIssue.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase7CellDetectionIssue.java
index d06a287a9..ef12fa520 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase7CellDetectionIssue.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestCase7CellDetectionIssue.java
@@ -54,7 +54,7 @@ public void test() {
         VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId());
 
         // detect cells
-        new ImplicitCellDetector(true, true, false).detectCells(g);
+        new ImplicitCellDetector(false).detectCells(g);
 
         // assert cells
         assertEquals(1, g.getCellStream().count());
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase7CellDetectionIssue.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase7CellDetectionIssue.java
index eb25f99fd..850cf7754 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase7CellDetectionIssue.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/raw/TestCase7CellDetectionIssue.java
@@ -40,7 +40,7 @@ public void setUp() {
     @Test
     public void test() {
         VoltageLevelGraph g = rawGraphBuilder.buildVoltageLevelGraph("vl");
-        new ImplicitCellDetector(true, true, false).detectCells(g);
+        new ImplicitCellDetector(false).detectCells(g);
         assertEquals(1, g.getCellStream().count());
     }
 }

From d1ca49efd5f1ee80ac0bf26b7f294ea467d08728 Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Thu, 21 Jul 2022 23:36:04 +0200
Subject: [PATCH 05/15] Simplify the graph cleaning

Signed-off-by: Florian Dupuy 
---
 .../sld/layout/ImplicitCellDetector.java      |   4 +-
 .../sld/layout/LayoutGraphAdapter.java        |  31 ++-
 .../sld/model/graphs/VoltageLevelGraph.java   | 220 ++++++------------
 3 files changed, 99 insertions(+), 156 deletions(-)

diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
index e9efeb434..7c9aa6e38 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/ImplicitCellDetector.java
@@ -255,9 +255,9 @@ private boolean isIsolatedBusOrShunt(Set remainingNodes, Node rn) {
 
     private ShuntCell createShuntCell(VoltageLevelGraph vlGraph, List shuntNodes) {
         int cellNumber = vlGraph.getNextCellNumber();
-        InternalNode iNode1 = vlGraph.insertInternalNode(shuntNodes.get(0), shuntNodes.get(1),
+        InternalNode iNode1 = vlGraph.insertHookNodesAtBuses(shuntNodes.get(0), shuntNodes.get(1),
                 "Shunt " + cellNumber + ".1");
-        InternalNode iNode2 = vlGraph.insertInternalNode(shuntNodes.get(shuntNodes.size() - 1),
+        InternalNode iNode2 = vlGraph.insertHookNodesAtBuses(shuntNodes.get(shuntNodes.size() - 1),
                 shuntNodes.get(shuntNodes.size() - 2), "Shunt " + cellNumber + ".2");
         shuntNodes.add(1, iNode1);
         shuntNodes.add(shuntNodes.size() - 1, iNode2);
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java
index 6eee9aba5..b431910b0 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java
@@ -1,8 +1,11 @@
 package com.powsybl.sld.layout;
 
 import com.powsybl.sld.model.graphs.VoltageLevelGraph;
-import com.powsybl.sld.model.nodes.Middle3WTNode;
-import com.powsybl.sld.model.nodes.SwitchNode;
+import com.powsybl.sld.model.nodes.*;
+
+import java.util.Set;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
 
 public class LayoutGraphAdapter {
     private final boolean removeUnnecessaryFictitiousNodes;
@@ -21,11 +24,23 @@ void run(VoltageLevelGraph graph) {
         if (substituteSingularFictitiousByFeederNode) {
             graph.substituteSingularFictitiousByFeederNode();
         }
-        graph.insertFictitiousNodesAtFeeders();
-        graph.extendNodeConnectedToBus(node -> node instanceof SwitchNode && ((SwitchNode) node).getKind() != SwitchNode.SwitchKind.DISCONNECTOR);
-        graph.extendNodeConnectedToBus(Middle3WTNode.class::isInstance);
-        graph.extendSwitchBetweenBuses();
-        graph.extendFirstOutsideNode();
-        graph.extendBusConnectedToBus();
+
+        graph.extendBusesConnectedToBuses();
+
+        Predicate nodesOnBus = node -> node instanceof SwitchNode && ((SwitchNode) node).getKind() == SwitchNode.SwitchKind.DISCONNECTOR;
+        Set nodesOnBusBetweenBuses = getNodesOnBusBetweenBuses(graph, nodesOnBus);
+        nodesOnBus = nodesOnBus.and(node -> !nodesOnBusBetweenBuses.contains(node));
+
+        graph.insertBusConnections(nodesOnBus);
+        graph.insertHookNodesAtBuses();
+        graph.insertHookNodesAtFeeders();
+    }
+
+    private Set getNodesOnBusBetweenBuses(VoltageLevelGraph graph, Predicate nodesOnBus) {
+        return graph.getNodeBuses().stream()
+                .flatMap(nodeBus -> nodeBus.getAdjacentNodes().stream())
+                .filter(nodesOnBus)
+                .filter(n -> n.getAdjacentNodes().stream().allMatch(BusNode.class::isInstance))
+                .collect(Collectors.toSet());
     }
 }
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/graphs/VoltageLevelGraph.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/graphs/VoltageLevelGraph.java
index cececb947..02d019ac0 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/graphs/VoltageLevelGraph.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/graphs/VoltageLevelGraph.java
@@ -8,7 +8,6 @@
 
 import com.fasterxml.jackson.core.JsonGenerator;
 import com.powsybl.commons.PowsyblException;
-import com.powsybl.sld.library.ComponentTypeName;
 import com.powsybl.sld.model.cells.*;
 import com.powsybl.sld.model.coordinate.Direction;
 import com.powsybl.sld.model.coordinate.Orientation;
@@ -293,161 +292,99 @@ public Stream getBusCells() {
                 .map(BusCell.class::cast);
     }
 
-    /**
-     * Insert fictitious node(s) before feeders in order for the feeder to be properly displayed:
-     * feeders need at least one inserted fictitious node to have enough space to display the feeder arrows.
-     * Some special cases:
-     *  - feeders connected directly to a bus need 3 additional nodes (1 BusConnection, 2 InternalNode) to obey the Leg/Body/Feeder structure
-     *  - feeders connected to a bus through a disconnector need 2 additional InternalNode to obey the Leg/Body/Feeder structure
-     *  - 3WT do not need any fictitious node inserted here as they already have the fictitious Middle3WTNode
-     */
-    public void insertFictitiousNodesAtFeeders() {
-        List nodesToAdd = new ArrayList<>();
-        List feederNodes = nodesByType.computeIfAbsent(Node.NodeType.FEEDER, nodeType -> new ArrayList<>());
-        for (Node feederNode : feederNodes) {
-            List adjacentNodes = feederNode.getAdjacentNodes();
-            if (isConnectedToBus(feederNode)) {
-                // Feeders linked directly to a bus need 3 fictitious nodes to be properly displayed:
-                //  - 1 bus connection
-                //  - 2 internal nodes to have LegPrimaryBlock + BodyPrimaryBlock + FeederPrimaryBlock
-                addTripleNode(feederNode, nodesToAdd);
-            } else if (isConnectedToBusDisconnector(feederNode)) {
-                // Feeders linked directly to a bus disconnector need 2 internal nodes to be properly displayed, in order
-                // to have LegPrimaryBlock + BodyPrimaryBlock + FeederPrimaryBlock
-                insertTwoInternalNodes(feederNode, nodesToAdd);
-            } else if (!isFeeder3WT(feederNode)) {
-                // Three-winding transformers do not need to be extended in voltage level diagrams, as the Middle3WTNode is already itself an internal node
-                // Create a new fictitious node
-                InternalNode nf = NodeFactory.createInternalNode(this, feederNode.getId());
-                // Create all new edges and remove old ones
-                for (Node neighbor : adjacentNodes) {
-                    addEdge(neighbor, nf);
-                    removeEdge(neighbor, feederNode);
-                }
-                addEdge(nf, feederNode);
-            }
-        }
+    public void insertBusConnections(Predicate nodesOnBus) {
+        getNodeBuses().forEach(busNode -> insertBusConnections(busNode, nodesOnBus));
     }
 
-    private boolean isConnectedToBus(Node node) {
-        return node.getAdjacentNodes().stream().anyMatch(BusNode.class::isInstance);
+    private void insertBusConnections(BusNode busNode, Predicate nodesOnBus) {
+        busNode.getAdjacentNodes().stream()
+                .filter(node -> !nodesOnBus.test(node))
+                .forEach(node -> insertBusConnection(busNode, node));
     }
 
-    private boolean isConnectedToBusDisconnector(Node node) {
-        return node.getAdjacentNodes().stream()
-                .filter(SwitchNode.class::isInstance)
-                .map(SwitchNode.class::cast)
-                .filter(sn -> sn.getKind() == SwitchNode.SwitchKind.DISCONNECTOR)
-                .anyMatch(sn -> sn.getAdjacentNodes().stream().anyMatch(n -> n.getType() == Node.NodeType.BUS));
+    private void insertBusConnection(BusNode busNode, Node nodeConnectedToBusNode) {
+        // Create bus connection
+        BusConnection fNodeToBus = NodeFactory.createBusConnection(this, nodeConnectedToBusNode.getId());
+
+        // Update edges
+        removeEdge(busNode, nodeConnectedToBusNode);
+        addEdge(busNode, fNodeToBus);
+        addEdge(fNodeToBus, nodeConnectedToBusNode);
     }
 
-    private boolean isFeeder3WT(Node feederNode) {
-        List adjacentNodes = feederNode.getAdjacentNodes();
-        return adjacentNodes.size() == 1 && adjacentNodes.get(0).getComponentType().equals(ComponentTypeName.THREE_WINDINGS_TRANSFORMER);
+    public void insertHookNodesAtBuses() {
+        getNodeBuses().forEach(this::insertHookNodesAtBuses);
     }
 
-    private void addTripleNode(Node feederNode, List nodesToAdd) {
-        // Create nodes
-        BusConnection fNodeToBus = NodeFactory.createBusConnection(this, feederNode.getId());
-        InternalNode fNodeToSw1 = NodeFactory.createInternalNode(this, feederNode.getId() + "_1");
-        InternalNode fNodeToSw2 = NodeFactory.createInternalNode(this, feederNode.getId() + "_2");
+    private void insertHookNodesAtBuses(BusNode busNode) {
+        busNode.getAdjacentNodes()
+                .forEach(nodeOnBus -> nodeOnBus.getAdjacentNodes().stream()
+                        .filter(n -> n.getType() != NodeType.BUS)
+                        .filter(n -> n.getType() == NodeType.FEEDER || n.getType() == NodeType.SWITCH || n instanceof Middle3WTNode)
+                        .forEach(n -> insertBusHookNode(nodeOnBus, n)));
+    }
 
-        // Nodes will be added afterwards
-        nodesToAdd.add(fNodeToBus);
-        nodesToAdd.add(fNodeToSw1);
-        nodesToAdd.add(fNodeToSw2);
+    private void insertBusHookNode(Node nodeOnBus, Node node) {
+        // Create hook node
+        InternalNode fStackNode = NodeFactory.createInternalNode(this, node.getId());
 
-        // Add edges right away
-        for (Node adjacentNode : feederNode.getAdjacentNodes()) {
-            if (adjacentNode instanceof BusNode) {
-                addEdge(adjacentNode, fNodeToBus);
-            } else {
-                addEdge(adjacentNode, fNodeToSw1);
+        // Update edges
+        if (node.getType() == NodeType.FEEDER) {
+            for (Node neighbor : node.getAdjacentNodes()) {
+                addEdge(neighbor, fStackNode);
+                removeEdge(neighbor, node);
             }
-            removeEdge(adjacentNode, feederNode);
+            addEdge(fStackNode, node);
+        } else {
+            removeEdge(nodeOnBus, node);
+            addEdge(nodeOnBus, fStackNode);
+            addEdge(fStackNode, node);
         }
-        addEdge(fNodeToBus, fNodeToSw1);
-        addEdge(fNodeToSw1, fNodeToSw2);
-        addEdge(fNodeToSw2, feederNode);
     }
 
-    private void insertTwoInternalNodes(Node feederNode, List nodesToAdd) {
-        // Create nodes
-        InternalNode fNodeToSw1 = NodeFactory.createInternalNode(this, feederNode.getId() + "_1");
-        InternalNode fNodeToSw2 = NodeFactory.createInternalNode(this, feederNode.getId() + "_2");
+    /**
+     * Insert fictitious node(s) before feeders in order for the feeder to be properly displayed:
+     * feeders need at least one inserted fictitious node to have enough space to display the feeder arrows.
+     */
+    public void insertHookNodesAtFeeders() {
+        // Each feeder node needs a fictitious node to have enough place for the feeder infos (arrows)
+        // Feeder3WTLegNode linked to Middle3WTNode do not need any fictitious node inserted, because of the fictitious Middle3WTNode
+        List feederNodes = nodesByType.computeIfAbsent(Node.NodeType.FEEDER, nodeType -> new ArrayList<>());
+        feederNodes.stream()
+                .filter(feederNode -> !(feederNode instanceof Feeder3WTLegNode) || !(feederNode.getAdjacentNodes().get(0) instanceof Middle3WTNode))
+                .forEach(this::insertFeederHookNode);
+    }
 
-        // Nodes will be added afterwards
-        nodesToAdd.add(fNodeToSw1);
-        nodesToAdd.add(fNodeToSw2);
+    private void insertFeederHookNode(Node feederNode) {
+        // Create a new hook node
+        InternalNode nf = NodeFactory.createInternalNode(this, feederNode.getId());
 
-        // Add edges right away
-        for (Node adjacentNodes : feederNode.getAdjacentNodes()) {
-            addEdge(adjacentNodes, fNodeToSw1);
-            removeEdge(adjacentNodes, feederNode);
-        }
-        addEdge(fNodeToSw1, fNodeToSw2);
-        addEdge(fNodeToSw2, feederNode);
-    }
-
-    //add a fictitious node between 2 switches or between a switch and a feeder
-    //when one switch is connected to a bus
-    public void extendFirstOutsideNode() {
-        getNodeBuses().stream()
-                .flatMap(node -> node.getAdjacentNodes().stream())
-                .filter(node -> node.getType() == Node.NodeType.SWITCH)
-                .forEach(nodeSwitch ->
-                        nodeSwitch.getAdjacentNodes().stream()
-                                .filter(node -> node.getType() == Node.NodeType.SWITCH ||
-                                        node.getType() == Node.NodeType.FEEDER)
-                                .forEach(node -> {
-                                    removeEdge(node, nodeSwitch);
-                                    InternalNode newNode = NodeFactory.createInternalNode(this, nodeSwitch.getId());
-                                    addEdge(node, newNode);
-                                    addEdge(nodeSwitch, newNode);
-                                }));
-    }
-
-    public void extendNodeConnectedToBus(Predicate condition) {
-        getNodeBuses().forEach(nodeBus ->
-                nodeBus.getAdjacentNodes().stream()
-                        .filter(condition)
-                        .forEach(nodeSwitch -> addDoubleNode(nodeBus, nodeSwitch, "")));
-    }
-
-    public void extendSwitchBetweenBuses() {
-        getNodeBuses().forEach(nodeBus -> nodeBus.getAdjacentNodes().stream()
-                .filter(SwitchNode.class::isInstance)
-                .filter(n -> n.getAdjacentNodes().stream().allMatch(BusNode.class::isInstance))
-                .forEach(n -> extendSwitchBetweenBuses((SwitchNode) n)));
-    }
-
-    public void extendSwitchBetweenBuses(SwitchNode nodeSwitch) {
-        List copyAdj = nodeSwitch.getAdjacentNodes();
-        addDoubleNode((BusNode) copyAdj.get(0), nodeSwitch, "_0");
-        addDoubleNode((BusNode) copyAdj.get(1), nodeSwitch, "_1");
-    }
-
-    public void extendBusConnectedToBus() {
-        for (BusNode n1 : getNodeBuses()) {
-            n1.getAdjacentNodes().stream()
-                    .filter(n2 -> n2.getType() == Node.NodeType.BUS)
-                    .forEach(n2 -> {
-                        removeEdge(n1, n2);
-                        String busToBusId = n1.getId() + "-" + n2.getId();
-                        BusConnection fSwToBus1 = NodeFactory.createBusConnection(this, busToBusId + "_1");
-                        InternalNode internalNode1 = NodeFactory.createInternalNode(this, busToBusId + "_1");
-                        InternalNode internalNode2 = NodeFactory.createInternalNode(this, busToBusId + "_2");
-                        BusConnection fSwToBus2 = NodeFactory.createBusConnection(this, busToBusId + "_2");
-                        addEdge(n1, fSwToBus1);
-                        addEdge(fSwToBus1, internalNode1);
-                        addEdge(internalNode1, internalNode2);
-                        addEdge(internalNode2, fSwToBus2);
-                        addEdge(n2, fSwToBus2);
-                    });
+        // Create all new edges and remove old ones
+        for (Node neighbor : feederNode.getAdjacentNodes()) {
+            addEdge(neighbor, nf);
+            removeEdge(neighbor, feederNode);
         }
+        addEdge(nf, feederNode);
     }
 
-    public InternalNode insertInternalNode(Node node1, Node node2, String id) {
+    public void extendBusesConnectedToBuses() {
+        getNodeBuses().forEach(n1 ->
+                n1.getAdjacentNodes().stream()
+                        .filter(n2 -> n2.getType() == Node.NodeType.BUS)
+                        .forEach(n2 -> extendBusConnectedToBus(n1, n2)));
+    }
+
+    private void extendBusConnectedToBus(BusNode n1, Node n2) {
+        removeEdge(n1, n2);
+        String busToBusId = n1.getId() + "-" + n2.getId();
+        InternalNode internalNode1 = NodeFactory.createInternalNode(this, busToBusId + "_1");
+        InternalNode internalNode2 = NodeFactory.createInternalNode(this, busToBusId + "_2");
+        addEdge(n1, internalNode1);
+        addEdge(internalNode1, internalNode2);
+        addEdge(n2, internalNode2);
+    }
+
+    public InternalNode insertHookNodesAtBuses(Node node1, Node node2, String id) {
         removeEdge(node1, node2);
         InternalNode iNode = NodeFactory.createInternalNode(this, id);
         addEdge(node1, iNode);
@@ -455,15 +392,6 @@ public InternalNode insertInternalNode(Node node1, Node node2, String id) {
         return iNode;
     }
 
-    private void addDoubleNode(BusNode busNode, Node node, String suffix) {
-        removeEdge(busNode, node);
-        BusConnection fNodeToBus = NodeFactory.createBusConnection(this, node.getId() + suffix);
-        InternalNode fNodeToSw = NodeFactory.createInternalNode(this, node.getId() + suffix);
-        addEdge(busNode, fNodeToBus);
-        addEdge(fNodeToBus, fNodeToSw);
-        addEdge(fNodeToSw, node);
-    }
-
     /**
      * Substitute a node with another node already in the graph.
      *

From 3de47c7da4b2b2d6fa931450de220a62cc8257d4 Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Fri, 22 Jul 2022 00:52:39 +0200
Subject: [PATCH 06/15] Update test references

Signed-off-by: Florian Dupuy 
---
 .../com/powsybl/sld/iidm/TestSerialBlock.java |   8 +-
 .../sld/iidm/TestSerialParallelBlock.java     |   4 +-
 .../resources/InternalBranchesBusBreaker.svg  |  80 +-
 .../InternalBranchesBusBreakerH.json          | 374 +++----
 .../InternalBranchesBusBreakerV.json          | 374 +++----
 .../resources/InternalBranchesNodeBreaker.svg |  96 +-
 .../InternalBranchesNodeBreakerH.json         | 300 +++---
 .../InternalBranchesNodeBreakerV.json         | 300 +++---
 .../NodeDecoratorsBranchStatusBusBreaker.svg  |  80 +-
 .../NodeDecoratorsBranchStatusNodeBreaker.svg | 128 +--
 .../test/resources/NodeDecoratorsSwitches.svg |  96 +-
 .../src/test/resources/TestCase1.json         |  18 +-
 .../src/test/resources/TestCase1.svg          |   8 +-
 .../TestCase11Left3wtOrientation.json         | 670 ++++++------
 .../TestCase11Right3wtOrientation.json        | 670 ++++++------
 .../resources/TestCase11SubstationGraphH.json | 670 ++++++------
 .../TestCase11SubstationGraphHFirst.svg       | 256 ++---
 .../TestCase11SubstationGraphHLast.svg        | 256 ++---
 .../TestCase11SubstationGraphHMiddle.svg      | 256 ++---
 .../TestCase11SubstationGraphHNone.svg        | 256 ++---
 .../TestCase11SubstationGraphHRaw.json        | 670 ++++++------
 .../resources/TestCase11SubstationGraphV.json | 670 ++++++------
 .../TestCase11SubstationGraphVRaw.json        | 670 ++++++------
 .../test/resources/TestCase12GraphVL1.json    | 338 +++---
 .../test/resources/TestCase12GraphVL2.json    | 224 ++--
 .../test/resources/TestCase12GraphVL3.json    | 144 +--
 ...ase12GraphWithNodesInfosNominalVoltage.svg | 120 +--
 ...stCase12GraphWithNodesInfosTopological.svg | 120 +--
 .../resources/TestCase14UpToNFeederInfos.svg  |   8 +-
 .../test/resources/TestCase1BusBreaker.json   |  34 +-
 .../src/test/resources/TestCase1inverted.json |  18 +-
 .../src/test/resources/TestCase3Coupling.json |  24 +-
 .../resources/TestCase3Coupling3Bars.json     |  14 +-
 .../TestCase3Coupling3Bars2Sections.json      |  14 +-
 .../resources/TestCase3TripleCoupling.json    |  58 +-
 ...tCase3TripleCoupling_disconnectorOpen.json |  58 +-
 .../resources/TestCase4NotParallelel.json     |  76 +-
 .../src/test/resources/TestCase5H.json        |  36 +-
 .../src/test/resources/TestCase5V.json        |  18 +-
 .../TestCase6CouplingNonFlatHorizontal.json   |  98 +-
 .../TestCase6InternalConnection.json          | 114 +-
 .../resources/TestCaseComplexCoupling.svg     |   8 +-
 .../test/resources/TestCaseFictitiousBus.svg  |  30 +-
 .../TestCaseFictitiousBusTopological.svg      |  30 +-
 .../resources/TestCaseShuntArrangementNo.json |  28 +-
 .../TestCaseShuntArrangementYes.json          |  28 +-
 .../src/test/resources/TestFeederOnBus.svg    |  10 +-
 .../resources/TestFeederOnBusDisconnector.svg |  10 +-
 .../resources/TestIncompleteFeederIssue.json  |  18 +-
 .../TestInternCellExplicitPosition.json       |  94 +-
 .../test/resources/TestInternCellShapes.json  | 142 +--
 .../test/resources/TestSldClassSubstation.svg |  32 +-
 .../TestSldClassSubstationMetadata.json       |  92 +-
 .../src/test/resources/TestSldClassVl.svg     |  16 +-
 .../resources/TestSldClassVlMetadata.json     |  46 +-
 .../resources/TestUnicityNodeIdNetWork1.json  |  18 +-
 .../resources/TestUnicityNodeIdNetWork2.json  |  18 +-
 .../src/test/resources/consecutive_shunts.svg |  20 +-
 .../src/test/resources/feederInfoTest.svg     |  12 +-
 .../nominal_voltage_style_substation.svg      |  48 +-
 .../resources/nominal_voltage_style_vl2.svg   |  16 +-
 .../resources/nominal_voltage_style_vl3.svg   |   8 +-
 .../resources/orderConsistencyClust1.json     | 100 +-
 .../resources/orderConsistencyClust2.json     | 100 +-
 .../test/resources/orderConsistencyExt1.json  | 100 +-
 .../test/resources/orderConsistencyExt2.json  | 100 +-
 .../test/resources/substDiag_metadata.json    | 987 +++++++++---------
 .../test/resources/testLanesWithUnileg.json   |  74 +-
 .../resources/testParallelFeedersOnBus.json   |  22 +-
 .../resources/testParallelFeedersOrders.json  |  18 +-
 .../testSerialBlocksInternCells.json          |  78 +-
 .../topological_style_substation.svg          |  48 +-
 .../src/test/resources/vlDiag_metadata.json   | 456 ++++----
 73 files changed, 5584 insertions(+), 5649 deletions(-)

diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialBlock.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialBlock.java
index 690113104..5fa273394 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialBlock.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialBlock.java
@@ -67,8 +67,8 @@ public void test() {
         assertTrue(sb.getSubBlocks().get(2).isEmbeddingNodeType(FEEDER));
 
         assertEquals("bbs", sb.getSubBlocks().get(0).getStartingNode().getId());
-        assertEquals("INTERNAL_vl_da", sb.getSubBlocks().get(0).getEndingNode().getId());
-        assertEquals("INTERNAL_vl_da", sb.getSubBlocks().get(1).getStartingNode().getId());
+        assertEquals("INTERNAL_vl_ba", sb.getSubBlocks().get(0).getEndingNode().getId());
+        assertEquals("INTERNAL_vl_ba", sb.getSubBlocks().get(1).getStartingNode().getId());
         assertEquals("INTERNAL_vl_la", sb.getSubBlocks().get(1).getEndingNode().getId());
         assertEquals("INTERNAL_vl_la", sb.getSubBlocks().get(2).getStartingNode().getId());
         assertEquals("la", sb.getSubBlocks().get(2).getEndingNode().getId());
@@ -120,11 +120,11 @@ public void test() {
         sb.reverseBlock();
 
         // LegPrimaryBlock is NOT reversed (bus is always the starting node)
-        assertEquals("INTERNAL_vl_da", sb.getSubBlocks().get(1).getEndingNode().getId());
+        assertEquals("INTERNAL_vl_ba", sb.getSubBlocks().get(1).getEndingNode().getId());
         assertEquals("bbs", sb.getSubBlocks().get(2).getStartingNode().getId());
 
         // BodyPrimaryBlock is reversed
-        assertEquals("INTERNAL_vl_da", sb.getSubBlocks().get(1).getEndingNode().getId());
+        assertEquals("INTERNAL_vl_ba", sb.getSubBlocks().get(1).getEndingNode().getId());
         assertEquals("INTERNAL_vl_la", sb.getSubBlocks().get(1).getStartingNode().getId());
 
         // FeederPrimaryBlock is NOT reversed (feeder is always the ending node)
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialParallelBlock.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialParallelBlock.java
index c4368317c..d8b767182 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialParallelBlock.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/TestSerialParallelBlock.java
@@ -130,8 +130,8 @@ public void test() {
 
         sb.reverseBlock();
 
-        assertEquals("INTERNAL_vl_da", sb.getEndingNode().getId());
-        assertEquals("INTERNAL_vl_da", subSB.getEndingNode().getId());
+        assertEquals("INTERNAL_vl_ba", sb.getEndingNode().getId());
+        assertEquals("INTERNAL_vl_ba", subSB.getEndingNode().getId());
         assertEquals("INTERNAL_vl_2", subPB.getSubBlocks().get(1).getEndingNode().getId());
     }
 }
diff --git a/single-line-diagram-core/src/test/resources/InternalBranchesBusBreaker.svg b/single-line-diagram-core/src/test/resources/InternalBranchesBusBreaker.svg
index 9417547e8..2ff7f8590 100644
--- a/single-line-diagram-core/src/test/resources/InternalBranchesBusBreaker.svg
+++ b/single-line-diagram-core/src/test/resources/InternalBranchesBusBreaker.svg
@@ -135,10 +135,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -147,13 +147,13 @@
                 
                 LD1
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -171,22 +171,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L11
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -204,22 +204,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 T11
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -237,22 +237,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L12
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -321,10 +321,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -333,13 +333,13 @@
                 
                 G
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -357,22 +357,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L11
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -390,22 +390,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 T11
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -423,10 +423,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -434,13 +434,13 @@
                 
                 T12
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/InternalBranchesBusBreakerH.json b/single-line-diagram-core/src/test/resources/InternalBranchesBusBreakerH.json
index 72ea8b9a6..99312ad09 100644
--- a/single-line-diagram-core/src/test/resources/InternalBranchesBusBreakerH.json
+++ b/single-line-diagram-core/src/test/resources/InternalBranchesBusBreakerH.json
@@ -191,7 +191,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_G_1",
+      "id" : "INTERNAL_VL1_G",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -200,7 +200,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_G_2",
+      "id" : "INTERNAL_VL1_G",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -209,7 +209,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L11_ONE_1",
+      "id" : "INTERNAL_VL1_L11_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -218,7 +218,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L11_ONE_2",
+      "id" : "INTERNAL_VL1_L11_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -227,7 +227,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L11_TWO_1",
+      "id" : "INTERNAL_VL1_L11_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
@@ -235,7 +235,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L11_TWO_2",
+      "id" : "INTERNAL_VL1_L11_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
@@ -243,7 +243,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L12_ONE_1",
+      "id" : "INTERNAL_VL1_L12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -252,7 +252,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L12_ONE_2",
+      "id" : "INTERNAL_VL1_L12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -261,7 +261,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_LD1_1",
+      "id" : "INTERNAL_VL1_LD1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -269,7 +269,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_LD1_2",
+      "id" : "INTERNAL_VL1_LD1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -277,7 +277,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T11_ONE_1",
+      "id" : "INTERNAL_VL1_T11_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -285,7 +285,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T11_ONE_2",
+      "id" : "INTERNAL_VL1_T11_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -293,7 +293,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T11_TWO_1",
+      "id" : "INTERNAL_VL1_T11_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -302,7 +302,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T11_TWO_2",
+      "id" : "INTERNAL_VL1_T11_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -311,7 +311,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T12_ONE_1",
+      "id" : "INTERNAL_VL1_T12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -319,7 +319,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T12_ONE_2",
+      "id" : "INTERNAL_VL1_T12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -327,7 +327,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T3_12_ONE_1",
+      "id" : "INTERNAL_VL1_T3_12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -335,7 +335,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T3_12_ONE_2",
+      "id" : "INTERNAL_VL1_T3_12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -343,7 +343,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T3_12_TWO_1",
+      "id" : "INTERNAL_VL1_T3_12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 575.0,
@@ -352,7 +352,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T3_12_TWO_2",
+      "id" : "INTERNAL_VL1_T3_12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 575.0,
@@ -662,7 +662,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_LD1", "INTERNAL_VL1_LD1_1" ]
+          "nodes" : [ "B11", "BUSCO_LD1", "INTERNAL_VL1_LD1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -683,7 +683,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_LD1_1", "INTERNAL_VL1_LD1_2" ]
+          "nodes" : [ "INTERNAL_VL1_LD1", "INTERNAL_VL1_LD1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -704,7 +704,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_LD1_2", "LD1" ]
+          "nodes" : [ "INTERNAL_VL1_LD1", "LD1" ]
         } ]
       }
     }, {
@@ -752,7 +752,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_L11_ONE", "INTERNAL_VL1_L11_ONE_1" ]
+          "nodes" : [ "B11", "BUSCO_L11_ONE", "INTERNAL_VL1_L11_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -773,7 +773,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_L11_ONE_1", "INTERNAL_VL1_L11_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_L11_ONE", "INTERNAL_VL1_L11_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -794,7 +794,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_L11_ONE_2", "L11_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_L11_ONE", "L11_ONE" ]
         } ]
       }
     }, {
@@ -842,7 +842,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_T11_ONE", "INTERNAL_VL1_T11_ONE_1" ]
+          "nodes" : [ "B11", "BUSCO_T11_ONE", "INTERNAL_VL1_T11_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -863,7 +863,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T11_ONE_1", "INTERNAL_VL1_T11_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_T11_ONE", "INTERNAL_VL1_T11_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -884,7 +884,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T11_ONE_2", "T11_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_T11_ONE", "T11_ONE" ]
         } ]
       }
     }, {
@@ -932,7 +932,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_L12_ONE", "INTERNAL_VL1_L12_ONE_1" ]
+          "nodes" : [ "B11", "BUSCO_L12_ONE", "INTERNAL_VL1_L12_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -953,7 +953,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_L12_ONE_1", "INTERNAL_VL1_L12_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_L12_ONE", "INTERNAL_VL1_L12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -974,7 +974,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_L12_ONE_2", "L12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_L12_ONE", "L12_ONE" ]
         } ]
       }
     }, {
@@ -1022,7 +1022,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_T3_12_ONE", "INTERNAL_VL1_T3_12_ONE_1" ]
+          "nodes" : [ "B11", "BUSCO_T3_12_ONE", "INTERNAL_VL1_T3_12_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1043,7 +1043,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T3_12_ONE_1", "INTERNAL_VL1_T3_12_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_T3_12_ONE", "INTERNAL_VL1_T3_12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1064,7 +1064,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T3_12_ONE_2", "T3_12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_T3_12_ONE", "T3_12_ONE" ]
         } ]
       }
     }, {
@@ -1112,7 +1112,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_G", "INTERNAL_VL1_G_1" ]
+          "nodes" : [ "B12", "BUSCO_G", "INTERNAL_VL1_G" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1133,7 +1133,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_G_1", "INTERNAL_VL1_G_2" ]
+          "nodes" : [ "INTERNAL_VL1_G", "INTERNAL_VL1_G" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1154,7 +1154,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_G_2", "G" ]
+          "nodes" : [ "INTERNAL_VL1_G", "G" ]
         } ]
       }
     }, {
@@ -1202,7 +1202,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_L11_TWO", "INTERNAL_VL1_L11_TWO_1" ]
+          "nodes" : [ "B12", "BUSCO_L11_TWO", "INTERNAL_VL1_L11_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1223,7 +1223,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_L11_TWO_1", "INTERNAL_VL1_L11_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL1_L11_TWO", "INTERNAL_VL1_L11_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1244,7 +1244,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_L11_TWO_2", "L11_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_L11_TWO", "L11_TWO" ]
         } ]
       }
     }, {
@@ -1292,7 +1292,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_T11_TWO", "INTERNAL_VL1_T11_TWO_1" ]
+          "nodes" : [ "B12", "BUSCO_T11_TWO", "INTERNAL_VL1_T11_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1313,7 +1313,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T11_TWO_1", "INTERNAL_VL1_T11_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL1_T11_TWO", "INTERNAL_VL1_T11_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1334,7 +1334,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T11_TWO_2", "T11_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_T11_TWO", "T11_TWO" ]
         } ]
       }
     }, {
@@ -1382,7 +1382,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_T12_ONE", "INTERNAL_VL1_T12_ONE_1" ]
+          "nodes" : [ "B12", "BUSCO_T12_ONE", "INTERNAL_VL1_T12_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1403,7 +1403,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T12_ONE_1", "INTERNAL_VL1_T12_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_T12_ONE", "INTERNAL_VL1_T12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1424,7 +1424,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T12_ONE_2", "T12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_T12_ONE", "T12_ONE" ]
         } ]
       }
     }, {
@@ -1472,7 +1472,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_T3_12_TWO", "INTERNAL_VL1_T3_12_TWO_1" ]
+          "nodes" : [ "B12", "BUSCO_T3_12_TWO", "INTERNAL_VL1_T3_12_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1493,7 +1493,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T3_12_TWO_1", "INTERNAL_VL1_T3_12_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL1_T3_12_TWO", "INTERNAL_VL1_T3_12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1514,148 +1514,148 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T3_12_TWO_2", "T3_12_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_T3_12_TWO", "T3_12_TWO" ]
         } ]
       }
     } ],
     "edges" : [ {
       "node1" : "B11",
       "node2" : "BUSCO_LD1"
-    }, {
-      "node1" : "BUSCO_LD1",
-      "node2" : "INTERNAL_VL1_LD1_1"
-    }, {
-      "node1" : "INTERNAL_VL1_LD1_1",
-      "node2" : "INTERNAL_VL1_LD1_2"
-    }, {
-      "node1" : "INTERNAL_VL1_LD1_2",
-      "node2" : "LD1"
     }, {
       "node1" : "B11",
       "node2" : "BUSCO_L11_ONE"
     }, {
-      "node1" : "BUSCO_L11_ONE",
-      "node2" : "INTERNAL_VL1_L11_ONE_1"
+      "node1" : "B11",
+      "node2" : "BUSCO_T11_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_L11_ONE_1",
-      "node2" : "INTERNAL_VL1_L11_ONE_2"
+      "node1" : "B11",
+      "node2" : "BUSCO_L12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_L11_ONE_2",
-      "node2" : "L11_ONE"
+      "node1" : "B11",
+      "node2" : "BUSCO_T3_12_ONE"
     }, {
       "node1" : "B11",
-      "node2" : "BUSCO_T11_ONE"
+      "node2" : "BUSCO_BR1"
     }, {
-      "node1" : "BUSCO_T11_ONE",
-      "node2" : "INTERNAL_VL1_T11_ONE_1"
+      "node1" : "B12",
+      "node2" : "BUSCO_G"
     }, {
-      "node1" : "INTERNAL_VL1_T11_ONE_1",
-      "node2" : "INTERNAL_VL1_T11_ONE_2"
+      "node1" : "B12",
+      "node2" : "BUSCO_L11_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_T11_ONE_2",
-      "node2" : "T11_ONE"
+      "node1" : "B12",
+      "node2" : "BUSCO_T11_TWO"
     }, {
-      "node1" : "B11",
-      "node2" : "BUSCO_L12_ONE"
+      "node1" : "B12",
+      "node2" : "BUSCO_T12_ONE"
     }, {
-      "node1" : "BUSCO_L12_ONE",
-      "node2" : "INTERNAL_VL1_L12_ONE_1"
+      "node1" : "B12",
+      "node2" : "BUSCO_T3_12_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_L12_ONE_1",
-      "node2" : "INTERNAL_VL1_L12_ONE_2"
+      "node1" : "B12",
+      "node2" : "BUSCO_BR1"
     }, {
-      "node1" : "INTERNAL_VL1_L12_ONE_2",
-      "node2" : "L12_ONE"
+      "node1" : "BUSCO_LD1",
+      "node2" : "INTERNAL_VL1_LD1"
     }, {
-      "node1" : "B11",
-      "node2" : "BUSCO_T3_12_ONE"
+      "node1" : "BUSCO_L11_ONE",
+      "node2" : "INTERNAL_VL1_L11_ONE"
     }, {
-      "node1" : "BUSCO_T3_12_ONE",
-      "node2" : "INTERNAL_VL1_T3_12_ONE_1"
+      "node1" : "BUSCO_T11_ONE",
+      "node2" : "INTERNAL_VL1_T11_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T3_12_ONE_1",
-      "node2" : "INTERNAL_VL1_T3_12_ONE_2"
+      "node1" : "BUSCO_L12_ONE",
+      "node2" : "INTERNAL_VL1_L12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T3_12_ONE_2",
-      "node2" : "T3_12_ONE"
+      "node1" : "BUSCO_T3_12_ONE",
+      "node2" : "INTERNAL_VL1_T3_12_ONE"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_G"
+      "node1" : "BUSCO_BR1",
+      "node2" : "INTERNAL_VL1_BR1"
+    }, {
+      "node1" : "INTERNAL_VL1_BR1",
+      "node2" : "BR1"
     }, {
       "node1" : "BUSCO_G",
-      "node2" : "INTERNAL_VL1_G_1"
+      "node2" : "INTERNAL_VL1_G"
     }, {
-      "node1" : "INTERNAL_VL1_G_1",
-      "node2" : "INTERNAL_VL1_G_2"
+      "node1" : "BUSCO_L11_TWO",
+      "node2" : "INTERNAL_VL1_L11_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_G_2",
-      "node2" : "G"
+      "node1" : "BUSCO_T11_TWO",
+      "node2" : "INTERNAL_VL1_T11_TWO"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_L11_TWO"
+      "node1" : "BUSCO_T12_ONE",
+      "node2" : "INTERNAL_VL1_T12_ONE"
     }, {
-      "node1" : "BUSCO_L11_TWO",
-      "node2" : "INTERNAL_VL1_L11_TWO_1"
+      "node1" : "BUSCO_T3_12_TWO",
+      "node2" : "INTERNAL_VL1_T3_12_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_L11_TWO_1",
-      "node2" : "INTERNAL_VL1_L11_TWO_2"
+      "node1" : "BUSCO_BR1",
+      "node2" : "INTERNAL_VL1_BR1"
     }, {
-      "node1" : "INTERNAL_VL1_L11_TWO_2",
-      "node2" : "L11_TWO"
+      "node1" : "INTERNAL_VL1_BR1",
+      "node2" : "BR1"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_T11_TWO"
+      "node1" : "INTERNAL_VL1_LD1",
+      "node2" : "INTERNAL_VL1_LD1"
     }, {
-      "node1" : "BUSCO_T11_TWO",
-      "node2" : "INTERNAL_VL1_T11_TWO_1"
+      "node1" : "INTERNAL_VL1_LD1",
+      "node2" : "LD1"
     }, {
-      "node1" : "INTERNAL_VL1_T11_TWO_1",
-      "node2" : "INTERNAL_VL1_T11_TWO_2"
+      "node1" : "INTERNAL_VL1_L11_ONE",
+      "node2" : "INTERNAL_VL1_L11_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T11_TWO_2",
-      "node2" : "T11_TWO"
+      "node1" : "INTERNAL_VL1_L11_ONE",
+      "node2" : "L11_ONE"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_T12_ONE"
+      "node1" : "INTERNAL_VL1_T11_ONE",
+      "node2" : "INTERNAL_VL1_T11_ONE"
     }, {
-      "node1" : "BUSCO_T12_ONE",
-      "node2" : "INTERNAL_VL1_T12_ONE_1"
+      "node1" : "INTERNAL_VL1_T11_ONE",
+      "node2" : "T11_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T12_ONE_1",
-      "node2" : "INTERNAL_VL1_T12_ONE_2"
+      "node1" : "INTERNAL_VL1_L12_ONE",
+      "node2" : "INTERNAL_VL1_L12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T12_ONE_2",
-      "node2" : "T12_ONE"
+      "node1" : "INTERNAL_VL1_L12_ONE",
+      "node2" : "L12_ONE"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_T3_12_TWO"
+      "node1" : "INTERNAL_VL1_T3_12_ONE",
+      "node2" : "INTERNAL_VL1_T3_12_ONE"
     }, {
-      "node1" : "BUSCO_T3_12_TWO",
-      "node2" : "INTERNAL_VL1_T3_12_TWO_1"
+      "node1" : "INTERNAL_VL1_T3_12_ONE",
+      "node2" : "T3_12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T3_12_TWO_1",
-      "node2" : "INTERNAL_VL1_T3_12_TWO_2"
+      "node1" : "INTERNAL_VL1_G",
+      "node2" : "INTERNAL_VL1_G"
     }, {
-      "node1" : "INTERNAL_VL1_T3_12_TWO_2",
-      "node2" : "T3_12_TWO"
+      "node1" : "INTERNAL_VL1_G",
+      "node2" : "G"
     }, {
-      "node1" : "B11",
-      "node2" : "BUSCO_BR1"
+      "node1" : "INTERNAL_VL1_L11_TWO",
+      "node2" : "INTERNAL_VL1_L11_TWO"
     }, {
-      "node1" : "BUSCO_BR1",
-      "node2" : "INTERNAL_VL1_BR1"
+      "node1" : "INTERNAL_VL1_L11_TWO",
+      "node2" : "L11_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_BR1",
-      "node2" : "BR1"
+      "node1" : "INTERNAL_VL1_T11_TWO",
+      "node2" : "INTERNAL_VL1_T11_TWO"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_BR1"
+      "node1" : "INTERNAL_VL1_T11_TWO",
+      "node2" : "T11_TWO"
     }, {
-      "node1" : "BUSCO_BR1",
-      "node2" : "INTERNAL_VL1_BR1"
+      "node1" : "INTERNAL_VL1_T12_ONE",
+      "node2" : "INTERNAL_VL1_T12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_BR1",
-      "node2" : "BR1"
+      "node1" : "INTERNAL_VL1_T12_ONE",
+      "node2" : "T12_ONE"
+    }, {
+      "node1" : "INTERNAL_VL1_T3_12_TWO",
+      "node2" : "INTERNAL_VL1_T3_12_TWO"
+    }, {
+      "node1" : "INTERNAL_VL1_T3_12_TWO",
+      "node2" : "T3_12_TWO"
     } ],
     "multitermNodes" : [ {
       "type" : "FICTITIOUS",
@@ -1765,7 +1765,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_L12_TWO_1",
+      "id" : "INTERNAL_VL2_L12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -1774,7 +1774,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_L12_TWO_2",
+      "id" : "INTERNAL_VL2_L12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -1783,7 +1783,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_LD2_1",
+      "id" : "INTERNAL_VL2_LD2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -1791,7 +1791,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_LD2_2",
+      "id" : "INTERNAL_VL2_LD2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -1799,7 +1799,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_T12_TWO_1",
+      "id" : "INTERNAL_VL2_T12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -1807,7 +1807,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_T12_TWO_2",
+      "id" : "INTERNAL_VL2_T12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -1815,7 +1815,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_T3_12_THREE_1",
+      "id" : "INTERNAL_VL2_T3_12_THREE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -1824,7 +1824,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_T3_12_THREE_2",
+      "id" : "INTERNAL_VL2_T3_12_THREE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -1949,7 +1949,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B21", "BUSCO_LD2", "INTERNAL_VL2_LD2_1" ]
+          "nodes" : [ "B21", "BUSCO_LD2", "INTERNAL_VL2_LD2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1970,7 +1970,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_LD2_1", "INTERNAL_VL2_LD2_2" ]
+          "nodes" : [ "INTERNAL_VL2_LD2", "INTERNAL_VL2_LD2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1991,7 +1991,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL2_LD2_2", "LD2" ]
+          "nodes" : [ "INTERNAL_VL2_LD2", "LD2" ]
         } ]
       }
     }, {
@@ -2039,7 +2039,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B21", "BUSCO_L12_TWO", "INTERNAL_VL2_L12_TWO_1" ]
+          "nodes" : [ "B21", "BUSCO_L12_TWO", "INTERNAL_VL2_L12_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2060,7 +2060,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_L12_TWO_1", "INTERNAL_VL2_L12_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL2_L12_TWO", "INTERNAL_VL2_L12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2081,7 +2081,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL2_L12_TWO_2", "L12_TWO" ]
+          "nodes" : [ "INTERNAL_VL2_L12_TWO", "L12_TWO" ]
         } ]
       }
     }, {
@@ -2129,7 +2129,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B21", "BUSCO_T12_TWO", "INTERNAL_VL2_T12_TWO_1" ]
+          "nodes" : [ "B21", "BUSCO_T12_TWO", "INTERNAL_VL2_T12_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2150,7 +2150,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_T12_TWO_1", "INTERNAL_VL2_T12_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL2_T12_TWO", "INTERNAL_VL2_T12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2171,7 +2171,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL2_T12_TWO_2", "T12_TWO" ]
+          "nodes" : [ "INTERNAL_VL2_T12_TWO", "T12_TWO" ]
         } ]
       }
     }, {
@@ -2219,7 +2219,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B21", "BUSCO_T3_12_THREE", "INTERNAL_VL2_T3_12_THREE_1" ]
+          "nodes" : [ "B21", "BUSCO_T3_12_THREE", "INTERNAL_VL2_T3_12_THREE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2240,7 +2240,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_T3_12_THREE_1", "INTERNAL_VL2_T3_12_THREE_2" ]
+          "nodes" : [ "INTERNAL_VL2_T3_12_THREE", "INTERNAL_VL2_T3_12_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2261,7 +2261,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL2_T3_12_THREE_2", "T3_12_THREE" ]
+          "nodes" : [ "INTERNAL_VL2_T3_12_THREE", "T3_12_THREE" ]
         } ]
       }
     } ],
@@ -2269,49 +2269,49 @@
       "node1" : "B21",
       "node2" : "BUSCO_LD2"
     }, {
-      "node1" : "BUSCO_LD2",
-      "node2" : "INTERNAL_VL2_LD2_1"
-    }, {
-      "node1" : "INTERNAL_VL2_LD2_1",
-      "node2" : "INTERNAL_VL2_LD2_2"
+      "node1" : "B21",
+      "node2" : "BUSCO_L12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_LD2_2",
-      "node2" : "LD2"
+      "node1" : "B21",
+      "node2" : "BUSCO_T12_TWO"
     }, {
       "node1" : "B21",
-      "node2" : "BUSCO_L12_TWO"
+      "node2" : "BUSCO_T3_12_THREE"
+    }, {
+      "node1" : "BUSCO_LD2",
+      "node2" : "INTERNAL_VL2_LD2"
     }, {
       "node1" : "BUSCO_L12_TWO",
-      "node2" : "INTERNAL_VL2_L12_TWO_1"
+      "node2" : "INTERNAL_VL2_L12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_L12_TWO_1",
-      "node2" : "INTERNAL_VL2_L12_TWO_2"
+      "node1" : "BUSCO_T12_TWO",
+      "node2" : "INTERNAL_VL2_T12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_L12_TWO_2",
-      "node2" : "L12_TWO"
+      "node1" : "BUSCO_T3_12_THREE",
+      "node2" : "INTERNAL_VL2_T3_12_THREE"
     }, {
-      "node1" : "B21",
-      "node2" : "BUSCO_T12_TWO"
+      "node1" : "INTERNAL_VL2_LD2",
+      "node2" : "INTERNAL_VL2_LD2"
     }, {
-      "node1" : "BUSCO_T12_TWO",
-      "node2" : "INTERNAL_VL2_T12_TWO_1"
+      "node1" : "INTERNAL_VL2_LD2",
+      "node2" : "LD2"
     }, {
-      "node1" : "INTERNAL_VL2_T12_TWO_1",
-      "node2" : "INTERNAL_VL2_T12_TWO_2"
+      "node1" : "INTERNAL_VL2_L12_TWO",
+      "node2" : "INTERNAL_VL2_L12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_T12_TWO_2",
-      "node2" : "T12_TWO"
+      "node1" : "INTERNAL_VL2_L12_TWO",
+      "node2" : "L12_TWO"
     }, {
-      "node1" : "B21",
-      "node2" : "BUSCO_T3_12_THREE"
+      "node1" : "INTERNAL_VL2_T12_TWO",
+      "node2" : "INTERNAL_VL2_T12_TWO"
     }, {
-      "node1" : "BUSCO_T3_12_THREE",
-      "node2" : "INTERNAL_VL2_T3_12_THREE_1"
+      "node1" : "INTERNAL_VL2_T12_TWO",
+      "node2" : "T12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_T3_12_THREE_1",
-      "node2" : "INTERNAL_VL2_T3_12_THREE_2"
+      "node1" : "INTERNAL_VL2_T3_12_THREE",
+      "node2" : "INTERNAL_VL2_T3_12_THREE"
     }, {
-      "node1" : "INTERNAL_VL2_T3_12_THREE_2",
+      "node1" : "INTERNAL_VL2_T3_12_THREE",
       "node2" : "T3_12_THREE"
     } ],
     "multitermNodes" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/InternalBranchesBusBreakerV.json b/single-line-diagram-core/src/test/resources/InternalBranchesBusBreakerV.json
index c429d6b9b..a0a399eba 100644
--- a/single-line-diagram-core/src/test/resources/InternalBranchesBusBreakerV.json
+++ b/single-line-diagram-core/src/test/resources/InternalBranchesBusBreakerV.json
@@ -191,7 +191,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_G_1",
+      "id" : "INTERNAL_VL1_G",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -200,7 +200,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_G_2",
+      "id" : "INTERNAL_VL1_G",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -209,7 +209,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L11_ONE_1",
+      "id" : "INTERNAL_VL1_L11_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -218,7 +218,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L11_ONE_2",
+      "id" : "INTERNAL_VL1_L11_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -227,7 +227,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L11_TWO_1",
+      "id" : "INTERNAL_VL1_L11_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
@@ -235,7 +235,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L11_TWO_2",
+      "id" : "INTERNAL_VL1_L11_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
@@ -243,7 +243,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L12_ONE_1",
+      "id" : "INTERNAL_VL1_L12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -252,7 +252,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_L12_ONE_2",
+      "id" : "INTERNAL_VL1_L12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -261,7 +261,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_LD1_1",
+      "id" : "INTERNAL_VL1_LD1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -269,7 +269,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_LD1_2",
+      "id" : "INTERNAL_VL1_LD1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -277,7 +277,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T11_ONE_1",
+      "id" : "INTERNAL_VL1_T11_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -285,7 +285,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T11_ONE_2",
+      "id" : "INTERNAL_VL1_T11_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -293,7 +293,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T11_TWO_1",
+      "id" : "INTERNAL_VL1_T11_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -302,7 +302,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T11_TWO_2",
+      "id" : "INTERNAL_VL1_T11_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -311,7 +311,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T12_ONE_1",
+      "id" : "INTERNAL_VL1_T12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -319,7 +319,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T12_ONE_2",
+      "id" : "INTERNAL_VL1_T12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -327,7 +327,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T3_12_ONE_1",
+      "id" : "INTERNAL_VL1_T3_12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -335,7 +335,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T3_12_ONE_2",
+      "id" : "INTERNAL_VL1_T3_12_ONE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -343,7 +343,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T3_12_TWO_1",
+      "id" : "INTERNAL_VL1_T3_12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 575.0,
@@ -352,7 +352,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_T3_12_TWO_2",
+      "id" : "INTERNAL_VL1_T3_12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 575.0,
@@ -662,7 +662,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_LD1", "INTERNAL_VL1_LD1_1" ]
+          "nodes" : [ "B11", "BUSCO_LD1", "INTERNAL_VL1_LD1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -683,7 +683,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_LD1_1", "INTERNAL_VL1_LD1_2" ]
+          "nodes" : [ "INTERNAL_VL1_LD1", "INTERNAL_VL1_LD1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -704,7 +704,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_LD1_2", "LD1" ]
+          "nodes" : [ "INTERNAL_VL1_LD1", "LD1" ]
         } ]
       }
     }, {
@@ -752,7 +752,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_L11_ONE", "INTERNAL_VL1_L11_ONE_1" ]
+          "nodes" : [ "B11", "BUSCO_L11_ONE", "INTERNAL_VL1_L11_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -773,7 +773,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_L11_ONE_1", "INTERNAL_VL1_L11_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_L11_ONE", "INTERNAL_VL1_L11_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -794,7 +794,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_L11_ONE_2", "L11_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_L11_ONE", "L11_ONE" ]
         } ]
       }
     }, {
@@ -842,7 +842,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_T11_ONE", "INTERNAL_VL1_T11_ONE_1" ]
+          "nodes" : [ "B11", "BUSCO_T11_ONE", "INTERNAL_VL1_T11_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -863,7 +863,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T11_ONE_1", "INTERNAL_VL1_T11_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_T11_ONE", "INTERNAL_VL1_T11_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -884,7 +884,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T11_ONE_2", "T11_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_T11_ONE", "T11_ONE" ]
         } ]
       }
     }, {
@@ -932,7 +932,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_L12_ONE", "INTERNAL_VL1_L12_ONE_1" ]
+          "nodes" : [ "B11", "BUSCO_L12_ONE", "INTERNAL_VL1_L12_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -953,7 +953,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_L12_ONE_1", "INTERNAL_VL1_L12_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_L12_ONE", "INTERNAL_VL1_L12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -974,7 +974,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_L12_ONE_2", "L12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_L12_ONE", "L12_ONE" ]
         } ]
       }
     }, {
@@ -1022,7 +1022,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B11", "BUSCO_T3_12_ONE", "INTERNAL_VL1_T3_12_ONE_1" ]
+          "nodes" : [ "B11", "BUSCO_T3_12_ONE", "INTERNAL_VL1_T3_12_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1043,7 +1043,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T3_12_ONE_1", "INTERNAL_VL1_T3_12_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_T3_12_ONE", "INTERNAL_VL1_T3_12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1064,7 +1064,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T3_12_ONE_2", "T3_12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_T3_12_ONE", "T3_12_ONE" ]
         } ]
       }
     }, {
@@ -1112,7 +1112,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_G", "INTERNAL_VL1_G_1" ]
+          "nodes" : [ "B12", "BUSCO_G", "INTERNAL_VL1_G" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1133,7 +1133,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_G_1", "INTERNAL_VL1_G_2" ]
+          "nodes" : [ "INTERNAL_VL1_G", "INTERNAL_VL1_G" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1154,7 +1154,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_G_2", "G" ]
+          "nodes" : [ "INTERNAL_VL1_G", "G" ]
         } ]
       }
     }, {
@@ -1202,7 +1202,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_L11_TWO", "INTERNAL_VL1_L11_TWO_1" ]
+          "nodes" : [ "B12", "BUSCO_L11_TWO", "INTERNAL_VL1_L11_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1223,7 +1223,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_L11_TWO_1", "INTERNAL_VL1_L11_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL1_L11_TWO", "INTERNAL_VL1_L11_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1244,7 +1244,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_L11_TWO_2", "L11_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_L11_TWO", "L11_TWO" ]
         } ]
       }
     }, {
@@ -1292,7 +1292,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_T11_TWO", "INTERNAL_VL1_T11_TWO_1" ]
+          "nodes" : [ "B12", "BUSCO_T11_TWO", "INTERNAL_VL1_T11_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1313,7 +1313,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T11_TWO_1", "INTERNAL_VL1_T11_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL1_T11_TWO", "INTERNAL_VL1_T11_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1334,7 +1334,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T11_TWO_2", "T11_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_T11_TWO", "T11_TWO" ]
         } ]
       }
     }, {
@@ -1382,7 +1382,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_T12_ONE", "INTERNAL_VL1_T12_ONE_1" ]
+          "nodes" : [ "B12", "BUSCO_T12_ONE", "INTERNAL_VL1_T12_ONE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1403,7 +1403,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T12_ONE_1", "INTERNAL_VL1_T12_ONE_2" ]
+          "nodes" : [ "INTERNAL_VL1_T12_ONE", "INTERNAL_VL1_T12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1424,7 +1424,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T12_ONE_2", "T12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_T12_ONE", "T12_ONE" ]
         } ]
       }
     }, {
@@ -1472,7 +1472,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B12", "BUSCO_T3_12_TWO", "INTERNAL_VL1_T3_12_TWO_1" ]
+          "nodes" : [ "B12", "BUSCO_T3_12_TWO", "INTERNAL_VL1_T3_12_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1493,7 +1493,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_T3_12_TWO_1", "INTERNAL_VL1_T3_12_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL1_T3_12_TWO", "INTERNAL_VL1_T3_12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1514,148 +1514,148 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL1_T3_12_TWO_2", "T3_12_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_T3_12_TWO", "T3_12_TWO" ]
         } ]
       }
     } ],
     "edges" : [ {
       "node1" : "B11",
       "node2" : "BUSCO_LD1"
-    }, {
-      "node1" : "BUSCO_LD1",
-      "node2" : "INTERNAL_VL1_LD1_1"
-    }, {
-      "node1" : "INTERNAL_VL1_LD1_1",
-      "node2" : "INTERNAL_VL1_LD1_2"
-    }, {
-      "node1" : "INTERNAL_VL1_LD1_2",
-      "node2" : "LD1"
     }, {
       "node1" : "B11",
       "node2" : "BUSCO_L11_ONE"
     }, {
-      "node1" : "BUSCO_L11_ONE",
-      "node2" : "INTERNAL_VL1_L11_ONE_1"
+      "node1" : "B11",
+      "node2" : "BUSCO_T11_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_L11_ONE_1",
-      "node2" : "INTERNAL_VL1_L11_ONE_2"
+      "node1" : "B11",
+      "node2" : "BUSCO_L12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_L11_ONE_2",
-      "node2" : "L11_ONE"
+      "node1" : "B11",
+      "node2" : "BUSCO_T3_12_ONE"
     }, {
       "node1" : "B11",
-      "node2" : "BUSCO_T11_ONE"
+      "node2" : "BUSCO_BR1"
     }, {
-      "node1" : "BUSCO_T11_ONE",
-      "node2" : "INTERNAL_VL1_T11_ONE_1"
+      "node1" : "B12",
+      "node2" : "BUSCO_G"
     }, {
-      "node1" : "INTERNAL_VL1_T11_ONE_1",
-      "node2" : "INTERNAL_VL1_T11_ONE_2"
+      "node1" : "B12",
+      "node2" : "BUSCO_L11_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_T11_ONE_2",
-      "node2" : "T11_ONE"
+      "node1" : "B12",
+      "node2" : "BUSCO_T11_TWO"
     }, {
-      "node1" : "B11",
-      "node2" : "BUSCO_L12_ONE"
+      "node1" : "B12",
+      "node2" : "BUSCO_T12_ONE"
     }, {
-      "node1" : "BUSCO_L12_ONE",
-      "node2" : "INTERNAL_VL1_L12_ONE_1"
+      "node1" : "B12",
+      "node2" : "BUSCO_T3_12_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_L12_ONE_1",
-      "node2" : "INTERNAL_VL1_L12_ONE_2"
+      "node1" : "B12",
+      "node2" : "BUSCO_BR1"
     }, {
-      "node1" : "INTERNAL_VL1_L12_ONE_2",
-      "node2" : "L12_ONE"
+      "node1" : "BUSCO_LD1",
+      "node2" : "INTERNAL_VL1_LD1"
     }, {
-      "node1" : "B11",
-      "node2" : "BUSCO_T3_12_ONE"
+      "node1" : "BUSCO_L11_ONE",
+      "node2" : "INTERNAL_VL1_L11_ONE"
     }, {
-      "node1" : "BUSCO_T3_12_ONE",
-      "node2" : "INTERNAL_VL1_T3_12_ONE_1"
+      "node1" : "BUSCO_T11_ONE",
+      "node2" : "INTERNAL_VL1_T11_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T3_12_ONE_1",
-      "node2" : "INTERNAL_VL1_T3_12_ONE_2"
+      "node1" : "BUSCO_L12_ONE",
+      "node2" : "INTERNAL_VL1_L12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T3_12_ONE_2",
-      "node2" : "T3_12_ONE"
+      "node1" : "BUSCO_T3_12_ONE",
+      "node2" : "INTERNAL_VL1_T3_12_ONE"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_G"
+      "node1" : "BUSCO_BR1",
+      "node2" : "INTERNAL_VL1_BR1"
+    }, {
+      "node1" : "INTERNAL_VL1_BR1",
+      "node2" : "BR1"
     }, {
       "node1" : "BUSCO_G",
-      "node2" : "INTERNAL_VL1_G_1"
+      "node2" : "INTERNAL_VL1_G"
     }, {
-      "node1" : "INTERNAL_VL1_G_1",
-      "node2" : "INTERNAL_VL1_G_2"
+      "node1" : "BUSCO_L11_TWO",
+      "node2" : "INTERNAL_VL1_L11_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_G_2",
-      "node2" : "G"
+      "node1" : "BUSCO_T11_TWO",
+      "node2" : "INTERNAL_VL1_T11_TWO"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_L11_TWO"
+      "node1" : "BUSCO_T12_ONE",
+      "node2" : "INTERNAL_VL1_T12_ONE"
     }, {
-      "node1" : "BUSCO_L11_TWO",
-      "node2" : "INTERNAL_VL1_L11_TWO_1"
+      "node1" : "BUSCO_T3_12_TWO",
+      "node2" : "INTERNAL_VL1_T3_12_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_L11_TWO_1",
-      "node2" : "INTERNAL_VL1_L11_TWO_2"
+      "node1" : "BUSCO_BR1",
+      "node2" : "INTERNAL_VL1_BR1"
     }, {
-      "node1" : "INTERNAL_VL1_L11_TWO_2",
-      "node2" : "L11_TWO"
+      "node1" : "INTERNAL_VL1_BR1",
+      "node2" : "BR1"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_T11_TWO"
+      "node1" : "INTERNAL_VL1_LD1",
+      "node2" : "INTERNAL_VL1_LD1"
     }, {
-      "node1" : "BUSCO_T11_TWO",
-      "node2" : "INTERNAL_VL1_T11_TWO_1"
+      "node1" : "INTERNAL_VL1_LD1",
+      "node2" : "LD1"
     }, {
-      "node1" : "INTERNAL_VL1_T11_TWO_1",
-      "node2" : "INTERNAL_VL1_T11_TWO_2"
+      "node1" : "INTERNAL_VL1_L11_ONE",
+      "node2" : "INTERNAL_VL1_L11_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T11_TWO_2",
-      "node2" : "T11_TWO"
+      "node1" : "INTERNAL_VL1_L11_ONE",
+      "node2" : "L11_ONE"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_T12_ONE"
+      "node1" : "INTERNAL_VL1_T11_ONE",
+      "node2" : "INTERNAL_VL1_T11_ONE"
     }, {
-      "node1" : "BUSCO_T12_ONE",
-      "node2" : "INTERNAL_VL1_T12_ONE_1"
+      "node1" : "INTERNAL_VL1_T11_ONE",
+      "node2" : "T11_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T12_ONE_1",
-      "node2" : "INTERNAL_VL1_T12_ONE_2"
+      "node1" : "INTERNAL_VL1_L12_ONE",
+      "node2" : "INTERNAL_VL1_L12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T12_ONE_2",
-      "node2" : "T12_ONE"
+      "node1" : "INTERNAL_VL1_L12_ONE",
+      "node2" : "L12_ONE"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_T3_12_TWO"
+      "node1" : "INTERNAL_VL1_T3_12_ONE",
+      "node2" : "INTERNAL_VL1_T3_12_ONE"
     }, {
-      "node1" : "BUSCO_T3_12_TWO",
-      "node2" : "INTERNAL_VL1_T3_12_TWO_1"
+      "node1" : "INTERNAL_VL1_T3_12_ONE",
+      "node2" : "T3_12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_T3_12_TWO_1",
-      "node2" : "INTERNAL_VL1_T3_12_TWO_2"
+      "node1" : "INTERNAL_VL1_G",
+      "node2" : "INTERNAL_VL1_G"
     }, {
-      "node1" : "INTERNAL_VL1_T3_12_TWO_2",
-      "node2" : "T3_12_TWO"
+      "node1" : "INTERNAL_VL1_G",
+      "node2" : "G"
     }, {
-      "node1" : "B11",
-      "node2" : "BUSCO_BR1"
+      "node1" : "INTERNAL_VL1_L11_TWO",
+      "node2" : "INTERNAL_VL1_L11_TWO"
     }, {
-      "node1" : "BUSCO_BR1",
-      "node2" : "INTERNAL_VL1_BR1"
+      "node1" : "INTERNAL_VL1_L11_TWO",
+      "node2" : "L11_TWO"
     }, {
-      "node1" : "INTERNAL_VL1_BR1",
-      "node2" : "BR1"
+      "node1" : "INTERNAL_VL1_T11_TWO",
+      "node2" : "INTERNAL_VL1_T11_TWO"
     }, {
-      "node1" : "B12",
-      "node2" : "BUSCO_BR1"
+      "node1" : "INTERNAL_VL1_T11_TWO",
+      "node2" : "T11_TWO"
     }, {
-      "node1" : "BUSCO_BR1",
-      "node2" : "INTERNAL_VL1_BR1"
+      "node1" : "INTERNAL_VL1_T12_ONE",
+      "node2" : "INTERNAL_VL1_T12_ONE"
     }, {
-      "node1" : "INTERNAL_VL1_BR1",
-      "node2" : "BR1"
+      "node1" : "INTERNAL_VL1_T12_ONE",
+      "node2" : "T12_ONE"
+    }, {
+      "node1" : "INTERNAL_VL1_T3_12_TWO",
+      "node2" : "INTERNAL_VL1_T3_12_TWO"
+    }, {
+      "node1" : "INTERNAL_VL1_T3_12_TWO",
+      "node2" : "T3_12_TWO"
     } ],
     "multitermNodes" : [ {
       "type" : "FICTITIOUS",
@@ -1765,7 +1765,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_L12_TWO_1",
+      "id" : "INTERNAL_VL2_L12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -1774,7 +1774,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_L12_TWO_2",
+      "id" : "INTERNAL_VL2_L12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -1783,7 +1783,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_LD2_1",
+      "id" : "INTERNAL_VL2_LD2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -1791,7 +1791,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_LD2_2",
+      "id" : "INTERNAL_VL2_LD2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -1799,7 +1799,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_T12_TWO_1",
+      "id" : "INTERNAL_VL2_T12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -1807,7 +1807,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_T12_TWO_2",
+      "id" : "INTERNAL_VL2_T12_TWO",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -1815,7 +1815,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_T3_12_THREE_1",
+      "id" : "INTERNAL_VL2_T3_12_THREE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -1824,7 +1824,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_T3_12_THREE_2",
+      "id" : "INTERNAL_VL2_T3_12_THREE",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -1949,7 +1949,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B21", "BUSCO_LD2", "INTERNAL_VL2_LD2_1" ]
+          "nodes" : [ "B21", "BUSCO_LD2", "INTERNAL_VL2_LD2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1970,7 +1970,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_LD2_1", "INTERNAL_VL2_LD2_2" ]
+          "nodes" : [ "INTERNAL_VL2_LD2", "INTERNAL_VL2_LD2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1991,7 +1991,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL2_LD2_2", "LD2" ]
+          "nodes" : [ "INTERNAL_VL2_LD2", "LD2" ]
         } ]
       }
     }, {
@@ -2039,7 +2039,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B21", "BUSCO_L12_TWO", "INTERNAL_VL2_L12_TWO_1" ]
+          "nodes" : [ "B21", "BUSCO_L12_TWO", "INTERNAL_VL2_L12_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2060,7 +2060,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_L12_TWO_1", "INTERNAL_VL2_L12_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL2_L12_TWO", "INTERNAL_VL2_L12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2081,7 +2081,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL2_L12_TWO_2", "L12_TWO" ]
+          "nodes" : [ "INTERNAL_VL2_L12_TWO", "L12_TWO" ]
         } ]
       }
     }, {
@@ -2129,7 +2129,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B21", "BUSCO_T12_TWO", "INTERNAL_VL2_T12_TWO_1" ]
+          "nodes" : [ "B21", "BUSCO_T12_TWO", "INTERNAL_VL2_T12_TWO" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2150,7 +2150,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_T12_TWO_1", "INTERNAL_VL2_T12_TWO_2" ]
+          "nodes" : [ "INTERNAL_VL2_T12_TWO", "INTERNAL_VL2_T12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2171,7 +2171,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL2_T12_TWO_2", "T12_TWO" ]
+          "nodes" : [ "INTERNAL_VL2_T12_TWO", "T12_TWO" ]
         } ]
       }
     }, {
@@ -2219,7 +2219,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "B21", "BUSCO_T3_12_THREE", "INTERNAL_VL2_T3_12_THREE_1" ]
+          "nodes" : [ "B21", "BUSCO_T3_12_THREE", "INTERNAL_VL2_T3_12_THREE" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2240,7 +2240,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_T3_12_THREE_1", "INTERNAL_VL2_T3_12_THREE_2" ]
+          "nodes" : [ "INTERNAL_VL2_T3_12_THREE", "INTERNAL_VL2_T3_12_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2261,7 +2261,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "INTERNAL_VL2_T3_12_THREE_2", "T3_12_THREE" ]
+          "nodes" : [ "INTERNAL_VL2_T3_12_THREE", "T3_12_THREE" ]
         } ]
       }
     } ],
@@ -2269,49 +2269,49 @@
       "node1" : "B21",
       "node2" : "BUSCO_LD2"
     }, {
-      "node1" : "BUSCO_LD2",
-      "node2" : "INTERNAL_VL2_LD2_1"
-    }, {
-      "node1" : "INTERNAL_VL2_LD2_1",
-      "node2" : "INTERNAL_VL2_LD2_2"
+      "node1" : "B21",
+      "node2" : "BUSCO_L12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_LD2_2",
-      "node2" : "LD2"
+      "node1" : "B21",
+      "node2" : "BUSCO_T12_TWO"
     }, {
       "node1" : "B21",
-      "node2" : "BUSCO_L12_TWO"
+      "node2" : "BUSCO_T3_12_THREE"
+    }, {
+      "node1" : "BUSCO_LD2",
+      "node2" : "INTERNAL_VL2_LD2"
     }, {
       "node1" : "BUSCO_L12_TWO",
-      "node2" : "INTERNAL_VL2_L12_TWO_1"
+      "node2" : "INTERNAL_VL2_L12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_L12_TWO_1",
-      "node2" : "INTERNAL_VL2_L12_TWO_2"
+      "node1" : "BUSCO_T12_TWO",
+      "node2" : "INTERNAL_VL2_T12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_L12_TWO_2",
-      "node2" : "L12_TWO"
+      "node1" : "BUSCO_T3_12_THREE",
+      "node2" : "INTERNAL_VL2_T3_12_THREE"
     }, {
-      "node1" : "B21",
-      "node2" : "BUSCO_T12_TWO"
+      "node1" : "INTERNAL_VL2_LD2",
+      "node2" : "INTERNAL_VL2_LD2"
     }, {
-      "node1" : "BUSCO_T12_TWO",
-      "node2" : "INTERNAL_VL2_T12_TWO_1"
+      "node1" : "INTERNAL_VL2_LD2",
+      "node2" : "LD2"
     }, {
-      "node1" : "INTERNAL_VL2_T12_TWO_1",
-      "node2" : "INTERNAL_VL2_T12_TWO_2"
+      "node1" : "INTERNAL_VL2_L12_TWO",
+      "node2" : "INTERNAL_VL2_L12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_T12_TWO_2",
-      "node2" : "T12_TWO"
+      "node1" : "INTERNAL_VL2_L12_TWO",
+      "node2" : "L12_TWO"
     }, {
-      "node1" : "B21",
-      "node2" : "BUSCO_T3_12_THREE"
+      "node1" : "INTERNAL_VL2_T12_TWO",
+      "node2" : "INTERNAL_VL2_T12_TWO"
     }, {
-      "node1" : "BUSCO_T3_12_THREE",
-      "node2" : "INTERNAL_VL2_T3_12_THREE_1"
+      "node1" : "INTERNAL_VL2_T12_TWO",
+      "node2" : "T12_TWO"
     }, {
-      "node1" : "INTERNAL_VL2_T3_12_THREE_1",
-      "node2" : "INTERNAL_VL2_T3_12_THREE_2"
+      "node1" : "INTERNAL_VL2_T3_12_THREE",
+      "node2" : "INTERNAL_VL2_T3_12_THREE"
     }, {
-      "node1" : "INTERNAL_VL2_T3_12_THREE_2",
+      "node1" : "INTERNAL_VL2_T3_12_THREE",
       "node2" : "T3_12_THREE"
     } ],
     "multitermNodes" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreaker.svg b/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreaker.svg
index 7509620ab..ffd0f0521 100644
--- a/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreaker.svg
+++ b/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreaker.svg
@@ -91,22 +91,22 @@
             BBS12
         
         
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
-            
+            
                 
             
             
@@ -123,7 +123,7 @@
             
         
         
-            
+            
                 
             
             
@@ -135,11 +135,11 @@
                 
                 L1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -167,7 +167,7 @@
             
         
         
-            
+            
                 
             
             
@@ -176,11 +176,11 @@
             
                 L11
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -208,7 +208,7 @@
             
         
         
-            
+            
                 
             
             
@@ -217,11 +217,11 @@
             
                 L12
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -249,7 +249,7 @@
             
         
         
-            
+            
                 
             
             
@@ -258,11 +258,11 @@
             
                 T11
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -290,7 +290,7 @@
             
         
         
-            
+            
                 
             
             
@@ -299,11 +299,11 @@
             
                 T3_12
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -349,7 +349,7 @@
             
         
         
-            
+            
                 
             
             
@@ -361,11 +361,11 @@
                 
                 G
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -393,7 +393,7 @@
             
         
         
-            
+            
                 
             
             
@@ -402,11 +402,11 @@
             
                 L11
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -434,7 +434,7 @@
             
         
         
-            
+            
                 
             
             
@@ -443,11 +443,11 @@
             
                 T11
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -475,7 +475,7 @@
             
         
         
-            
+            
                 
             
             
@@ -486,11 +486,11 @@
                 
                 T12
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -518,7 +518,7 @@
             
         
         
-            
+            
                 
             
             
@@ -527,11 +527,11 @@
             
                 T3_12
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreakerH.json b/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreakerH.json
index 6c87e1455..8067a6379 100644
--- a/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreakerH.json
+++ b/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreakerH.json
@@ -315,7 +315,7 @@
       "direction" : "TOP"
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D10",
+      "id" : "INTERNAL_VL1_BR1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -323,7 +323,15 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D11",
+      "id" : "INTERNAL_VL1_BR1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 25.0,
+      "y" : 240.0,
+      "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_VL1_BR12",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -331,7 +339,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D13",
+      "id" : "INTERNAL_VL1_BR14",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -339,7 +347,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D15",
+      "id" : "INTERNAL_VL1_BR16",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -347,7 +355,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D17",
+      "id" : "INTERNAL_VL1_BR18",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -355,7 +363,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D19",
+      "id" : "INTERNAL_VL1_BR20",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -363,15 +371,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D20",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 25.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D21",
+      "id" : "INTERNAL_VL1_BR22",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -379,7 +379,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D23",
+      "id" : "INTERNAL_VL1_BR24",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
@@ -387,7 +387,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D25",
+      "id" : "INTERNAL_VL1_BR26",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -395,7 +395,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D27",
+      "id" : "INTERNAL_VL1_BR28",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -403,7 +403,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D29",
+      "id" : "INTERNAL_VL1_BR30",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 575.0,
@@ -698,7 +698,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D20", "INTERNAL_VL1_D20" ]
+          "nodes" : [ "BBS12", "D20", "INTERNAL_VL1_BR1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -719,7 +719,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_VL1_D20", "BR1", "INTERNAL_VL1_D10" ]
+          "nodes" : [ "INTERNAL_VL1_BR1", "BR1", "INTERNAL_VL1_BR1" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -740,7 +740,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D10", "INTERNAL_VL1_D10" ]
+          "nodes" : [ "BBS11", "D10", "INTERNAL_VL1_BR1" ]
         } ]
       }
     }, {
@@ -787,7 +787,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D11", "INTERNAL_VL1_D11" ]
+          "nodes" : [ "BBS11", "D11", "INTERNAL_VL1_BR12" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -808,7 +808,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D11", "BR12", "INTERNAL_VL1_L1" ]
+          "nodes" : [ "INTERNAL_VL1_BR12", "BR12", "INTERNAL_VL1_L1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -876,7 +876,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D13", "INTERNAL_VL1_D13" ]
+          "nodes" : [ "BBS11", "D13", "INTERNAL_VL1_BR14" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -897,7 +897,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D13", "BR14", "INTERNAL_VL1_L11_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR14", "BR14", "INTERNAL_VL1_L11_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -965,7 +965,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D15", "INTERNAL_VL1_D15" ]
+          "nodes" : [ "BBS11", "D15", "INTERNAL_VL1_BR16" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -986,7 +986,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D15", "BR16", "INTERNAL_VL1_L12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR16", "BR16", "INTERNAL_VL1_L12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1054,7 +1054,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D17", "INTERNAL_VL1_D17" ]
+          "nodes" : [ "BBS11", "D17", "INTERNAL_VL1_BR18" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1075,7 +1075,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D17", "BR18", "INTERNAL_VL1_T11_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR18", "BR18", "INTERNAL_VL1_T11_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1143,7 +1143,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D19", "INTERNAL_VL1_D19" ]
+          "nodes" : [ "BBS11", "D19", "INTERNAL_VL1_BR20" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1164,7 +1164,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D19", "BR20", "INTERNAL_VL1_T3_12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR20", "BR20", "INTERNAL_VL1_T3_12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1232,7 +1232,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D21", "INTERNAL_VL1_D21" ]
+          "nodes" : [ "BBS12", "D21", "INTERNAL_VL1_BR22" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1253,7 +1253,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D21", "BR22", "INTERNAL_VL1_G" ]
+          "nodes" : [ "INTERNAL_VL1_BR22", "BR22", "INTERNAL_VL1_G" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1321,7 +1321,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D23", "INTERNAL_VL1_D23" ]
+          "nodes" : [ "BBS12", "D23", "INTERNAL_VL1_BR24" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1342,7 +1342,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D23", "BR24", "INTERNAL_VL1_L11_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_BR24", "BR24", "INTERNAL_VL1_L11_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1410,7 +1410,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D25", "INTERNAL_VL1_D25" ]
+          "nodes" : [ "BBS12", "D25", "INTERNAL_VL1_BR26" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1431,7 +1431,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D25", "BR26", "INTERNAL_VL1_T11_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_BR26", "BR26", "INTERNAL_VL1_T11_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1499,7 +1499,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D27", "INTERNAL_VL1_D27" ]
+          "nodes" : [ "BBS12", "D27", "INTERNAL_VL1_BR28" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1520,7 +1520,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D27", "BR28", "INTERNAL_VL1_T12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR28", "BR28", "INTERNAL_VL1_T12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1588,7 +1588,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D29", "INTERNAL_VL1_D29" ]
+          "nodes" : [ "BBS12", "D29", "INTERNAL_VL1_BR30" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1609,7 +1609,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D29", "BR30", "INTERNAL_VL1_T3_12_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_BR30", "BR30", "INTERNAL_VL1_T3_12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1670,6 +1670,78 @@
     }, {
       "node1" : "BBS12",
       "node2" : "D29"
+    }, {
+      "node1" : "D10",
+      "node2" : "INTERNAL_VL1_BR1"
+    }, {
+      "node1" : "INTERNAL_VL1_BR1",
+      "node2" : "BR1"
+    }, {
+      "node1" : "D11",
+      "node2" : "INTERNAL_VL1_BR12"
+    }, {
+      "node1" : "INTERNAL_VL1_BR12",
+      "node2" : "BR12"
+    }, {
+      "node1" : "D13",
+      "node2" : "INTERNAL_VL1_BR14"
+    }, {
+      "node1" : "INTERNAL_VL1_BR14",
+      "node2" : "BR14"
+    }, {
+      "node1" : "D15",
+      "node2" : "INTERNAL_VL1_BR16"
+    }, {
+      "node1" : "INTERNAL_VL1_BR16",
+      "node2" : "BR16"
+    }, {
+      "node1" : "D17",
+      "node2" : "INTERNAL_VL1_BR18"
+    }, {
+      "node1" : "INTERNAL_VL1_BR18",
+      "node2" : "BR18"
+    }, {
+      "node1" : "D19",
+      "node2" : "INTERNAL_VL1_BR20"
+    }, {
+      "node1" : "INTERNAL_VL1_BR20",
+      "node2" : "BR20"
+    }, {
+      "node1" : "D20",
+      "node2" : "INTERNAL_VL1_BR1"
+    }, {
+      "node1" : "INTERNAL_VL1_BR1",
+      "node2" : "BR1"
+    }, {
+      "node1" : "D21",
+      "node2" : "INTERNAL_VL1_BR22"
+    }, {
+      "node1" : "INTERNAL_VL1_BR22",
+      "node2" : "BR22"
+    }, {
+      "node1" : "D23",
+      "node2" : "INTERNAL_VL1_BR24"
+    }, {
+      "node1" : "INTERNAL_VL1_BR24",
+      "node2" : "BR24"
+    }, {
+      "node1" : "D25",
+      "node2" : "INTERNAL_VL1_BR26"
+    }, {
+      "node1" : "INTERNAL_VL1_BR26",
+      "node2" : "BR26"
+    }, {
+      "node1" : "D27",
+      "node2" : "INTERNAL_VL1_BR28"
+    }, {
+      "node1" : "INTERNAL_VL1_BR28",
+      "node2" : "BR28"
+    }, {
+      "node1" : "D29",
+      "node2" : "INTERNAL_VL1_BR30"
+    }, {
+      "node1" : "INTERNAL_VL1_BR30",
+      "node2" : "BR30"
     }, {
       "node1" : "BR12",
       "node2" : "INTERNAL_VL1_L1"
@@ -1730,78 +1802,6 @@
     }, {
       "node1" : "INTERNAL_VL1_T3_12_TWO",
       "node2" : "T3_12_TWO"
-    }, {
-      "node1" : "BR1",
-      "node2" : "INTERNAL_VL1_D10"
-    }, {
-      "node1" : "D10",
-      "node2" : "INTERNAL_VL1_D10"
-    }, {
-      "node1" : "BR12",
-      "node2" : "INTERNAL_VL1_D11"
-    }, {
-      "node1" : "D11",
-      "node2" : "INTERNAL_VL1_D11"
-    }, {
-      "node1" : "BR14",
-      "node2" : "INTERNAL_VL1_D13"
-    }, {
-      "node1" : "D13",
-      "node2" : "INTERNAL_VL1_D13"
-    }, {
-      "node1" : "BR16",
-      "node2" : "INTERNAL_VL1_D15"
-    }, {
-      "node1" : "D15",
-      "node2" : "INTERNAL_VL1_D15"
-    }, {
-      "node1" : "BR18",
-      "node2" : "INTERNAL_VL1_D17"
-    }, {
-      "node1" : "D17",
-      "node2" : "INTERNAL_VL1_D17"
-    }, {
-      "node1" : "BR20",
-      "node2" : "INTERNAL_VL1_D19"
-    }, {
-      "node1" : "D19",
-      "node2" : "INTERNAL_VL1_D19"
-    }, {
-      "node1" : "BR1",
-      "node2" : "INTERNAL_VL1_D20"
-    }, {
-      "node1" : "D20",
-      "node2" : "INTERNAL_VL1_D20"
-    }, {
-      "node1" : "BR22",
-      "node2" : "INTERNAL_VL1_D21"
-    }, {
-      "node1" : "D21",
-      "node2" : "INTERNAL_VL1_D21"
-    }, {
-      "node1" : "BR24",
-      "node2" : "INTERNAL_VL1_D23"
-    }, {
-      "node1" : "D23",
-      "node2" : "INTERNAL_VL1_D23"
-    }, {
-      "node1" : "BR26",
-      "node2" : "INTERNAL_VL1_D25"
-    }, {
-      "node1" : "D25",
-      "node2" : "INTERNAL_VL1_D25"
-    }, {
-      "node1" : "BR28",
-      "node2" : "INTERNAL_VL1_D27"
-    }, {
-      "node1" : "D27",
-      "node2" : "INTERNAL_VL1_D27"
-    }, {
-      "node1" : "BR30",
-      "node2" : "INTERNAL_VL1_D29"
-    }, {
-      "node1" : "D29",
-      "node2" : "INTERNAL_VL1_D29"
     } ],
     "multitermNodes" : [ {
       "type" : "FICTITIOUS",
@@ -1965,7 +1965,7 @@
       "kind" : "DISCONNECTOR"
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_D31",
+      "id" : "INTERNAL_VL2_BR32",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -1973,7 +1973,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_D33",
+      "id" : "INTERNAL_VL2_BR34",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -1981,7 +1981,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_D35",
+      "id" : "INTERNAL_VL2_BR36",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -1989,7 +1989,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_D37",
+      "id" : "INTERNAL_VL2_BR38",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -2142,7 +2142,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS2", "D31", "INTERNAL_VL2_D31" ]
+          "nodes" : [ "BBS2", "D31", "INTERNAL_VL2_BR32" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2163,7 +2163,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_D31", "BR32", "INTERNAL_VL2_L2" ]
+          "nodes" : [ "INTERNAL_VL2_BR32", "BR32", "INTERNAL_VL2_L2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2231,7 +2231,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS2", "D33", "INTERNAL_VL2_D33" ]
+          "nodes" : [ "BBS2", "D33", "INTERNAL_VL2_BR34" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2252,7 +2252,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_D33", "BR34", "INTERNAL_VL2_L12_TWO" ]
+          "nodes" : [ "INTERNAL_VL2_BR34", "BR34", "INTERNAL_VL2_L12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2320,7 +2320,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS2", "D35", "INTERNAL_VL2_D35" ]
+          "nodes" : [ "BBS2", "D35", "INTERNAL_VL2_BR36" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2341,7 +2341,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_D35", "BR36", "INTERNAL_VL2_T12_TWO" ]
+          "nodes" : [ "INTERNAL_VL2_BR36", "BR36", "INTERNAL_VL2_T12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2409,7 +2409,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS2", "D37", "INTERNAL_VL2_D37" ]
+          "nodes" : [ "BBS2", "D37", "INTERNAL_VL2_BR38" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2430,7 +2430,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_D37", "BR38", "INTERNAL_VL2_T3_12_THREE" ]
+          "nodes" : [ "INTERNAL_VL2_BR38", "BR38", "INTERNAL_VL2_T3_12_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2467,6 +2467,30 @@
     }, {
       "node1" : "BBS2",
       "node2" : "D37"
+    }, {
+      "node1" : "D31",
+      "node2" : "INTERNAL_VL2_BR32"
+    }, {
+      "node1" : "INTERNAL_VL2_BR32",
+      "node2" : "BR32"
+    }, {
+      "node1" : "D33",
+      "node2" : "INTERNAL_VL2_BR34"
+    }, {
+      "node1" : "INTERNAL_VL2_BR34",
+      "node2" : "BR34"
+    }, {
+      "node1" : "D35",
+      "node2" : "INTERNAL_VL2_BR36"
+    }, {
+      "node1" : "INTERNAL_VL2_BR36",
+      "node2" : "BR36"
+    }, {
+      "node1" : "D37",
+      "node2" : "INTERNAL_VL2_BR38"
+    }, {
+      "node1" : "INTERNAL_VL2_BR38",
+      "node2" : "BR38"
     }, {
       "node1" : "BR32",
       "node2" : "INTERNAL_VL2_L2"
@@ -2491,30 +2515,6 @@
     }, {
       "node1" : "INTERNAL_VL2_T3_12_THREE",
       "node2" : "T3_12_THREE"
-    }, {
-      "node1" : "BR32",
-      "node2" : "INTERNAL_VL2_D31"
-    }, {
-      "node1" : "D31",
-      "node2" : "INTERNAL_VL2_D31"
-    }, {
-      "node1" : "BR34",
-      "node2" : "INTERNAL_VL2_D33"
-    }, {
-      "node1" : "D33",
-      "node2" : "INTERNAL_VL2_D33"
-    }, {
-      "node1" : "BR36",
-      "node2" : "INTERNAL_VL2_D35"
-    }, {
-      "node1" : "D35",
-      "node2" : "INTERNAL_VL2_D35"
-    }, {
-      "node1" : "BR38",
-      "node2" : "INTERNAL_VL2_D37"
-    }, {
-      "node1" : "D37",
-      "node2" : "INTERNAL_VL2_D37"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreakerV.json b/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreakerV.json
index 672ccbf8e..31ce52715 100644
--- a/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreakerV.json
+++ b/single-line-diagram-core/src/test/resources/InternalBranchesNodeBreakerV.json
@@ -315,7 +315,7 @@
       "direction" : "TOP"
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D10",
+      "id" : "INTERNAL_VL1_BR1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -323,7 +323,15 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D11",
+      "id" : "INTERNAL_VL1_BR1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 25.0,
+      "y" : 240.0,
+      "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_VL1_BR12",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -331,7 +339,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D13",
+      "id" : "INTERNAL_VL1_BR14",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -339,7 +347,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D15",
+      "id" : "INTERNAL_VL1_BR16",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -347,7 +355,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D17",
+      "id" : "INTERNAL_VL1_BR18",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -355,7 +363,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D19",
+      "id" : "INTERNAL_VL1_BR20",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -363,15 +371,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D20",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 25.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D21",
+      "id" : "INTERNAL_VL1_BR22",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -379,7 +379,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D23",
+      "id" : "INTERNAL_VL1_BR24",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
@@ -387,7 +387,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D25",
+      "id" : "INTERNAL_VL1_BR26",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -395,7 +395,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D27",
+      "id" : "INTERNAL_VL1_BR28",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -403,7 +403,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL1_D29",
+      "id" : "INTERNAL_VL1_BR30",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 575.0,
@@ -698,7 +698,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D20", "INTERNAL_VL1_D20" ]
+          "nodes" : [ "BBS12", "D20", "INTERNAL_VL1_BR1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -719,7 +719,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_VL1_D20", "BR1", "INTERNAL_VL1_D10" ]
+          "nodes" : [ "INTERNAL_VL1_BR1", "BR1", "INTERNAL_VL1_BR1" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -740,7 +740,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D10", "INTERNAL_VL1_D10" ]
+          "nodes" : [ "BBS11", "D10", "INTERNAL_VL1_BR1" ]
         } ]
       }
     }, {
@@ -787,7 +787,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D11", "INTERNAL_VL1_D11" ]
+          "nodes" : [ "BBS11", "D11", "INTERNAL_VL1_BR12" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -808,7 +808,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D11", "BR12", "INTERNAL_VL1_L1" ]
+          "nodes" : [ "INTERNAL_VL1_BR12", "BR12", "INTERNAL_VL1_L1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -876,7 +876,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D13", "INTERNAL_VL1_D13" ]
+          "nodes" : [ "BBS11", "D13", "INTERNAL_VL1_BR14" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -897,7 +897,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D13", "BR14", "INTERNAL_VL1_L11_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR14", "BR14", "INTERNAL_VL1_L11_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -965,7 +965,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D15", "INTERNAL_VL1_D15" ]
+          "nodes" : [ "BBS11", "D15", "INTERNAL_VL1_BR16" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -986,7 +986,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D15", "BR16", "INTERNAL_VL1_L12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR16", "BR16", "INTERNAL_VL1_L12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1054,7 +1054,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D17", "INTERNAL_VL1_D17" ]
+          "nodes" : [ "BBS11", "D17", "INTERNAL_VL1_BR18" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1075,7 +1075,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D17", "BR18", "INTERNAL_VL1_T11_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR18", "BR18", "INTERNAL_VL1_T11_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1143,7 +1143,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS11", "D19", "INTERNAL_VL1_D19" ]
+          "nodes" : [ "BBS11", "D19", "INTERNAL_VL1_BR20" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1164,7 +1164,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D19", "BR20", "INTERNAL_VL1_T3_12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR20", "BR20", "INTERNAL_VL1_T3_12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1232,7 +1232,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D21", "INTERNAL_VL1_D21" ]
+          "nodes" : [ "BBS12", "D21", "INTERNAL_VL1_BR22" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1253,7 +1253,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D21", "BR22", "INTERNAL_VL1_G" ]
+          "nodes" : [ "INTERNAL_VL1_BR22", "BR22", "INTERNAL_VL1_G" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1321,7 +1321,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D23", "INTERNAL_VL1_D23" ]
+          "nodes" : [ "BBS12", "D23", "INTERNAL_VL1_BR24" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1342,7 +1342,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D23", "BR24", "INTERNAL_VL1_L11_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_BR24", "BR24", "INTERNAL_VL1_L11_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1410,7 +1410,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D25", "INTERNAL_VL1_D25" ]
+          "nodes" : [ "BBS12", "D25", "INTERNAL_VL1_BR26" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1431,7 +1431,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D25", "BR26", "INTERNAL_VL1_T11_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_BR26", "BR26", "INTERNAL_VL1_T11_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1499,7 +1499,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D27", "INTERNAL_VL1_D27" ]
+          "nodes" : [ "BBS12", "D27", "INTERNAL_VL1_BR28" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1520,7 +1520,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D27", "BR28", "INTERNAL_VL1_T12_ONE" ]
+          "nodes" : [ "INTERNAL_VL1_BR28", "BR28", "INTERNAL_VL1_T12_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1588,7 +1588,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS12", "D29", "INTERNAL_VL1_D29" ]
+          "nodes" : [ "BBS12", "D29", "INTERNAL_VL1_BR30" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1609,7 +1609,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL1_D29", "BR30", "INTERNAL_VL1_T3_12_TWO" ]
+          "nodes" : [ "INTERNAL_VL1_BR30", "BR30", "INTERNAL_VL1_T3_12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1670,6 +1670,78 @@
     }, {
       "node1" : "BBS12",
       "node2" : "D29"
+    }, {
+      "node1" : "D10",
+      "node2" : "INTERNAL_VL1_BR1"
+    }, {
+      "node1" : "INTERNAL_VL1_BR1",
+      "node2" : "BR1"
+    }, {
+      "node1" : "D11",
+      "node2" : "INTERNAL_VL1_BR12"
+    }, {
+      "node1" : "INTERNAL_VL1_BR12",
+      "node2" : "BR12"
+    }, {
+      "node1" : "D13",
+      "node2" : "INTERNAL_VL1_BR14"
+    }, {
+      "node1" : "INTERNAL_VL1_BR14",
+      "node2" : "BR14"
+    }, {
+      "node1" : "D15",
+      "node2" : "INTERNAL_VL1_BR16"
+    }, {
+      "node1" : "INTERNAL_VL1_BR16",
+      "node2" : "BR16"
+    }, {
+      "node1" : "D17",
+      "node2" : "INTERNAL_VL1_BR18"
+    }, {
+      "node1" : "INTERNAL_VL1_BR18",
+      "node2" : "BR18"
+    }, {
+      "node1" : "D19",
+      "node2" : "INTERNAL_VL1_BR20"
+    }, {
+      "node1" : "INTERNAL_VL1_BR20",
+      "node2" : "BR20"
+    }, {
+      "node1" : "D20",
+      "node2" : "INTERNAL_VL1_BR1"
+    }, {
+      "node1" : "INTERNAL_VL1_BR1",
+      "node2" : "BR1"
+    }, {
+      "node1" : "D21",
+      "node2" : "INTERNAL_VL1_BR22"
+    }, {
+      "node1" : "INTERNAL_VL1_BR22",
+      "node2" : "BR22"
+    }, {
+      "node1" : "D23",
+      "node2" : "INTERNAL_VL1_BR24"
+    }, {
+      "node1" : "INTERNAL_VL1_BR24",
+      "node2" : "BR24"
+    }, {
+      "node1" : "D25",
+      "node2" : "INTERNAL_VL1_BR26"
+    }, {
+      "node1" : "INTERNAL_VL1_BR26",
+      "node2" : "BR26"
+    }, {
+      "node1" : "D27",
+      "node2" : "INTERNAL_VL1_BR28"
+    }, {
+      "node1" : "INTERNAL_VL1_BR28",
+      "node2" : "BR28"
+    }, {
+      "node1" : "D29",
+      "node2" : "INTERNAL_VL1_BR30"
+    }, {
+      "node1" : "INTERNAL_VL1_BR30",
+      "node2" : "BR30"
     }, {
       "node1" : "BR12",
       "node2" : "INTERNAL_VL1_L1"
@@ -1730,78 +1802,6 @@
     }, {
       "node1" : "INTERNAL_VL1_T3_12_TWO",
       "node2" : "T3_12_TWO"
-    }, {
-      "node1" : "BR1",
-      "node2" : "INTERNAL_VL1_D10"
-    }, {
-      "node1" : "D10",
-      "node2" : "INTERNAL_VL1_D10"
-    }, {
-      "node1" : "BR12",
-      "node2" : "INTERNAL_VL1_D11"
-    }, {
-      "node1" : "D11",
-      "node2" : "INTERNAL_VL1_D11"
-    }, {
-      "node1" : "BR14",
-      "node2" : "INTERNAL_VL1_D13"
-    }, {
-      "node1" : "D13",
-      "node2" : "INTERNAL_VL1_D13"
-    }, {
-      "node1" : "BR16",
-      "node2" : "INTERNAL_VL1_D15"
-    }, {
-      "node1" : "D15",
-      "node2" : "INTERNAL_VL1_D15"
-    }, {
-      "node1" : "BR18",
-      "node2" : "INTERNAL_VL1_D17"
-    }, {
-      "node1" : "D17",
-      "node2" : "INTERNAL_VL1_D17"
-    }, {
-      "node1" : "BR20",
-      "node2" : "INTERNAL_VL1_D19"
-    }, {
-      "node1" : "D19",
-      "node2" : "INTERNAL_VL1_D19"
-    }, {
-      "node1" : "BR1",
-      "node2" : "INTERNAL_VL1_D20"
-    }, {
-      "node1" : "D20",
-      "node2" : "INTERNAL_VL1_D20"
-    }, {
-      "node1" : "BR22",
-      "node2" : "INTERNAL_VL1_D21"
-    }, {
-      "node1" : "D21",
-      "node2" : "INTERNAL_VL1_D21"
-    }, {
-      "node1" : "BR24",
-      "node2" : "INTERNAL_VL1_D23"
-    }, {
-      "node1" : "D23",
-      "node2" : "INTERNAL_VL1_D23"
-    }, {
-      "node1" : "BR26",
-      "node2" : "INTERNAL_VL1_D25"
-    }, {
-      "node1" : "D25",
-      "node2" : "INTERNAL_VL1_D25"
-    }, {
-      "node1" : "BR28",
-      "node2" : "INTERNAL_VL1_D27"
-    }, {
-      "node1" : "D27",
-      "node2" : "INTERNAL_VL1_D27"
-    }, {
-      "node1" : "BR30",
-      "node2" : "INTERNAL_VL1_D29"
-    }, {
-      "node1" : "D29",
-      "node2" : "INTERNAL_VL1_D29"
     } ],
     "multitermNodes" : [ {
       "type" : "FICTITIOUS",
@@ -1965,7 +1965,7 @@
       "kind" : "DISCONNECTOR"
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_D31",
+      "id" : "INTERNAL_VL2_BR32",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -1973,7 +1973,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_D33",
+      "id" : "INTERNAL_VL2_BR34",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -1981,7 +1981,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_D35",
+      "id" : "INTERNAL_VL2_BR36",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -1989,7 +1989,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_VL2_D37",
+      "id" : "INTERNAL_VL2_BR38",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -2142,7 +2142,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS2", "D31", "INTERNAL_VL2_D31" ]
+          "nodes" : [ "BBS2", "D31", "INTERNAL_VL2_BR32" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2163,7 +2163,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_D31", "BR32", "INTERNAL_VL2_L2" ]
+          "nodes" : [ "INTERNAL_VL2_BR32", "BR32", "INTERNAL_VL2_L2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2231,7 +2231,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS2", "D33", "INTERNAL_VL2_D33" ]
+          "nodes" : [ "BBS2", "D33", "INTERNAL_VL2_BR34" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2252,7 +2252,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_D33", "BR34", "INTERNAL_VL2_L12_TWO" ]
+          "nodes" : [ "INTERNAL_VL2_BR34", "BR34", "INTERNAL_VL2_L12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2320,7 +2320,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS2", "D35", "INTERNAL_VL2_D35" ]
+          "nodes" : [ "BBS2", "D35", "INTERNAL_VL2_BR36" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2341,7 +2341,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_D35", "BR36", "INTERNAL_VL2_T12_TWO" ]
+          "nodes" : [ "INTERNAL_VL2_BR36", "BR36", "INTERNAL_VL2_T12_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2409,7 +2409,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "BBS2", "D37", "INTERNAL_VL2_D37" ]
+          "nodes" : [ "BBS2", "D37", "INTERNAL_VL2_BR38" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2430,7 +2430,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_VL2_D37", "BR38", "INTERNAL_VL2_T3_12_THREE" ]
+          "nodes" : [ "INTERNAL_VL2_BR38", "BR38", "INTERNAL_VL2_T3_12_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2467,6 +2467,30 @@
     }, {
       "node1" : "BBS2",
       "node2" : "D37"
+    }, {
+      "node1" : "D31",
+      "node2" : "INTERNAL_VL2_BR32"
+    }, {
+      "node1" : "INTERNAL_VL2_BR32",
+      "node2" : "BR32"
+    }, {
+      "node1" : "D33",
+      "node2" : "INTERNAL_VL2_BR34"
+    }, {
+      "node1" : "INTERNAL_VL2_BR34",
+      "node2" : "BR34"
+    }, {
+      "node1" : "D35",
+      "node2" : "INTERNAL_VL2_BR36"
+    }, {
+      "node1" : "INTERNAL_VL2_BR36",
+      "node2" : "BR36"
+    }, {
+      "node1" : "D37",
+      "node2" : "INTERNAL_VL2_BR38"
+    }, {
+      "node1" : "INTERNAL_VL2_BR38",
+      "node2" : "BR38"
     }, {
       "node1" : "BR32",
       "node2" : "INTERNAL_VL2_L2"
@@ -2491,30 +2515,6 @@
     }, {
       "node1" : "INTERNAL_VL2_T3_12_THREE",
       "node2" : "T3_12_THREE"
-    }, {
-      "node1" : "BR32",
-      "node2" : "INTERNAL_VL2_D31"
-    }, {
-      "node1" : "D31",
-      "node2" : "INTERNAL_VL2_D31"
-    }, {
-      "node1" : "BR34",
-      "node2" : "INTERNAL_VL2_D33"
-    }, {
-      "node1" : "D33",
-      "node2" : "INTERNAL_VL2_D33"
-    }, {
-      "node1" : "BR36",
-      "node2" : "INTERNAL_VL2_D35"
-    }, {
-      "node1" : "D35",
-      "node2" : "INTERNAL_VL2_D35"
-    }, {
-      "node1" : "BR38",
-      "node2" : "INTERNAL_VL2_D37"
-    }, {
-      "node1" : "D37",
-      "node2" : "INTERNAL_VL2_D37"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/NodeDecoratorsBranchStatusBusBreaker.svg b/single-line-diagram-core/src/test/resources/NodeDecoratorsBranchStatusBusBreaker.svg
index 0e99003da..c14d901eb 100644
--- a/single-line-diagram-core/src/test/resources/NodeDecoratorsBranchStatusBusBreaker.svg
+++ b/single-line-diagram-core/src/test/resources/NodeDecoratorsBranchStatusBusBreaker.svg
@@ -121,10 +121,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -133,13 +133,13 @@
                 
                 LD1
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -157,10 +157,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -169,13 +169,13 @@
                     
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -193,10 +193,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -205,13 +205,13 @@
                     
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -229,10 +229,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -241,13 +241,13 @@
                     
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -319,10 +319,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -331,13 +331,13 @@
                 
                 G
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -355,10 +355,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -367,13 +367,13 @@
                     
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -391,10 +391,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -403,13 +403,13 @@
                     
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -427,10 +427,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -441,13 +441,13 @@
                     
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/NodeDecoratorsBranchStatusNodeBreaker.svg b/single-line-diagram-core/src/test/resources/NodeDecoratorsBranchStatusNodeBreaker.svg
index 9e55bacb6..54403789b 100644
--- a/single-line-diagram-core/src/test/resources/NodeDecoratorsBranchStatusNodeBreaker.svg
+++ b/single-line-diagram-core/src/test/resources/NodeDecoratorsBranchStatusNodeBreaker.svg
@@ -105,22 +105,22 @@
             BBS12
         
         
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
-            
+            
                 
             
             
@@ -137,7 +137,7 @@
             
         
         
-            
+            
                 
             
             
@@ -149,11 +149,11 @@
                 
                 L1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -181,7 +181,7 @@
             
         
         
-            
+            
                 
             
             
@@ -193,11 +193,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -225,7 +225,7 @@
             
         
         
-            
+            
                 
             
             
@@ -237,11 +237,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -269,7 +269,7 @@
             
         
         
-            
+            
                 
             
             
@@ -281,11 +281,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -313,7 +313,7 @@
             
         
         
-            
+            
                 
             
             
@@ -325,11 +325,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -357,7 +357,7 @@
             
         
         
-            
+            
                 
             
             
@@ -369,11 +369,11 @@
                 
                 G
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -401,7 +401,7 @@
             
         
         
-            
+            
                 
             
             
@@ -413,11 +413,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -445,7 +445,7 @@
             
         
         
-            
+            
                 
             
             
@@ -457,11 +457,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -489,7 +489,7 @@
             
         
         
-            
+            
                 
             
             
@@ -501,11 +501,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -533,7 +533,7 @@
             
         
         
-            
+            
                 
             
             
@@ -545,11 +545,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -597,7 +597,7 @@
             BBS2
         
         
-            
+            
                 
             
             
@@ -609,11 +609,11 @@
                 
                 L2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -641,7 +641,7 @@
             
         
         
-            
+            
                 
             
             
@@ -653,11 +653,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -685,7 +685,7 @@
             
         
         
-            
+            
                 
             
             
@@ -697,11 +697,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -729,7 +729,7 @@
             
         
         
-            
+            
                 
             
             
@@ -741,11 +741,11 @@
                     
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/NodeDecoratorsSwitches.svg b/single-line-diagram-core/src/test/resources/NodeDecoratorsSwitches.svg
index 84ad4faed..7afde91b8 100644
--- a/single-line-diagram-core/src/test/resources/NodeDecoratorsSwitches.svg
+++ b/single-line-diagram-core/src/test/resources/NodeDecoratorsSwitches.svg
@@ -91,22 +91,22 @@
             BBS12
         
         
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
-            
+            
                 
             
             
@@ -132,7 +132,7 @@
             
         
         
-            
+            
                 
             
             
@@ -144,11 +144,11 @@
                 
                 L1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -182,7 +182,7 @@
             
         
         
-            
+            
                 
             
             
@@ -191,11 +191,11 @@
             
                 L11
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -229,7 +229,7 @@
             
         
         
-            
+            
                 
             
             
@@ -238,11 +238,11 @@
             
                 L12
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -276,7 +276,7 @@
             
         
         
-            
+            
                 
             
             
@@ -285,11 +285,11 @@
             
                 T11
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -323,7 +323,7 @@
             
         
         
-            
+            
                 
             
             
@@ -332,11 +332,11 @@
             
                 T3_12
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -388,7 +388,7 @@
             
         
         
-            
+            
                 
             
             
@@ -400,11 +400,11 @@
                 
                 G
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -438,7 +438,7 @@
             
         
         
-            
+            
                 
             
             
@@ -447,11 +447,11 @@
             
                 L11
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -485,7 +485,7 @@
             
         
         
-            
+            
                 
             
             
@@ -494,11 +494,11 @@
             
                 T11
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -532,7 +532,7 @@
             
         
         
-            
+            
                 
             
             
@@ -543,11 +543,11 @@
                 
                 T12
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -581,7 +581,7 @@
             
         
         
-            
+            
                 
             
             
@@ -590,11 +590,11 @@
             
                 T3_12
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase1.json b/single-line-diagram-core/src/test/resources/TestCase1.json
index 9973637a3..9997e0bfa 100644
--- a/single-line-diagram-core/src/test/resources/TestCase1.json
+++ b/single-line-diagram-core/src/test/resources/TestCase1.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -123,7 +123,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "d", "INTERNAL_vl_d" ]
+        "nodes" : [ "bbs", "d", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -144,7 +144,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_d", "b", "INTERNAL_vl_l" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_l" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -172,18 +172,18 @@
   "edges" : [ {
     "node1" : "bbs",
     "node2" : "d"
+  }, {
+    "node1" : "d",
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "b",
     "node2" : "INTERNAL_vl_l"
   }, {
     "node1" : "INTERNAL_vl_l",
     "node2" : "l"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d"
-  }, {
-    "node1" : "d",
-    "node2" : "INTERNAL_vl_d"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase1.svg b/single-line-diagram-core/src/test/resources/TestCase1.svg
index 91608d320..d51636aa3 100644
--- a/single-line-diagram-core/src/test/resources/TestCase1.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase1.svg
@@ -74,7 +74,7 @@
             bbs
         
         
-            
+            
                 
             
             
@@ -86,11 +86,11 @@
                 
                 l
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase11Left3wtOrientation.json b/single-line-diagram-core/src/test/resources/TestCase11Left3wtOrientation.json
index 3cd94813c..c8f81f477 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11Left3wtOrientation.json
+++ b/single-line-diagram-core/src/test/resources/TestCase11Left3wtOrientation.json
@@ -10,7 +10,7 @@
     "y" : 200.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen1",
+      "id" : "INTERNAL_vl1_bgen1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -19,7 +19,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen2",
+      "id" : "INTERNAL_vl1_bgen2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 675.0,
@@ -28,7 +28,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dline11_2",
+      "id" : "INTERNAL_vl1_bline11_2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -36,7 +36,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload1",
+      "id" : "INTERNAL_vl1_bload1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -44,7 +44,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload2",
+      "id" : "INTERNAL_vl1_bload2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -52,106 +52,106 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect11",
+      "id" : "INTERNAL_vl1_btrf11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 75.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect12",
+      "id" : "INTERNAL_vl1_btrf12",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 625.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect21",
+      "id" : "INTERNAL_vl1_btrf13",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 175.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect22",
+      "id" : "INTERNAL_vl1_btrf14",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 575.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf11",
+      "id" : "INTERNAL_vl1_btrf15",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 75.0,
+      "x" : 225.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf12",
+      "id" : "INTERNAL_vl1_btrf16",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 625.0,
+      "x" : 275.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf13",
+      "id" : "INTERNAL_vl1_btrf17",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 175.0,
+      "x" : 325.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf14",
+      "id" : "INTERNAL_vl1_btrf18",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 575.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 525.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf15",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 225.0,
-      "y" : 250.0,
+      "x" : 400.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf16",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 275.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf17",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 325.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 400.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf18",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 525.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
@@ -992,7 +992,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1013,7 +1013,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect11", "dtrct11", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct11", "dtrct11", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1034,7 +1034,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dsect11" ]
+          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dtrct11" ]
         } ]
       }
     }, {
@@ -1081,7 +1081,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1102,7 +1102,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect21", "dtrct21", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct21", "dtrct21", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1123,7 +1123,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dsect21" ]
+          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dtrct21" ]
         } ]
       }
     }, {
@@ -1171,7 +1171,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_dload1" ]
+          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_bload1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1192,7 +1192,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload1", "bload1", "INTERNAL_vl1_load1" ]
+          "nodes" : [ "INTERNAL_vl1_bload1", "bload1", "INTERNAL_vl1_load1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1261,7 +1261,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_dtrf11" ]
+          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_btrf11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1282,7 +1282,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1351,7 +1351,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_dtrf15" ]
+          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_btrf15" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1372,7 +1372,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1441,7 +1441,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_dtrf16" ]
+          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_btrf16" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1462,7 +1462,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1531,7 +1531,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_dline11_2" ]
+          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_bline11_2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1552,7 +1552,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_bline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1621,7 +1621,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_dload2" ]
+          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_bload2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1642,7 +1642,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload2", "bload2", "INTERNAL_vl1_load2" ]
+          "nodes" : [ "INTERNAL_vl1_bload2", "bload2", "INTERNAL_vl1_load2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1711,7 +1711,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_dtrf12" ]
+          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_btrf12" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1732,7 +1732,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1801,7 +1801,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_dtrf18" ]
+          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_btrf18" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1822,7 +1822,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1891,7 +1891,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_dgen1" ]
+          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_bgen1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1912,7 +1912,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen1", "bgen1", "INTERNAL_vl1_gen1" ]
+          "nodes" : [ "INTERNAL_vl1_bgen1", "bgen1", "INTERNAL_vl1_gen1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1981,7 +1981,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_dtrf13" ]
+          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_btrf13" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2002,7 +2002,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2071,7 +2071,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_dtrf17" ]
+          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_btrf17" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2092,7 +2092,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf17", "btrf17", "INTERNAL_vl1_trf7_TWO" ]
+          "nodes" : [ "INTERNAL_vl1_btrf17", "btrf17", "INTERNAL_vl1_trf7_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2161,7 +2161,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_dgen2" ]
+          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_bgen2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2182,7 +2182,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen2", "bgen2", "INTERNAL_vl1_gen2" ]
+          "nodes" : [ "INTERNAL_vl1_bgen2", "bgen2", "INTERNAL_vl1_gen2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2251,7 +2251,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_dtrf14" ]
+          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_btrf14" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2272,7 +2272,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2348,6 +2348,108 @@
     }, {
       "node1" : "bbs1",
       "node2" : "dline11_2"
+    }, {
+      "node1" : "dsect11",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload1",
+      "node2" : "INTERNAL_vl1_bload1"
+    }, {
+      "node1" : "INTERNAL_vl1_bload1",
+      "node2" : "bload1"
+    }, {
+      "node1" : "dtrf11",
+      "node2" : "INTERNAL_vl1_btrf11"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf11",
+      "node2" : "btrf11"
+    }, {
+      "node1" : "dtrf15",
+      "node2" : "INTERNAL_vl1_btrf15"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf15",
+      "node2" : "btrf15"
+    }, {
+      "node1" : "dtrf16",
+      "node2" : "INTERNAL_vl1_btrf16"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf16",
+      "node2" : "btrf16"
+    }, {
+      "node1" : "dline11_2",
+      "node2" : "INTERNAL_vl1_bline11_2"
+    }, {
+      "node1" : "INTERNAL_vl1_bline11_2",
+      "node2" : "bline11_2"
+    }, {
+      "node1" : "dsect12",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload2",
+      "node2" : "INTERNAL_vl1_bload2"
+    }, {
+      "node1" : "INTERNAL_vl1_bload2",
+      "node2" : "bload2"
+    }, {
+      "node1" : "dtrf12",
+      "node2" : "INTERNAL_vl1_btrf12"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf12",
+      "node2" : "btrf12"
+    }, {
+      "node1" : "dtrf18",
+      "node2" : "INTERNAL_vl1_btrf18"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf18",
+      "node2" : "btrf18"
+    }, {
+      "node1" : "dsect21",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen1",
+      "node2" : "INTERNAL_vl1_bgen1"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen1",
+      "node2" : "bgen1"
+    }, {
+      "node1" : "dtrf13",
+      "node2" : "INTERNAL_vl1_btrf13"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf13",
+      "node2" : "btrf13"
+    }, {
+      "node1" : "dtrf17",
+      "node2" : "INTERNAL_vl1_btrf17"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf17",
+      "node2" : "btrf17"
+    }, {
+      "node1" : "dsect22",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen2",
+      "node2" : "INTERNAL_vl1_bgen2"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen2",
+      "node2" : "bgen2"
+    }, {
+      "node1" : "dtrf14",
+      "node2" : "INTERNAL_vl1_btrf14"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf14",
+      "node2" : "btrf14"
     }, {
       "node1" : "bload1",
       "node2" : "INTERNAL_vl1_load1"
@@ -2426,108 +2528,6 @@
     }, {
       "node1" : "INTERNAL_vl1_line1_ONE",
       "node2" : "line1_ONE"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "dsect11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "bload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "dload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "btrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "dtrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "btrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "dtrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "btrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "dtrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "bline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "dsect12",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "bload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "dload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "btrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "dtrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "btrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "dsect21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "bgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "dgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "btrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "dtrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "btrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "dsect22",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "bgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "dgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "btrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
-    }, {
-      "node1" : "dtrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -2542,7 +2542,7 @@
     "y" : 1025.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dgen4",
+      "id" : "INTERNAL_vl2_bgen4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -2551,7 +2551,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dload3",
+      "id" : "INTERNAL_vl2_bload3",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -2559,23 +2559,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl1",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 75.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl2",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 25.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf21",
+      "id" : "INTERNAL_vl2_btrf21",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -2583,7 +2567,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf22",
+      "id" : "INTERNAL_vl2_btrf22",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -2592,7 +2576,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf23",
+      "id" : "INTERNAL_vl2_btrf23",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -2601,7 +2585,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf24",
+      "id" : "INTERNAL_vl2_btrf24",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -2609,7 +2593,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf26",
+      "id" : "INTERNAL_vl2_btrf26",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -2617,7 +2601,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf27",
+      "id" : "INTERNAL_vl2_btrf27",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -2625,13 +2609,29 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf28",
+      "id" : "INTERNAL_vl2_btrf28",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 75.0,
+      "y" : 240.0,
+      "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 25.0,
+      "y" : 240.0,
+      "open" : false
     }, {
       "type" : "FICTITIOUS",
       "id" : "INTERNAL_vl2_gen4",
@@ -3202,7 +3202,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_dscpl2" ]
+          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3223,7 +3223,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl2_dscpl2", "ddcpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "INTERNAL_vl2_ddcpl1", "ddcpl1", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -3244,7 +3244,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_ddcpl1" ]
         } ]
       }
     }, {
@@ -3292,7 +3292,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_dload3" ]
+          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_bload3" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3313,7 +3313,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dload3", "bload3", "INTERNAL_vl2_load3" ]
+          "nodes" : [ "INTERNAL_vl2_bload3", "bload3", "INTERNAL_vl2_load3" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3382,7 +3382,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_dtrf21" ]
+          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_btrf21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3403,7 +3403,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3472,7 +3472,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_dtrf24" ]
+          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_btrf24" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3493,7 +3493,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3562,7 +3562,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_dtrf27" ]
+          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_btrf27" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3583,7 +3583,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf27", "btrf27", "INTERNAL_vl2_trf7_ONE" ]
+          "nodes" : [ "INTERNAL_vl2_btrf27", "btrf27", "INTERNAL_vl2_trf7_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3652,7 +3652,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_dgen4" ]
+          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_bgen4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3673,7 +3673,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dgen4", "bgen4", "INTERNAL_vl2_gen4" ]
+          "nodes" : [ "INTERNAL_vl2_bgen4", "bgen4", "INTERNAL_vl2_gen4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3742,7 +3742,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_dtrf22" ]
+          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_btrf22" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3763,7 +3763,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3832,7 +3832,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_dtrf23" ]
+          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_btrf23" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3853,7 +3853,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3922,7 +3922,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_dtrf26" ]
+          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_btrf26" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3943,7 +3943,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4012,7 +4012,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_dtrf28" ]
+          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_btrf28" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4033,7 +4033,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4091,6 +4091,72 @@
     }, {
       "node1" : "bbs6",
       "node2" : "dtrf28"
+    }, {
+      "node1" : "dscpl1",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dload3",
+      "node2" : "INTERNAL_vl2_bload3"
+    }, {
+      "node1" : "INTERNAL_vl2_bload3",
+      "node2" : "bload3"
+    }, {
+      "node1" : "dtrf21",
+      "node2" : "INTERNAL_vl2_btrf21"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf21",
+      "node2" : "btrf21"
+    }, {
+      "node1" : "dtrf24",
+      "node2" : "INTERNAL_vl2_btrf24"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf24",
+      "node2" : "btrf24"
+    }, {
+      "node1" : "dtrf27",
+      "node2" : "INTERNAL_vl2_btrf27"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf27",
+      "node2" : "btrf27"
+    }, {
+      "node1" : "dscpl2",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dgen4",
+      "node2" : "INTERNAL_vl2_bgen4"
+    }, {
+      "node1" : "INTERNAL_vl2_bgen4",
+      "node2" : "bgen4"
+    }, {
+      "node1" : "dtrf22",
+      "node2" : "INTERNAL_vl2_btrf22"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf22",
+      "node2" : "btrf22"
+    }, {
+      "node1" : "dtrf23",
+      "node2" : "INTERNAL_vl2_btrf23"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf23",
+      "node2" : "btrf23"
+    }, {
+      "node1" : "dtrf26",
+      "node2" : "INTERNAL_vl2_btrf26"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf26",
+      "node2" : "btrf26"
+    }, {
+      "node1" : "dtrf28",
+      "node2" : "INTERNAL_vl2_btrf28"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf28",
+      "node2" : "btrf28"
     }, {
       "node1" : "bload3",
       "node2" : "INTERNAL_vl2_load3"
@@ -4145,72 +4211,6 @@
     }, {
       "node1" : "INTERNAL_vl2_trf8_TWO",
       "node2" : "trf8_TWO"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "dscpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "bload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "dload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "btrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "dtrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "btrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "dtrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "btrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "dtrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "dscpl2",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "bgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "dgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "btrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "dtrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "btrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "dtrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "btrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "dtrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "btrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
-    }, {
-      "node1" : "dtrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -4225,7 +4225,7 @@
     "y" : 1820.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dload4",
+      "id" : "INTERNAL_vl3_bload4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -4233,7 +4233,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf25",
+      "id" : "INTERNAL_vl3_btrf25",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -4242,7 +4242,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf36",
+      "id" : "INTERNAL_vl3_btrf36",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -4250,7 +4250,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf37",
+      "id" : "INTERNAL_vl3_btrf37",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -4259,7 +4259,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf38",
+      "id" : "INTERNAL_vl3_btrf38",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -4582,7 +4582,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_dload4" ]
+          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_bload4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4603,7 +4603,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dload4", "bload4", "INTERNAL_vl3_load4" ]
+          "nodes" : [ "INTERNAL_vl3_bload4", "bload4", "INTERNAL_vl3_load4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4672,7 +4672,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_dtrf25" ]
+          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_btrf25" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4693,7 +4693,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
+          "nodes" : [ "INTERNAL_vl3_btrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4762,7 +4762,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_dtrf36" ]
+          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_btrf36" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4783,7 +4783,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4852,7 +4852,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_dtrf37" ]
+          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_btrf37" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4873,7 +4873,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4942,7 +4942,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_dtrf38" ]
+          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_btrf38" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4963,7 +4963,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -5003,6 +5003,36 @@
     }, {
       "node1" : "bbs7",
       "node2" : "dtrf38"
+    }, {
+      "node1" : "dload4",
+      "node2" : "INTERNAL_vl3_bload4"
+    }, {
+      "node1" : "INTERNAL_vl3_bload4",
+      "node2" : "bload4"
+    }, {
+      "node1" : "dtrf25",
+      "node2" : "INTERNAL_vl3_btrf25"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf25",
+      "node2" : "btrf25"
+    }, {
+      "node1" : "dtrf36",
+      "node2" : "INTERNAL_vl3_btrf36"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf36",
+      "node2" : "btrf36"
+    }, {
+      "node1" : "dtrf37",
+      "node2" : "INTERNAL_vl3_btrf37"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf37",
+      "node2" : "btrf37"
+    }, {
+      "node1" : "dtrf38",
+      "node2" : "INTERNAL_vl3_btrf38"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf38",
+      "node2" : "btrf38"
     }, {
       "node1" : "bload4",
       "node2" : "INTERNAL_vl3_load4"
@@ -5033,36 +5063,6 @@
     }, {
       "node1" : "INTERNAL_vl3_trf8_THREE",
       "node2" : "trf8_THREE"
-    }, {
-      "node1" : "bload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "dload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "btrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "dtrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "btrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "dtrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "btrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "dtrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "btrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
-    }, {
-      "node1" : "dtrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase11Right3wtOrientation.json b/single-line-diagram-core/src/test/resources/TestCase11Right3wtOrientation.json
index ce5158323..32a5b5221 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11Right3wtOrientation.json
+++ b/single-line-diagram-core/src/test/resources/TestCase11Right3wtOrientation.json
@@ -10,7 +10,7 @@
     "y" : 200.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen1",
+      "id" : "INTERNAL_vl1_bgen1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -19,7 +19,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen2",
+      "id" : "INTERNAL_vl1_bgen2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 675.0,
@@ -28,7 +28,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dline11_2",
+      "id" : "INTERNAL_vl1_bline11_2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -36,7 +36,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload1",
+      "id" : "INTERNAL_vl1_bload1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -44,7 +44,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload2",
+      "id" : "INTERNAL_vl1_bload2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -52,106 +52,106 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect11",
+      "id" : "INTERNAL_vl1_btrf11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 75.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect12",
+      "id" : "INTERNAL_vl1_btrf12",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 625.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect21",
+      "id" : "INTERNAL_vl1_btrf13",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 175.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect22",
+      "id" : "INTERNAL_vl1_btrf14",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 575.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf11",
+      "id" : "INTERNAL_vl1_btrf15",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 75.0,
+      "x" : 225.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf12",
+      "id" : "INTERNAL_vl1_btrf16",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 625.0,
+      "x" : 275.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf13",
+      "id" : "INTERNAL_vl1_btrf17",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 175.0,
+      "x" : 325.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf14",
+      "id" : "INTERNAL_vl1_btrf18",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 575.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 525.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf15",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 225.0,
-      "y" : 250.0,
+      "x" : 400.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf16",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 275.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf17",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 325.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 400.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf18",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 525.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
@@ -992,7 +992,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1013,7 +1013,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect11", "dtrct11", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct11", "dtrct11", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1034,7 +1034,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dsect11" ]
+          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dtrct11" ]
         } ]
       }
     }, {
@@ -1081,7 +1081,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1102,7 +1102,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect21", "dtrct21", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct21", "dtrct21", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1123,7 +1123,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dsect21" ]
+          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dtrct21" ]
         } ]
       }
     }, {
@@ -1171,7 +1171,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_dload1" ]
+          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_bload1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1192,7 +1192,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload1", "bload1", "INTERNAL_vl1_load1" ]
+          "nodes" : [ "INTERNAL_vl1_bload1", "bload1", "INTERNAL_vl1_load1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1261,7 +1261,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_dtrf11" ]
+          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_btrf11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1282,7 +1282,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1351,7 +1351,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_dtrf15" ]
+          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_btrf15" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1372,7 +1372,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1441,7 +1441,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_dtrf16" ]
+          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_btrf16" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1462,7 +1462,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1531,7 +1531,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_dline11_2" ]
+          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_bline11_2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1552,7 +1552,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_bline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1621,7 +1621,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_dload2" ]
+          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_bload2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1642,7 +1642,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload2", "bload2", "INTERNAL_vl1_load2" ]
+          "nodes" : [ "INTERNAL_vl1_bload2", "bload2", "INTERNAL_vl1_load2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1711,7 +1711,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_dtrf12" ]
+          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_btrf12" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1732,7 +1732,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1801,7 +1801,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_dtrf18" ]
+          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_btrf18" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1822,7 +1822,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1891,7 +1891,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_dgen1" ]
+          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_bgen1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1912,7 +1912,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen1", "bgen1", "INTERNAL_vl1_gen1" ]
+          "nodes" : [ "INTERNAL_vl1_bgen1", "bgen1", "INTERNAL_vl1_gen1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1981,7 +1981,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_dtrf13" ]
+          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_btrf13" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2002,7 +2002,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2071,7 +2071,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_dtrf17" ]
+          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_btrf17" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2092,7 +2092,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf17", "btrf17", "INTERNAL_vl1_trf7_THREE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf17", "btrf17", "INTERNAL_vl1_trf7_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2161,7 +2161,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_dgen2" ]
+          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_bgen2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2182,7 +2182,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen2", "bgen2", "INTERNAL_vl1_gen2" ]
+          "nodes" : [ "INTERNAL_vl1_bgen2", "bgen2", "INTERNAL_vl1_gen2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2251,7 +2251,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_dtrf14" ]
+          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_btrf14" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2272,7 +2272,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2348,6 +2348,108 @@
     }, {
       "node1" : "bbs1",
       "node2" : "dline11_2"
+    }, {
+      "node1" : "dsect11",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload1",
+      "node2" : "INTERNAL_vl1_bload1"
+    }, {
+      "node1" : "INTERNAL_vl1_bload1",
+      "node2" : "bload1"
+    }, {
+      "node1" : "dtrf11",
+      "node2" : "INTERNAL_vl1_btrf11"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf11",
+      "node2" : "btrf11"
+    }, {
+      "node1" : "dtrf15",
+      "node2" : "INTERNAL_vl1_btrf15"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf15",
+      "node2" : "btrf15"
+    }, {
+      "node1" : "dtrf16",
+      "node2" : "INTERNAL_vl1_btrf16"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf16",
+      "node2" : "btrf16"
+    }, {
+      "node1" : "dline11_2",
+      "node2" : "INTERNAL_vl1_bline11_2"
+    }, {
+      "node1" : "INTERNAL_vl1_bline11_2",
+      "node2" : "bline11_2"
+    }, {
+      "node1" : "dsect12",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload2",
+      "node2" : "INTERNAL_vl1_bload2"
+    }, {
+      "node1" : "INTERNAL_vl1_bload2",
+      "node2" : "bload2"
+    }, {
+      "node1" : "dtrf12",
+      "node2" : "INTERNAL_vl1_btrf12"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf12",
+      "node2" : "btrf12"
+    }, {
+      "node1" : "dtrf18",
+      "node2" : "INTERNAL_vl1_btrf18"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf18",
+      "node2" : "btrf18"
+    }, {
+      "node1" : "dsect21",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen1",
+      "node2" : "INTERNAL_vl1_bgen1"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen1",
+      "node2" : "bgen1"
+    }, {
+      "node1" : "dtrf13",
+      "node2" : "INTERNAL_vl1_btrf13"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf13",
+      "node2" : "btrf13"
+    }, {
+      "node1" : "dtrf17",
+      "node2" : "INTERNAL_vl1_btrf17"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf17",
+      "node2" : "btrf17"
+    }, {
+      "node1" : "dsect22",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen2",
+      "node2" : "INTERNAL_vl1_bgen2"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen2",
+      "node2" : "bgen2"
+    }, {
+      "node1" : "dtrf14",
+      "node2" : "INTERNAL_vl1_btrf14"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf14",
+      "node2" : "btrf14"
     }, {
       "node1" : "bload1",
       "node2" : "INTERNAL_vl1_load1"
@@ -2426,108 +2528,6 @@
     }, {
       "node1" : "INTERNAL_vl1_line1_ONE",
       "node2" : "line1_ONE"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "dsect11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "bload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "dload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "btrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "dtrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "btrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "dtrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "btrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "dtrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "bline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "dsect12",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "bload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "dload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "btrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "dtrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "btrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "dsect21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "bgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "dgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "btrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "dtrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "btrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "dsect22",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "bgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "dgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "btrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
-    }, {
-      "node1" : "dtrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -2542,7 +2542,7 @@
     "y" : 1025.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dgen4",
+      "id" : "INTERNAL_vl2_bgen4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -2551,7 +2551,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dload3",
+      "id" : "INTERNAL_vl2_bload3",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -2559,23 +2559,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl1",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 75.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl2",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 25.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf21",
+      "id" : "INTERNAL_vl2_btrf21",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -2583,7 +2567,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf22",
+      "id" : "INTERNAL_vl2_btrf22",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -2592,7 +2576,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf23",
+      "id" : "INTERNAL_vl2_btrf23",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -2601,7 +2585,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf24",
+      "id" : "INTERNAL_vl2_btrf24",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -2609,7 +2593,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf26",
+      "id" : "INTERNAL_vl2_btrf26",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -2617,7 +2601,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf27",
+      "id" : "INTERNAL_vl2_btrf27",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -2625,13 +2609,29 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf28",
+      "id" : "INTERNAL_vl2_btrf28",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 75.0,
+      "y" : 240.0,
+      "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 25.0,
+      "y" : 240.0,
+      "open" : false
     }, {
       "type" : "FICTITIOUS",
       "id" : "INTERNAL_vl2_gen4",
@@ -3202,7 +3202,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_dscpl2" ]
+          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3223,7 +3223,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl2_dscpl2", "ddcpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "INTERNAL_vl2_ddcpl1", "ddcpl1", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -3244,7 +3244,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_ddcpl1" ]
         } ]
       }
     }, {
@@ -3292,7 +3292,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_dload3" ]
+          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_bload3" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3313,7 +3313,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dload3", "bload3", "INTERNAL_vl2_load3" ]
+          "nodes" : [ "INTERNAL_vl2_bload3", "bload3", "INTERNAL_vl2_load3" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3382,7 +3382,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_dtrf21" ]
+          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_btrf21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3403,7 +3403,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3472,7 +3472,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_dtrf24" ]
+          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_btrf24" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3493,7 +3493,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3562,7 +3562,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_dtrf27" ]
+          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_btrf27" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3583,7 +3583,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3652,7 +3652,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_dgen4" ]
+          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_bgen4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3673,7 +3673,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dgen4", "bgen4", "INTERNAL_vl2_gen4" ]
+          "nodes" : [ "INTERNAL_vl2_bgen4", "bgen4", "INTERNAL_vl2_gen4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3742,7 +3742,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_dtrf22" ]
+          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_btrf22" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3763,7 +3763,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3832,7 +3832,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_dtrf23" ]
+          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_btrf23" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3853,7 +3853,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3922,7 +3922,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_dtrf26" ]
+          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_btrf26" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3943,7 +3943,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4012,7 +4012,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_dtrf28" ]
+          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_btrf28" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4033,7 +4033,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4091,6 +4091,72 @@
     }, {
       "node1" : "bbs6",
       "node2" : "dtrf28"
+    }, {
+      "node1" : "dscpl1",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dload3",
+      "node2" : "INTERNAL_vl2_bload3"
+    }, {
+      "node1" : "INTERNAL_vl2_bload3",
+      "node2" : "bload3"
+    }, {
+      "node1" : "dtrf21",
+      "node2" : "INTERNAL_vl2_btrf21"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf21",
+      "node2" : "btrf21"
+    }, {
+      "node1" : "dtrf24",
+      "node2" : "INTERNAL_vl2_btrf24"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf24",
+      "node2" : "btrf24"
+    }, {
+      "node1" : "dtrf27",
+      "node2" : "INTERNAL_vl2_btrf27"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf27",
+      "node2" : "btrf27"
+    }, {
+      "node1" : "dscpl2",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dgen4",
+      "node2" : "INTERNAL_vl2_bgen4"
+    }, {
+      "node1" : "INTERNAL_vl2_bgen4",
+      "node2" : "bgen4"
+    }, {
+      "node1" : "dtrf22",
+      "node2" : "INTERNAL_vl2_btrf22"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf22",
+      "node2" : "btrf22"
+    }, {
+      "node1" : "dtrf23",
+      "node2" : "INTERNAL_vl2_btrf23"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf23",
+      "node2" : "btrf23"
+    }, {
+      "node1" : "dtrf26",
+      "node2" : "INTERNAL_vl2_btrf26"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf26",
+      "node2" : "btrf26"
+    }, {
+      "node1" : "dtrf28",
+      "node2" : "INTERNAL_vl2_btrf28"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf28",
+      "node2" : "btrf28"
     }, {
       "node1" : "bload3",
       "node2" : "INTERNAL_vl2_load3"
@@ -4145,72 +4211,6 @@
     }, {
       "node1" : "INTERNAL_vl2_trf8_TWO",
       "node2" : "trf8_TWO"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "dscpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "bload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "dload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "btrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "dtrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "btrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "dtrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "btrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "dtrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "dscpl2",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "bgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "dgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "btrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "dtrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "btrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "dtrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "btrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "dtrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "btrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
-    }, {
-      "node1" : "dtrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -4225,7 +4225,7 @@
     "y" : 1820.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dload4",
+      "id" : "INTERNAL_vl3_bload4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -4233,7 +4233,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf25",
+      "id" : "INTERNAL_vl3_btrf25",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -4242,7 +4242,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf36",
+      "id" : "INTERNAL_vl3_btrf36",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -4250,7 +4250,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf37",
+      "id" : "INTERNAL_vl3_btrf37",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -4259,7 +4259,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf38",
+      "id" : "INTERNAL_vl3_btrf38",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -4582,7 +4582,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_dload4" ]
+          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_bload4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4603,7 +4603,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dload4", "bload4", "INTERNAL_vl3_load4" ]
+          "nodes" : [ "INTERNAL_vl3_bload4", "bload4", "INTERNAL_vl3_load4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4672,7 +4672,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_dtrf25" ]
+          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_btrf25" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4693,7 +4693,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
+          "nodes" : [ "INTERNAL_vl3_btrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4762,7 +4762,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_dtrf36" ]
+          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_btrf36" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4783,7 +4783,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4852,7 +4852,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_dtrf37" ]
+          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_btrf37" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4873,7 +4873,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf37", "btrf37", "INTERNAL_vl3_trf7_ONE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf37", "btrf37", "INTERNAL_vl3_trf7_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4942,7 +4942,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_dtrf38" ]
+          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_btrf38" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4963,7 +4963,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -5003,6 +5003,36 @@
     }, {
       "node1" : "bbs7",
       "node2" : "dtrf38"
+    }, {
+      "node1" : "dload4",
+      "node2" : "INTERNAL_vl3_bload4"
+    }, {
+      "node1" : "INTERNAL_vl3_bload4",
+      "node2" : "bload4"
+    }, {
+      "node1" : "dtrf25",
+      "node2" : "INTERNAL_vl3_btrf25"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf25",
+      "node2" : "btrf25"
+    }, {
+      "node1" : "dtrf36",
+      "node2" : "INTERNAL_vl3_btrf36"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf36",
+      "node2" : "btrf36"
+    }, {
+      "node1" : "dtrf37",
+      "node2" : "INTERNAL_vl3_btrf37"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf37",
+      "node2" : "btrf37"
+    }, {
+      "node1" : "dtrf38",
+      "node2" : "INTERNAL_vl3_btrf38"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf38",
+      "node2" : "btrf38"
     }, {
       "node1" : "bload4",
       "node2" : "INTERNAL_vl3_load4"
@@ -5033,36 +5063,6 @@
     }, {
       "node1" : "INTERNAL_vl3_trf8_THREE",
       "node2" : "trf8_THREE"
-    }, {
-      "node1" : "bload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "dload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "btrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "dtrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "btrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "dtrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "btrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "dtrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "btrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
-    }, {
-      "node1" : "dtrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphH.json b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphH.json
index ffd88136f..40d7be6df 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphH.json
+++ b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphH.json
@@ -10,7 +10,7 @@
     "y" : 260.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen1",
+      "id" : "INTERNAL_vl1_bgen1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -19,7 +19,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen2",
+      "id" : "INTERNAL_vl1_bgen2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 675.0,
@@ -28,7 +28,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dline11_2",
+      "id" : "INTERNAL_vl1_bline11_2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -36,7 +36,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload1",
+      "id" : "INTERNAL_vl1_bload1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -44,7 +44,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload2",
+      "id" : "INTERNAL_vl1_bload2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -52,106 +52,106 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect11",
+      "id" : "INTERNAL_vl1_btrf11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 75.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect12",
+      "id" : "INTERNAL_vl1_btrf12",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 625.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect21",
+      "id" : "INTERNAL_vl1_btrf13",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 175.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect22",
+      "id" : "INTERNAL_vl1_btrf14",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 575.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf11",
+      "id" : "INTERNAL_vl1_btrf15",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 75.0,
+      "x" : 225.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf12",
+      "id" : "INTERNAL_vl1_btrf16",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 625.0,
+      "x" : 275.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf13",
+      "id" : "INTERNAL_vl1_btrf17",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 175.0,
+      "x" : 325.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf14",
+      "id" : "INTERNAL_vl1_btrf18",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 575.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 525.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf15",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 225.0,
-      "y" : 250.0,
+      "x" : 400.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf16",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 275.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf17",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 325.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 400.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf18",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 525.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
@@ -992,7 +992,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1013,7 +1013,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect11", "dtrct11", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct11", "dtrct11", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1034,7 +1034,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dsect11" ]
+          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dtrct11" ]
         } ]
       }
     }, {
@@ -1081,7 +1081,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1102,7 +1102,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect21", "dtrct21", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct21", "dtrct21", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1123,7 +1123,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dsect21" ]
+          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dtrct21" ]
         } ]
       }
     }, {
@@ -1171,7 +1171,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_dload1" ]
+          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_bload1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1192,7 +1192,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload1", "bload1", "INTERNAL_vl1_load1" ]
+          "nodes" : [ "INTERNAL_vl1_bload1", "bload1", "INTERNAL_vl1_load1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1261,7 +1261,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_dtrf11" ]
+          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_btrf11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1282,7 +1282,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1351,7 +1351,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_dtrf15" ]
+          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_btrf15" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1372,7 +1372,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1441,7 +1441,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_dtrf16" ]
+          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_btrf16" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1462,7 +1462,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1531,7 +1531,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_dline11_2" ]
+          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_bline11_2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1552,7 +1552,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_bline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1621,7 +1621,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_dload2" ]
+          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_bload2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1642,7 +1642,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload2", "bload2", "INTERNAL_vl1_load2" ]
+          "nodes" : [ "INTERNAL_vl1_bload2", "bload2", "INTERNAL_vl1_load2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1711,7 +1711,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_dtrf12" ]
+          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_btrf12" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1732,7 +1732,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1801,7 +1801,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_dtrf18" ]
+          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_btrf18" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1822,7 +1822,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1891,7 +1891,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_dgen1" ]
+          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_bgen1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1912,7 +1912,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen1", "bgen1", "INTERNAL_vl1_gen1" ]
+          "nodes" : [ "INTERNAL_vl1_bgen1", "bgen1", "INTERNAL_vl1_gen1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1981,7 +1981,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_dtrf13" ]
+          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_btrf13" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2002,7 +2002,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2071,7 +2071,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_dtrf17" ]
+          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_btrf17" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2092,7 +2092,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf17", "btrf17", "INTERNAL_vl1_trf7_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf17", "btrf17", "INTERNAL_vl1_trf7_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2161,7 +2161,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_dgen2" ]
+          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_bgen2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2182,7 +2182,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen2", "bgen2", "INTERNAL_vl1_gen2" ]
+          "nodes" : [ "INTERNAL_vl1_bgen2", "bgen2", "INTERNAL_vl1_gen2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2251,7 +2251,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_dtrf14" ]
+          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_btrf14" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2272,7 +2272,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2348,6 +2348,108 @@
     }, {
       "node1" : "bbs1",
       "node2" : "dline11_2"
+    }, {
+      "node1" : "dsect11",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload1",
+      "node2" : "INTERNAL_vl1_bload1"
+    }, {
+      "node1" : "INTERNAL_vl1_bload1",
+      "node2" : "bload1"
+    }, {
+      "node1" : "dtrf11",
+      "node2" : "INTERNAL_vl1_btrf11"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf11",
+      "node2" : "btrf11"
+    }, {
+      "node1" : "dtrf15",
+      "node2" : "INTERNAL_vl1_btrf15"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf15",
+      "node2" : "btrf15"
+    }, {
+      "node1" : "dtrf16",
+      "node2" : "INTERNAL_vl1_btrf16"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf16",
+      "node2" : "btrf16"
+    }, {
+      "node1" : "dline11_2",
+      "node2" : "INTERNAL_vl1_bline11_2"
+    }, {
+      "node1" : "INTERNAL_vl1_bline11_2",
+      "node2" : "bline11_2"
+    }, {
+      "node1" : "dsect12",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload2",
+      "node2" : "INTERNAL_vl1_bload2"
+    }, {
+      "node1" : "INTERNAL_vl1_bload2",
+      "node2" : "bload2"
+    }, {
+      "node1" : "dtrf12",
+      "node2" : "INTERNAL_vl1_btrf12"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf12",
+      "node2" : "btrf12"
+    }, {
+      "node1" : "dtrf18",
+      "node2" : "INTERNAL_vl1_btrf18"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf18",
+      "node2" : "btrf18"
+    }, {
+      "node1" : "dsect21",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen1",
+      "node2" : "INTERNAL_vl1_bgen1"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen1",
+      "node2" : "bgen1"
+    }, {
+      "node1" : "dtrf13",
+      "node2" : "INTERNAL_vl1_btrf13"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf13",
+      "node2" : "btrf13"
+    }, {
+      "node1" : "dtrf17",
+      "node2" : "INTERNAL_vl1_btrf17"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf17",
+      "node2" : "btrf17"
+    }, {
+      "node1" : "dsect22",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen2",
+      "node2" : "INTERNAL_vl1_bgen2"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen2",
+      "node2" : "bgen2"
+    }, {
+      "node1" : "dtrf14",
+      "node2" : "INTERNAL_vl1_btrf14"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf14",
+      "node2" : "btrf14"
     }, {
       "node1" : "bload1",
       "node2" : "INTERNAL_vl1_load1"
@@ -2426,108 +2528,6 @@
     }, {
       "node1" : "INTERNAL_vl1_line1_ONE",
       "node2" : "line1_ONE"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "dsect11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "bload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "dload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "btrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "dtrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "btrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "dtrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "btrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "dtrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "bline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "dsect12",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "bload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "dload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "btrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "dtrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "btrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "dsect21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "bgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "dgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "btrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "dtrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "btrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "dsect22",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "bgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "dgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "btrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
-    }, {
-      "node1" : "dtrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -2542,7 +2542,7 @@
     "y" : 260.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dgen4",
+      "id" : "INTERNAL_vl2_bgen4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -2551,7 +2551,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dload3",
+      "id" : "INTERNAL_vl2_bload3",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -2559,23 +2559,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl1",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 75.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl2",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 25.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf21",
+      "id" : "INTERNAL_vl2_btrf21",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -2583,7 +2567,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf22",
+      "id" : "INTERNAL_vl2_btrf22",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -2592,7 +2576,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf23",
+      "id" : "INTERNAL_vl2_btrf23",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -2601,7 +2585,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf24",
+      "id" : "INTERNAL_vl2_btrf24",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -2609,7 +2593,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf26",
+      "id" : "INTERNAL_vl2_btrf26",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -2617,7 +2601,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf27",
+      "id" : "INTERNAL_vl2_btrf27",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -2625,13 +2609,29 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf28",
+      "id" : "INTERNAL_vl2_btrf28",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 75.0,
+      "y" : 240.0,
+      "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 25.0,
+      "y" : 240.0,
+      "open" : false
     }, {
       "type" : "FICTITIOUS",
       "id" : "INTERNAL_vl2_gen4",
@@ -3202,7 +3202,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_dscpl2" ]
+          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3223,7 +3223,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl2_dscpl2", "ddcpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "INTERNAL_vl2_ddcpl1", "ddcpl1", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -3244,7 +3244,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_ddcpl1" ]
         } ]
       }
     }, {
@@ -3292,7 +3292,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_dload3" ]
+          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_bload3" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3313,7 +3313,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dload3", "bload3", "INTERNAL_vl2_load3" ]
+          "nodes" : [ "INTERNAL_vl2_bload3", "bload3", "INTERNAL_vl2_load3" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3382,7 +3382,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_dtrf21" ]
+          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_btrf21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3403,7 +3403,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3472,7 +3472,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_dtrf24" ]
+          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_btrf24" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3493,7 +3493,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3562,7 +3562,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_dtrf27" ]
+          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_btrf27" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3583,7 +3583,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3652,7 +3652,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_dgen4" ]
+          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_bgen4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3673,7 +3673,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dgen4", "bgen4", "INTERNAL_vl2_gen4" ]
+          "nodes" : [ "INTERNAL_vl2_bgen4", "bgen4", "INTERNAL_vl2_gen4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3742,7 +3742,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_dtrf22" ]
+          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_btrf22" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3763,7 +3763,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3832,7 +3832,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_dtrf23" ]
+          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_btrf23" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3853,7 +3853,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3922,7 +3922,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_dtrf26" ]
+          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_btrf26" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3943,7 +3943,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4012,7 +4012,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_dtrf28" ]
+          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_btrf28" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4033,7 +4033,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4091,6 +4091,72 @@
     }, {
       "node1" : "bbs6",
       "node2" : "dtrf28"
+    }, {
+      "node1" : "dscpl1",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dload3",
+      "node2" : "INTERNAL_vl2_bload3"
+    }, {
+      "node1" : "INTERNAL_vl2_bload3",
+      "node2" : "bload3"
+    }, {
+      "node1" : "dtrf21",
+      "node2" : "INTERNAL_vl2_btrf21"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf21",
+      "node2" : "btrf21"
+    }, {
+      "node1" : "dtrf24",
+      "node2" : "INTERNAL_vl2_btrf24"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf24",
+      "node2" : "btrf24"
+    }, {
+      "node1" : "dtrf27",
+      "node2" : "INTERNAL_vl2_btrf27"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf27",
+      "node2" : "btrf27"
+    }, {
+      "node1" : "dscpl2",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dgen4",
+      "node2" : "INTERNAL_vl2_bgen4"
+    }, {
+      "node1" : "INTERNAL_vl2_bgen4",
+      "node2" : "bgen4"
+    }, {
+      "node1" : "dtrf22",
+      "node2" : "INTERNAL_vl2_btrf22"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf22",
+      "node2" : "btrf22"
+    }, {
+      "node1" : "dtrf23",
+      "node2" : "INTERNAL_vl2_btrf23"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf23",
+      "node2" : "btrf23"
+    }, {
+      "node1" : "dtrf26",
+      "node2" : "INTERNAL_vl2_btrf26"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf26",
+      "node2" : "btrf26"
+    }, {
+      "node1" : "dtrf28",
+      "node2" : "INTERNAL_vl2_btrf28"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf28",
+      "node2" : "btrf28"
     }, {
       "node1" : "bload3",
       "node2" : "INTERNAL_vl2_load3"
@@ -4145,72 +4211,6 @@
     }, {
       "node1" : "INTERNAL_vl2_trf8_TWO",
       "node2" : "trf8_TWO"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "dscpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "bload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "dload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "btrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "dtrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "btrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "dtrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "btrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "dtrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "dscpl2",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "bgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "dgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "btrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "dtrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "btrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "dtrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "btrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "dtrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "btrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
-    }, {
-      "node1" : "dtrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -4225,7 +4225,7 @@
     "y" : 260.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dload4",
+      "id" : "INTERNAL_vl3_bload4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -4233,7 +4233,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf25",
+      "id" : "INTERNAL_vl3_btrf25",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -4242,7 +4242,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf36",
+      "id" : "INTERNAL_vl3_btrf36",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -4250,7 +4250,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf37",
+      "id" : "INTERNAL_vl3_btrf37",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -4259,7 +4259,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf38",
+      "id" : "INTERNAL_vl3_btrf38",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -4582,7 +4582,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_dload4" ]
+          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_bload4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4603,7 +4603,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dload4", "bload4", "INTERNAL_vl3_load4" ]
+          "nodes" : [ "INTERNAL_vl3_bload4", "bload4", "INTERNAL_vl3_load4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4672,7 +4672,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_dtrf25" ]
+          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_btrf25" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4693,7 +4693,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
+          "nodes" : [ "INTERNAL_vl3_btrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4762,7 +4762,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_dtrf36" ]
+          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_btrf36" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4783,7 +4783,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4852,7 +4852,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_dtrf37" ]
+          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_btrf37" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4873,7 +4873,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4942,7 +4942,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_dtrf38" ]
+          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_btrf38" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4963,7 +4963,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -5003,6 +5003,36 @@
     }, {
       "node1" : "bbs7",
       "node2" : "dtrf38"
+    }, {
+      "node1" : "dload4",
+      "node2" : "INTERNAL_vl3_bload4"
+    }, {
+      "node1" : "INTERNAL_vl3_bload4",
+      "node2" : "bload4"
+    }, {
+      "node1" : "dtrf25",
+      "node2" : "INTERNAL_vl3_btrf25"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf25",
+      "node2" : "btrf25"
+    }, {
+      "node1" : "dtrf36",
+      "node2" : "INTERNAL_vl3_btrf36"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf36",
+      "node2" : "btrf36"
+    }, {
+      "node1" : "dtrf37",
+      "node2" : "INTERNAL_vl3_btrf37"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf37",
+      "node2" : "btrf37"
+    }, {
+      "node1" : "dtrf38",
+      "node2" : "INTERNAL_vl3_btrf38"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf38",
+      "node2" : "btrf38"
     }, {
       "node1" : "bload4",
       "node2" : "INTERNAL_vl3_load4"
@@ -5033,36 +5063,6 @@
     }, {
       "node1" : "INTERNAL_vl3_trf8_THREE",
       "node2" : "trf8_THREE"
-    }, {
-      "node1" : "bload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "dload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "btrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "dtrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "btrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "dtrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "btrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "dtrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "btrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
-    }, {
-      "node1" : "dtrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHFirst.svg b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHFirst.svg
index 14849b884..2f1ab8029 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHFirst.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHFirst.svg
@@ -214,20 +214,20 @@
             bbs4
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -246,20 +246,20 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -278,7 +278,7 @@
             
         
         
-            
+            
                 
             
             
@@ -290,11 +290,11 @@
                 
                 load1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -322,7 +322,7 @@
             
         
         
-            
+            
                 
             
             
@@ -331,11 +331,11 @@
             
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -363,7 +363,7 @@
             
         
         
-            
+            
                 
             
             
@@ -372,11 +372,11 @@
             
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -404,7 +404,7 @@
             
         
         
-            
+            
                 
             
             
@@ -413,11 +413,11 @@
             
                 trf61
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -445,7 +445,7 @@
             
         
         
-            
+            
                 
             
             
@@ -454,11 +454,11 @@
             
                 line1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -486,7 +486,7 @@
             
         
         
-            
+            
                 
             
             
@@ -498,11 +498,11 @@
                 
                 load2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -530,7 +530,7 @@
             
         
         
-            
+            
                 
             
             
@@ -539,11 +539,11 @@
             
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -571,7 +571,7 @@
             
         
         
-            
+            
                 
             
             
@@ -580,11 +580,11 @@
             
                 trf81
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -612,7 +612,7 @@
             
         
         
-            
+            
                 
             
             
@@ -624,11 +624,11 @@
                 
                 gen1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -656,7 +656,7 @@
             
         
         
-            
+            
                 
             
             
@@ -665,11 +665,11 @@
             
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -697,7 +697,7 @@
             
         
         
-            
+            
                 
             
             
@@ -706,11 +706,11 @@
             
                 trf71
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -738,7 +738,7 @@
             
         
         
-            
+            
                 
             
             
@@ -750,11 +750,11 @@
                 
                 gen2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -782,7 +782,7 @@
             
         
         
-            
+            
                 
             
             
@@ -791,11 +791,11 @@
             
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -834,22 +834,22 @@
             bbs6
         
         
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
-            
+            
                 
             
             
@@ -866,7 +866,7 @@
             
         
         
-            
+            
                 
             
             
@@ -878,11 +878,11 @@
                 
                 load3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -910,7 +910,7 @@
             
         
         
-            
+            
                 
             
             
@@ -919,11 +919,11 @@
             
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -951,7 +951,7 @@
             
         
         
-            
+            
                 
             
             
@@ -960,11 +960,11 @@
             
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -992,7 +992,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1001,11 +1001,11 @@
             
                 trf72
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1033,7 +1033,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1045,11 +1045,11 @@
                 
                 gen4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1077,7 +1077,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1086,11 +1086,11 @@
             
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1118,7 +1118,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1127,11 +1127,11 @@
             
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1159,7 +1159,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1168,11 +1168,11 @@
             
                 trf62
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1200,7 +1200,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1209,11 +1209,11 @@
             
                 trf82
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1248,7 +1248,7 @@
             bbs7
         
         
-            
+            
                 
             
             
@@ -1260,11 +1260,11 @@
                 
                 load4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1292,7 +1292,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1301,11 +1301,11 @@
             
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1333,7 +1333,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1342,11 +1342,11 @@
             
                 trf63
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1374,7 +1374,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1383,11 +1383,11 @@
             
                 trf73
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1415,7 +1415,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1424,11 +1424,11 @@
             
                 trf83
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHLast.svg b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHLast.svg
index 4f01d8a60..d2292a7b0 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHLast.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHLast.svg
@@ -214,20 +214,20 @@
             bbs4
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -246,20 +246,20 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -278,7 +278,7 @@
             
         
         
-            
+            
                 
             
             
@@ -290,11 +290,11 @@
                 
                 load1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -322,7 +322,7 @@
             
         
         
-            
+            
                 
             
             
@@ -331,11 +331,11 @@
             
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -363,7 +363,7 @@
             
         
         
-            
+            
                 
             
             
@@ -372,11 +372,11 @@
             
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -404,7 +404,7 @@
             
         
         
-            
+            
                 
             
             
@@ -413,11 +413,11 @@
             
                 trf61
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -445,7 +445,7 @@
             
         
         
-            
+            
                 
             
             
@@ -454,11 +454,11 @@
             
                 line1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -486,7 +486,7 @@
             
         
         
-            
+            
                 
             
             
@@ -498,11 +498,11 @@
                 
                 load2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -530,7 +530,7 @@
             
         
         
-            
+            
                 
             
             
@@ -539,11 +539,11 @@
             
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -571,7 +571,7 @@
             
         
         
-            
+            
                 
             
             
@@ -580,11 +580,11 @@
             
                 trf81
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -612,7 +612,7 @@
             
         
         
-            
+            
                 
             
             
@@ -624,11 +624,11 @@
                 
                 gen1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -656,7 +656,7 @@
             
         
         
-            
+            
                 
             
             
@@ -665,11 +665,11 @@
             
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -697,7 +697,7 @@
             
         
         
-            
+            
                 
             
             
@@ -706,11 +706,11 @@
             
                 trf71
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -738,7 +738,7 @@
             
         
         
-            
+            
                 
             
             
@@ -750,11 +750,11 @@
                 
                 gen2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -782,7 +782,7 @@
             
         
         
-            
+            
                 
             
             
@@ -791,11 +791,11 @@
             
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -834,22 +834,22 @@
             bbs6
         
         
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
-            
+            
                 
             
             
@@ -866,7 +866,7 @@
             
         
         
-            
+            
                 
             
             
@@ -878,11 +878,11 @@
                 
                 load3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -910,7 +910,7 @@
             
         
         
-            
+            
                 
             
             
@@ -919,11 +919,11 @@
             
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -951,7 +951,7 @@
             
         
         
-            
+            
                 
             
             
@@ -960,11 +960,11 @@
             
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -992,7 +992,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1001,11 +1001,11 @@
             
                 trf72
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1033,7 +1033,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1045,11 +1045,11 @@
                 
                 gen4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1077,7 +1077,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1086,11 +1086,11 @@
             
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1118,7 +1118,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1127,11 +1127,11 @@
             
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1159,7 +1159,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1168,11 +1168,11 @@
             
                 trf62
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1200,7 +1200,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1209,11 +1209,11 @@
             
                 trf82
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1248,7 +1248,7 @@
             bbs7
         
         
-            
+            
                 
             
             
@@ -1260,11 +1260,11 @@
                 
                 load4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1292,7 +1292,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1301,11 +1301,11 @@
             
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1333,7 +1333,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1342,11 +1342,11 @@
             
                 trf63
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1374,7 +1374,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1383,11 +1383,11 @@
             
                 trf73
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1415,7 +1415,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1424,11 +1424,11 @@
             
                 trf83
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHMiddle.svg b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHMiddle.svg
index 1270ca110..2e7c120f4 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHMiddle.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHMiddle.svg
@@ -214,20 +214,20 @@
             bbs4
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -246,20 +246,20 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -278,7 +278,7 @@
             
         
         
-            
+            
                 
             
             
@@ -290,11 +290,11 @@
                 
                 load1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -322,7 +322,7 @@
             
         
         
-            
+            
                 
             
             
@@ -331,11 +331,11 @@
             
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -363,7 +363,7 @@
             
         
         
-            
+            
                 
             
             
@@ -372,11 +372,11 @@
             
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -404,7 +404,7 @@
             
         
         
-            
+            
                 
             
             
@@ -413,11 +413,11 @@
             
                 trf61
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -445,7 +445,7 @@
             
         
         
-            
+            
                 
             
             
@@ -454,11 +454,11 @@
             
                 line1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -486,7 +486,7 @@
             
         
         
-            
+            
                 
             
             
@@ -498,11 +498,11 @@
                 
                 load2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -530,7 +530,7 @@
             
         
         
-            
+            
                 
             
             
@@ -539,11 +539,11 @@
             
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -571,7 +571,7 @@
             
         
         
-            
+            
                 
             
             
@@ -580,11 +580,11 @@
             
                 trf81
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -612,7 +612,7 @@
             
         
         
-            
+            
                 
             
             
@@ -624,11 +624,11 @@
                 
                 gen1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -656,7 +656,7 @@
             
         
         
-            
+            
                 
             
             
@@ -665,11 +665,11 @@
             
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -697,7 +697,7 @@
             
         
         
-            
+            
                 
             
             
@@ -706,11 +706,11 @@
             
                 trf71
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -738,7 +738,7 @@
             
         
         
-            
+            
                 
             
             
@@ -750,11 +750,11 @@
                 
                 gen2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -782,7 +782,7 @@
             
         
         
-            
+            
                 
             
             
@@ -791,11 +791,11 @@
             
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -834,22 +834,22 @@
             bbs6
         
         
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
-            
+            
                 
             
             
@@ -866,7 +866,7 @@
             
         
         
-            
+            
                 
             
             
@@ -878,11 +878,11 @@
                 
                 load3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -910,7 +910,7 @@
             
         
         
-            
+            
                 
             
             
@@ -919,11 +919,11 @@
             
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -951,7 +951,7 @@
             
         
         
-            
+            
                 
             
             
@@ -960,11 +960,11 @@
             
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -992,7 +992,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1001,11 +1001,11 @@
             
                 trf72
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1033,7 +1033,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1045,11 +1045,11 @@
                 
                 gen4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1077,7 +1077,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1086,11 +1086,11 @@
             
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1118,7 +1118,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1127,11 +1127,11 @@
             
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1159,7 +1159,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1168,11 +1168,11 @@
             
                 trf62
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1200,7 +1200,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1209,11 +1209,11 @@
             
                 trf82
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1248,7 +1248,7 @@
             bbs7
         
         
-            
+            
                 
             
             
@@ -1260,11 +1260,11 @@
                 
                 load4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1292,7 +1292,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1301,11 +1301,11 @@
             
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1333,7 +1333,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1342,11 +1342,11 @@
             
                 trf63
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1374,7 +1374,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1383,11 +1383,11 @@
             
                 trf73
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1415,7 +1415,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1424,11 +1424,11 @@
             
                 trf83
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHNone.svg b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHNone.svg
index 14849b884..2f1ab8029 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHNone.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHNone.svg
@@ -214,20 +214,20 @@
             bbs4
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -246,20 +246,20 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -278,7 +278,7 @@
             
         
         
-            
+            
                 
             
             
@@ -290,11 +290,11 @@
                 
                 load1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -322,7 +322,7 @@
             
         
         
-            
+            
                 
             
             
@@ -331,11 +331,11 @@
             
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -363,7 +363,7 @@
             
         
         
-            
+            
                 
             
             
@@ -372,11 +372,11 @@
             
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -404,7 +404,7 @@
             
         
         
-            
+            
                 
             
             
@@ -413,11 +413,11 @@
             
                 trf61
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -445,7 +445,7 @@
             
         
         
-            
+            
                 
             
             
@@ -454,11 +454,11 @@
             
                 line1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -486,7 +486,7 @@
             
         
         
-            
+            
                 
             
             
@@ -498,11 +498,11 @@
                 
                 load2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -530,7 +530,7 @@
             
         
         
-            
+            
                 
             
             
@@ -539,11 +539,11 @@
             
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -571,7 +571,7 @@
             
         
         
-            
+            
                 
             
             
@@ -580,11 +580,11 @@
             
                 trf81
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -612,7 +612,7 @@
             
         
         
-            
+            
                 
             
             
@@ -624,11 +624,11 @@
                 
                 gen1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -656,7 +656,7 @@
             
         
         
-            
+            
                 
             
             
@@ -665,11 +665,11 @@
             
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -697,7 +697,7 @@
             
         
         
-            
+            
                 
             
             
@@ -706,11 +706,11 @@
             
                 trf71
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -738,7 +738,7 @@
             
         
         
-            
+            
                 
             
             
@@ -750,11 +750,11 @@
                 
                 gen2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -782,7 +782,7 @@
             
         
         
-            
+            
                 
             
             
@@ -791,11 +791,11 @@
             
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -834,22 +834,22 @@
             bbs6
         
         
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
-            
+            
                 
             
             
@@ -866,7 +866,7 @@
             
         
         
-            
+            
                 
             
             
@@ -878,11 +878,11 @@
                 
                 load3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -910,7 +910,7 @@
             
         
         
-            
+            
                 
             
             
@@ -919,11 +919,11 @@
             
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -951,7 +951,7 @@
             
         
         
-            
+            
                 
             
             
@@ -960,11 +960,11 @@
             
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -992,7 +992,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1001,11 +1001,11 @@
             
                 trf72
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1033,7 +1033,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1045,11 +1045,11 @@
                 
                 gen4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1077,7 +1077,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1086,11 +1086,11 @@
             
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1118,7 +1118,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1127,11 +1127,11 @@
             
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1159,7 +1159,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1168,11 +1168,11 @@
             
                 trf62
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1200,7 +1200,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1209,11 +1209,11 @@
             
                 trf82
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1248,7 +1248,7 @@
             bbs7
         
         
-            
+            
                 
             
             
@@ -1260,11 +1260,11 @@
                 
                 load4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1292,7 +1292,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1301,11 +1301,11 @@
             
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1333,7 +1333,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1342,11 +1342,11 @@
             
                 trf63
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1374,7 +1374,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1383,11 +1383,11 @@
             
                 trf73
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -1415,7 +1415,7 @@
             
         
         
-            
+            
                 
             
             
@@ -1424,11 +1424,11 @@
             
                 trf83
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHRaw.json b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHRaw.json
index 7802d73e2..ba320f8ad 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHRaw.json
+++ b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphHRaw.json
@@ -10,7 +10,7 @@
     "y" : 260.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen1",
+      "id" : "INTERNAL_vl1_bgen1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -19,7 +19,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen2",
+      "id" : "INTERNAL_vl1_bgen2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 675.0,
@@ -28,7 +28,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dline11_2",
+      "id" : "INTERNAL_vl1_bline11_2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -36,7 +36,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload1",
+      "id" : "INTERNAL_vl1_bload1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -44,7 +44,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload2",
+      "id" : "INTERNAL_vl1_bload2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -52,106 +52,106 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect11",
+      "id" : "INTERNAL_vl1_btrf11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 75.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect12",
+      "id" : "INTERNAL_vl1_btrf12",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 625.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect21",
+      "id" : "INTERNAL_vl1_btrf13",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 175.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect22",
+      "id" : "INTERNAL_vl1_btrf14",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 575.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf11",
+      "id" : "INTERNAL_vl1_btrf15",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 75.0,
+      "x" : 225.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf12",
+      "id" : "INTERNAL_vl1_btrf16",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 625.0,
+      "x" : 275.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf13",
+      "id" : "INTERNAL_vl1_btrf17",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 175.0,
+      "x" : 325.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf14",
+      "id" : "INTERNAL_vl1_btrf18",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 575.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 525.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf15",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 225.0,
-      "y" : 250.0,
+      "x" : 400.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf16",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 275.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf17",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 325.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 400.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf18",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 525.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
@@ -992,7 +992,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1013,7 +1013,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect11", "dtrct11", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct11", "dtrct11", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1034,7 +1034,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dsect11" ]
+          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dtrct11" ]
         } ]
       }
     }, {
@@ -1081,7 +1081,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1102,7 +1102,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect21", "dtrct21", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct21", "dtrct21", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1123,7 +1123,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dsect21" ]
+          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dtrct21" ]
         } ]
       }
     }, {
@@ -1171,7 +1171,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_dload1" ]
+          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_bload1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1192,7 +1192,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload1", "bload1", "INTERNAL_vl1_load1" ]
+          "nodes" : [ "INTERNAL_vl1_bload1", "bload1", "INTERNAL_vl1_load1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1261,7 +1261,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_dtrf11" ]
+          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_btrf11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1282,7 +1282,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1351,7 +1351,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_dtrf15" ]
+          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_btrf15" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1372,7 +1372,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1441,7 +1441,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_dtrf16" ]
+          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_btrf16" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1462,7 +1462,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1531,7 +1531,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_dline11_2" ]
+          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_bline11_2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1552,7 +1552,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_bline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1621,7 +1621,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_dload2" ]
+          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_bload2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1642,7 +1642,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload2", "bload2", "INTERNAL_vl1_load2" ]
+          "nodes" : [ "INTERNAL_vl1_bload2", "bload2", "INTERNAL_vl1_load2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1711,7 +1711,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_dtrf12" ]
+          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_btrf12" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1732,7 +1732,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1801,7 +1801,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_dtrf18" ]
+          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_btrf18" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1822,7 +1822,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1891,7 +1891,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_dgen1" ]
+          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_bgen1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1912,7 +1912,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen1", "bgen1", "INTERNAL_vl1_gen1" ]
+          "nodes" : [ "INTERNAL_vl1_bgen1", "bgen1", "INTERNAL_vl1_gen1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1981,7 +1981,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_dtrf13" ]
+          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_btrf13" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2002,7 +2002,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2071,7 +2071,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_dtrf17" ]
+          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_btrf17" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2092,7 +2092,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf17", "btrf17", "INTERNAL_vl1_trf7_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf17", "btrf17", "INTERNAL_vl1_trf7_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2161,7 +2161,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_dgen2" ]
+          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_bgen2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2182,7 +2182,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen2", "bgen2", "INTERNAL_vl1_gen2" ]
+          "nodes" : [ "INTERNAL_vl1_bgen2", "bgen2", "INTERNAL_vl1_gen2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2251,7 +2251,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_dtrf14" ]
+          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_btrf14" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2272,7 +2272,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2348,6 +2348,108 @@
     }, {
       "node1" : "bbs1",
       "node2" : "dline11_2"
+    }, {
+      "node1" : "dsect11",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload1",
+      "node2" : "INTERNAL_vl1_bload1"
+    }, {
+      "node1" : "INTERNAL_vl1_bload1",
+      "node2" : "bload1"
+    }, {
+      "node1" : "dtrf11",
+      "node2" : "INTERNAL_vl1_btrf11"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf11",
+      "node2" : "btrf11"
+    }, {
+      "node1" : "dtrf15",
+      "node2" : "INTERNAL_vl1_btrf15"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf15",
+      "node2" : "btrf15"
+    }, {
+      "node1" : "dtrf16",
+      "node2" : "INTERNAL_vl1_btrf16"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf16",
+      "node2" : "btrf16"
+    }, {
+      "node1" : "dline11_2",
+      "node2" : "INTERNAL_vl1_bline11_2"
+    }, {
+      "node1" : "INTERNAL_vl1_bline11_2",
+      "node2" : "bline11_2"
+    }, {
+      "node1" : "dsect12",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload2",
+      "node2" : "INTERNAL_vl1_bload2"
+    }, {
+      "node1" : "INTERNAL_vl1_bload2",
+      "node2" : "bload2"
+    }, {
+      "node1" : "dtrf12",
+      "node2" : "INTERNAL_vl1_btrf12"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf12",
+      "node2" : "btrf12"
+    }, {
+      "node1" : "dtrf18",
+      "node2" : "INTERNAL_vl1_btrf18"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf18",
+      "node2" : "btrf18"
+    }, {
+      "node1" : "dsect21",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen1",
+      "node2" : "INTERNAL_vl1_bgen1"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen1",
+      "node2" : "bgen1"
+    }, {
+      "node1" : "dtrf13",
+      "node2" : "INTERNAL_vl1_btrf13"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf13",
+      "node2" : "btrf13"
+    }, {
+      "node1" : "dtrf17",
+      "node2" : "INTERNAL_vl1_btrf17"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf17",
+      "node2" : "btrf17"
+    }, {
+      "node1" : "dsect22",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen2",
+      "node2" : "INTERNAL_vl1_bgen2"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen2",
+      "node2" : "bgen2"
+    }, {
+      "node1" : "dtrf14",
+      "node2" : "INTERNAL_vl1_btrf14"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf14",
+      "node2" : "btrf14"
     }, {
       "node1" : "bload1",
       "node2" : "INTERNAL_vl1_load1"
@@ -2426,108 +2528,6 @@
     }, {
       "node1" : "INTERNAL_vl1_line1_ONE",
       "node2" : "line1_ONE"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "dsect11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "bload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "dload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "btrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "dtrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "btrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "dtrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "btrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "dtrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "bline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "dsect12",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "bload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "dload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "btrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "dtrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "btrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "dsect21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "bgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "dgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "btrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "dtrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "btrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "dsect22",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "bgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "dgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "btrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
-    }, {
-      "node1" : "dtrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -2542,7 +2542,7 @@
     "y" : 260.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dgen4",
+      "id" : "INTERNAL_vl2_bgen4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -2551,7 +2551,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dload3",
+      "id" : "INTERNAL_vl2_bload3",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -2559,23 +2559,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl1",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 75.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl2",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 25.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf21",
+      "id" : "INTERNAL_vl2_btrf21",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -2583,7 +2567,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf22",
+      "id" : "INTERNAL_vl2_btrf22",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -2592,7 +2576,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf23",
+      "id" : "INTERNAL_vl2_btrf23",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -2601,7 +2585,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf24",
+      "id" : "INTERNAL_vl2_btrf24",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -2609,7 +2593,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf26",
+      "id" : "INTERNAL_vl2_btrf26",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -2617,7 +2601,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf27",
+      "id" : "INTERNAL_vl2_btrf27",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -2625,13 +2609,29 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf28",
+      "id" : "INTERNAL_vl2_btrf28",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 75.0,
+      "y" : 240.0,
+      "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 25.0,
+      "y" : 240.0,
+      "open" : false
     }, {
       "type" : "FICTITIOUS",
       "id" : "INTERNAL_vl2_gen4",
@@ -3202,7 +3202,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_dscpl2" ]
+          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3223,7 +3223,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl2_dscpl2", "ddcpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "INTERNAL_vl2_ddcpl1", "ddcpl1", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -3244,7 +3244,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_ddcpl1" ]
         } ]
       }
     }, {
@@ -3292,7 +3292,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_dload3" ]
+          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_bload3" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3313,7 +3313,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dload3", "bload3", "INTERNAL_vl2_load3" ]
+          "nodes" : [ "INTERNAL_vl2_bload3", "bload3", "INTERNAL_vl2_load3" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3382,7 +3382,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_dtrf21" ]
+          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_btrf21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3403,7 +3403,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3472,7 +3472,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_dtrf24" ]
+          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_btrf24" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3493,7 +3493,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3562,7 +3562,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_dtrf27" ]
+          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_btrf27" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3583,7 +3583,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3652,7 +3652,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_dgen4" ]
+          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_bgen4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3673,7 +3673,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dgen4", "bgen4", "INTERNAL_vl2_gen4" ]
+          "nodes" : [ "INTERNAL_vl2_bgen4", "bgen4", "INTERNAL_vl2_gen4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3742,7 +3742,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_dtrf22" ]
+          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_btrf22" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3763,7 +3763,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3832,7 +3832,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_dtrf23" ]
+          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_btrf23" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3853,7 +3853,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3922,7 +3922,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_dtrf26" ]
+          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_btrf26" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3943,7 +3943,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4012,7 +4012,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_dtrf28" ]
+          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_btrf28" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4033,7 +4033,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4091,6 +4091,72 @@
     }, {
       "node1" : "bbs6",
       "node2" : "dtrf28"
+    }, {
+      "node1" : "dscpl1",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dload3",
+      "node2" : "INTERNAL_vl2_bload3"
+    }, {
+      "node1" : "INTERNAL_vl2_bload3",
+      "node2" : "bload3"
+    }, {
+      "node1" : "dtrf21",
+      "node2" : "INTERNAL_vl2_btrf21"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf21",
+      "node2" : "btrf21"
+    }, {
+      "node1" : "dtrf24",
+      "node2" : "INTERNAL_vl2_btrf24"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf24",
+      "node2" : "btrf24"
+    }, {
+      "node1" : "dtrf27",
+      "node2" : "INTERNAL_vl2_btrf27"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf27",
+      "node2" : "btrf27"
+    }, {
+      "node1" : "dscpl2",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dgen4",
+      "node2" : "INTERNAL_vl2_bgen4"
+    }, {
+      "node1" : "INTERNAL_vl2_bgen4",
+      "node2" : "bgen4"
+    }, {
+      "node1" : "dtrf22",
+      "node2" : "INTERNAL_vl2_btrf22"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf22",
+      "node2" : "btrf22"
+    }, {
+      "node1" : "dtrf23",
+      "node2" : "INTERNAL_vl2_btrf23"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf23",
+      "node2" : "btrf23"
+    }, {
+      "node1" : "dtrf26",
+      "node2" : "INTERNAL_vl2_btrf26"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf26",
+      "node2" : "btrf26"
+    }, {
+      "node1" : "dtrf28",
+      "node2" : "INTERNAL_vl2_btrf28"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf28",
+      "node2" : "btrf28"
     }, {
       "node1" : "bload3",
       "node2" : "INTERNAL_vl2_load3"
@@ -4145,72 +4211,6 @@
     }, {
       "node1" : "INTERNAL_vl2_trf8_TWO",
       "node2" : "trf8_TWO"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "dscpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "bload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "dload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "btrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "dtrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "btrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "dtrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "btrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "dtrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "dscpl2",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "bgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "dgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "btrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "dtrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "btrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "dtrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "btrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "dtrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "btrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
-    }, {
-      "node1" : "dtrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -4225,7 +4225,7 @@
     "y" : 260.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dload4",
+      "id" : "INTERNAL_vl3_bload4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -4233,7 +4233,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf25",
+      "id" : "INTERNAL_vl3_btrf25",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -4242,7 +4242,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf36",
+      "id" : "INTERNAL_vl3_btrf36",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -4250,7 +4250,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf37",
+      "id" : "INTERNAL_vl3_btrf37",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -4259,7 +4259,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf38",
+      "id" : "INTERNAL_vl3_btrf38",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -4582,7 +4582,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_dload4" ]
+          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_bload4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4603,7 +4603,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dload4", "bload4", "INTERNAL_vl3_load4" ]
+          "nodes" : [ "INTERNAL_vl3_bload4", "bload4", "INTERNAL_vl3_load4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4672,7 +4672,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_dtrf25" ]
+          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_btrf25" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4693,7 +4693,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
+          "nodes" : [ "INTERNAL_vl3_btrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4762,7 +4762,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_dtrf36" ]
+          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_btrf36" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4783,7 +4783,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4852,7 +4852,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_dtrf37" ]
+          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_btrf37" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4873,7 +4873,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4942,7 +4942,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_dtrf38" ]
+          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_btrf38" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4963,7 +4963,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -5003,6 +5003,36 @@
     }, {
       "node1" : "bbs7",
       "node2" : "dtrf38"
+    }, {
+      "node1" : "dload4",
+      "node2" : "INTERNAL_vl3_bload4"
+    }, {
+      "node1" : "INTERNAL_vl3_bload4",
+      "node2" : "bload4"
+    }, {
+      "node1" : "dtrf25",
+      "node2" : "INTERNAL_vl3_btrf25"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf25",
+      "node2" : "btrf25"
+    }, {
+      "node1" : "dtrf36",
+      "node2" : "INTERNAL_vl3_btrf36"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf36",
+      "node2" : "btrf36"
+    }, {
+      "node1" : "dtrf37",
+      "node2" : "INTERNAL_vl3_btrf37"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf37",
+      "node2" : "btrf37"
+    }, {
+      "node1" : "dtrf38",
+      "node2" : "INTERNAL_vl3_btrf38"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf38",
+      "node2" : "btrf38"
     }, {
       "node1" : "bload4",
       "node2" : "INTERNAL_vl3_load4"
@@ -5033,36 +5063,6 @@
     }, {
       "node1" : "INTERNAL_vl3_trf8_THREE",
       "node2" : "trf8_THREE"
-    }, {
-      "node1" : "bload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "dload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "btrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "dtrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "btrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "dtrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "btrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "dtrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "btrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
-    }, {
-      "node1" : "dtrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphV.json b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphV.json
index 5e1bec114..46bc11edd 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphV.json
+++ b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphV.json
@@ -10,7 +10,7 @@
     "y" : 200.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen1",
+      "id" : "INTERNAL_vl1_bgen1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -19,7 +19,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen2",
+      "id" : "INTERNAL_vl1_bgen2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 675.0,
@@ -28,7 +28,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dline11_2",
+      "id" : "INTERNAL_vl1_bline11_2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -36,7 +36,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload1",
+      "id" : "INTERNAL_vl1_bload1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -44,7 +44,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload2",
+      "id" : "INTERNAL_vl1_bload2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -52,106 +52,106 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect11",
+      "id" : "INTERNAL_vl1_btrf11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 75.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect12",
+      "id" : "INTERNAL_vl1_btrf12",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 625.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect21",
+      "id" : "INTERNAL_vl1_btrf13",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 175.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect22",
+      "id" : "INTERNAL_vl1_btrf14",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 575.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf11",
+      "id" : "INTERNAL_vl1_btrf15",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 75.0,
+      "x" : 225.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf12",
+      "id" : "INTERNAL_vl1_btrf16",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 625.0,
+      "x" : 275.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf13",
+      "id" : "INTERNAL_vl1_btrf17",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 175.0,
+      "x" : 325.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf14",
+      "id" : "INTERNAL_vl1_btrf18",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 575.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 525.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf15",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 225.0,
-      "y" : 250.0,
+      "x" : 400.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf16",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 275.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf17",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 325.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 400.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf18",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 525.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
@@ -992,7 +992,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1013,7 +1013,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect11", "dtrct11", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct11", "dtrct11", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1034,7 +1034,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dsect11" ]
+          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dtrct11" ]
         } ]
       }
     }, {
@@ -1081,7 +1081,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1102,7 +1102,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect21", "dtrct21", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct21", "dtrct21", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1123,7 +1123,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dsect21" ]
+          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dtrct21" ]
         } ]
       }
     }, {
@@ -1171,7 +1171,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_dload1" ]
+          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_bload1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1192,7 +1192,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload1", "bload1", "INTERNAL_vl1_load1" ]
+          "nodes" : [ "INTERNAL_vl1_bload1", "bload1", "INTERNAL_vl1_load1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1261,7 +1261,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_dtrf11" ]
+          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_btrf11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1282,7 +1282,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1351,7 +1351,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_dtrf15" ]
+          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_btrf15" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1372,7 +1372,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1441,7 +1441,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_dtrf16" ]
+          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_btrf16" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1462,7 +1462,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1531,7 +1531,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_dline11_2" ]
+          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_bline11_2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1552,7 +1552,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_bline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1621,7 +1621,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_dload2" ]
+          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_bload2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1642,7 +1642,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload2", "bload2", "INTERNAL_vl1_load2" ]
+          "nodes" : [ "INTERNAL_vl1_bload2", "bload2", "INTERNAL_vl1_load2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1711,7 +1711,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_dtrf12" ]
+          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_btrf12" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1732,7 +1732,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1801,7 +1801,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_dtrf18" ]
+          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_btrf18" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1822,7 +1822,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1891,7 +1891,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_dgen1" ]
+          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_bgen1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1912,7 +1912,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen1", "bgen1", "INTERNAL_vl1_gen1" ]
+          "nodes" : [ "INTERNAL_vl1_bgen1", "bgen1", "INTERNAL_vl1_gen1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1981,7 +1981,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_dtrf13" ]
+          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_btrf13" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2002,7 +2002,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2071,7 +2071,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_dtrf17" ]
+          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_btrf17" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2092,7 +2092,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf17", "btrf17", "INTERNAL_vl1_trf7_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf17", "btrf17", "INTERNAL_vl1_trf7_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2161,7 +2161,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_dgen2" ]
+          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_bgen2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2182,7 +2182,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen2", "bgen2", "INTERNAL_vl1_gen2" ]
+          "nodes" : [ "INTERNAL_vl1_bgen2", "bgen2", "INTERNAL_vl1_gen2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2251,7 +2251,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_dtrf14" ]
+          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_btrf14" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2272,7 +2272,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2348,6 +2348,108 @@
     }, {
       "node1" : "bbs1",
       "node2" : "dline11_2"
+    }, {
+      "node1" : "dsect11",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload1",
+      "node2" : "INTERNAL_vl1_bload1"
+    }, {
+      "node1" : "INTERNAL_vl1_bload1",
+      "node2" : "bload1"
+    }, {
+      "node1" : "dtrf11",
+      "node2" : "INTERNAL_vl1_btrf11"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf11",
+      "node2" : "btrf11"
+    }, {
+      "node1" : "dtrf15",
+      "node2" : "INTERNAL_vl1_btrf15"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf15",
+      "node2" : "btrf15"
+    }, {
+      "node1" : "dtrf16",
+      "node2" : "INTERNAL_vl1_btrf16"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf16",
+      "node2" : "btrf16"
+    }, {
+      "node1" : "dline11_2",
+      "node2" : "INTERNAL_vl1_bline11_2"
+    }, {
+      "node1" : "INTERNAL_vl1_bline11_2",
+      "node2" : "bline11_2"
+    }, {
+      "node1" : "dsect12",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload2",
+      "node2" : "INTERNAL_vl1_bload2"
+    }, {
+      "node1" : "INTERNAL_vl1_bload2",
+      "node2" : "bload2"
+    }, {
+      "node1" : "dtrf12",
+      "node2" : "INTERNAL_vl1_btrf12"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf12",
+      "node2" : "btrf12"
+    }, {
+      "node1" : "dtrf18",
+      "node2" : "INTERNAL_vl1_btrf18"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf18",
+      "node2" : "btrf18"
+    }, {
+      "node1" : "dsect21",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen1",
+      "node2" : "INTERNAL_vl1_bgen1"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen1",
+      "node2" : "bgen1"
+    }, {
+      "node1" : "dtrf13",
+      "node2" : "INTERNAL_vl1_btrf13"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf13",
+      "node2" : "btrf13"
+    }, {
+      "node1" : "dtrf17",
+      "node2" : "INTERNAL_vl1_btrf17"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf17",
+      "node2" : "btrf17"
+    }, {
+      "node1" : "dsect22",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen2",
+      "node2" : "INTERNAL_vl1_bgen2"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen2",
+      "node2" : "bgen2"
+    }, {
+      "node1" : "dtrf14",
+      "node2" : "INTERNAL_vl1_btrf14"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf14",
+      "node2" : "btrf14"
     }, {
       "node1" : "bload1",
       "node2" : "INTERNAL_vl1_load1"
@@ -2426,108 +2528,6 @@
     }, {
       "node1" : "INTERNAL_vl1_line1_ONE",
       "node2" : "line1_ONE"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "dsect11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "bload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "dload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "btrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "dtrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "btrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "dtrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "btrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "dtrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "bline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "dsect12",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "bload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "dload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "btrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "dtrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "btrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "dsect21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "bgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "dgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "btrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "dtrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "btrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "dsect22",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "bgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "dgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "btrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
-    }, {
-      "node1" : "dtrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -2542,7 +2542,7 @@
     "y" : 1025.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dgen4",
+      "id" : "INTERNAL_vl2_bgen4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -2551,7 +2551,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dload3",
+      "id" : "INTERNAL_vl2_bload3",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -2559,23 +2559,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl1",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 75.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl2",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 25.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf21",
+      "id" : "INTERNAL_vl2_btrf21",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -2583,7 +2567,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf22",
+      "id" : "INTERNAL_vl2_btrf22",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -2592,7 +2576,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf23",
+      "id" : "INTERNAL_vl2_btrf23",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -2601,7 +2585,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf24",
+      "id" : "INTERNAL_vl2_btrf24",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -2609,7 +2593,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf26",
+      "id" : "INTERNAL_vl2_btrf26",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -2617,7 +2601,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf27",
+      "id" : "INTERNAL_vl2_btrf27",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -2625,13 +2609,29 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf28",
+      "id" : "INTERNAL_vl2_btrf28",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 75.0,
+      "y" : 240.0,
+      "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 25.0,
+      "y" : 240.0,
+      "open" : false
     }, {
       "type" : "FICTITIOUS",
       "id" : "INTERNAL_vl2_gen4",
@@ -3202,7 +3202,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_dscpl2" ]
+          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3223,7 +3223,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl2_dscpl2", "ddcpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "INTERNAL_vl2_ddcpl1", "ddcpl1", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -3244,7 +3244,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_ddcpl1" ]
         } ]
       }
     }, {
@@ -3292,7 +3292,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_dload3" ]
+          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_bload3" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3313,7 +3313,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dload3", "bload3", "INTERNAL_vl2_load3" ]
+          "nodes" : [ "INTERNAL_vl2_bload3", "bload3", "INTERNAL_vl2_load3" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3382,7 +3382,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_dtrf21" ]
+          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_btrf21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3403,7 +3403,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3472,7 +3472,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_dtrf24" ]
+          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_btrf24" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3493,7 +3493,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3562,7 +3562,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_dtrf27" ]
+          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_btrf27" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3583,7 +3583,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3652,7 +3652,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_dgen4" ]
+          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_bgen4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3673,7 +3673,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dgen4", "bgen4", "INTERNAL_vl2_gen4" ]
+          "nodes" : [ "INTERNAL_vl2_bgen4", "bgen4", "INTERNAL_vl2_gen4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3742,7 +3742,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_dtrf22" ]
+          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_btrf22" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3763,7 +3763,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3832,7 +3832,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_dtrf23" ]
+          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_btrf23" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3853,7 +3853,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3922,7 +3922,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_dtrf26" ]
+          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_btrf26" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3943,7 +3943,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4012,7 +4012,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_dtrf28" ]
+          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_btrf28" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4033,7 +4033,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4091,6 +4091,72 @@
     }, {
       "node1" : "bbs6",
       "node2" : "dtrf28"
+    }, {
+      "node1" : "dscpl1",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dload3",
+      "node2" : "INTERNAL_vl2_bload3"
+    }, {
+      "node1" : "INTERNAL_vl2_bload3",
+      "node2" : "bload3"
+    }, {
+      "node1" : "dtrf21",
+      "node2" : "INTERNAL_vl2_btrf21"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf21",
+      "node2" : "btrf21"
+    }, {
+      "node1" : "dtrf24",
+      "node2" : "INTERNAL_vl2_btrf24"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf24",
+      "node2" : "btrf24"
+    }, {
+      "node1" : "dtrf27",
+      "node2" : "INTERNAL_vl2_btrf27"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf27",
+      "node2" : "btrf27"
+    }, {
+      "node1" : "dscpl2",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dgen4",
+      "node2" : "INTERNAL_vl2_bgen4"
+    }, {
+      "node1" : "INTERNAL_vl2_bgen4",
+      "node2" : "bgen4"
+    }, {
+      "node1" : "dtrf22",
+      "node2" : "INTERNAL_vl2_btrf22"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf22",
+      "node2" : "btrf22"
+    }, {
+      "node1" : "dtrf23",
+      "node2" : "INTERNAL_vl2_btrf23"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf23",
+      "node2" : "btrf23"
+    }, {
+      "node1" : "dtrf26",
+      "node2" : "INTERNAL_vl2_btrf26"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf26",
+      "node2" : "btrf26"
+    }, {
+      "node1" : "dtrf28",
+      "node2" : "INTERNAL_vl2_btrf28"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf28",
+      "node2" : "btrf28"
     }, {
       "node1" : "bload3",
       "node2" : "INTERNAL_vl2_load3"
@@ -4145,72 +4211,6 @@
     }, {
       "node1" : "INTERNAL_vl2_trf8_TWO",
       "node2" : "trf8_TWO"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "dscpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "bload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "dload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "btrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "dtrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "btrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "dtrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "btrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "dtrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "dscpl2",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "bgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "dgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "btrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "dtrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "btrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "dtrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "btrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "dtrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "btrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
-    }, {
-      "node1" : "dtrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -4225,7 +4225,7 @@
     "y" : 1820.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dload4",
+      "id" : "INTERNAL_vl3_bload4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -4233,7 +4233,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf25",
+      "id" : "INTERNAL_vl3_btrf25",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -4242,7 +4242,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf36",
+      "id" : "INTERNAL_vl3_btrf36",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -4250,7 +4250,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf37",
+      "id" : "INTERNAL_vl3_btrf37",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -4259,7 +4259,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf38",
+      "id" : "INTERNAL_vl3_btrf38",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -4582,7 +4582,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_dload4" ]
+          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_bload4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4603,7 +4603,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dload4", "bload4", "INTERNAL_vl3_load4" ]
+          "nodes" : [ "INTERNAL_vl3_bload4", "bload4", "INTERNAL_vl3_load4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4672,7 +4672,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_dtrf25" ]
+          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_btrf25" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4693,7 +4693,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
+          "nodes" : [ "INTERNAL_vl3_btrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4762,7 +4762,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_dtrf36" ]
+          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_btrf36" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4783,7 +4783,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4852,7 +4852,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_dtrf37" ]
+          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_btrf37" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4873,7 +4873,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4942,7 +4942,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_dtrf38" ]
+          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_btrf38" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4963,7 +4963,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -5003,6 +5003,36 @@
     }, {
       "node1" : "bbs7",
       "node2" : "dtrf38"
+    }, {
+      "node1" : "dload4",
+      "node2" : "INTERNAL_vl3_bload4"
+    }, {
+      "node1" : "INTERNAL_vl3_bload4",
+      "node2" : "bload4"
+    }, {
+      "node1" : "dtrf25",
+      "node2" : "INTERNAL_vl3_btrf25"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf25",
+      "node2" : "btrf25"
+    }, {
+      "node1" : "dtrf36",
+      "node2" : "INTERNAL_vl3_btrf36"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf36",
+      "node2" : "btrf36"
+    }, {
+      "node1" : "dtrf37",
+      "node2" : "INTERNAL_vl3_btrf37"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf37",
+      "node2" : "btrf37"
+    }, {
+      "node1" : "dtrf38",
+      "node2" : "INTERNAL_vl3_btrf38"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf38",
+      "node2" : "btrf38"
     }, {
       "node1" : "bload4",
       "node2" : "INTERNAL_vl3_load4"
@@ -5033,36 +5063,6 @@
     }, {
       "node1" : "INTERNAL_vl3_trf8_THREE",
       "node2" : "trf8_THREE"
-    }, {
-      "node1" : "bload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "dload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "btrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "dtrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "btrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "dtrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "btrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "dtrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "btrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
-    }, {
-      "node1" : "dtrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphVRaw.json b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphVRaw.json
index 68f171195..0ac9a5150 100644
--- a/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphVRaw.json
+++ b/single-line-diagram-core/src/test/resources/TestCase11SubstationGraphVRaw.json
@@ -10,7 +10,7 @@
     "y" : 200.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen1",
+      "id" : "INTERNAL_vl1_bgen1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -19,7 +19,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dgen2",
+      "id" : "INTERNAL_vl1_bgen2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 675.0,
@@ -28,7 +28,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dline11_2",
+      "id" : "INTERNAL_vl1_bline11_2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -36,7 +36,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload1",
+      "id" : "INTERNAL_vl1_bload1",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -44,7 +44,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dload2",
+      "id" : "INTERNAL_vl1_bload2",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -52,106 +52,106 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect11",
+      "id" : "INTERNAL_vl1_btrf11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 75.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect12",
+      "id" : "INTERNAL_vl1_btrf12",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 280.0,
-      "orientation" : "RIGHT",
+      "x" : 625.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect21",
+      "id" : "INTERNAL_vl1_btrf13",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 400.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 175.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dsect22",
+      "id" : "INTERNAL_vl1_btrf14",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 450.0,
-      "y" : 305.0,
-      "orientation" : "RIGHT",
+      "x" : 575.0,
+      "y" : 335.0,
+      "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf11",
+      "id" : "INTERNAL_vl1_btrf15",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 75.0,
+      "x" : 225.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf12",
+      "id" : "INTERNAL_vl1_btrf16",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 625.0,
+      "x" : 275.0,
       "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf13",
+      "id" : "INTERNAL_vl1_btrf17",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 175.0,
+      "x" : 325.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf14",
+      "id" : "INTERNAL_vl1_btrf18",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 575.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 525.0,
+      "y" : 250.0,
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf15",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 225.0,
-      "y" : 250.0,
+      "x" : 400.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf16",
+      "id" : "INTERNAL_vl1_dtrct11",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 275.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 280.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf17",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 325.0,
-      "y" : 335.0,
-      "orientation" : "DOWN",
+      "x" : 400.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl1_dtrf18",
+      "id" : "INTERNAL_vl1_dtrct21",
       "componentType" : "NODE",
       "fictitious" : true,
-      "x" : 525.0,
-      "y" : 250.0,
+      "x" : 450.0,
+      "y" : 305.0,
+      "orientation" : "RIGHT",
       "open" : false
     }, {
       "type" : "FICTITIOUS",
@@ -992,7 +992,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1013,7 +1013,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect11", "dtrct11", "INTERNAL_vl1_dsect12" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct11", "dtrct11", "INTERNAL_vl1_dtrct11" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1034,7 +1034,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dsect11" ]
+          "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dtrct11" ]
         } ]
       }
     }, {
@@ -1081,7 +1081,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1102,7 +1102,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl1_dsect21", "dtrct21", "INTERNAL_vl1_dsect22" ]
+          "nodes" : [ "INTERNAL_vl1_dtrct21", "dtrct21", "INTERNAL_vl1_dtrct21" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -1123,7 +1123,7 @@
             "xSpan" : 0.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dsect21" ]
+          "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dtrct21" ]
         } ]
       }
     }, {
@@ -1171,7 +1171,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_dload1" ]
+          "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_bload1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1192,7 +1192,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload1", "bload1", "INTERNAL_vl1_load1" ]
+          "nodes" : [ "INTERNAL_vl1_bload1", "bload1", "INTERNAL_vl1_load1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1261,7 +1261,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_dtrf11" ]
+          "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_btrf11" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1282,7 +1282,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1351,7 +1351,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_dtrf15" ]
+          "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_btrf15" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1372,7 +1372,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1441,7 +1441,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_dtrf16" ]
+          "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_btrf16" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1462,7 +1462,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf16", "btrf16", "INTERNAL_vl1_trf6_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1531,7 +1531,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_dline11_2" ]
+          "nodes" : [ "bbs1", "dline11_2", "INTERNAL_vl1_bline11_2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1552,7 +1552,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_bline11_2", "bline11_2", "INTERNAL_vl1_line1_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1621,7 +1621,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_dload2" ]
+          "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_bload2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1642,7 +1642,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dload2", "bload2", "INTERNAL_vl1_load2" ]
+          "nodes" : [ "INTERNAL_vl1_bload2", "bload2", "INTERNAL_vl1_load2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1711,7 +1711,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_dtrf12" ]
+          "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_btrf12" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1732,7 +1732,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1801,7 +1801,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_dtrf18" ]
+          "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_btrf18" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1822,7 +1822,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf18", "btrf18", "INTERNAL_vl1_trf8_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1891,7 +1891,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_dgen1" ]
+          "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_bgen1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -1912,7 +1912,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen1", "bgen1", "INTERNAL_vl1_gen1" ]
+          "nodes" : [ "INTERNAL_vl1_bgen1", "bgen1", "INTERNAL_vl1_gen1" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -1981,7 +1981,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_dtrf13" ]
+          "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_btrf13" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2002,7 +2002,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2071,7 +2071,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_dtrf17" ]
+          "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_btrf17" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2092,7 +2092,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf17", "btrf17", "INTERNAL_vl1_trf7_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf17", "btrf17", "INTERNAL_vl1_trf7_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2161,7 +2161,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_dgen2" ]
+          "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_bgen2" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2182,7 +2182,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dgen2", "bgen2", "INTERNAL_vl1_gen2" ]
+          "nodes" : [ "INTERNAL_vl1_bgen2", "bgen2", "INTERNAL_vl1_gen2" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2251,7 +2251,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_dtrf14" ]
+          "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_btrf14" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -2272,7 +2272,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl1_dtrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
+          "nodes" : [ "INTERNAL_vl1_btrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -2348,6 +2348,108 @@
     }, {
       "node1" : "bbs1",
       "node2" : "dline11_2"
+    }, {
+      "node1" : "dsect11",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload1",
+      "node2" : "INTERNAL_vl1_bload1"
+    }, {
+      "node1" : "INTERNAL_vl1_bload1",
+      "node2" : "bload1"
+    }, {
+      "node1" : "dtrf11",
+      "node2" : "INTERNAL_vl1_btrf11"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf11",
+      "node2" : "btrf11"
+    }, {
+      "node1" : "dtrf15",
+      "node2" : "INTERNAL_vl1_btrf15"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf15",
+      "node2" : "btrf15"
+    }, {
+      "node1" : "dtrf16",
+      "node2" : "INTERNAL_vl1_btrf16"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf16",
+      "node2" : "btrf16"
+    }, {
+      "node1" : "dline11_2",
+      "node2" : "INTERNAL_vl1_bline11_2"
+    }, {
+      "node1" : "INTERNAL_vl1_bline11_2",
+      "node2" : "bline11_2"
+    }, {
+      "node1" : "dsect12",
+      "node2" : "INTERNAL_vl1_dtrct11"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct11",
+      "node2" : "dtrct11"
+    }, {
+      "node1" : "dload2",
+      "node2" : "INTERNAL_vl1_bload2"
+    }, {
+      "node1" : "INTERNAL_vl1_bload2",
+      "node2" : "bload2"
+    }, {
+      "node1" : "dtrf12",
+      "node2" : "INTERNAL_vl1_btrf12"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf12",
+      "node2" : "btrf12"
+    }, {
+      "node1" : "dtrf18",
+      "node2" : "INTERNAL_vl1_btrf18"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf18",
+      "node2" : "btrf18"
+    }, {
+      "node1" : "dsect21",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen1",
+      "node2" : "INTERNAL_vl1_bgen1"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen1",
+      "node2" : "bgen1"
+    }, {
+      "node1" : "dtrf13",
+      "node2" : "INTERNAL_vl1_btrf13"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf13",
+      "node2" : "btrf13"
+    }, {
+      "node1" : "dtrf17",
+      "node2" : "INTERNAL_vl1_btrf17"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf17",
+      "node2" : "btrf17"
+    }, {
+      "node1" : "dsect22",
+      "node2" : "INTERNAL_vl1_dtrct21"
+    }, {
+      "node1" : "INTERNAL_vl1_dtrct21",
+      "node2" : "dtrct21"
+    }, {
+      "node1" : "dgen2",
+      "node2" : "INTERNAL_vl1_bgen2"
+    }, {
+      "node1" : "INTERNAL_vl1_bgen2",
+      "node2" : "bgen2"
+    }, {
+      "node1" : "dtrf14",
+      "node2" : "INTERNAL_vl1_btrf14"
+    }, {
+      "node1" : "INTERNAL_vl1_btrf14",
+      "node2" : "btrf14"
     }, {
       "node1" : "bload1",
       "node2" : "INTERNAL_vl1_load1"
@@ -2426,108 +2528,6 @@
     }, {
       "node1" : "INTERNAL_vl1_line1_ONE",
       "node2" : "line1_ONE"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "dsect11",
-      "node2" : "INTERNAL_vl1_dsect11"
-    }, {
-      "node1" : "bload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "dload1",
-      "node2" : "INTERNAL_vl1_dload1"
-    }, {
-      "node1" : "btrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "dtrf11",
-      "node2" : "INTERNAL_vl1_dtrf11"
-    }, {
-      "node1" : "btrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "dtrf15",
-      "node2" : "INTERNAL_vl1_dtrf15"
-    }, {
-      "node1" : "btrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "dtrf16",
-      "node2" : "INTERNAL_vl1_dtrf16"
-    }, {
-      "node1" : "bline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dline11_2",
-      "node2" : "INTERNAL_vl1_dline11_2"
-    }, {
-      "node1" : "dtrct11",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "dsect12",
-      "node2" : "INTERNAL_vl1_dsect12"
-    }, {
-      "node1" : "bload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "dload2",
-      "node2" : "INTERNAL_vl1_dload2"
-    }, {
-      "node1" : "btrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "dtrf12",
-      "node2" : "INTERNAL_vl1_dtrf12"
-    }, {
-      "node1" : "btrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrf18",
-      "node2" : "INTERNAL_vl1_dtrf18"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "dsect21",
-      "node2" : "INTERNAL_vl1_dsect21"
-    }, {
-      "node1" : "bgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "dgen1",
-      "node2" : "INTERNAL_vl1_dgen1"
-    }, {
-      "node1" : "btrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "dtrf13",
-      "node2" : "INTERNAL_vl1_dtrf13"
-    }, {
-      "node1" : "btrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrf17",
-      "node2" : "INTERNAL_vl1_dtrf17"
-    }, {
-      "node1" : "dtrct21",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "dsect22",
-      "node2" : "INTERNAL_vl1_dsect22"
-    }, {
-      "node1" : "bgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "dgen2",
-      "node2" : "INTERNAL_vl1_dgen2"
-    }, {
-      "node1" : "btrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
-    }, {
-      "node1" : "dtrf14",
-      "node2" : "INTERNAL_vl1_dtrf14"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -2542,7 +2542,7 @@
     "y" : 1025.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dgen4",
+      "id" : "INTERNAL_vl2_bgen4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -2551,7 +2551,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dload3",
+      "id" : "INTERNAL_vl2_bload3",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -2559,23 +2559,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl1",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 75.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dscpl2",
-      "componentType" : "NODE",
-      "fictitious" : true,
-      "x" : 25.0,
-      "y" : 240.0,
-      "open" : false
-    }, {
-      "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf21",
+      "id" : "INTERNAL_vl2_btrf21",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -2583,7 +2567,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf22",
+      "id" : "INTERNAL_vl2_btrf22",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 475.0,
@@ -2592,7 +2576,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf23",
+      "id" : "INTERNAL_vl2_btrf23",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 525.0,
@@ -2601,7 +2585,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf24",
+      "id" : "INTERNAL_vl2_btrf24",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 275.0,
@@ -2609,7 +2593,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf26",
+      "id" : "INTERNAL_vl2_btrf26",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 375.0,
@@ -2617,7 +2601,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf27",
+      "id" : "INTERNAL_vl2_btrf27",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 325.0,
@@ -2625,13 +2609,29 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl2_dtrf28",
+      "id" : "INTERNAL_vl2_btrf28",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 425.0,
       "y" : 335.0,
       "orientation" : "DOWN",
       "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 75.0,
+      "y" : 240.0,
+      "open" : false
+    }, {
+      "type" : "FICTITIOUS",
+      "id" : "INTERNAL_vl2_ddcpl1",
+      "componentType" : "NODE",
+      "fictitious" : true,
+      "x" : 25.0,
+      "y" : 240.0,
+      "open" : false
     }, {
       "type" : "FICTITIOUS",
       "id" : "INTERNAL_vl2_gen4",
@@ -3202,7 +3202,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_dscpl2" ]
+          "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3223,7 +3223,7 @@
             "xSpan" : 50.0,
             "ySpan" : 40.0
           },
-          "nodes" : [ "INTERNAL_vl2_dscpl2", "ddcpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "INTERNAL_vl2_ddcpl1", "ddcpl1", "INTERNAL_vl2_ddcpl1" ]
         }, {
           "type" : "LEGPRIMARY",
           "cardinalities" : [ {
@@ -3244,7 +3244,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_dscpl1" ]
+          "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_ddcpl1" ]
         } ]
       }
     }, {
@@ -3292,7 +3292,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_dload3" ]
+          "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_bload3" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3313,7 +3313,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dload3", "bload3", "INTERNAL_vl2_load3" ]
+          "nodes" : [ "INTERNAL_vl2_bload3", "bload3", "INTERNAL_vl2_load3" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3382,7 +3382,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_dtrf21" ]
+          "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_btrf21" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3403,7 +3403,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3472,7 +3472,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_dtrf24" ]
+          "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_btrf24" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3493,7 +3493,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3562,7 +3562,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_dtrf27" ]
+          "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_btrf27" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3583,7 +3583,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf27", "btrf27", "INTERNAL_vl2_trf7_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3652,7 +3652,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_dgen4" ]
+          "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_bgen4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3673,7 +3673,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dgen4", "bgen4", "INTERNAL_vl2_gen4" ]
+          "nodes" : [ "INTERNAL_vl2_bgen4", "bgen4", "INTERNAL_vl2_gen4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3742,7 +3742,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_dtrf22" ]
+          "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_btrf22" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3763,7 +3763,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3832,7 +3832,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_dtrf23" ]
+          "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_btrf23" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3853,7 +3853,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -3922,7 +3922,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_dtrf26" ]
+          "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_btrf26" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -3943,7 +3943,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf26", "btrf26", "INTERNAL_vl2_trf6_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4012,7 +4012,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_dtrf28" ]
+          "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_btrf28" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4033,7 +4033,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl2_dtrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
+          "nodes" : [ "INTERNAL_vl2_btrf28", "btrf28", "INTERNAL_vl2_trf8_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4091,6 +4091,72 @@
     }, {
       "node1" : "bbs6",
       "node2" : "dtrf28"
+    }, {
+      "node1" : "dscpl1",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dload3",
+      "node2" : "INTERNAL_vl2_bload3"
+    }, {
+      "node1" : "INTERNAL_vl2_bload3",
+      "node2" : "bload3"
+    }, {
+      "node1" : "dtrf21",
+      "node2" : "INTERNAL_vl2_btrf21"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf21",
+      "node2" : "btrf21"
+    }, {
+      "node1" : "dtrf24",
+      "node2" : "INTERNAL_vl2_btrf24"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf24",
+      "node2" : "btrf24"
+    }, {
+      "node1" : "dtrf27",
+      "node2" : "INTERNAL_vl2_btrf27"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf27",
+      "node2" : "btrf27"
+    }, {
+      "node1" : "dscpl2",
+      "node2" : "INTERNAL_vl2_ddcpl1"
+    }, {
+      "node1" : "INTERNAL_vl2_ddcpl1",
+      "node2" : "ddcpl1"
+    }, {
+      "node1" : "dgen4",
+      "node2" : "INTERNAL_vl2_bgen4"
+    }, {
+      "node1" : "INTERNAL_vl2_bgen4",
+      "node2" : "bgen4"
+    }, {
+      "node1" : "dtrf22",
+      "node2" : "INTERNAL_vl2_btrf22"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf22",
+      "node2" : "btrf22"
+    }, {
+      "node1" : "dtrf23",
+      "node2" : "INTERNAL_vl2_btrf23"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf23",
+      "node2" : "btrf23"
+    }, {
+      "node1" : "dtrf26",
+      "node2" : "INTERNAL_vl2_btrf26"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf26",
+      "node2" : "btrf26"
+    }, {
+      "node1" : "dtrf28",
+      "node2" : "INTERNAL_vl2_btrf28"
+    }, {
+      "node1" : "INTERNAL_vl2_btrf28",
+      "node2" : "btrf28"
     }, {
       "node1" : "bload3",
       "node2" : "INTERNAL_vl2_load3"
@@ -4145,72 +4211,6 @@
     }, {
       "node1" : "INTERNAL_vl2_trf8_TWO",
       "node2" : "trf8_TWO"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "dscpl1",
-      "node2" : "INTERNAL_vl2_dscpl1"
-    }, {
-      "node1" : "bload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "dload3",
-      "node2" : "INTERNAL_vl2_dload3"
-    }, {
-      "node1" : "btrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "dtrf21",
-      "node2" : "INTERNAL_vl2_dtrf21"
-    }, {
-      "node1" : "btrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "dtrf24",
-      "node2" : "INTERNAL_vl2_dtrf24"
-    }, {
-      "node1" : "btrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "dtrf27",
-      "node2" : "INTERNAL_vl2_dtrf27"
-    }, {
-      "node1" : "ddcpl1",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "dscpl2",
-      "node2" : "INTERNAL_vl2_dscpl2"
-    }, {
-      "node1" : "bgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "dgen4",
-      "node2" : "INTERNAL_vl2_dgen4"
-    }, {
-      "node1" : "btrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "dtrf22",
-      "node2" : "INTERNAL_vl2_dtrf22"
-    }, {
-      "node1" : "btrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "dtrf23",
-      "node2" : "INTERNAL_vl2_dtrf23"
-    }, {
-      "node1" : "btrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "dtrf26",
-      "node2" : "INTERNAL_vl2_dtrf26"
-    }, {
-      "node1" : "btrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
-    }, {
-      "node1" : "dtrf28",
-      "node2" : "INTERNAL_vl2_dtrf28"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
@@ -4225,7 +4225,7 @@
     "y" : 1820.0,
     "nodes" : [ {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dload4",
+      "id" : "INTERNAL_vl3_bload4",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 25.0,
@@ -4233,7 +4233,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf25",
+      "id" : "INTERNAL_vl3_btrf25",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 75.0,
@@ -4242,7 +4242,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf36",
+      "id" : "INTERNAL_vl3_btrf36",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 125.0,
@@ -4250,7 +4250,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf37",
+      "id" : "INTERNAL_vl3_btrf37",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 175.0,
@@ -4259,7 +4259,7 @@
       "open" : false
     }, {
       "type" : "FICTITIOUS",
-      "id" : "INTERNAL_vl3_dtrf38",
+      "id" : "INTERNAL_vl3_btrf38",
       "componentType" : "NODE",
       "fictitious" : true,
       "x" : 225.0,
@@ -4582,7 +4582,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_dload4" ]
+          "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_bload4" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4603,7 +4603,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dload4", "bload4", "INTERNAL_vl3_load4" ]
+          "nodes" : [ "INTERNAL_vl3_bload4", "bload4", "INTERNAL_vl3_load4" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4672,7 +4672,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_dtrf25" ]
+          "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_btrf25" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4693,7 +4693,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
+          "nodes" : [ "INTERNAL_vl3_btrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4762,7 +4762,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_dtrf36" ]
+          "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_btrf36" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4783,7 +4783,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf36", "btrf36", "INTERNAL_vl3_trf6_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4852,7 +4852,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_dtrf37" ]
+          "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_btrf37" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4873,7 +4873,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf37", "btrf37", "INTERNAL_vl3_trf7_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -4942,7 +4942,7 @@
             "xSpan" : 50.0,
             "ySpan" : 0.0
           },
-          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_dtrf38" ]
+          "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_btrf38" ]
         }, {
           "type" : "BODYPRIMARY",
           "cardinalities" : [ {
@@ -4963,7 +4963,7 @@
             "xSpan" : 50.0,
             "ySpan" : 188.0
           },
-          "nodes" : [ "INTERNAL_vl3_dtrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
+          "nodes" : [ "INTERNAL_vl3_btrf38", "btrf38", "INTERNAL_vl3_trf8_THREE" ]
         }, {
           "type" : "FEEDERPRIMARY",
           "cardinalities" : [ {
@@ -5003,6 +5003,36 @@
     }, {
       "node1" : "bbs7",
       "node2" : "dtrf38"
+    }, {
+      "node1" : "dload4",
+      "node2" : "INTERNAL_vl3_bload4"
+    }, {
+      "node1" : "INTERNAL_vl3_bload4",
+      "node2" : "bload4"
+    }, {
+      "node1" : "dtrf25",
+      "node2" : "INTERNAL_vl3_btrf25"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf25",
+      "node2" : "btrf25"
+    }, {
+      "node1" : "dtrf36",
+      "node2" : "INTERNAL_vl3_btrf36"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf36",
+      "node2" : "btrf36"
+    }, {
+      "node1" : "dtrf37",
+      "node2" : "INTERNAL_vl3_btrf37"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf37",
+      "node2" : "btrf37"
+    }, {
+      "node1" : "dtrf38",
+      "node2" : "INTERNAL_vl3_btrf38"
+    }, {
+      "node1" : "INTERNAL_vl3_btrf38",
+      "node2" : "btrf38"
     }, {
       "node1" : "bload4",
       "node2" : "INTERNAL_vl3_load4"
@@ -5033,36 +5063,6 @@
     }, {
       "node1" : "INTERNAL_vl3_trf8_THREE",
       "node2" : "trf8_THREE"
-    }, {
-      "node1" : "bload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "dload4",
-      "node2" : "INTERNAL_vl3_dload4"
-    }, {
-      "node1" : "btrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "dtrf25",
-      "node2" : "INTERNAL_vl3_dtrf25"
-    }, {
-      "node1" : "btrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "dtrf36",
-      "node2" : "INTERNAL_vl3_dtrf36"
-    }, {
-      "node1" : "btrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "dtrf37",
-      "node2" : "INTERNAL_vl3_dtrf37"
-    }, {
-      "node1" : "btrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
-    }, {
-      "node1" : "dtrf38",
-      "node2" : "INTERNAL_vl3_dtrf38"
     } ],
     "multitermNodes" : [ ],
     "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase12GraphVL1.json b/single-line-diagram-core/src/test/resources/TestCase12GraphVL1.json
index 76f8dc03c..c9eb1c03c 100644
--- a/single-line-diagram-core/src/test/resources/TestCase12GraphVL1.json
+++ b/single-line-diagram-core/src/test/resources/TestCase12GraphVL1.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dgen1",
+    "id" : "INTERNAL_vl1_bgen1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 200.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dgen2",
+    "id" : "INTERNAL_vl1_bgen2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 1240.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dload1",
+    "id" : "INTERNAL_vl1_bload1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 40.0,
@@ -34,7 +34,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dload2",
+    "id" : "INTERNAL_vl1_bload2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 840.0,
@@ -42,106 +42,106 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dsect11",
+    "id" : "INTERNAL_vl1_btrf11",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 720.0,
-    "y" : 280.0,
-    "orientation" : "RIGHT",
+    "x" : 120.0,
+    "y" : 250.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dsect12",
+    "id" : "INTERNAL_vl1_btrf12",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 800.0,
-    "y" : 280.0,
-    "orientation" : "RIGHT",
+    "x" : 1160.0,
+    "y" : 250.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dsect21",
+    "id" : "INTERNAL_vl1_btrf13",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 720.0,
-    "y" : 305.0,
-    "orientation" : "RIGHT",
+    "x" : 280.0,
+    "y" : 335.0,
+    "orientation" : "DOWN",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dsect22",
+    "id" : "INTERNAL_vl1_btrf14",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 800.0,
-    "y" : 305.0,
-    "orientation" : "RIGHT",
+    "x" : 1080.0,
+    "y" : 335.0,
+    "orientation" : "DOWN",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dtrf11",
+    "id" : "INTERNAL_vl1_btrf15",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 120.0,
+    "x" : 360.0,
     "y" : 250.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dtrf12",
+    "id" : "INTERNAL_vl1_btrf16",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 1160.0,
+    "x" : 480.0,
     "y" : 250.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dtrf13",
+    "id" : "INTERNAL_vl1_btrf17",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 280.0,
+    "x" : 640.0,
     "y" : 335.0,
     "orientation" : "DOWN",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dtrf14",
+    "id" : "INTERNAL_vl1_btrf18",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 1080.0,
-    "y" : 335.0,
-    "orientation" : "DOWN",
+    "x" : 960.0,
+    "y" : 250.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dtrf15",
+    "id" : "INTERNAL_vl1_dtrct11",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 360.0,
-    "y" : 250.0,
+    "x" : 720.0,
+    "y" : 280.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dtrf16",
+    "id" : "INTERNAL_vl1_dtrct11",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 480.0,
-    "y" : 250.0,
+    "x" : 800.0,
+    "y" : 280.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dtrf17",
+    "id" : "INTERNAL_vl1_dtrct21",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 640.0,
-    "y" : 335.0,
-    "orientation" : "DOWN",
+    "x" : 720.0,
+    "y" : 305.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_dtrf18",
+    "id" : "INTERNAL_vl1_dtrct21",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 960.0,
-    "y" : 250.0,
+    "x" : 800.0,
+    "y" : 305.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
@@ -1044,7 +1044,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dsect12" ]
+        "nodes" : [ "bbs2", "dsect12", "INTERNAL_vl1_dtrct11" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1065,7 +1065,7 @@
           "xSpan" : 80.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl1_dsect11", "dtrct11", "INTERNAL_vl1_dsect12" ]
+        "nodes" : [ "INTERNAL_vl1_dtrct11", "dtrct11", "INTERNAL_vl1_dtrct11" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -1086,7 +1086,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dsect11" ]
+        "nodes" : [ "bbs1", "dsect11", "INTERNAL_vl1_dtrct11" ]
       } ]
     }
   }, {
@@ -1133,7 +1133,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dsect22" ]
+        "nodes" : [ "bbs4", "dsect22", "INTERNAL_vl1_dtrct21" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1154,7 +1154,7 @@
           "xSpan" : 80.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl1_dsect21", "dtrct21", "INTERNAL_vl1_dsect22" ]
+        "nodes" : [ "INTERNAL_vl1_dtrct21", "dtrct21", "INTERNAL_vl1_dtrct21" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -1175,7 +1175,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dsect21" ]
+        "nodes" : [ "bbs3", "dsect21", "INTERNAL_vl1_dtrct21" ]
       } ]
     }
   }, {
@@ -1223,7 +1223,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_dload1" ]
+        "nodes" : [ "bbs1", "dload1", "INTERNAL_vl1_bload1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1244,7 +1244,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dload1", "bload1", "INTERNAL_vl1_load1" ]
+        "nodes" : [ "INTERNAL_vl1_bload1", "bload1", "INTERNAL_vl1_load1" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1313,7 +1313,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_dtrf11" ]
+        "nodes" : [ "bbs1", "dtrf11", "INTERNAL_vl1_btrf11" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1334,7 +1334,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dtrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
+        "nodes" : [ "INTERNAL_vl1_btrf11", "btrf11", "INTERNAL_vl1_trf1_ONE" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1403,7 +1403,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_dtrf15" ]
+        "nodes" : [ "bbs1", "dtrf15", "INTERNAL_vl1_btrf15" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1424,7 +1424,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dtrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
+        "nodes" : [ "INTERNAL_vl1_btrf15", "btrf15", "INTERNAL_vl1_trf5_ONE" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1493,7 +1493,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_dtrf16" ]
+        "nodes" : [ "bbs1", "dtrf16", "INTERNAL_vl1_btrf16" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1514,7 +1514,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dtrf16", "btrf16", "trf6" ]
+        "nodes" : [ "INTERNAL_vl1_btrf16", "btrf16", "trf6" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -1625,7 +1625,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_dload2" ]
+        "nodes" : [ "bbs2", "dload2", "INTERNAL_vl1_bload2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1646,7 +1646,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dload2", "bload2", "INTERNAL_vl1_load2" ]
+        "nodes" : [ "INTERNAL_vl1_bload2", "bload2", "INTERNAL_vl1_load2" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1715,7 +1715,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_dtrf12" ]
+        "nodes" : [ "bbs2", "dtrf12", "INTERNAL_vl1_btrf12" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1736,7 +1736,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dtrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
+        "nodes" : [ "INTERNAL_vl1_btrf12", "btrf12", "INTERNAL_vl1_trf2_ONE" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1805,7 +1805,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_dtrf18" ]
+        "nodes" : [ "bbs2", "dtrf18", "INTERNAL_vl1_btrf18" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1826,7 +1826,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dtrf18", "btrf18", "trf8" ]
+        "nodes" : [ "INTERNAL_vl1_btrf18", "btrf18", "trf8" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -1937,7 +1937,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_dgen1" ]
+        "nodes" : [ "bbs3", "dgen1", "INTERNAL_vl1_bgen1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1958,7 +1958,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dgen1", "bgen1", "INTERNAL_vl1_gen1" ]
+        "nodes" : [ "INTERNAL_vl1_bgen1", "bgen1", "INTERNAL_vl1_gen1" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -2027,7 +2027,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_dtrf13" ]
+        "nodes" : [ "bbs3", "dtrf13", "INTERNAL_vl1_btrf13" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -2048,7 +2048,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dtrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
+        "nodes" : [ "INTERNAL_vl1_btrf13", "btrf13", "INTERNAL_vl1_trf3_ONE" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -2117,7 +2117,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_dtrf17" ]
+        "nodes" : [ "bbs3", "dtrf17", "INTERNAL_vl1_btrf17" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -2138,7 +2138,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dtrf17", "btrf17", "trf7" ]
+        "nodes" : [ "INTERNAL_vl1_btrf17", "btrf17", "trf7" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -2249,7 +2249,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_dgen2" ]
+        "nodes" : [ "bbs4", "dgen2", "INTERNAL_vl1_bgen2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -2270,7 +2270,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dgen2", "bgen2", "INTERNAL_vl1_gen2" ]
+        "nodes" : [ "INTERNAL_vl1_bgen2", "bgen2", "INTERNAL_vl1_gen2" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -2339,7 +2339,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_dtrf14" ]
+        "nodes" : [ "bbs4", "dtrf14", "INTERNAL_vl1_btrf14" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -2360,7 +2360,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl1_dtrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
+        "nodes" : [ "INTERNAL_vl1_btrf14", "btrf14", "INTERNAL_vl1_trf4_ONE" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -2460,6 +2460,102 @@
   }, {
     "node1" : "btrf18",
     "node2" : "trf8"
+  }, {
+    "node1" : "dsect11",
+    "node2" : "INTERNAL_vl1_dtrct11"
+  }, {
+    "node1" : "INTERNAL_vl1_dtrct11",
+    "node2" : "dtrct11"
+  }, {
+    "node1" : "dload1",
+    "node2" : "INTERNAL_vl1_bload1"
+  }, {
+    "node1" : "INTERNAL_vl1_bload1",
+    "node2" : "bload1"
+  }, {
+    "node1" : "dtrf11",
+    "node2" : "INTERNAL_vl1_btrf11"
+  }, {
+    "node1" : "INTERNAL_vl1_btrf11",
+    "node2" : "btrf11"
+  }, {
+    "node1" : "dtrf15",
+    "node2" : "INTERNAL_vl1_btrf15"
+  }, {
+    "node1" : "INTERNAL_vl1_btrf15",
+    "node2" : "btrf15"
+  }, {
+    "node1" : "dtrf16",
+    "node2" : "INTERNAL_vl1_btrf16"
+  }, {
+    "node1" : "INTERNAL_vl1_btrf16",
+    "node2" : "btrf16"
+  }, {
+    "node1" : "dsect12",
+    "node2" : "INTERNAL_vl1_dtrct11"
+  }, {
+    "node1" : "INTERNAL_vl1_dtrct11",
+    "node2" : "dtrct11"
+  }, {
+    "node1" : "dload2",
+    "node2" : "INTERNAL_vl1_bload2"
+  }, {
+    "node1" : "INTERNAL_vl1_bload2",
+    "node2" : "bload2"
+  }, {
+    "node1" : "dtrf12",
+    "node2" : "INTERNAL_vl1_btrf12"
+  }, {
+    "node1" : "INTERNAL_vl1_btrf12",
+    "node2" : "btrf12"
+  }, {
+    "node1" : "dtrf18",
+    "node2" : "INTERNAL_vl1_btrf18"
+  }, {
+    "node1" : "INTERNAL_vl1_btrf18",
+    "node2" : "btrf18"
+  }, {
+    "node1" : "dsect21",
+    "node2" : "INTERNAL_vl1_dtrct21"
+  }, {
+    "node1" : "INTERNAL_vl1_dtrct21",
+    "node2" : "dtrct21"
+  }, {
+    "node1" : "dgen1",
+    "node2" : "INTERNAL_vl1_bgen1"
+  }, {
+    "node1" : "INTERNAL_vl1_bgen1",
+    "node2" : "bgen1"
+  }, {
+    "node1" : "dtrf13",
+    "node2" : "INTERNAL_vl1_btrf13"
+  }, {
+    "node1" : "INTERNAL_vl1_btrf13",
+    "node2" : "btrf13"
+  }, {
+    "node1" : "dtrf17",
+    "node2" : "INTERNAL_vl1_btrf17"
+  }, {
+    "node1" : "INTERNAL_vl1_btrf17",
+    "node2" : "btrf17"
+  }, {
+    "node1" : "dsect22",
+    "node2" : "INTERNAL_vl1_dtrct21"
+  }, {
+    "node1" : "INTERNAL_vl1_dtrct21",
+    "node2" : "dtrct21"
+  }, {
+    "node1" : "dgen2",
+    "node2" : "INTERNAL_vl1_bgen2"
+  }, {
+    "node1" : "INTERNAL_vl1_bgen2",
+    "node2" : "bgen2"
+  }, {
+    "node1" : "dtrf14",
+    "node2" : "INTERNAL_vl1_btrf14"
+  }, {
+    "node1" : "INTERNAL_vl1_btrf14",
+    "node2" : "btrf14"
   }, {
     "node1" : "bload1",
     "node2" : "INTERNAL_vl1_load1"
@@ -2514,102 +2610,6 @@
   }, {
     "node1" : "INTERNAL_vl1_trf5_ONE",
     "node2" : "trf5_ONE"
-  }, {
-    "node1" : "dtrct11",
-    "node2" : "INTERNAL_vl1_dsect11"
-  }, {
-    "node1" : "dsect11",
-    "node2" : "INTERNAL_vl1_dsect11"
-  }, {
-    "node1" : "bload1",
-    "node2" : "INTERNAL_vl1_dload1"
-  }, {
-    "node1" : "dload1",
-    "node2" : "INTERNAL_vl1_dload1"
-  }, {
-    "node1" : "btrf11",
-    "node2" : "INTERNAL_vl1_dtrf11"
-  }, {
-    "node1" : "dtrf11",
-    "node2" : "INTERNAL_vl1_dtrf11"
-  }, {
-    "node1" : "btrf15",
-    "node2" : "INTERNAL_vl1_dtrf15"
-  }, {
-    "node1" : "dtrf15",
-    "node2" : "INTERNAL_vl1_dtrf15"
-  }, {
-    "node1" : "btrf16",
-    "node2" : "INTERNAL_vl1_dtrf16"
-  }, {
-    "node1" : "dtrf16",
-    "node2" : "INTERNAL_vl1_dtrf16"
-  }, {
-    "node1" : "dtrct11",
-    "node2" : "INTERNAL_vl1_dsect12"
-  }, {
-    "node1" : "dsect12",
-    "node2" : "INTERNAL_vl1_dsect12"
-  }, {
-    "node1" : "bload2",
-    "node2" : "INTERNAL_vl1_dload2"
-  }, {
-    "node1" : "dload2",
-    "node2" : "INTERNAL_vl1_dload2"
-  }, {
-    "node1" : "btrf12",
-    "node2" : "INTERNAL_vl1_dtrf12"
-  }, {
-    "node1" : "dtrf12",
-    "node2" : "INTERNAL_vl1_dtrf12"
-  }, {
-    "node1" : "btrf18",
-    "node2" : "INTERNAL_vl1_dtrf18"
-  }, {
-    "node1" : "dtrf18",
-    "node2" : "INTERNAL_vl1_dtrf18"
-  }, {
-    "node1" : "dtrct21",
-    "node2" : "INTERNAL_vl1_dsect21"
-  }, {
-    "node1" : "dsect21",
-    "node2" : "INTERNAL_vl1_dsect21"
-  }, {
-    "node1" : "bgen1",
-    "node2" : "INTERNAL_vl1_dgen1"
-  }, {
-    "node1" : "dgen1",
-    "node2" : "INTERNAL_vl1_dgen1"
-  }, {
-    "node1" : "btrf13",
-    "node2" : "INTERNAL_vl1_dtrf13"
-  }, {
-    "node1" : "dtrf13",
-    "node2" : "INTERNAL_vl1_dtrf13"
-  }, {
-    "node1" : "btrf17",
-    "node2" : "INTERNAL_vl1_dtrf17"
-  }, {
-    "node1" : "dtrf17",
-    "node2" : "INTERNAL_vl1_dtrf17"
-  }, {
-    "node1" : "dtrct21",
-    "node2" : "INTERNAL_vl1_dsect22"
-  }, {
-    "node1" : "dsect22",
-    "node2" : "INTERNAL_vl1_dsect22"
-  }, {
-    "node1" : "bgen2",
-    "node2" : "INTERNAL_vl1_dgen2"
-  }, {
-    "node1" : "dgen2",
-    "node2" : "INTERNAL_vl1_dgen2"
-  }, {
-    "node1" : "btrf14",
-    "node2" : "INTERNAL_vl1_dtrf14"
-  }, {
-    "node1" : "dtrf14",
-    "node2" : "INTERNAL_vl1_dtrf14"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase12GraphVL2.json b/single-line-diagram-core/src/test/resources/TestCase12GraphVL2.json
index 7bd22f9ff..2fa6570cb 100644
--- a/single-line-diagram-core/src/test/resources/TestCase12GraphVL2.json
+++ b/single-line-diagram-core/src/test/resources/TestCase12GraphVL2.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dgen4",
+    "id" : "INTERNAL_vl2_bgen4",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 360.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dload3",
+    "id" : "INTERNAL_vl2_bload3",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 200.0,
@@ -25,23 +25,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dscpl1",
-    "componentType" : "NODE",
-    "fictitious" : true,
-    "x" : 120.0,
-    "y" : 240.0,
-    "open" : false
-  }, {
-    "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dscpl2",
-    "componentType" : "NODE",
-    "fictitious" : true,
-    "x" : 40.0,
-    "y" : 240.0,
-    "open" : false
-  }, {
-    "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dtrf21",
+    "id" : "INTERNAL_vl2_btrf21",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 280.0,
@@ -49,7 +33,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dtrf22",
+    "id" : "INTERNAL_vl2_btrf22",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 1000.0,
@@ -58,7 +42,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dtrf23",
+    "id" : "INTERNAL_vl2_btrf23",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 1080.0,
@@ -67,7 +51,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dtrf24",
+    "id" : "INTERNAL_vl2_btrf24",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 440.0,
@@ -75,7 +59,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dtrf26",
+    "id" : "INTERNAL_vl2_btrf26",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 720.0,
@@ -83,7 +67,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dtrf27",
+    "id" : "INTERNAL_vl2_btrf27",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 560.0,
@@ -91,13 +75,29 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_dtrf28",
+    "id" : "INTERNAL_vl2_btrf28",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 880.0,
     "y" : 335.0,
     "orientation" : "DOWN",
     "open" : false
+  }, {
+    "type" : "FICTITIOUS",
+    "id" : "INTERNAL_vl2_ddcpl1",
+    "componentType" : "NODE",
+    "fictitious" : true,
+    "x" : 120.0,
+    "y" : 240.0,
+    "open" : false
+  }, {
+    "type" : "FICTITIOUS",
+    "id" : "INTERNAL_vl2_ddcpl1",
+    "componentType" : "NODE",
+    "fictitious" : true,
+    "x" : 40.0,
+    "y" : 240.0,
+    "open" : false
   }, {
     "type" : "FICTITIOUS",
     "id" : "INTERNAL_vl2_gen4",
@@ -780,7 +780,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_dscpl2" ]
+        "nodes" : [ "bbs6", "dscpl2", "INTERNAL_vl2_ddcpl1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -801,7 +801,7 @@
           "xSpan" : 80.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl2_dscpl2", "ddcpl1", "INTERNAL_vl2_dscpl1" ]
+        "nodes" : [ "INTERNAL_vl2_ddcpl1", "ddcpl1", "INTERNAL_vl2_ddcpl1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -822,7 +822,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_dscpl1" ]
+        "nodes" : [ "bbs5", "dscpl1", "INTERNAL_vl2_ddcpl1" ]
       } ]
     }
   }, {
@@ -870,7 +870,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_dload3" ]
+        "nodes" : [ "bbs5", "dload3", "INTERNAL_vl2_bload3" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -891,7 +891,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dload3", "bload3", "INTERNAL_vl2_load3" ]
+        "nodes" : [ "INTERNAL_vl2_bload3", "bload3", "INTERNAL_vl2_load3" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -960,7 +960,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_dtrf21" ]
+        "nodes" : [ "bbs5", "dtrf21", "INTERNAL_vl2_btrf21" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -981,7 +981,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dtrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
+        "nodes" : [ "INTERNAL_vl2_btrf21", "btrf21", "INTERNAL_vl2_trf1_TWO" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1050,7 +1050,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_dtrf24" ]
+        "nodes" : [ "bbs5", "dtrf24", "INTERNAL_vl2_btrf24" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1071,7 +1071,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dtrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
+        "nodes" : [ "INTERNAL_vl2_btrf24", "btrf24", "INTERNAL_vl2_trf4_TWO" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1140,7 +1140,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_dtrf27" ]
+        "nodes" : [ "bbs5", "dtrf27", "INTERNAL_vl2_btrf27" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1161,7 +1161,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dtrf27", "btrf27", "trf7" ]
+        "nodes" : [ "INTERNAL_vl2_btrf27", "btrf27", "trf7" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -1272,7 +1272,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_dgen4" ]
+        "nodes" : [ "bbs6", "dgen4", "INTERNAL_vl2_bgen4" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1293,7 +1293,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dgen4", "bgen4", "INTERNAL_vl2_gen4" ]
+        "nodes" : [ "INTERNAL_vl2_bgen4", "bgen4", "INTERNAL_vl2_gen4" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1362,7 +1362,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_dtrf22" ]
+        "nodes" : [ "bbs6", "dtrf22", "INTERNAL_vl2_btrf22" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1383,7 +1383,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dtrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
+        "nodes" : [ "INTERNAL_vl2_btrf22", "btrf22", "INTERNAL_vl2_trf2_TWO" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1452,7 +1452,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_dtrf23" ]
+        "nodes" : [ "bbs6", "dtrf23", "INTERNAL_vl2_btrf23" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1473,7 +1473,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dtrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
+        "nodes" : [ "INTERNAL_vl2_btrf23", "btrf23", "INTERNAL_vl2_trf3_TWO" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1542,7 +1542,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_dtrf26" ]
+        "nodes" : [ "bbs6", "dtrf26", "INTERNAL_vl2_btrf26" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1563,7 +1563,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dtrf26", "btrf26", "trf6" ]
+        "nodes" : [ "INTERNAL_vl2_btrf26", "btrf26", "trf6" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -1674,7 +1674,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_dtrf28" ]
+        "nodes" : [ "bbs6", "dtrf28", "INTERNAL_vl2_btrf28" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1695,7 +1695,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl2_dtrf28", "btrf28", "trf8" ]
+        "nodes" : [ "INTERNAL_vl2_btrf28", "btrf28", "trf8" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -1822,6 +1822,72 @@
   }, {
     "node1" : "btrf28",
     "node2" : "trf8"
+  }, {
+    "node1" : "dscpl1",
+    "node2" : "INTERNAL_vl2_ddcpl1"
+  }, {
+    "node1" : "INTERNAL_vl2_ddcpl1",
+    "node2" : "ddcpl1"
+  }, {
+    "node1" : "dload3",
+    "node2" : "INTERNAL_vl2_bload3"
+  }, {
+    "node1" : "INTERNAL_vl2_bload3",
+    "node2" : "bload3"
+  }, {
+    "node1" : "dtrf21",
+    "node2" : "INTERNAL_vl2_btrf21"
+  }, {
+    "node1" : "INTERNAL_vl2_btrf21",
+    "node2" : "btrf21"
+  }, {
+    "node1" : "dtrf24",
+    "node2" : "INTERNAL_vl2_btrf24"
+  }, {
+    "node1" : "INTERNAL_vl2_btrf24",
+    "node2" : "btrf24"
+  }, {
+    "node1" : "dtrf27",
+    "node2" : "INTERNAL_vl2_btrf27"
+  }, {
+    "node1" : "INTERNAL_vl2_btrf27",
+    "node2" : "btrf27"
+  }, {
+    "node1" : "dscpl2",
+    "node2" : "INTERNAL_vl2_ddcpl1"
+  }, {
+    "node1" : "INTERNAL_vl2_ddcpl1",
+    "node2" : "ddcpl1"
+  }, {
+    "node1" : "dgen4",
+    "node2" : "INTERNAL_vl2_bgen4"
+  }, {
+    "node1" : "INTERNAL_vl2_bgen4",
+    "node2" : "bgen4"
+  }, {
+    "node1" : "dtrf22",
+    "node2" : "INTERNAL_vl2_btrf22"
+  }, {
+    "node1" : "INTERNAL_vl2_btrf22",
+    "node2" : "btrf22"
+  }, {
+    "node1" : "dtrf23",
+    "node2" : "INTERNAL_vl2_btrf23"
+  }, {
+    "node1" : "INTERNAL_vl2_btrf23",
+    "node2" : "btrf23"
+  }, {
+    "node1" : "dtrf26",
+    "node2" : "INTERNAL_vl2_btrf26"
+  }, {
+    "node1" : "INTERNAL_vl2_btrf26",
+    "node2" : "btrf26"
+  }, {
+    "node1" : "dtrf28",
+    "node2" : "INTERNAL_vl2_btrf28"
+  }, {
+    "node1" : "INTERNAL_vl2_btrf28",
+    "node2" : "btrf28"
   }, {
     "node1" : "bload3",
     "node2" : "INTERNAL_vl2_load3"
@@ -1858,72 +1924,6 @@
   }, {
     "node1" : "INTERNAL_vl2_trf4_TWO",
     "node2" : "trf4_TWO"
-  }, {
-    "node1" : "ddcpl1",
-    "node2" : "INTERNAL_vl2_dscpl1"
-  }, {
-    "node1" : "dscpl1",
-    "node2" : "INTERNAL_vl2_dscpl1"
-  }, {
-    "node1" : "bload3",
-    "node2" : "INTERNAL_vl2_dload3"
-  }, {
-    "node1" : "dload3",
-    "node2" : "INTERNAL_vl2_dload3"
-  }, {
-    "node1" : "btrf21",
-    "node2" : "INTERNAL_vl2_dtrf21"
-  }, {
-    "node1" : "dtrf21",
-    "node2" : "INTERNAL_vl2_dtrf21"
-  }, {
-    "node1" : "btrf24",
-    "node2" : "INTERNAL_vl2_dtrf24"
-  }, {
-    "node1" : "dtrf24",
-    "node2" : "INTERNAL_vl2_dtrf24"
-  }, {
-    "node1" : "btrf27",
-    "node2" : "INTERNAL_vl2_dtrf27"
-  }, {
-    "node1" : "dtrf27",
-    "node2" : "INTERNAL_vl2_dtrf27"
-  }, {
-    "node1" : "ddcpl1",
-    "node2" : "INTERNAL_vl2_dscpl2"
-  }, {
-    "node1" : "dscpl2",
-    "node2" : "INTERNAL_vl2_dscpl2"
-  }, {
-    "node1" : "bgen4",
-    "node2" : "INTERNAL_vl2_dgen4"
-  }, {
-    "node1" : "dgen4",
-    "node2" : "INTERNAL_vl2_dgen4"
-  }, {
-    "node1" : "btrf22",
-    "node2" : "INTERNAL_vl2_dtrf22"
-  }, {
-    "node1" : "dtrf22",
-    "node2" : "INTERNAL_vl2_dtrf22"
-  }, {
-    "node1" : "btrf23",
-    "node2" : "INTERNAL_vl2_dtrf23"
-  }, {
-    "node1" : "dtrf23",
-    "node2" : "INTERNAL_vl2_dtrf23"
-  }, {
-    "node1" : "btrf26",
-    "node2" : "INTERNAL_vl2_dtrf26"
-  }, {
-    "node1" : "dtrf26",
-    "node2" : "INTERNAL_vl2_dtrf26"
-  }, {
-    "node1" : "btrf28",
-    "node2" : "INTERNAL_vl2_dtrf28"
-  }, {
-    "node1" : "dtrf28",
-    "node2" : "INTERNAL_vl2_dtrf28"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase12GraphVL3.json b/single-line-diagram-core/src/test/resources/TestCase12GraphVL3.json
index 8b7b06e82..e6f94b34e 100644
--- a/single-line-diagram-core/src/test/resources/TestCase12GraphVL3.json
+++ b/single-line-diagram-core/src/test/resources/TestCase12GraphVL3.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl3_dload4",
+    "id" : "INTERNAL_vl3_bload4",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 40.0,
@@ -16,7 +16,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl3_dself4",
+    "id" : "INTERNAL_vl3_bself4",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 120.0,
@@ -25,7 +25,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl3_dself5",
+    "id" : "INTERNAL_vl3_bself5",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 760.0,
@@ -34,7 +34,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl3_dself6",
+    "id" : "INTERNAL_vl3_bself6",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 840.0,
@@ -43,7 +43,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl3_dtrf25",
+    "id" : "INTERNAL_vl3_btrf25",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 200.0,
@@ -52,7 +52,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl3_dtrf36",
+    "id" : "INTERNAL_vl3_btrf36",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 320.0,
@@ -60,7 +60,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl3_dtrf37",
+    "id" : "INTERNAL_vl3_btrf37",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 480.0,
@@ -69,7 +69,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl3_dtrf38",
+    "id" : "INTERNAL_vl3_btrf38",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 640.0,
@@ -667,7 +667,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_dload4" ]
+        "nodes" : [ "bbs7", "dload4", "INTERNAL_vl3_bload4" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -688,7 +688,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl3_dload4", "bload4", "INTERNAL_vl3_load4" ]
+        "nodes" : [ "INTERNAL_vl3_bload4", "bload4", "INTERNAL_vl3_load4" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -757,7 +757,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs7", "dself4", "INTERNAL_vl3_dself4" ]
+        "nodes" : [ "bbs7", "dself4", "INTERNAL_vl3_bself4" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -778,7 +778,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl3_dself4", "bself4", "INTERNAL_vl3_self4" ]
+        "nodes" : [ "INTERNAL_vl3_bself4", "bself4", "INTERNAL_vl3_self4" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -847,7 +847,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_dtrf25" ]
+        "nodes" : [ "bbs7", "dtrf25", "INTERNAL_vl3_btrf25" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -868,7 +868,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl3_dtrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
+        "nodes" : [ "INTERNAL_vl3_btrf25", "btrf25", "INTERNAL_vl3_trf5_TWO" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -937,7 +937,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_dtrf36" ]
+        "nodes" : [ "bbs7", "dtrf36", "INTERNAL_vl3_btrf36" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -958,7 +958,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl3_dtrf36", "btrf36", "trf6" ]
+        "nodes" : [ "INTERNAL_vl3_btrf36", "btrf36", "trf6" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -1069,7 +1069,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_dtrf37" ]
+        "nodes" : [ "bbs7", "dtrf37", "INTERNAL_vl3_btrf37" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1090,7 +1090,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl3_dtrf37", "btrf37", "trf7" ]
+        "nodes" : [ "INTERNAL_vl3_btrf37", "btrf37", "trf7" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -1201,7 +1201,7 @@
           "xSpan" : 160.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_dtrf38" ]
+        "nodes" : [ "bbs7", "dtrf38", "INTERNAL_vl3_btrf38" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1222,7 +1222,7 @@
           "xSpan" : 160.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl3_dtrf38", "btrf38", "trf8" ]
+        "nodes" : [ "INTERNAL_vl3_btrf38", "btrf38", "trf8" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -1333,7 +1333,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs7", "dself5", "INTERNAL_vl3_dself5" ]
+        "nodes" : [ "bbs7", "dself5", "INTERNAL_vl3_bself5" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1354,7 +1354,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl3_dself5", "bself5", "INTERNAL_vl3_self5" ]
+        "nodes" : [ "INTERNAL_vl3_bself5", "bself5", "INTERNAL_vl3_self5" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1423,7 +1423,7 @@
           "xSpan" : 80.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs8", "dself6", "INTERNAL_vl3_dself6" ]
+        "nodes" : [ "bbs8", "dself6", "INTERNAL_vl3_bself6" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -1444,7 +1444,7 @@
           "xSpan" : 80.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl3_dself6", "bself6", "INTERNAL_vl3_self6" ]
+        "nodes" : [ "INTERNAL_vl3_bself6", "bself6", "INTERNAL_vl3_self6" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -1520,6 +1520,54 @@
   }, {
     "node1" : "bbs8",
     "node2" : "dself6"
+  }, {
+    "node1" : "dload4",
+    "node2" : "INTERNAL_vl3_bload4"
+  }, {
+    "node1" : "INTERNAL_vl3_bload4",
+    "node2" : "bload4"
+  }, {
+    "node1" : "dself4",
+    "node2" : "INTERNAL_vl3_bself4"
+  }, {
+    "node1" : "INTERNAL_vl3_bself4",
+    "node2" : "bself4"
+  }, {
+    "node1" : "dtrf25",
+    "node2" : "INTERNAL_vl3_btrf25"
+  }, {
+    "node1" : "INTERNAL_vl3_btrf25",
+    "node2" : "btrf25"
+  }, {
+    "node1" : "dtrf36",
+    "node2" : "INTERNAL_vl3_btrf36"
+  }, {
+    "node1" : "INTERNAL_vl3_btrf36",
+    "node2" : "btrf36"
+  }, {
+    "node1" : "dtrf37",
+    "node2" : "INTERNAL_vl3_btrf37"
+  }, {
+    "node1" : "INTERNAL_vl3_btrf37",
+    "node2" : "btrf37"
+  }, {
+    "node1" : "dtrf38",
+    "node2" : "INTERNAL_vl3_btrf38"
+  }, {
+    "node1" : "INTERNAL_vl3_btrf38",
+    "node2" : "btrf38"
+  }, {
+    "node1" : "dself5",
+    "node2" : "INTERNAL_vl3_bself5"
+  }, {
+    "node1" : "INTERNAL_vl3_bself5",
+    "node2" : "bself5"
+  }, {
+    "node1" : "dself6",
+    "node2" : "INTERNAL_vl3_bself6"
+  }, {
+    "node1" : "INTERNAL_vl3_bself6",
+    "node2" : "bself6"
   }, {
     "node1" : "bload4",
     "node2" : "INTERNAL_vl3_load4"
@@ -1550,54 +1598,6 @@
   }, {
     "node1" : "INTERNAL_vl3_self6",
     "node2" : "self6"
-  }, {
-    "node1" : "bload4",
-    "node2" : "INTERNAL_vl3_dload4"
-  }, {
-    "node1" : "dload4",
-    "node2" : "INTERNAL_vl3_dload4"
-  }, {
-    "node1" : "bself4",
-    "node2" : "INTERNAL_vl3_dself4"
-  }, {
-    "node1" : "dself4",
-    "node2" : "INTERNAL_vl3_dself4"
-  }, {
-    "node1" : "btrf25",
-    "node2" : "INTERNAL_vl3_dtrf25"
-  }, {
-    "node1" : "dtrf25",
-    "node2" : "INTERNAL_vl3_dtrf25"
-  }, {
-    "node1" : "btrf36",
-    "node2" : "INTERNAL_vl3_dtrf36"
-  }, {
-    "node1" : "dtrf36",
-    "node2" : "INTERNAL_vl3_dtrf36"
-  }, {
-    "node1" : "btrf37",
-    "node2" : "INTERNAL_vl3_dtrf37"
-  }, {
-    "node1" : "dtrf37",
-    "node2" : "INTERNAL_vl3_dtrf37"
-  }, {
-    "node1" : "btrf38",
-    "node2" : "INTERNAL_vl3_dtrf38"
-  }, {
-    "node1" : "dtrf38",
-    "node2" : "INTERNAL_vl3_dtrf38"
-  }, {
-    "node1" : "bself5",
-    "node2" : "INTERNAL_vl3_dself5"
-  }, {
-    "node1" : "dself5",
-    "node2" : "INTERNAL_vl3_dself5"
-  }, {
-    "node1" : "bself6",
-    "node2" : "INTERNAL_vl3_dself6"
-  }, {
-    "node1" : "dself6",
-    "node2" : "INTERNAL_vl3_dself6"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase12GraphWithNodesInfosNominalVoltage.svg b/single-line-diagram-core/src/test/resources/TestCase12GraphWithNodesInfosNominalVoltage.svg
index f6d1dec83..d569fe1b1 100644
--- a/single-line-diagram-core/src/test/resources/TestCase12GraphWithNodesInfosNominalVoltage.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase12GraphWithNodesInfosNominalVoltage.svg
@@ -115,20 +115,20 @@
             bbs4
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -147,20 +147,20 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -179,7 +179,7 @@
             
         
         
-            
+            
                 
             
             
@@ -191,11 +191,11 @@
                 
                 load1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -223,7 +223,7 @@
             
         
         
-            
+            
                 
             
             
@@ -234,11 +234,11 @@
                 
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -266,7 +266,7 @@
             
         
         
-            
+            
                 
             
             
@@ -277,11 +277,11 @@
                 
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -309,7 +309,7 @@
             
         
         
-            
+            
                 
             
             
@@ -318,11 +318,11 @@
             
                 trf61
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -368,7 +368,7 @@
             
         
         
-            
+            
                 
             
             
@@ -380,11 +380,11 @@
                 
                 load2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -412,7 +412,7 @@
             
         
         
-            
+            
                 
             
             
@@ -423,11 +423,11 @@
                 
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -455,7 +455,7 @@
             
         
         
-            
+            
                 
             
             
@@ -464,11 +464,11 @@
             
                 trf81
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -514,7 +514,7 @@
             
         
         
-            
+            
                 
             
             
@@ -526,11 +526,11 @@
                 
                 gen1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -558,7 +558,7 @@
             
         
         
-            
+            
                 
             
             
@@ -569,11 +569,11 @@
                 
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -601,7 +601,7 @@
             
         
         
-            
+            
                 
             
             
@@ -610,11 +610,11 @@
             
                 trf71
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -660,7 +660,7 @@
             
         
         
-            
+            
                 
             
             
@@ -672,11 +672,11 @@
                 
                 gen2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -704,7 +704,7 @@
             
         
         
-            
+            
                 
             
             
@@ -715,11 +715,11 @@
                 
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase12GraphWithNodesInfosTopological.svg b/single-line-diagram-core/src/test/resources/TestCase12GraphWithNodesInfosTopological.svg
index caa3e284b..aa422f13b 100644
--- a/single-line-diagram-core/src/test/resources/TestCase12GraphWithNodesInfosTopological.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase12GraphWithNodesInfosTopological.svg
@@ -179,20 +179,20 @@
             bbs4
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -211,20 +211,20 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 
             
-            
-                
+            
+                
             
-            
-                
+            
+                
             
             
                 
@@ -243,7 +243,7 @@
             
         
         
-            
+            
                 
             
             
@@ -255,11 +255,11 @@
                 
                 load1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -287,7 +287,7 @@
             
         
         
-            
+            
                 
             
             
@@ -298,11 +298,11 @@
                 
                 trf1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -330,7 +330,7 @@
             
         
         
-            
+            
                 
             
             
@@ -341,11 +341,11 @@
                 
                 trf5
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -373,7 +373,7 @@
             
         
         
-            
+            
                 
             
             
@@ -382,11 +382,11 @@
             
                 trf61
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -432,7 +432,7 @@
             
         
         
-            
+            
                 
             
             
@@ -444,11 +444,11 @@
                 
                 load2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -476,7 +476,7 @@
             
         
         
-            
+            
                 
             
             
@@ -487,11 +487,11 @@
                 
                 trf2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -519,7 +519,7 @@
             
         
         
-            
+            
                 
             
             
@@ -528,11 +528,11 @@
             
                 trf81
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -578,7 +578,7 @@
             
         
         
-            
+            
                 
             
             
@@ -590,11 +590,11 @@
                 
                 gen1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -622,7 +622,7 @@
             
         
         
-            
+            
                 
             
             
@@ -633,11 +633,11 @@
                 
                 trf3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -665,7 +665,7 @@
             
         
         
-            
+            
                 
             
             
@@ -674,11 +674,11 @@
             
                 trf71
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -724,7 +724,7 @@
             
         
         
-            
+            
                 
             
             
@@ -736,11 +736,11 @@
                 
                 gen2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -768,7 +768,7 @@
             
         
         
-            
+            
                 
             
             
@@ -779,11 +779,11 @@
                 
                 trf4
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase14UpToNFeederInfos.svg b/single-line-diagram-core/src/test/resources/TestCase14UpToNFeederInfos.svg
index 276b0ebf2..bffaa9f34 100644
--- a/single-line-diagram-core/src/test/resources/TestCase14UpToNFeederInfos.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase14UpToNFeederInfos.svg
@@ -74,7 +74,7 @@
             bbs
         
         
-            
+            
                 
             
             
@@ -86,11 +86,11 @@
                 
                 l
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestCase1BusBreaker.json b/single-line-diagram-core/src/test/resources/TestCase1BusBreaker.json
index 8c4a0b193..03c52447c 100644
--- a/single-line-diagram-core/src/test/resources/TestCase1BusBreaker.json
+++ b/single-line-diagram-core/src/test/resources/TestCase1BusBreaker.json
@@ -32,7 +32,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_l_1",
+    "id" : "INTERNAL_vl_l",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 125.0,
@@ -40,7 +40,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_l_2",
+    "id" : "INTERNAL_vl_l",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 125.0,
@@ -259,7 +259,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "b1", "BUSCO_l", "INTERNAL_vl_l_1" ]
+        "nodes" : [ "b1", "BUSCO_l", "INTERNAL_vl_l" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -280,7 +280,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_l_1", "INTERNAL_vl_l_2" ]
+        "nodes" : [ "INTERNAL_vl_l", "INTERNAL_vl_l" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -301,40 +301,40 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "INTERNAL_vl_l_2", "l" ]
+        "nodes" : [ "INTERNAL_vl_l", "l" ]
       } ]
     }
   } ],
   "edges" : [ {
     "node1" : "b1",
     "node2" : "BUSCO_l"
-  }, {
-    "node1" : "BUSCO_l",
-    "node2" : "INTERNAL_vl_l_1"
-  }, {
-    "node1" : "INTERNAL_vl_l_1",
-    "node2" : "INTERNAL_vl_l_2"
-  }, {
-    "node1" : "INTERNAL_vl_l_2",
-    "node2" : "l"
   }, {
     "node1" : "b1",
     "node2" : "BUSCO_sw"
+  }, {
+    "node1" : "b2",
+    "node2" : "BUSCO_sw"
+  }, {
+    "node1" : "BUSCO_l",
+    "node2" : "INTERNAL_vl_l"
   }, {
     "node1" : "BUSCO_sw",
     "node2" : "INTERNAL_vl_sw"
   }, {
     "node1" : "INTERNAL_vl_sw",
     "node2" : "sw"
-  }, {
-    "node1" : "b2",
-    "node2" : "BUSCO_sw"
   }, {
     "node1" : "BUSCO_sw",
     "node2" : "INTERNAL_vl_sw"
   }, {
     "node1" : "INTERNAL_vl_sw",
     "node2" : "sw"
+  }, {
+    "node1" : "INTERNAL_vl_l",
+    "node2" : "INTERNAL_vl_l"
+  }, {
+    "node1" : "INTERNAL_vl_l",
+    "node2" : "l"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase1inverted.json b/single-line-diagram-core/src/test/resources/TestCase1inverted.json
index 9973637a3..9997e0bfa 100644
--- a/single-line-diagram-core/src/test/resources/TestCase1inverted.json
+++ b/single-line-diagram-core/src/test/resources/TestCase1inverted.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -123,7 +123,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "d", "INTERNAL_vl_d" ]
+        "nodes" : [ "bbs", "d", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -144,7 +144,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_d", "b", "INTERNAL_vl_l" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_l" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -172,18 +172,18 @@
   "edges" : [ {
     "node1" : "bbs",
     "node2" : "d"
+  }, {
+    "node1" : "d",
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "b",
     "node2" : "INTERNAL_vl_l"
   }, {
     "node1" : "INTERNAL_vl_l",
     "node2" : "l"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d"
-  }, {
-    "node1" : "d",
-    "node2" : "INTERNAL_vl_d"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase3Coupling.json b/single-line-diagram-core/src/test/resources/TestCase3Coupling.json
index 5b579cfc6..1dd8aff71 100644
--- a/single-line-diagram-core/src/test/resources/TestCase3Coupling.json
+++ b/single-line-diagram-core/src/test/resources/TestCase3Coupling.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d1",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 75.0,
@@ -16,7 +16,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d2",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -138,7 +138,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "d2", "INTERNAL_vl_d2" ]
+        "nodes" : [ "bbs2", "d2", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -159,7 +159,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_d2", "b", "INTERNAL_vl_d1" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_b" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -180,7 +180,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_d1" ]
+        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_b" ]
       } ]
     }
   } ],
@@ -190,18 +190,18 @@
   }, {
     "node1" : "d2",
     "node2" : "bbs2"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d1"
   }, {
     "node1" : "d1",
-    "node2" : "INTERNAL_vl_d1"
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d2"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "d2",
-    "node2" : "INTERNAL_vl_d2"
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase3Coupling3Bars.json b/single-line-diagram-core/src/test/resources/TestCase3Coupling3Bars.json
index 615e76a19..3efbbe34c 100644
--- a/single-line-diagram-core/src/test/resources/TestCase3Coupling3Bars.json
+++ b/single-line-diagram-core/src/test/resources/TestCase3Coupling3Bars.json
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d1",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 75.0,
@@ -232,7 +232,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_2", "b", "INTERNAL_vl_d1" ]
+        "nodes" : [ "INTERNAL_vl_2", "b", "INTERNAL_vl_b" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -253,7 +253,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_d1" ]
+        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_b" ]
       } ]
     }
   } ],
@@ -275,12 +275,12 @@
   }, {
     "node1" : "d3",
     "node2" : "bbs3"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d1"
   }, {
     "node1" : "d1",
-    "node2" : "INTERNAL_vl_d1"
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase3Coupling3Bars2Sections.json b/single-line-diagram-core/src/test/resources/TestCase3Coupling3Bars2Sections.json
index 0d31bbd14..6e0689f40 100644
--- a/single-line-diagram-core/src/test/resources/TestCase3Coupling3Bars2Sections.json
+++ b/single-line-diagram-core/src/test/resources/TestCase3Coupling3Bars2Sections.json
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d1",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -232,7 +232,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_d1", "b", "INTERNAL_vl_2" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -253,7 +253,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_d1" ]
+        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_b" ]
       } ]
     }
   } ],
@@ -275,12 +275,12 @@
   }, {
     "node1" : "d3",
     "node2" : "bbs3"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d1"
   }, {
     "node1" : "d1",
-    "node2" : "INTERNAL_vl_d1"
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase3TripleCoupling.json b/single-line-diagram-core/src/test/resources/TestCase3TripleCoupling.json
index 04f2024cf..904153bcf 100644
--- a/single-line-diagram-core/src/test/resources/TestCase3TripleCoupling.json
+++ b/single-line-diagram-core/src/test/resources/TestCase3TripleCoupling.json
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d1",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 75.0,
@@ -25,7 +25,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d2",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -33,7 +33,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d5",
+    "id" : "INTERNAL_vl_b2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 175.0,
@@ -41,7 +41,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d6",
+    "id" : "INTERNAL_vl_b3",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 275.0,
@@ -49,7 +49,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d7",
+    "id" : "INTERNAL_vl_b3",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 225.0,
@@ -250,7 +250,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "d2", "INTERNAL_vl_d2" ]
+        "nodes" : [ "bbs2", "d2", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -271,7 +271,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_d2", "b", "INTERNAL_vl_d1" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_b" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -292,7 +292,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_d1" ]
+        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_b" ]
       } ]
     }
   }, {
@@ -401,7 +401,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_4", "b2", "INTERNAL_vl_d5" ]
+        "nodes" : [ "INTERNAL_vl_4", "b2", "INTERNAL_vl_b2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -422,7 +422,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "d5", "INTERNAL_vl_d5" ]
+        "nodes" : [ "bbs2", "d5", "INTERNAL_vl_b2" ]
       } ]
     }
   }, {
@@ -468,7 +468,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "d7", "INTERNAL_vl_d7" ]
+        "nodes" : [ "bbs2", "d7", "INTERNAL_vl_b3" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -489,7 +489,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_d7", "b3", "INTERNAL_vl_d6" ]
+        "nodes" : [ "INTERNAL_vl_b3", "b3", "INTERNAL_vl_b3" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -510,7 +510,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "d6", "INTERNAL_vl_d6" ]
+        "nodes" : [ "bbs1", "d6", "INTERNAL_vl_b3" ]
       } ]
     }
   } ],
@@ -544,36 +544,36 @@
   }, {
     "node1" : "d7",
     "node2" : "bbs2"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d1"
   }, {
     "node1" : "d1",
-    "node2" : "INTERNAL_vl_d1"
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "b3",
-    "node2" : "INTERNAL_vl_d6"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "d6",
-    "node2" : "INTERNAL_vl_d6"
+    "node2" : "INTERNAL_vl_b3"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d2"
+    "node1" : "INTERNAL_vl_b3",
+    "node2" : "b3"
   }, {
     "node1" : "d2",
-    "node2" : "INTERNAL_vl_d2"
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "b2",
-    "node2" : "INTERNAL_vl_d5"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "d5",
-    "node2" : "INTERNAL_vl_d5"
+    "node2" : "INTERNAL_vl_b2"
   }, {
-    "node1" : "b3",
-    "node2" : "INTERNAL_vl_d7"
+    "node1" : "INTERNAL_vl_b2",
+    "node2" : "b2"
   }, {
     "node1" : "d7",
-    "node2" : "INTERNAL_vl_d7"
+    "node2" : "INTERNAL_vl_b3"
+  }, {
+    "node1" : "INTERNAL_vl_b3",
+    "node2" : "b3"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase3TripleCoupling_disconnectorOpen.json b/single-line-diagram-core/src/test/resources/TestCase3TripleCoupling_disconnectorOpen.json
index a5a786bdc..3107d6323 100644
--- a/single-line-diagram-core/src/test/resources/TestCase3TripleCoupling_disconnectorOpen.json
+++ b/single-line-diagram-core/src/test/resources/TestCase3TripleCoupling_disconnectorOpen.json
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d1",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 75.0,
@@ -25,7 +25,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d2",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -33,7 +33,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d5",
+    "id" : "INTERNAL_vl_b2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 175.0,
@@ -41,7 +41,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d6",
+    "id" : "INTERNAL_vl_b3",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 275.0,
@@ -49,7 +49,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d7",
+    "id" : "INTERNAL_vl_b3",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 225.0,
@@ -250,7 +250,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "d2", "INTERNAL_vl_d2" ]
+        "nodes" : [ "bbs2", "d2", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -271,7 +271,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_d2", "b", "INTERNAL_vl_d1" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_b" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -292,7 +292,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_d1" ]
+        "nodes" : [ "bbs1", "d1", "INTERNAL_vl_b" ]
       } ]
     }
   }, {
@@ -401,7 +401,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_4", "b2", "INTERNAL_vl_d5" ]
+        "nodes" : [ "INTERNAL_vl_4", "b2", "INTERNAL_vl_b2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -422,7 +422,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "d5", "INTERNAL_vl_d5" ]
+        "nodes" : [ "bbs2", "d5", "INTERNAL_vl_b2" ]
       } ]
     }
   }, {
@@ -468,7 +468,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "d7", "INTERNAL_vl_d7" ]
+        "nodes" : [ "bbs2", "d7", "INTERNAL_vl_b3" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -489,7 +489,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_d7", "b3", "INTERNAL_vl_d6" ]
+        "nodes" : [ "INTERNAL_vl_b3", "b3", "INTERNAL_vl_b3" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -510,7 +510,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "d6", "INTERNAL_vl_d6" ]
+        "nodes" : [ "bbs1", "d6", "INTERNAL_vl_b3" ]
       } ]
     }
   } ],
@@ -544,36 +544,36 @@
   }, {
     "node1" : "d7",
     "node2" : "bbs2"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d1"
   }, {
     "node1" : "d1",
-    "node2" : "INTERNAL_vl_d1"
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "b3",
-    "node2" : "INTERNAL_vl_d6"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "d6",
-    "node2" : "INTERNAL_vl_d6"
+    "node2" : "INTERNAL_vl_b3"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d2"
+    "node1" : "INTERNAL_vl_b3",
+    "node2" : "b3"
   }, {
     "node1" : "d2",
-    "node2" : "INTERNAL_vl_d2"
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "b2",
-    "node2" : "INTERNAL_vl_d5"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "d5",
-    "node2" : "INTERNAL_vl_d5"
+    "node2" : "INTERNAL_vl_b2"
   }, {
-    "node1" : "b3",
-    "node2" : "INTERNAL_vl_d7"
+    "node1" : "INTERNAL_vl_b2",
+    "node2" : "b2"
   }, {
     "node1" : "d7",
-    "node2" : "INTERNAL_vl_d7"
+    "node2" : "INTERNAL_vl_b3"
+  }, {
+    "node1" : "INTERNAL_vl_b3",
+    "node2" : "b3"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase4NotParallelel.json b/single-line-diagram-core/src/test/resources/TestCase4NotParallelel.json
index e9549859b..567dc7851 100644
--- a/single-line-diagram-core/src/test/resources/TestCase4NotParallelel.json
+++ b/single-line-diagram-core/src/test/resources/TestCase4NotParallelel.json
@@ -8,19 +8,19 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_0",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
-    "x" : 100.0,
+    "x" : 50.0,
     "y" : 280.0,
     "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_1",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
-    "x" : 50.0,
+    "x" : 100.0,
     "y" : 280.0,
     "orientation" : "RIGHT",
     "open" : false
@@ -45,7 +45,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dc1",
+    "id" : "INTERNAL_vl_bc",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 175.0,
@@ -78,19 +78,19 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_ss1_0",
+    "id" : "INTERNAL_vl_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 100.0,
+    "x" : 50.0,
     "y" : 280.0,
     "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_ss1_1",
+    "id" : "INTERNAL_vl_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 50.0,
+    "x" : 100.0,
     "y" : 280.0,
     "orientation" : "RIGHT",
     "open" : false
@@ -342,7 +342,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.2", "BUSCO_ss1_0", "INTERNAL_vl_ss1_0" ]
+        "nodes" : [ "bbs1.2", "BUSCO_ss1", "INTERNAL_vl_ss1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -363,7 +363,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_ss1_1", "ss1", "INTERNAL_vl_ss1_0" ]
+        "nodes" : [ "INTERNAL_vl_ss1", "ss1", "INTERNAL_vl_ss1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -384,7 +384,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.1", "BUSCO_ss1_1", "INTERNAL_vl_ss1_1" ]
+        "nodes" : [ "bbs1.1", "BUSCO_ss1", "INTERNAL_vl_ss1" ]
       } ]
     }
   }, {
@@ -696,7 +696,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.2", "dc1", "INTERNAL_vl_dc1" ]
+        "nodes" : [ "bbs1.2", "dc1", "INTERNAL_vl_bc" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -717,7 +717,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_dc1", "bc", "INTERNAL_vl_gc" ]
+        "nodes" : [ "INTERNAL_vl_bc", "bc", "INTERNAL_vl_gc" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -775,6 +775,30 @@
   }, {
     "node1" : "dc1",
     "node2" : "bbs1.2"
+  }, {
+    "node1" : "bbs1.1",
+    "node2" : "BUSCO_ss1"
+  }, {
+    "node1" : "bbs1.2",
+    "node2" : "BUSCO_ss1"
+  }, {
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl_ss1"
+  }, {
+    "node1" : "INTERNAL_vl_ss1",
+    "node2" : "ss1"
+  }, {
+    "node1" : "dc1",
+    "node2" : "INTERNAL_vl_bc"
+  }, {
+    "node1" : "INTERNAL_vl_bc",
+    "node2" : "bc"
+  }, {
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl_ss1"
+  }, {
+    "node1" : "INTERNAL_vl_ss1",
+    "node2" : "ss1"
   }, {
     "node1" : "ba",
     "node2" : "INTERNAL_vl_la"
@@ -793,30 +817,6 @@
   }, {
     "node1" : "INTERNAL_vl_gc",
     "node2" : "gc"
-  }, {
-    "node1" : "bbs1.2",
-    "node2" : "BUSCO_ss1_0"
-  }, {
-    "node1" : "BUSCO_ss1_0",
-    "node2" : "INTERNAL_vl_ss1_0"
-  }, {
-    "node1" : "INTERNAL_vl_ss1_0",
-    "node2" : "ss1"
-  }, {
-    "node1" : "bbs1.1",
-    "node2" : "BUSCO_ss1_1"
-  }, {
-    "node1" : "BUSCO_ss1_1",
-    "node2" : "INTERNAL_vl_ss1_1"
-  }, {
-    "node1" : "INTERNAL_vl_ss1_1",
-    "node2" : "ss1"
-  }, {
-    "node1" : "bc",
-    "node2" : "INTERNAL_vl_dc1"
-  }, {
-    "node1" : "dc1",
-    "node2" : "INTERNAL_vl_dc1"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase5H.json b/single-line-diagram-core/src/test/resources/TestCase5H.json
index f6ceb5db5..74ffbb3e9 100644
--- a/single-line-diagram-core/src/test/resources/TestCase5H.json
+++ b/single-line-diagram-core/src/test/resources/TestCase5H.json
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_da",
+    "id" : "INTERNAL_vl_ba",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -34,7 +34,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_db",
+    "id" : "INTERNAL_vl_bb",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 125.0,
@@ -205,7 +205,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "da", "INTERNAL_vl_da" ]
+        "nodes" : [ "bbs", "da", "INTERNAL_vl_ba" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -226,7 +226,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_da", "ba", "INTERNAL_vl_la" ]
+        "nodes" : [ "INTERNAL_vl_ba", "ba", "INTERNAL_vl_la" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -320,7 +320,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "db", "INTERNAL_vl_db" ]
+        "nodes" : [ "bbs", "db", "INTERNAL_vl_bb" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -341,7 +341,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_db", "bb", "INTERNAL_vl_lb" ]
+        "nodes" : [ "INTERNAL_vl_bb", "bb", "INTERNAL_vl_lb" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -372,6 +372,18 @@
   }, {
     "node1" : "db",
     "node2" : "bbs"
+  }, {
+    "node1" : "da",
+    "node2" : "INTERNAL_vl_ba"
+  }, {
+    "node1" : "INTERNAL_vl_ba",
+    "node2" : "ba"
+  }, {
+    "node1" : "db",
+    "node2" : "INTERNAL_vl_bb"
+  }, {
+    "node1" : "INTERNAL_vl_bb",
+    "node2" : "bb"
   }, {
     "node1" : "ba",
     "node2" : "INTERNAL_vl_la"
@@ -384,18 +396,6 @@
   }, {
     "node1" : "INTERNAL_vl_lb",
     "node2" : "lb"
-  }, {
-    "node1" : "ba",
-    "node2" : "INTERNAL_vl_da"
-  }, {
-    "node1" : "da",
-    "node2" : "INTERNAL_vl_da"
-  }, {
-    "node1" : "bb",
-    "node2" : "INTERNAL_vl_db"
-  }, {
-    "node1" : "db",
-    "node2" : "INTERNAL_vl_db"
   }, {
     "node1" : "INTERNAL_vl_la",
     "node2" : "INTERNAL_vl_Shunt 1.1"
diff --git a/single-line-diagram-core/src/test/resources/TestCase5V.json b/single-line-diagram-core/src/test/resources/TestCase5V.json
index 234f7939e..b83c8b366 100644
--- a/single-line-diagram-core/src/test/resources/TestCase5V.json
+++ b/single-line-diagram-core/src/test/resources/TestCase5V.json
@@ -35,7 +35,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_da",
+    "id" : "INTERNAL_vl_ba",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 125.0,
@@ -206,7 +206,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "da", "INTERNAL_vl_da" ]
+        "nodes" : [ "bbs", "da", "INTERNAL_vl_ba" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -227,7 +227,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_da", "ba", "INTERNAL_vl_la" ]
+        "nodes" : [ "INTERNAL_vl_ba", "ba", "INTERNAL_vl_la" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -379,6 +379,12 @@
   }, {
     "node1" : "db",
     "node2" : "bbs"
+  }, {
+    "node1" : "da",
+    "node2" : "INTERNAL_vl_ba"
+  }, {
+    "node1" : "INTERNAL_vl_ba",
+    "node2" : "ba"
   }, {
     "node1" : "ba",
     "node2" : "INTERNAL_vl_la"
@@ -391,12 +397,6 @@
   }, {
     "node1" : "INTERNAL_vl_lb",
     "node2" : "lb"
-  }, {
-    "node1" : "ba",
-    "node2" : "INTERNAL_vl_da"
-  }, {
-    "node1" : "da",
-    "node2" : "INTERNAL_vl_da"
   }, {
     "node1" : "INTERNAL_vl_la",
     "node2" : "INTERNAL_vl_Shunt 1.1"
diff --git a/single-line-diagram-core/src/test/resources/TestCase6CouplingNonFlatHorizontal.json b/single-line-diagram-core/src/test/resources/TestCase6CouplingNonFlatHorizontal.json
index 00cff0c31..8a59d6e96 100644
--- a/single-line-diagram-core/src/test/resources/TestCase6CouplingNonFlatHorizontal.json
+++ b/single-line-diagram-core/src/test/resources/TestCase6CouplingNonFlatHorizontal.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ds1_0",
+    "id" : "BUSCO_ds1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 50.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ds1_1",
+    "id" : "BUSCO_ds1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 100.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ds2_0",
+    "id" : "BUSCO_ds2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 50.0,
@@ -35,7 +35,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ds2_1",
+    "id" : "BUSCO_ds2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 100.0,
@@ -44,7 +44,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d1",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -52,7 +52,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d2",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 125.0,
@@ -60,7 +60,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_ds1_0",
+    "id" : "INTERNAL_vl_ds1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -69,7 +69,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_ds1_1",
+    "id" : "INTERNAL_vl_ds1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 100.0,
@@ -78,7 +78,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_ds2_0",
+    "id" : "INTERNAL_vl_ds2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -87,7 +87,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_ds2_1",
+    "id" : "INTERNAL_vl_ds2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 100.0,
@@ -272,7 +272,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2.2", "d2", "INTERNAL_vl_d2" ]
+        "nodes" : [ "bbs2.2", "d2", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -293,7 +293,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_d1", "b", "INTERNAL_vl_d2" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_b" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -314,7 +314,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.1", "d1", "INTERNAL_vl_d1" ]
+        "nodes" : [ "bbs1.1", "d1", "INTERNAL_vl_b" ]
       } ]
     }
   }, {
@@ -361,7 +361,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.2", "BUSCO_ds1_1", "INTERNAL_vl_ds1_1" ]
+        "nodes" : [ "bbs1.2", "BUSCO_ds1", "INTERNAL_vl_ds1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -382,7 +382,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_ds1_0", "ds1", "INTERNAL_vl_ds1_1" ]
+        "nodes" : [ "INTERNAL_vl_ds1", "ds1", "INTERNAL_vl_ds1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -403,7 +403,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.1", "BUSCO_ds1_0", "INTERNAL_vl_ds1_0" ]
+        "nodes" : [ "bbs1.1", "BUSCO_ds1", "INTERNAL_vl_ds1" ]
       } ]
     }
   }, {
@@ -450,7 +450,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2.2", "BUSCO_ds2_1", "INTERNAL_vl_ds2_1" ]
+        "nodes" : [ "bbs2.2", "BUSCO_ds2", "INTERNAL_vl_ds2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -471,7 +471,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_ds2_0", "ds2", "INTERNAL_vl_ds2_1" ]
+        "nodes" : [ "INTERNAL_vl_ds2", "ds2", "INTERNAL_vl_ds2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -492,7 +492,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2.1", "BUSCO_ds2_0", "INTERNAL_vl_ds2_0" ]
+        "nodes" : [ "bbs2.1", "BUSCO_ds2", "INTERNAL_vl_ds2" ]
       } ]
     }
   } ],
@@ -504,52 +504,52 @@
     "node2" : "bbs2.2"
   }, {
     "node1" : "bbs1.1",
-    "node2" : "BUSCO_ds1_0"
+    "node2" : "BUSCO_ds1"
   }, {
-    "node1" : "BUSCO_ds1_0",
-    "node2" : "INTERNAL_vl_ds1_0"
+    "node1" : "bbs1.2",
+    "node2" : "BUSCO_ds1"
   }, {
-    "node1" : "INTERNAL_vl_ds1_0",
-    "node2" : "ds1"
+    "node1" : "bbs2.1",
+    "node2" : "BUSCO_ds2"
   }, {
-    "node1" : "bbs1.2",
-    "node2" : "BUSCO_ds1_1"
+    "node1" : "bbs2.2",
+    "node2" : "BUSCO_ds2"
   }, {
-    "node1" : "BUSCO_ds1_1",
-    "node2" : "INTERNAL_vl_ds1_1"
+    "node1" : "d1",
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "INTERNAL_vl_ds1_1",
-    "node2" : "ds1"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
-    "node1" : "bbs2.1",
-    "node2" : "BUSCO_ds2_0"
+    "node1" : "BUSCO_ds1",
+    "node2" : "INTERNAL_vl_ds1"
   }, {
-    "node1" : "BUSCO_ds2_0",
-    "node2" : "INTERNAL_vl_ds2_0"
+    "node1" : "INTERNAL_vl_ds1",
+    "node2" : "ds1"
   }, {
-    "node1" : "INTERNAL_vl_ds2_0",
-    "node2" : "ds2"
+    "node1" : "BUSCO_ds1",
+    "node2" : "INTERNAL_vl_ds1"
   }, {
-    "node1" : "bbs2.2",
-    "node2" : "BUSCO_ds2_1"
+    "node1" : "INTERNAL_vl_ds1",
+    "node2" : "ds1"
   }, {
-    "node1" : "BUSCO_ds2_1",
-    "node2" : "INTERNAL_vl_ds2_1"
+    "node1" : "BUSCO_ds2",
+    "node2" : "INTERNAL_vl_ds2"
   }, {
-    "node1" : "INTERNAL_vl_ds2_1",
+    "node1" : "INTERNAL_vl_ds2",
     "node2" : "ds2"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d1"
+    "node1" : "d2",
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "d1",
-    "node2" : "INTERNAL_vl_d1"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d2"
+    "node1" : "BUSCO_ds2",
+    "node2" : "INTERNAL_vl_ds2"
   }, {
-    "node1" : "d2",
-    "node2" : "INTERNAL_vl_d2"
+    "node1" : "INTERNAL_vl_ds2",
+    "node2" : "ds2"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCase6InternalConnection.json b/single-line-diagram-core/src/test/resources/TestCase6InternalConnection.json
index ac91d2f7e..191d73a45 100644
--- a/single-line-diagram-core/src/test/resources/TestCase6InternalConnection.json
+++ b/single-line-diagram-core/src/test/resources/TestCase6InternalConnection.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_bbs1.1-bbs1.2_1",
+    "id" : "BUSCO_INTERNAL_vl_bbs1.1-bbs1.2_1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 50.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_bbs1.1-bbs1.2_2",
+    "id" : "BUSCO_INTERNAL_vl_bbs1.1-bbs1.2_2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 100.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ds2_0",
+    "id" : "BUSCO_ds2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 50.0,
@@ -35,7 +35,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ds2_1",
+    "id" : "BUSCO_ds2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 100.0,
@@ -44,41 +44,41 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_bbs1.1-bbs1.2_1",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 50.0,
-    "y" : 280.0,
-    "orientation" : "RIGHT",
+    "x" : 25.0,
+    "y" : 240.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_bbs1.1-bbs1.2_2",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 100.0,
-    "y" : 280.0,
-    "orientation" : "RIGHT",
+    "x" : 125.0,
+    "y" : 240.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d1",
+    "id" : "INTERNAL_vl_bbs1.1-bbs1.2_1",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 25.0,
-    "y" : 240.0,
+    "x" : 50.0,
+    "y" : 280.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d2",
+    "id" : "INTERNAL_vl_bbs1.1-bbs1.2_2",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 125.0,
-    "y" : 240.0,
+    "x" : 100.0,
+    "y" : 280.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_ds2_0",
+    "id" : "INTERNAL_vl_ds2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -87,7 +87,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_ds2_1",
+    "id" : "INTERNAL_vl_ds2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 100.0,
@@ -260,7 +260,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2.2", "d2", "INTERNAL_vl_d2" ]
+        "nodes" : [ "bbs2.2", "d2", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -281,7 +281,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_d1", "b", "INTERNAL_vl_d2" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_b" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -302,7 +302,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.1", "d1", "INTERNAL_vl_d1" ]
+        "nodes" : [ "bbs1.1", "d1", "INTERNAL_vl_b" ]
       } ]
     }
   }, {
@@ -349,7 +349,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.2", "BUSCO_bbs1.1-bbs1.2_2", "INTERNAL_vl_bbs1.1-bbs1.2_2" ]
+        "nodes" : [ "bbs1.2", "BUSCO_INTERNAL_vl_bbs1.1-bbs1.2_2", "INTERNAL_vl_bbs1.1-bbs1.2_2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -391,7 +391,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1.1", "BUSCO_bbs1.1-bbs1.2_1", "INTERNAL_vl_bbs1.1-bbs1.2_1" ]
+        "nodes" : [ "bbs1.1", "BUSCO_INTERNAL_vl_bbs1.1-bbs1.2_1", "INTERNAL_vl_bbs1.1-bbs1.2_1" ]
       } ]
     }
   }, {
@@ -438,7 +438,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2.2", "BUSCO_ds2_1", "INTERNAL_vl_ds2_1" ]
+        "nodes" : [ "bbs2.2", "BUSCO_ds2", "INTERNAL_vl_ds2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -459,7 +459,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_ds2_0", "ds2", "INTERNAL_vl_ds2_1" ]
+        "nodes" : [ "INTERNAL_vl_ds2", "ds2", "INTERNAL_vl_ds2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -480,7 +480,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2.1", "BUSCO_ds2_0", "INTERNAL_vl_ds2_0" ]
+        "nodes" : [ "bbs2.1", "BUSCO_ds2", "INTERNAL_vl_ds2" ]
       } ]
     }
   } ],
@@ -491,50 +491,50 @@
     "node1" : "d2",
     "node2" : "bbs2.2"
   }, {
-    "node1" : "bbs2.1",
-    "node2" : "BUSCO_ds2_0"
+    "node1" : "INTERNAL_vl_bbs1.1-bbs1.2_1",
+    "node2" : "INTERNAL_vl_bbs1.1-bbs1.2_2"
   }, {
-    "node1" : "BUSCO_ds2_0",
-    "node2" : "INTERNAL_vl_ds2_0"
+    "node1" : "bbs1.1",
+    "node2" : "BUSCO_INTERNAL_vl_bbs1.1-bbs1.2_1"
   }, {
-    "node1" : "INTERNAL_vl_ds2_0",
-    "node2" : "ds2"
+    "node1" : "BUSCO_INTERNAL_vl_bbs1.1-bbs1.2_1",
+    "node2" : "INTERNAL_vl_bbs1.1-bbs1.2_1"
   }, {
-    "node1" : "bbs2.2",
-    "node2" : "BUSCO_ds2_1"
+    "node1" : "bbs1.2",
+    "node2" : "BUSCO_INTERNAL_vl_bbs1.1-bbs1.2_2"
   }, {
-    "node1" : "BUSCO_ds2_1",
-    "node2" : "INTERNAL_vl_ds2_1"
+    "node1" : "BUSCO_INTERNAL_vl_bbs1.1-bbs1.2_2",
+    "node2" : "INTERNAL_vl_bbs1.1-bbs1.2_2"
   }, {
-    "node1" : "INTERNAL_vl_ds2_1",
-    "node2" : "ds2"
+    "node1" : "bbs2.1",
+    "node2" : "BUSCO_ds2"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d1"
+    "node1" : "bbs2.2",
+    "node2" : "BUSCO_ds2"
   }, {
     "node1" : "d1",
-    "node2" : "INTERNAL_vl_d1"
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d2"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
-    "node1" : "d2",
-    "node2" : "INTERNAL_vl_d2"
+    "node1" : "BUSCO_ds2",
+    "node2" : "INTERNAL_vl_ds2"
   }, {
-    "node1" : "bbs1.1",
-    "node2" : "BUSCO_bbs1.1-bbs1.2_1"
+    "node1" : "INTERNAL_vl_ds2",
+    "node2" : "ds2"
   }, {
-    "node1" : "BUSCO_bbs1.1-bbs1.2_1",
-    "node2" : "INTERNAL_vl_bbs1.1-bbs1.2_1"
+    "node1" : "d2",
+    "node2" : "INTERNAL_vl_b"
   }, {
-    "node1" : "INTERNAL_vl_bbs1.1-bbs1.2_1",
-    "node2" : "INTERNAL_vl_bbs1.1-bbs1.2_2"
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
-    "node1" : "INTERNAL_vl_bbs1.1-bbs1.2_2",
-    "node2" : "BUSCO_bbs1.1-bbs1.2_2"
+    "node1" : "BUSCO_ds2",
+    "node2" : "INTERNAL_vl_ds2"
   }, {
-    "node1" : "bbs1.2",
-    "node2" : "BUSCO_bbs1.1-bbs1.2_2"
+    "node1" : "INTERNAL_vl_ds2",
+    "node2" : "ds2"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestCaseComplexCoupling.svg b/single-line-diagram-core/src/test/resources/TestCaseComplexCoupling.svg
index 3d25f6732..7ceed0a30 100644
--- a/single-line-diagram-core/src/test/resources/TestCaseComplexCoupling.svg
+++ b/single-line-diagram-core/src/test/resources/TestCaseComplexCoupling.svg
@@ -83,7 +83,7 @@
             
                 
             
-            
+            
                 
             
             
@@ -110,10 +110,10 @@
             
                 
             
-            
-                
+            
+                
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/TestCaseFictitiousBus.svg b/single-line-diagram-core/src/test/resources/TestCaseFictitiousBus.svg
index ac40973da..f010921cf 100644
--- a/single-line-diagram-core/src/test/resources/TestCaseFictitiousBus.svg
+++ b/single-line-diagram-core/src/test/resources/TestCaseFictitiousBus.svg
@@ -75,22 +75,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L1
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -108,22 +108,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L2
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -141,22 +141,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L3
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/TestCaseFictitiousBusTopological.svg b/single-line-diagram-core/src/test/resources/TestCaseFictitiousBusTopological.svg
index c02342081..c39176dd2 100644
--- a/single-line-diagram-core/src/test/resources/TestCaseFictitiousBusTopological.svg
+++ b/single-line-diagram-core/src/test/resources/TestCaseFictitiousBusTopological.svg
@@ -153,22 +153,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L1
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -186,22 +186,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L2
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -219,22 +219,22 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 L3
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/TestCaseShuntArrangementNo.json b/single-line-diagram-core/src/test/resources/TestCaseShuntArrangementNo.json
index 3f3f66bf9..86d124ea6 100644
--- a/single-line-diagram-core/src/test/resources/TestCaseShuntArrangementNo.json
+++ b/single-line-diagram-core/src/test/resources/TestCaseShuntArrangementNo.json
@@ -62,19 +62,19 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_commonFG",
+    "id" : "INTERNAL_vl_bA",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 450.0,
-    "y" : 174.8,
+    "x" : 25.0,
+    "y" : 250.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dA",
+    "id" : "INTERNAL_vl_commonFG",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 25.0,
-    "y" : 250.0,
+    "x" : 450.0,
+    "y" : 174.8,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
@@ -858,7 +858,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dA", "INTERNAL_vl_dA" ]
+        "nodes" : [ "bbs1", "dA", "INTERNAL_vl_bA" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -879,7 +879,7 @@
           "xSpan" : 50.0,
           "ySpan" : 125.33333333333333
         },
-        "nodes" : [ "INTERNAL_vl_dA", "bA", "INTERNAL_vl_fShuntA" ]
+        "nodes" : [ "INTERNAL_vl_bA", "bA", "INTERNAL_vl_fShuntA" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -2362,6 +2362,12 @@
   }, {
     "node1" : "bFeederG",
     "node2" : "INTERNAL_vl_commonFG"
+  }, {
+    "node1" : "dA",
+    "node2" : "INTERNAL_vl_bA"
+  }, {
+    "node1" : "INTERNAL_vl_bA",
+    "node2" : "bA"
   }, {
     "node1" : "INTERNAL_vl_fShuntA",
     "node2" : "INTERNAL_vl_loadA"
@@ -2422,12 +2428,6 @@
   }, {
     "node1" : "INTERNAL_vl_loadG",
     "node2" : "loadG"
-  }, {
-    "node1" : "bA",
-    "node2" : "INTERNAL_vl_dA"
-  }, {
-    "node1" : "dA",
-    "node2" : "INTERNAL_vl_dA"
   }, {
     "node1" : "INTERNAL_vl_fShuntA",
     "node2" : "INTERNAL_vl_Shunt 1.1"
diff --git a/single-line-diagram-core/src/test/resources/TestCaseShuntArrangementYes.json b/single-line-diagram-core/src/test/resources/TestCaseShuntArrangementYes.json
index 7b69a6590..b08fda753 100644
--- a/single-line-diagram-core/src/test/resources/TestCaseShuntArrangementYes.json
+++ b/single-line-diagram-core/src/test/resources/TestCaseShuntArrangementYes.json
@@ -62,19 +62,19 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_commonFG",
+    "id" : "INTERNAL_vl_bA",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 550.0,
-    "y" : 174.8,
+    "x" : 75.0,
+    "y" : 250.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dA",
+    "id" : "INTERNAL_vl_commonFG",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 75.0,
-    "y" : 250.0,
+    "x" : 550.0,
+    "y" : 174.8,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
@@ -858,7 +858,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dA", "INTERNAL_vl_dA" ]
+        "nodes" : [ "bbs1", "dA", "INTERNAL_vl_bA" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -879,7 +879,7 @@
           "xSpan" : 50.0,
           "ySpan" : 125.33333333333333
         },
-        "nodes" : [ "INTERNAL_vl_dA", "bA", "INTERNAL_vl_fShuntA" ]
+        "nodes" : [ "INTERNAL_vl_bA", "bA", "INTERNAL_vl_fShuntA" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -2362,6 +2362,12 @@
   }, {
     "node1" : "bFeederG",
     "node2" : "INTERNAL_vl_commonFG"
+  }, {
+    "node1" : "dA",
+    "node2" : "INTERNAL_vl_bA"
+  }, {
+    "node1" : "INTERNAL_vl_bA",
+    "node2" : "bA"
   }, {
     "node1" : "INTERNAL_vl_fShuntA",
     "node2" : "INTERNAL_vl_loadA"
@@ -2422,12 +2428,6 @@
   }, {
     "node1" : "INTERNAL_vl_loadG",
     "node2" : "loadG"
-  }, {
-    "node1" : "bA",
-    "node2" : "INTERNAL_vl_dA"
-  }, {
-    "node1" : "dA",
-    "node2" : "INTERNAL_vl_dA"
   }, {
     "node1" : "INTERNAL_vl_fShuntA",
     "node2" : "INTERNAL_vl_Shunt 1.1"
diff --git a/single-line-diagram-core/src/test/resources/TestFeederOnBus.svg b/single-line-diagram-core/src/test/resources/TestFeederOnBus.svg
index 25a94d79a..022d45c36 100644
--- a/single-line-diagram-core/src/test/resources/TestFeederOnBus.svg
+++ b/single-line-diagram-core/src/test/resources/TestFeederOnBus.svg
@@ -71,22 +71,22 @@
             bbs
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 line
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/TestFeederOnBusDisconnector.svg b/single-line-diagram-core/src/test/resources/TestFeederOnBusDisconnector.svg
index 3101ee3b0..c6bc077a2 100644
--- a/single-line-diagram-core/src/test/resources/TestFeederOnBusDisconnector.svg
+++ b/single-line-diagram-core/src/test/resources/TestFeederOnBusDisconnector.svg
@@ -71,22 +71,22 @@
             bbs
         
         
-            
+            
                 
             
-            
+            
                 
             
             
                 line
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/TestIncompleteFeederIssue.json b/single-line-diagram-core/src/test/resources/TestIncompleteFeederIssue.json
index d64b1c7cc..7cc927ba2 100644
--- a/single-line-diagram-core/src/test/resources/TestIncompleteFeederIssue.json
+++ b/single-line-diagram-core/src/test/resources/TestIncompleteFeederIssue.json
@@ -16,7 +16,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d1",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -131,7 +131,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "d1", "INTERNAL_vl_d1" ]
+        "nodes" : [ "bbs", "d1", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -152,7 +152,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_d1", "b", "d2", "INTERNAL_vl_INTERNAL_vl_fict2" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "d2", "INTERNAL_vl_INTERNAL_vl_fict2" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -183,18 +183,18 @@
   }, {
     "node1" : "b",
     "node2" : "d2"
+  }, {
+    "node1" : "d1",
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "d2",
     "node2" : "INTERNAL_vl_INTERNAL_vl_fict2"
   }, {
     "node1" : "INTERNAL_vl_INTERNAL_vl_fict2",
     "node2" : "INTERNAL_vl_fict2"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d1"
-  }, {
-    "node1" : "d1",
-    "node2" : "INTERNAL_vl_d1"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestInternCellExplicitPosition.json b/single-line-diagram-core/src/test/resources/TestInternCellExplicitPosition.json
index b45d44ef1..cb9495dba 100644
--- a/single-line-diagram-core/src/test/resources/TestInternCellExplicitPosition.json
+++ b/single-line-diagram-core/src/test/resources/TestInternCellExplicitPosition.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dc11",
+    "id" : "INTERNAL_vl_bc1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 125.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dc12",
+    "id" : "INTERNAL_vl_bc1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 75.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dc21",
+    "id" : "INTERNAL_vl_bc2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 275.0,
@@ -34,7 +34,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dc22",
+    "id" : "INTERNAL_vl_bc2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 225.0,
@@ -42,7 +42,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dl1",
+    "id" : "INTERNAL_vl_bl1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 175.0,
@@ -50,7 +50,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dl2",
+    "id" : "INTERNAL_vl_bl2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -300,7 +300,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "dc12", "INTERNAL_vl_dc12" ]
+        "nodes" : [ "bbs2", "dc12", "INTERNAL_vl_bc1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -321,7 +321,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_dc12", "bc1", "INTERNAL_vl_dc11" ]
+        "nodes" : [ "INTERNAL_vl_bc1", "bc1", "INTERNAL_vl_bc1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -342,7 +342,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dc11", "INTERNAL_vl_dc11" ]
+        "nodes" : [ "bbs1", "dc11", "INTERNAL_vl_bc1" ]
       } ]
     }
   }, {
@@ -389,7 +389,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "dc22", "INTERNAL_vl_dc22" ]
+        "nodes" : [ "bbs2", "dc22", "INTERNAL_vl_bc2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -410,7 +410,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_dc22", "bc2", "INTERNAL_vl_dc21" ]
+        "nodes" : [ "INTERNAL_vl_bc2", "bc2", "INTERNAL_vl_bc2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -431,7 +431,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dc21", "INTERNAL_vl_dc21" ]
+        "nodes" : [ "bbs1", "dc21", "INTERNAL_vl_bc2" ]
       } ]
     }
   }, {
@@ -479,7 +479,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs1", "dl1", "INTERNAL_vl_dl1" ]
+        "nodes" : [ "bbs1", "dl1", "INTERNAL_vl_bl1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -500,7 +500,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_dl1", "bl1", "INTERNAL_vl_l1" ]
+        "nodes" : [ "INTERNAL_vl_bl1", "bl1", "INTERNAL_vl_l1" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -569,7 +569,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs2", "dl2", "INTERNAL_vl_dl2" ]
+        "nodes" : [ "bbs2", "dl2", "INTERNAL_vl_bl2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -590,7 +590,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_dl2", "bl2", "INTERNAL_vl_l2" ]
+        "nodes" : [ "INTERNAL_vl_bl2", "bl2", "INTERNAL_vl_l2" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -633,54 +633,54 @@
   }, {
     "node1" : "bbs2",
     "node2" : "dc22"
-  }, {
-    "node1" : "bl1",
-    "node2" : "INTERNAL_vl_l1"
-  }, {
-    "node1" : "INTERNAL_vl_l1",
-    "node2" : "l1"
-  }, {
-    "node1" : "bl2",
-    "node2" : "INTERNAL_vl_l2"
-  }, {
-    "node1" : "INTERNAL_vl_l2",
-    "node2" : "l2"
-  }, {
-    "node1" : "bl1",
-    "node2" : "INTERNAL_vl_dl1"
   }, {
     "node1" : "dl1",
-    "node2" : "INTERNAL_vl_dl1"
+    "node2" : "INTERNAL_vl_bl1"
   }, {
-    "node1" : "bc1",
-    "node2" : "INTERNAL_vl_dc11"
+    "node1" : "INTERNAL_vl_bl1",
+    "node2" : "bl1"
   }, {
     "node1" : "dc11",
-    "node2" : "INTERNAL_vl_dc11"
+    "node2" : "INTERNAL_vl_bc1"
   }, {
-    "node1" : "bc2",
-    "node2" : "INTERNAL_vl_dc21"
+    "node1" : "INTERNAL_vl_bc1",
+    "node2" : "bc1"
   }, {
     "node1" : "dc21",
-    "node2" : "INTERNAL_vl_dc21"
+    "node2" : "INTERNAL_vl_bc2"
   }, {
-    "node1" : "bl2",
-    "node2" : "INTERNAL_vl_dl2"
+    "node1" : "INTERNAL_vl_bc2",
+    "node2" : "bc2"
   }, {
     "node1" : "dl2",
-    "node2" : "INTERNAL_vl_dl2"
+    "node2" : "INTERNAL_vl_bl2"
   }, {
-    "node1" : "bc1",
-    "node2" : "INTERNAL_vl_dc12"
+    "node1" : "INTERNAL_vl_bl2",
+    "node2" : "bl2"
   }, {
     "node1" : "dc12",
-    "node2" : "INTERNAL_vl_dc12"
+    "node2" : "INTERNAL_vl_bc1"
   }, {
-    "node1" : "bc2",
-    "node2" : "INTERNAL_vl_dc22"
+    "node1" : "INTERNAL_vl_bc1",
+    "node2" : "bc1"
   }, {
     "node1" : "dc22",
-    "node2" : "INTERNAL_vl_dc22"
+    "node2" : "INTERNAL_vl_bc2"
+  }, {
+    "node1" : "INTERNAL_vl_bc2",
+    "node2" : "bc2"
+  }, {
+    "node1" : "bl1",
+    "node2" : "INTERNAL_vl_l1"
+  }, {
+    "node1" : "INTERNAL_vl_l1",
+    "node2" : "l1"
+  }, {
+    "node1" : "bl2",
+    "node2" : "INTERNAL_vl_l2"
+  }, {
+    "node1" : "INTERNAL_vl_l2",
+    "node2" : "l2"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestInternCellShapes.json b/single-line-diagram-core/src/test/resources/TestInternCellShapes.json
index 6b56a6ea2..0e165f20d 100644
--- a/single-line-diagram-core/src/test/resources/TestInternCellShapes.json
+++ b/single-line-diagram-core/src/test/resources/TestInternCellShapes.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_flatDisconector_0",
+    "id" : "BUSCO_flatDisconector",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 150.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_flatDisconector_1",
+    "id" : "BUSCO_flatDisconector",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 200.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dCrossOverBk1",
+    "id" : "INTERNAL_vl_crossOverBreaker",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 125.0,
@@ -34,7 +34,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dCrossOverBk2",
+    "id" : "INTERNAL_vl_crossOverBreaker",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 225.0,
@@ -42,7 +42,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dF1",
+    "id" : "INTERNAL_vl_dF2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 275.0,
@@ -50,7 +50,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dFlatBk1",
+    "id" : "INTERNAL_vl_flatBreaker",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 150.0,
@@ -59,7 +59,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dFlatBk2",
+    "id" : "INTERNAL_vl_flatBreaker",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 200.0,
@@ -68,37 +68,37 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dVerticalBk1",
+    "id" : "INTERNAL_vl_flatDisconector",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 75.0,
-    "y" : 240.0,
+    "x" : 150.0,
+    "y" : 280.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dVerticalBk2",
+    "id" : "INTERNAL_vl_flatDisconector",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 25.0,
-    "y" : 240.0,
+    "x" : 200.0,
+    "y" : 280.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_flatDisconector_0",
+    "id" : "INTERNAL_vl_verticalBreaker",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 150.0,
-    "y" : 280.0,
-    "orientation" : "RIGHT",
+    "x" : 75.0,
+    "y" : 240.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_flatDisconector_1",
+    "id" : "INTERNAL_vl_verticalBreaker",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 200.0,
-    "y" : 280.0,
-    "orientation" : "RIGHT",
+    "x" : 25.0,
+    "y" : 240.0,
     "open" : false
   }, {
     "type" : "BUS",
@@ -358,7 +358,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs21", "dVerticalBk2", "INTERNAL_vl_dVerticalBk2" ]
+        "nodes" : [ "bbs21", "dVerticalBk2", "INTERNAL_vl_verticalBreaker" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -379,7 +379,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_dVerticalBk2", "verticalBreaker", "INTERNAL_vl_dVerticalBk1" ]
+        "nodes" : [ "INTERNAL_vl_verticalBreaker", "verticalBreaker", "INTERNAL_vl_verticalBreaker" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -400,7 +400,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "dVerticalBk1", "INTERNAL_vl_dVerticalBk1" ]
+        "nodes" : [ "bbs11", "dVerticalBk1", "INTERNAL_vl_verticalBreaker" ]
       } ]
     }
   }, {
@@ -446,7 +446,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "dCrossOverBk2", "INTERNAL_vl_dCrossOverBk2" ]
+        "nodes" : [ "bbs22", "dCrossOverBk2", "INTERNAL_vl_crossOverBreaker" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -467,7 +467,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_dCrossOverBk1", "crossOverBreaker", "INTERNAL_vl_dCrossOverBk2" ]
+        "nodes" : [ "INTERNAL_vl_crossOverBreaker", "crossOverBreaker", "INTERNAL_vl_crossOverBreaker" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -488,7 +488,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "dCrossOverBk1", "INTERNAL_vl_dCrossOverBk1" ]
+        "nodes" : [ "bbs11", "dCrossOverBk1", "INTERNAL_vl_crossOverBreaker" ]
       } ]
     }
   }, {
@@ -535,7 +535,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs12", "BUSCO_flatDisconector_1", "INTERNAL_vl_flatDisconector_1" ]
+        "nodes" : [ "bbs12", "BUSCO_flatDisconector", "INTERNAL_vl_flatDisconector" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -556,7 +556,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_flatDisconector_0", "flatDisconector", "INTERNAL_vl_flatDisconector_1" ]
+        "nodes" : [ "INTERNAL_vl_flatDisconector", "flatDisconector", "INTERNAL_vl_flatDisconector" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -577,7 +577,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "BUSCO_flatDisconector_0", "INTERNAL_vl_flatDisconector_0" ]
+        "nodes" : [ "bbs11", "BUSCO_flatDisconector", "INTERNAL_vl_flatDisconector" ]
       } ]
     }
   }, {
@@ -624,7 +624,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "dFlatBk2", "INTERNAL_vl_dFlatBk2" ]
+        "nodes" : [ "bbs22", "dFlatBk2", "INTERNAL_vl_flatBreaker" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -645,7 +645,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_dFlatBk1", "flatBreaker", "INTERNAL_vl_dFlatBk2" ]
+        "nodes" : [ "INTERNAL_vl_flatBreaker", "flatBreaker", "INTERNAL_vl_flatBreaker" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -666,7 +666,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs21", "dFlatBk1", "INTERNAL_vl_dFlatBk1" ]
+        "nodes" : [ "bbs21", "dFlatBk1", "INTERNAL_vl_flatBreaker" ]
       } ]
     }
   }, {
@@ -713,7 +713,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs12", "dF1", "INTERNAL_vl_dF1" ]
+        "nodes" : [ "bbs12", "dF1", "INTERNAL_vl_dF2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -734,7 +734,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "dF2", "INTERNAL_vl_dF1" ]
+        "nodes" : [ "bbs22", "dF2", "INTERNAL_vl_dF2" ]
       } ]
     }
   } ],
@@ -764,64 +764,64 @@
     "node2" : "dF2"
   }, {
     "node1" : "bbs11",
-    "node2" : "BUSCO_flatDisconector_0"
-  }, {
-    "node1" : "BUSCO_flatDisconector_0",
-    "node2" : "INTERNAL_vl_flatDisconector_0"
-  }, {
-    "node1" : "INTERNAL_vl_flatDisconector_0",
-    "node2" : "flatDisconector"
+    "node2" : "BUSCO_flatDisconector"
   }, {
     "node1" : "bbs12",
-    "node2" : "BUSCO_flatDisconector_1"
-  }, {
-    "node1" : "BUSCO_flatDisconector_1",
-    "node2" : "INTERNAL_vl_flatDisconector_1"
-  }, {
-    "node1" : "INTERNAL_vl_flatDisconector_1",
-    "node2" : "flatDisconector"
-  }, {
-    "node1" : "verticalBreaker",
-    "node2" : "INTERNAL_vl_dVerticalBk1"
+    "node2" : "BUSCO_flatDisconector"
   }, {
     "node1" : "dVerticalBk1",
-    "node2" : "INTERNAL_vl_dVerticalBk1"
+    "node2" : "INTERNAL_vl_verticalBreaker"
   }, {
-    "node1" : "crossOverBreaker",
-    "node2" : "INTERNAL_vl_dCrossOverBk1"
+    "node1" : "INTERNAL_vl_verticalBreaker",
+    "node2" : "verticalBreaker"
   }, {
     "node1" : "dCrossOverBk1",
-    "node2" : "INTERNAL_vl_dCrossOverBk1"
+    "node2" : "INTERNAL_vl_crossOverBreaker"
   }, {
-    "node1" : "flatBreaker",
-    "node2" : "INTERNAL_vl_dFlatBk1"
+    "node1" : "INTERNAL_vl_crossOverBreaker",
+    "node2" : "crossOverBreaker"
+  }, {
+    "node1" : "BUSCO_flatDisconector",
+    "node2" : "INTERNAL_vl_flatDisconector"
+  }, {
+    "node1" : "INTERNAL_vl_flatDisconector",
+    "node2" : "flatDisconector"
   }, {
     "node1" : "dFlatBk1",
-    "node2" : "INTERNAL_vl_dFlatBk1"
+    "node2" : "INTERNAL_vl_flatBreaker"
   }, {
-    "node1" : "verticalBreaker",
-    "node2" : "INTERNAL_vl_dVerticalBk2"
+    "node1" : "INTERNAL_vl_flatBreaker",
+    "node2" : "flatBreaker"
   }, {
     "node1" : "dVerticalBk2",
-    "node2" : "INTERNAL_vl_dVerticalBk2"
+    "node2" : "INTERNAL_vl_verticalBreaker"
   }, {
-    "node1" : "dF2",
-    "node2" : "INTERNAL_vl_dF1"
+    "node1" : "INTERNAL_vl_verticalBreaker",
+    "node2" : "verticalBreaker"
   }, {
     "node1" : "dF1",
-    "node2" : "INTERNAL_vl_dF1"
+    "node2" : "INTERNAL_vl_dF2"
+  }, {
+    "node1" : "INTERNAL_vl_dF2",
+    "node2" : "dF2"
+  }, {
+    "node1" : "BUSCO_flatDisconector",
+    "node2" : "INTERNAL_vl_flatDisconector"
   }, {
-    "node1" : "flatBreaker",
-    "node2" : "INTERNAL_vl_dFlatBk2"
+    "node1" : "INTERNAL_vl_flatDisconector",
+    "node2" : "flatDisconector"
   }, {
     "node1" : "dFlatBk2",
-    "node2" : "INTERNAL_vl_dFlatBk2"
+    "node2" : "INTERNAL_vl_flatBreaker"
   }, {
-    "node1" : "crossOverBreaker",
-    "node2" : "INTERNAL_vl_dCrossOverBk2"
+    "node1" : "INTERNAL_vl_flatBreaker",
+    "node2" : "flatBreaker"
   }, {
     "node1" : "dCrossOverBk2",
-    "node2" : "INTERNAL_vl_dCrossOverBk2"
+    "node2" : "INTERNAL_vl_crossOverBreaker"
+  }, {
+    "node1" : "INTERNAL_vl_crossOverBreaker",
+    "node2" : "crossOverBreaker"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestSldClassSubstation.svg b/single-line-diagram-core/src/test/resources/TestSldClassSubstation.svg
index aa988d395..cdab06079 100644
--- a/single-line-diagram-core/src/test/resources/TestSldClassSubstation.svg
+++ b/single-line-diagram-core/src/test/resources/TestSldClassSubstation.svg
@@ -145,7 +145,7 @@
             bbs1
         
         
-            
+            
                 
             
             
@@ -157,11 +157,11 @@
                 
                 l
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -189,7 +189,7 @@
             
         
         
-            
+            
                 
             
             
@@ -198,11 +198,11 @@
             
                 trf
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -237,7 +237,7 @@
             bbs2
         
         
-            
+            
                 
             
             
@@ -249,11 +249,11 @@
                 
                 g
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -281,7 +281,7 @@
             
         
         
-            
+            
                 
             
             
@@ -290,11 +290,11 @@
             
                 trf
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestSldClassSubstationMetadata.json b/single-line-diagram-core/src/test/resources/TestSldClassSubstationMetadata.json
index c20317ab9..844216d64 100644
--- a/single-line-diagram-core/src/test/resources/TestSldClassSubstationMetadata.json
+++ b/single-line-diagram-core/src/test/resources/TestSldClassSubstationMetadata.json
@@ -177,14 +177,14 @@
       "positionName" : "S_LABEL"
     } ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_d1",
+    "id" : "idINTERNAL_95_vl1_95_b1",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_d2",
+    "id" : "idINTERNAL_95_vl1_95_b2",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
@@ -341,14 +341,14 @@
       "positionName" : "N_LABEL"
     } ]
   }, {
-    "id" : "idINTERNAL_95_vl2_95_d4",
+    "id" : "idINTERNAL_95_vl2_95_b4",
     "vid" : "vl2",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl2_95_d3",
+    "id" : "idINTERNAL_95_vl2_95_b3",
     "vid" : "vl2",
     "componentType" : "NODE",
     "open" : false,
@@ -380,6 +380,12 @@
     "nodeId2" : "idd1",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_d3_95_INTERNAL_95_vl2_95_b3",
+    "nodeId1" : "idd3",
+    "nodeId2" : "idINTERNAL_95_vl2_95_b3",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_bbs2_95_d4",
     "nodeId1" : "idbbs2",
@@ -392,42 +398,18 @@
     "nodeId2" : "idd3",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl2_95_d4_95_INTERNAL_95_vl2_95_d4",
-    "nodeId1" : "idd4",
-    "nodeId2" : "idINTERNAL_95_vl2_95_d4",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_INTERNAL_95_vl2_95_g_95_g",
     "nodeId1" : "idINTERNAL_95_vl2_95_g",
     "nodeId2" : "idg",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_d1_95_INTERNAL_95_vl1_95_d1",
-    "nodeId1" : "idd1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_d1",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl2_95_b4_95_INTERNAL_95_vl2_95_d4",
-    "nodeId1" : "idb4",
-    "nodeId2" : "idINTERNAL_95_vl2_95_d4",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_INTERNAL_95_vl2_95_trf_95_TWO_95_trf_95_TWO",
     "nodeId1" : "idINTERNAL_95_vl2_95_trf_95_TWO",
     "nodeId2" : "idtrf_95_TWO",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_b1_95_INTERNAL_95_vl1_95_d1",
-    "nodeId1" : "idb1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_d1",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "idEDGE_95_trf_95_ONE",
     "nodeId1" : "idtrf_95_ONE",
@@ -440,18 +422,6 @@
     "nodeId2" : "idtrf_95_ONE",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_d2_95_INTERNAL_95_vl1_95_d2",
-    "nodeId1" : "idd2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_d2",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_b2_95_INTERNAL_95_vl1_95_d2",
-    "nodeId1" : "idb2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_d2",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_INTERNAL_95_vl1_95_l_95_l",
     "nodeId1" : "idINTERNAL_95_vl1_95_l",
@@ -464,12 +434,24 @@
     "nodeId2" : "idINTERNAL_95_vl2_95_g",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_d2_95_INTERNAL_95_vl1_95_b2",
+    "nodeId1" : "idd2",
+    "nodeId2" : "idINTERNAL_95_vl1_95_b2",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_b2_95_INTERNAL_95_vl1_95_trf_95_ONE",
     "nodeId1" : "idb2",
     "nodeId2" : "idINTERNAL_95_vl1_95_trf_95_ONE",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_b4_95_b4",
+    "nodeId1" : "idINTERNAL_95_vl2_95_b4",
+    "nodeId2" : "idb4",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_b1_95_INTERNAL_95_vl1_95_l",
     "nodeId1" : "idb1",
@@ -483,15 +465,33 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_d3_95_INTERNAL_95_vl2_95_d3",
-    "nodeId1" : "idd3",
-    "nodeId2" : "idINTERNAL_95_vl2_95_d3",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_b2_95_b2",
+    "nodeId1" : "idINTERNAL_95_vl1_95_b2",
+    "nodeId2" : "idb2",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_b3_95_INTERNAL_95_vl2_95_d3",
-    "nodeId1" : "idb3",
-    "nodeId2" : "idINTERNAL_95_vl2_95_d3",
+    "id" : "_95_vl1_95_d1_95_INTERNAL_95_vl1_95_b1",
+    "nodeId1" : "idd1",
+    "nodeId2" : "idINTERNAL_95_vl1_95_b1",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_b1_95_b1",
+    "nodeId1" : "idINTERNAL_95_vl1_95_b1",
+    "nodeId2" : "idb1",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_d4_95_INTERNAL_95_vl2_95_b4",
+    "nodeId1" : "idd4",
+    "nodeId2" : "idINTERNAL_95_vl2_95_b4",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_b3_95_b3",
+    "nodeId1" : "idINTERNAL_95_vl2_95_b3",
+    "nodeId2" : "idb3",
     "straight" : false,
     "snakeLine" : false
   } ],
diff --git a/single-line-diagram-core/src/test/resources/TestSldClassVl.svg b/single-line-diagram-core/src/test/resources/TestSldClassVl.svg
index ea6d72929..b3da60342 100644
--- a/single-line-diagram-core/src/test/resources/TestSldClassVl.svg
+++ b/single-line-diagram-core/src/test/resources/TestSldClassVl.svg
@@ -142,7 +142,7 @@
             bbs1
         
         
-            
+            
                 
             
             
@@ -154,11 +154,11 @@
                 
                 l
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -186,7 +186,7 @@
             
         
         
-            
+            
                 
             
             
@@ -197,11 +197,11 @@
                 
                 trf
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/TestSldClassVlMetadata.json b/single-line-diagram-core/src/test/resources/TestSldClassVlMetadata.json
index 062cfb0e0..8669b5f84 100644
--- a/single-line-diagram-core/src/test/resources/TestSldClassVlMetadata.json
+++ b/single-line-diagram-core/src/test/resources/TestSldClassVlMetadata.json
@@ -115,13 +115,6 @@
     "styleClass" : "sld-breaker"
   } ],
   "nodes" : [ {
-    "id" : "idINTERNAL_95_vl1_95_d1",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
     "id" : "idl",
     "vid" : "vl1",
     "componentType" : "LOAD",
@@ -134,7 +127,7 @@
       "positionName" : "N_LABEL"
     } ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_d2",
+    "id" : "idINTERNAL_95_vl1_95_b1",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
@@ -147,6 +140,13 @@
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_b2",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idINTERNAL_95_vl1_95_trf_95_ONE",
     "vid" : "vl1",
@@ -224,9 +224,9 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_d1_95_INTERNAL_95_vl1_95_d1",
-    "nodeId1" : "idd1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_d1",
+    "id" : "_95_vl1_95_d2_95_INTERNAL_95_vl1_95_b2",
+    "nodeId1" : "idd2",
+    "nodeId2" : "idINTERNAL_95_vl1_95_b2",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -242,27 +242,27 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_b1_95_INTERNAL_95_vl1_95_d1",
-    "nodeId1" : "idb1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_d1",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_b2_95_b2",
+    "nodeId1" : "idINTERNAL_95_vl1_95_b2",
+    "nodeId2" : "idb2",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf_95_ONE_95_trf_95_ONE",
-    "nodeId1" : "idINTERNAL_95_vl1_95_trf_95_ONE",
-    "nodeId2" : "idtrf_95_ONE",
+    "id" : "_95_vl1_95_d1_95_INTERNAL_95_vl1_95_b1",
+    "nodeId1" : "idd1",
+    "nodeId2" : "idINTERNAL_95_vl1_95_b1",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_d2_95_INTERNAL_95_vl1_95_d2",
-    "nodeId1" : "idd2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_d2",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf_95_ONE_95_trf_95_ONE",
+    "nodeId1" : "idINTERNAL_95_vl1_95_trf_95_ONE",
+    "nodeId2" : "idtrf_95_ONE",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_b2_95_INTERNAL_95_vl1_95_d2",
-    "nodeId1" : "idb2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_d2",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_b1_95_b1",
+    "nodeId1" : "idINTERNAL_95_vl1_95_b1",
+    "nodeId2" : "idb1",
     "straight" : false,
     "snakeLine" : false
   }, {
diff --git a/single-line-diagram-core/src/test/resources/TestUnicityNodeIdNetWork1.json b/single-line-diagram-core/src/test/resources/TestUnicityNodeIdNetWork1.json
index 9973637a3..9997e0bfa 100644
--- a/single-line-diagram-core/src/test/resources/TestUnicityNodeIdNetWork1.json
+++ b/single-line-diagram-core/src/test/resources/TestUnicityNodeIdNetWork1.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -123,7 +123,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "d", "INTERNAL_vl_d" ]
+        "nodes" : [ "bbs", "d", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -144,7 +144,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_d", "b", "INTERNAL_vl_l" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_l" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -172,18 +172,18 @@
   "edges" : [ {
     "node1" : "bbs",
     "node2" : "d"
+  }, {
+    "node1" : "d",
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "b",
     "node2" : "INTERNAL_vl_l"
   }, {
     "node1" : "INTERNAL_vl_l",
     "node2" : "l"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d"
-  }, {
-    "node1" : "d",
-    "node2" : "INTERNAL_vl_d"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/TestUnicityNodeIdNetWork2.json b/single-line-diagram-core/src/test/resources/TestUnicityNodeIdNetWork2.json
index 9973637a3..9997e0bfa 100644
--- a/single-line-diagram-core/src/test/resources/TestUnicityNodeIdNetWork2.json
+++ b/single-line-diagram-core/src/test/resources/TestUnicityNodeIdNetWork2.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 25.0,
@@ -123,7 +123,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "d", "INTERNAL_vl_d" ]
+        "nodes" : [ "bbs", "d", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -144,7 +144,7 @@
           "xSpan" : 50.0,
           "ySpan" : 188.0
         },
-        "nodes" : [ "INTERNAL_vl_d", "b", "INTERNAL_vl_l" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_l" ]
       }, {
         "type" : "FEEDERPRIMARY",
         "cardinalities" : [ {
@@ -172,18 +172,18 @@
   "edges" : [ {
     "node1" : "bbs",
     "node2" : "d"
+  }, {
+    "node1" : "d",
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "b",
     "node2" : "INTERNAL_vl_l"
   }, {
     "node1" : "INTERNAL_vl_l",
     "node2" : "l"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d"
-  }, {
-    "node1" : "d",
-    "node2" : "INTERNAL_vl_d"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/consecutive_shunts.svg b/single-line-diagram-core/src/test/resources/consecutive_shunts.svg
index a673a699e..4a0593031 100644
--- a/single-line-diagram-core/src/test/resources/consecutive_shunts.svg
+++ b/single-line-diagram-core/src/test/resources/consecutive_shunts.svg
@@ -1108,10 +1108,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -1119,13 +1119,13 @@
                 
                 FY
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -1226,10 +1226,10 @@
             
         
         
-            
+            
                 
             
-            
+            
                 
             
             
@@ -1237,13 +1237,13 @@
                 
                 FS
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/feederInfoTest.svg b/single-line-diagram-core/src/test/resources/feederInfoTest.svg
index 30a6fcb4b..b15af3be3 100644
--- a/single-line-diagram-core/src/test/resources/feederInfoTest.svg
+++ b/single-line-diagram-core/src/test/resources/feederInfoTest.svg
@@ -81,7 +81,7 @@
             bbs2
         
         
-            
+            
                 
             
             
@@ -92,20 +92,20 @@
                 
                 svc
             
-            
+            
                 
             
             
                 AC / DC
                 Converter1
             
-            
+            
                 
             
-            
+            
                 
             
-            
+            
                 
             
             
@@ -124,7 +124,7 @@
                 
                 50
             
-            
+            
                 
             
             
diff --git a/single-line-diagram-core/src/test/resources/nominal_voltage_style_substation.svg b/single-line-diagram-core/src/test/resources/nominal_voltage_style_substation.svg
index 40c6eafa2..f114ec840 100644
--- a/single-line-diagram-core/src/test/resources/nominal_voltage_style_substation.svg
+++ b/single-line-diagram-core/src/test/resources/nominal_voltage_style_substation.svg
@@ -114,7 +114,7 @@
             bbs1
         
         
-            
+            
                 
             
             
@@ -126,11 +126,11 @@
                 
                 l
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -148,7 +148,7 @@
             
         
         
-            
+            
                 
             
             
@@ -157,11 +157,11 @@
             
                 2WT_1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -179,7 +179,7 @@
             
         
         
-            
+            
                 
             
             
@@ -188,11 +188,11 @@
             
                 3WT_1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -217,7 +217,7 @@
             bbs2
         
         
-            
+            
                 
             
             
@@ -226,11 +226,11 @@
             
                 2WT_2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -248,7 +248,7 @@
             
         
         
-            
+            
                 
             
             
@@ -257,11 +257,11 @@
             
                 3WT_2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -286,7 +286,7 @@
             bbs3
         
         
-            
+            
                 
             
             
@@ -295,11 +295,11 @@
             
                 3WT_3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/nominal_voltage_style_vl2.svg b/single-line-diagram-core/src/test/resources/nominal_voltage_style_vl2.svg
index 4ebd5cc64..73e43ad52 100644
--- a/single-line-diagram-core/src/test/resources/nominal_voltage_style_vl2.svg
+++ b/single-line-diagram-core/src/test/resources/nominal_voltage_style_vl2.svg
@@ -90,7 +90,7 @@
             bbs2
         
         
-            
+            
                 
             
             
@@ -101,11 +101,11 @@
                 
                 2WT_2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -123,7 +123,7 @@
             
         
         
-            
+            
                 
             
             
@@ -132,11 +132,11 @@
             
                 3WT_2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/nominal_voltage_style_vl3.svg b/single-line-diagram-core/src/test/resources/nominal_voltage_style_vl3.svg
index d27fb4bfa..697b57d2d 100644
--- a/single-line-diagram-core/src/test/resources/nominal_voltage_style_vl3.svg
+++ b/single-line-diagram-core/src/test/resources/nominal_voltage_style_vl3.svg
@@ -89,7 +89,7 @@
             bbs3
         
         
-            
+            
                 
             
             
@@ -98,11 +98,11 @@
             
                 3WT_3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/orderConsistencyClust1.json b/single-line-diagram-core/src/test/resources/orderConsistencyClust1.json
index 178ac5d77..2f70563e2 100644
--- a/single-line-diagram-core/src/test/resources/orderConsistencyClust1.json
+++ b/single-line-diagram-core/src/test/resources/orderConsistencyClust1.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_0",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 150.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_1",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 200.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss2_0",
+    "id" : "BUSCO_ss2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 50.0,
@@ -35,7 +35,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss2_1",
+    "id" : "BUSCO_ss2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 100.0,
@@ -94,7 +94,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_ss1_0",
+    "id" : "INTERNAL_vl1_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 150.0,
@@ -103,7 +103,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_ss1_1",
+    "id" : "INTERNAL_vl1_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 200.0,
@@ -112,7 +112,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_ss2_0",
+    "id" : "INTERNAL_vl1_ss2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -121,7 +121,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_ss2_1",
+    "id" : "INTERNAL_vl1_ss2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 100.0,
@@ -417,7 +417,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs12", "BUSCO_ss1_1", "INTERNAL_vl1_ss1_1" ]
+        "nodes" : [ "bbs12", "BUSCO_ss1", "INTERNAL_vl1_ss1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -438,7 +438,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl1_ss1_0", "ss1", "INTERNAL_vl1_ss1_1" ]
+        "nodes" : [ "INTERNAL_vl1_ss1", "ss1", "INTERNAL_vl1_ss1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -459,7 +459,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "BUSCO_ss1_0", "INTERNAL_vl1_ss1_0" ]
+        "nodes" : [ "bbs11", "BUSCO_ss1", "INTERNAL_vl1_ss1" ]
       } ]
     }
   }, {
@@ -505,7 +505,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "BUSCO_ss2_1", "INTERNAL_vl1_ss2_1" ]
+        "nodes" : [ "bbs22", "BUSCO_ss2", "INTERNAL_vl1_ss2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -526,7 +526,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl1_ss2_0", "ss2", "INTERNAL_vl1_ss2_1" ]
+        "nodes" : [ "INTERNAL_vl1_ss2", "ss2", "INTERNAL_vl1_ss2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -547,7 +547,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs21", "BUSCO_ss2_0", "INTERNAL_vl1_ss2_0" ]
+        "nodes" : [ "bbs21", "BUSCO_ss2", "INTERNAL_vl1_ss2" ]
       } ]
     }
   }, {
@@ -993,59 +993,59 @@
     "node1" : "INTERNAL_vl1_f2",
     "node2" : "b2"
   }, {
-    "node1" : "b1",
-    "node2" : "INTERNAL_vl1_l1"
-  }, {
-    "node1" : "INTERNAL_vl1_l1",
-    "node2" : "l1"
+    "node1" : "bbs11",
+    "node2" : "BUSCO_ss1"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl1_l"
+    "node1" : "bbs12",
+    "node2" : "BUSCO_ss1"
   }, {
-    "node1" : "INTERNAL_vl1_l",
-    "node2" : "l"
+    "node1" : "bbs21",
+    "node2" : "BUSCO_ss2"
   }, {
-    "node1" : "b2",
-    "node2" : "INTERNAL_vl1_l2"
+    "node1" : "bbs22",
+    "node2" : "BUSCO_ss2"
   }, {
-    "node1" : "INTERNAL_vl1_l2",
-    "node2" : "l2"
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl1_ss1"
   }, {
-    "node1" : "bbs11",
-    "node2" : "BUSCO_ss1_0"
+    "node1" : "INTERNAL_vl1_ss1",
+    "node2" : "ss1"
   }, {
-    "node1" : "BUSCO_ss1_0",
-    "node2" : "INTERNAL_vl1_ss1_0"
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl1_ss1"
   }, {
-    "node1" : "INTERNAL_vl1_ss1_0",
+    "node1" : "INTERNAL_vl1_ss1",
     "node2" : "ss1"
   }, {
-    "node1" : "bbs12",
-    "node2" : "BUSCO_ss1_1"
+    "node1" : "BUSCO_ss2",
+    "node2" : "INTERNAL_vl1_ss2"
   }, {
-    "node1" : "BUSCO_ss1_1",
-    "node2" : "INTERNAL_vl1_ss1_1"
+    "node1" : "INTERNAL_vl1_ss2",
+    "node2" : "ss2"
   }, {
-    "node1" : "INTERNAL_vl1_ss1_1",
-    "node2" : "ss1"
+    "node1" : "BUSCO_ss2",
+    "node2" : "INTERNAL_vl1_ss2"
   }, {
-    "node1" : "bbs21",
-    "node2" : "BUSCO_ss2_0"
+    "node1" : "INTERNAL_vl1_ss2",
+    "node2" : "ss2"
   }, {
-    "node1" : "BUSCO_ss2_0",
-    "node2" : "INTERNAL_vl1_ss2_0"
+    "node1" : "b1",
+    "node2" : "INTERNAL_vl1_l1"
   }, {
-    "node1" : "INTERNAL_vl1_ss2_0",
-    "node2" : "ss2"
+    "node1" : "INTERNAL_vl1_l1",
+    "node2" : "l1"
   }, {
-    "node1" : "bbs22",
-    "node2" : "BUSCO_ss2_1"
+    "node1" : "b",
+    "node2" : "INTERNAL_vl1_l"
   }, {
-    "node1" : "BUSCO_ss2_1",
-    "node2" : "INTERNAL_vl1_ss2_1"
+    "node1" : "INTERNAL_vl1_l",
+    "node2" : "l"
   }, {
-    "node1" : "INTERNAL_vl1_ss2_1",
-    "node2" : "ss2"
+    "node1" : "b2",
+    "node2" : "INTERNAL_vl1_l2"
+  }, {
+    "node1" : "INTERNAL_vl1_l2",
+    "node2" : "l2"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/orderConsistencyClust2.json b/single-line-diagram-core/src/test/resources/orderConsistencyClust2.json
index aef97ce5e..69597b224 100644
--- a/single-line-diagram-core/src/test/resources/orderConsistencyClust2.json
+++ b/single-line-diagram-core/src/test/resources/orderConsistencyClust2.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_0",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 50.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_1",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 100.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss2_0",
+    "id" : "BUSCO_ss2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 150.0,
@@ -35,7 +35,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss2_1",
+    "id" : "BUSCO_ss2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 200.0,
@@ -94,7 +94,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_ss1_0",
+    "id" : "INTERNAL_vl2_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -103,7 +103,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_ss1_1",
+    "id" : "INTERNAL_vl2_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 100.0,
@@ -112,7 +112,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_ss2_0",
+    "id" : "INTERNAL_vl2_ss2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 150.0,
@@ -121,7 +121,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_ss2_1",
+    "id" : "INTERNAL_vl2_ss2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 200.0,
@@ -417,7 +417,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs12", "BUSCO_ss1_1", "INTERNAL_vl2_ss1_1" ]
+        "nodes" : [ "bbs12", "BUSCO_ss1", "INTERNAL_vl2_ss1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -438,7 +438,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl2_ss1_0", "ss1", "INTERNAL_vl2_ss1_1" ]
+        "nodes" : [ "INTERNAL_vl2_ss1", "ss1", "INTERNAL_vl2_ss1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -459,7 +459,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "BUSCO_ss1_0", "INTERNAL_vl2_ss1_0" ]
+        "nodes" : [ "bbs11", "BUSCO_ss1", "INTERNAL_vl2_ss1" ]
       } ]
     }
   }, {
@@ -505,7 +505,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "BUSCO_ss2_1", "INTERNAL_vl2_ss2_1" ]
+        "nodes" : [ "bbs22", "BUSCO_ss2", "INTERNAL_vl2_ss2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -526,7 +526,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl2_ss2_0", "ss2", "INTERNAL_vl2_ss2_1" ]
+        "nodes" : [ "INTERNAL_vl2_ss2", "ss2", "INTERNAL_vl2_ss2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -547,7 +547,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs21", "BUSCO_ss2_0", "INTERNAL_vl2_ss2_0" ]
+        "nodes" : [ "bbs21", "BUSCO_ss2", "INTERNAL_vl2_ss2" ]
       } ]
     }
   }, {
@@ -993,59 +993,59 @@
     "node1" : "INTERNAL_vl2_f2",
     "node2" : "b2"
   }, {
-    "node1" : "b1",
-    "node2" : "INTERNAL_vl2_l1"
-  }, {
-    "node1" : "INTERNAL_vl2_l1",
-    "node2" : "l1"
+    "node1" : "bbs11",
+    "node2" : "BUSCO_ss1"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl2_l"
+    "node1" : "bbs12",
+    "node2" : "BUSCO_ss1"
   }, {
-    "node1" : "INTERNAL_vl2_l",
-    "node2" : "l"
+    "node1" : "bbs21",
+    "node2" : "BUSCO_ss2"
   }, {
-    "node1" : "b2",
-    "node2" : "INTERNAL_vl2_l2"
+    "node1" : "bbs22",
+    "node2" : "BUSCO_ss2"
   }, {
-    "node1" : "INTERNAL_vl2_l2",
-    "node2" : "l2"
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl2_ss1"
   }, {
-    "node1" : "bbs11",
-    "node2" : "BUSCO_ss1_0"
+    "node1" : "INTERNAL_vl2_ss1",
+    "node2" : "ss1"
   }, {
-    "node1" : "BUSCO_ss1_0",
-    "node2" : "INTERNAL_vl2_ss1_0"
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl2_ss1"
   }, {
-    "node1" : "INTERNAL_vl2_ss1_0",
+    "node1" : "INTERNAL_vl2_ss1",
     "node2" : "ss1"
   }, {
-    "node1" : "bbs12",
-    "node2" : "BUSCO_ss1_1"
+    "node1" : "BUSCO_ss2",
+    "node2" : "INTERNAL_vl2_ss2"
   }, {
-    "node1" : "BUSCO_ss1_1",
-    "node2" : "INTERNAL_vl2_ss1_1"
+    "node1" : "INTERNAL_vl2_ss2",
+    "node2" : "ss2"
   }, {
-    "node1" : "INTERNAL_vl2_ss1_1",
-    "node2" : "ss1"
+    "node1" : "BUSCO_ss2",
+    "node2" : "INTERNAL_vl2_ss2"
   }, {
-    "node1" : "bbs21",
-    "node2" : "BUSCO_ss2_0"
+    "node1" : "INTERNAL_vl2_ss2",
+    "node2" : "ss2"
   }, {
-    "node1" : "BUSCO_ss2_0",
-    "node2" : "INTERNAL_vl2_ss2_0"
+    "node1" : "b1",
+    "node2" : "INTERNAL_vl2_l1"
   }, {
-    "node1" : "INTERNAL_vl2_ss2_0",
-    "node2" : "ss2"
+    "node1" : "INTERNAL_vl2_l1",
+    "node2" : "l1"
   }, {
-    "node1" : "bbs22",
-    "node2" : "BUSCO_ss2_1"
+    "node1" : "b",
+    "node2" : "INTERNAL_vl2_l"
   }, {
-    "node1" : "BUSCO_ss2_1",
-    "node2" : "INTERNAL_vl2_ss2_1"
+    "node1" : "INTERNAL_vl2_l",
+    "node2" : "l"
   }, {
-    "node1" : "INTERNAL_vl2_ss2_1",
-    "node2" : "ss2"
+    "node1" : "b2",
+    "node2" : "INTERNAL_vl2_l2"
+  }, {
+    "node1" : "INTERNAL_vl2_l2",
+    "node2" : "l2"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/orderConsistencyExt1.json b/single-line-diagram-core/src/test/resources/orderConsistencyExt1.json
index 5f240362a..ca80af965 100644
--- a/single-line-diagram-core/src/test/resources/orderConsistencyExt1.json
+++ b/single-line-diagram-core/src/test/resources/orderConsistencyExt1.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_0",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 150.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_1",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 200.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss2_0",
+    "id" : "BUSCO_ss2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 50.0,
@@ -35,7 +35,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss2_1",
+    "id" : "BUSCO_ss2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 100.0,
@@ -92,7 +92,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_ss1_0",
+    "id" : "INTERNAL_vl1_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 150.0,
@@ -101,7 +101,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_ss1_1",
+    "id" : "INTERNAL_vl1_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 200.0,
@@ -110,7 +110,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_ss2_0",
+    "id" : "INTERNAL_vl1_ss2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -119,7 +119,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl1_ss2_1",
+    "id" : "INTERNAL_vl1_ss2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 100.0,
@@ -412,7 +412,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs12", "BUSCO_ss1_1", "INTERNAL_vl1_ss1_1" ]
+        "nodes" : [ "bbs12", "BUSCO_ss1", "INTERNAL_vl1_ss1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -433,7 +433,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl1_ss1_0", "ss1", "INTERNAL_vl1_ss1_1" ]
+        "nodes" : [ "INTERNAL_vl1_ss1", "ss1", "INTERNAL_vl1_ss1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -454,7 +454,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "BUSCO_ss1_0", "INTERNAL_vl1_ss1_0" ]
+        "nodes" : [ "bbs11", "BUSCO_ss1", "INTERNAL_vl1_ss1" ]
       } ]
     }
   }, {
@@ -501,7 +501,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "BUSCO_ss2_1", "INTERNAL_vl1_ss2_1" ]
+        "nodes" : [ "bbs22", "BUSCO_ss2", "INTERNAL_vl1_ss2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -522,7 +522,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl1_ss2_0", "ss2", "INTERNAL_vl1_ss2_1" ]
+        "nodes" : [ "INTERNAL_vl1_ss2", "ss2", "INTERNAL_vl1_ss2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -543,7 +543,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs21", "BUSCO_ss2_0", "INTERNAL_vl1_ss2_0" ]
+        "nodes" : [ "bbs21", "BUSCO_ss2", "INTERNAL_vl1_ss2" ]
       } ]
     }
   }, {
@@ -989,59 +989,59 @@
     "node1" : "INTERNAL_vl1_f2",
     "node2" : "b2"
   }, {
-    "node1" : "b1",
-    "node2" : "INTERNAL_vl1_l1"
-  }, {
-    "node1" : "INTERNAL_vl1_l1",
-    "node2" : "l1"
+    "node1" : "bbs11",
+    "node2" : "BUSCO_ss1"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl1_l"
+    "node1" : "bbs12",
+    "node2" : "BUSCO_ss1"
   }, {
-    "node1" : "INTERNAL_vl1_l",
-    "node2" : "l"
+    "node1" : "bbs21",
+    "node2" : "BUSCO_ss2"
   }, {
-    "node1" : "b2",
-    "node2" : "INTERNAL_vl1_l2"
+    "node1" : "bbs22",
+    "node2" : "BUSCO_ss2"
   }, {
-    "node1" : "INTERNAL_vl1_l2",
-    "node2" : "l2"
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl1_ss1"
   }, {
-    "node1" : "bbs11",
-    "node2" : "BUSCO_ss1_0"
+    "node1" : "INTERNAL_vl1_ss1",
+    "node2" : "ss1"
   }, {
-    "node1" : "BUSCO_ss1_0",
-    "node2" : "INTERNAL_vl1_ss1_0"
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl1_ss1"
   }, {
-    "node1" : "INTERNAL_vl1_ss1_0",
+    "node1" : "INTERNAL_vl1_ss1",
     "node2" : "ss1"
   }, {
-    "node1" : "bbs12",
-    "node2" : "BUSCO_ss1_1"
+    "node1" : "BUSCO_ss2",
+    "node2" : "INTERNAL_vl1_ss2"
   }, {
-    "node1" : "BUSCO_ss1_1",
-    "node2" : "INTERNAL_vl1_ss1_1"
+    "node1" : "INTERNAL_vl1_ss2",
+    "node2" : "ss2"
   }, {
-    "node1" : "INTERNAL_vl1_ss1_1",
-    "node2" : "ss1"
+    "node1" : "BUSCO_ss2",
+    "node2" : "INTERNAL_vl1_ss2"
   }, {
-    "node1" : "bbs21",
-    "node2" : "BUSCO_ss2_0"
+    "node1" : "INTERNAL_vl1_ss2",
+    "node2" : "ss2"
   }, {
-    "node1" : "BUSCO_ss2_0",
-    "node2" : "INTERNAL_vl1_ss2_0"
+    "node1" : "b1",
+    "node2" : "INTERNAL_vl1_l1"
   }, {
-    "node1" : "INTERNAL_vl1_ss2_0",
-    "node2" : "ss2"
+    "node1" : "INTERNAL_vl1_l1",
+    "node2" : "l1"
   }, {
-    "node1" : "bbs22",
-    "node2" : "BUSCO_ss2_1"
+    "node1" : "b",
+    "node2" : "INTERNAL_vl1_l"
   }, {
-    "node1" : "BUSCO_ss2_1",
-    "node2" : "INTERNAL_vl1_ss2_1"
+    "node1" : "INTERNAL_vl1_l",
+    "node2" : "l"
   }, {
-    "node1" : "INTERNAL_vl1_ss2_1",
-    "node2" : "ss2"
+    "node1" : "b2",
+    "node2" : "INTERNAL_vl1_l2"
+  }, {
+    "node1" : "INTERNAL_vl1_l2",
+    "node2" : "l2"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/orderConsistencyExt2.json b/single-line-diagram-core/src/test/resources/orderConsistencyExt2.json
index 59aa843b9..d4b3530cf 100644
--- a/single-line-diagram-core/src/test/resources/orderConsistencyExt2.json
+++ b/single-line-diagram-core/src/test/resources/orderConsistencyExt2.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_0",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 50.0,
@@ -17,7 +17,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss1_1",
+    "id" : "BUSCO_ss1",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 100.0,
@@ -26,7 +26,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss2_0",
+    "id" : "BUSCO_ss2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 150.0,
@@ -35,7 +35,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "BUSCO_ss2_1",
+    "id" : "BUSCO_ss2",
     "componentType" : "BUS_CONNECTION",
     "fictitious" : true,
     "x" : 200.0,
@@ -92,7 +92,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_ss1_0",
+    "id" : "INTERNAL_vl2_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -101,7 +101,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_ss1_1",
+    "id" : "INTERNAL_vl2_ss1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 100.0,
@@ -110,7 +110,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_ss2_0",
+    "id" : "INTERNAL_vl2_ss2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 150.0,
@@ -119,7 +119,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl2_ss2_1",
+    "id" : "INTERNAL_vl2_ss2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 200.0,
@@ -412,7 +412,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs12", "BUSCO_ss1_1", "INTERNAL_vl2_ss1_1" ]
+        "nodes" : [ "bbs12", "BUSCO_ss1", "INTERNAL_vl2_ss1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -433,7 +433,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl2_ss1_0", "ss1", "INTERNAL_vl2_ss1_1" ]
+        "nodes" : [ "INTERNAL_vl2_ss1", "ss1", "INTERNAL_vl2_ss1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -454,7 +454,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "BUSCO_ss1_0", "INTERNAL_vl2_ss1_0" ]
+        "nodes" : [ "bbs11", "BUSCO_ss1", "INTERNAL_vl2_ss1" ]
       } ]
     }
   }, {
@@ -501,7 +501,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "BUSCO_ss2_1", "INTERNAL_vl2_ss2_1" ]
+        "nodes" : [ "bbs22", "BUSCO_ss2", "INTERNAL_vl2_ss2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -522,7 +522,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl2_ss2_0", "ss2", "INTERNAL_vl2_ss2_1" ]
+        "nodes" : [ "INTERNAL_vl2_ss2", "ss2", "INTERNAL_vl2_ss2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -543,7 +543,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs21", "BUSCO_ss2_0", "INTERNAL_vl2_ss2_0" ]
+        "nodes" : [ "bbs21", "BUSCO_ss2", "INTERNAL_vl2_ss2" ]
       } ]
     }
   }, {
@@ -989,59 +989,59 @@
     "node1" : "INTERNAL_vl2_f2",
     "node2" : "b2"
   }, {
-    "node1" : "b1",
-    "node2" : "INTERNAL_vl2_l1"
-  }, {
-    "node1" : "INTERNAL_vl2_l1",
-    "node2" : "l1"
+    "node1" : "bbs11",
+    "node2" : "BUSCO_ss1"
   }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl2_l"
+    "node1" : "bbs12",
+    "node2" : "BUSCO_ss1"
   }, {
-    "node1" : "INTERNAL_vl2_l",
-    "node2" : "l"
+    "node1" : "bbs21",
+    "node2" : "BUSCO_ss2"
   }, {
-    "node1" : "b2",
-    "node2" : "INTERNAL_vl2_l2"
+    "node1" : "bbs22",
+    "node2" : "BUSCO_ss2"
   }, {
-    "node1" : "INTERNAL_vl2_l2",
-    "node2" : "l2"
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl2_ss1"
   }, {
-    "node1" : "bbs11",
-    "node2" : "BUSCO_ss1_0"
+    "node1" : "INTERNAL_vl2_ss1",
+    "node2" : "ss1"
   }, {
-    "node1" : "BUSCO_ss1_0",
-    "node2" : "INTERNAL_vl2_ss1_0"
+    "node1" : "BUSCO_ss1",
+    "node2" : "INTERNAL_vl2_ss1"
   }, {
-    "node1" : "INTERNAL_vl2_ss1_0",
+    "node1" : "INTERNAL_vl2_ss1",
     "node2" : "ss1"
   }, {
-    "node1" : "bbs12",
-    "node2" : "BUSCO_ss1_1"
+    "node1" : "BUSCO_ss2",
+    "node2" : "INTERNAL_vl2_ss2"
   }, {
-    "node1" : "BUSCO_ss1_1",
-    "node2" : "INTERNAL_vl2_ss1_1"
+    "node1" : "INTERNAL_vl2_ss2",
+    "node2" : "ss2"
   }, {
-    "node1" : "INTERNAL_vl2_ss1_1",
-    "node2" : "ss1"
+    "node1" : "BUSCO_ss2",
+    "node2" : "INTERNAL_vl2_ss2"
   }, {
-    "node1" : "bbs21",
-    "node2" : "BUSCO_ss2_0"
+    "node1" : "INTERNAL_vl2_ss2",
+    "node2" : "ss2"
   }, {
-    "node1" : "BUSCO_ss2_0",
-    "node2" : "INTERNAL_vl2_ss2_0"
+    "node1" : "b1",
+    "node2" : "INTERNAL_vl2_l1"
   }, {
-    "node1" : "INTERNAL_vl2_ss2_0",
-    "node2" : "ss2"
+    "node1" : "INTERNAL_vl2_l1",
+    "node2" : "l1"
   }, {
-    "node1" : "bbs22",
-    "node2" : "BUSCO_ss2_1"
+    "node1" : "b",
+    "node2" : "INTERNAL_vl2_l"
   }, {
-    "node1" : "BUSCO_ss2_1",
-    "node2" : "INTERNAL_vl2_ss2_1"
+    "node1" : "INTERNAL_vl2_l",
+    "node2" : "l"
   }, {
-    "node1" : "INTERNAL_vl2_ss2_1",
-    "node2" : "ss2"
+    "node1" : "b2",
+    "node2" : "INTERNAL_vl2_l2"
+  }, {
+    "node1" : "INTERNAL_vl2_l2",
+    "node2" : "l2"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/substDiag_metadata.json b/single-line-diagram-core/src/test/resources/substDiag_metadata.json
index 58eb4ad3c..8e2144f27 100644
--- a/single-line-diagram-core/src/test/resources/substDiag_metadata.json
+++ b/single-line-diagram-core/src/test/resources/substDiag_metadata.json
@@ -217,22 +217,15 @@
       "positionName" : "S_LABEL"
     } ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dline11_95_2",
+    "id" : "idINTERNAL_95_vl1_95_dtrct11",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dload2",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dload1",
-    "vid" : "vl1",
+    "id" : "idINTERNAL_95_vl2_95_bload3",
+    "vid" : "vl2",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
@@ -260,13 +253,6 @@
     "vlabel" : false,
     "equipmentId" : "dload3",
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dgen1",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idINTERNAL_95_vl3_95_load4",
     "vid" : "vl3",
@@ -274,13 +260,6 @@
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dgen2",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idbline11_95_2",
     "vid" : "vl1",
@@ -369,13 +348,6 @@
       "id" : "bbs5_NW_LABEL",
       "positionName" : "NW_LABEL"
     } ]
-  }, {
-    "id" : "idINTERNAL_95_vl2_95_dload3",
-    "vid" : "vl2",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idbbs6",
     "vid" : "vl2",
@@ -446,13 +418,6 @@
     "vlabel" : false,
     "equipmentId" : "dscpl1",
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl3_95_dtrf25",
-    "vid" : "vl3",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "iddscpl2",
     "vid" : "vl2",
@@ -468,6 +433,13 @@
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl3_95_bload4",
+    "vid" : "vl3",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "iddtrf11",
     "vid" : "vl1",
@@ -580,41 +552,6 @@
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dsect12",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl3_95_dtrf38",
-    "vid" : "vl3",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dsect11",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl3_95_dtrf36",
-    "vid" : "vl3",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl3_95_dtrf37",
-    "vid" : "vl3",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idddcpl1",
     "vid" : "vl2",
@@ -695,6 +632,13 @@
     "vlabel" : false,
     "equipmentId" : "dsect22",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl2_95_ddcpl1",
+    "vid" : "vl2",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idtrf2_95_TWO",
     "vid" : "vl2",
@@ -762,13 +706,6 @@
     "open" : false,
     "vlabel" : true,
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dsect21",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "LABEL_VL_vl3",
     "vid" : "vl3",
@@ -807,13 +744,6 @@
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dsect22",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idbload3",
     "vid" : "vl2",
@@ -838,27 +768,6 @@
     "vlabel" : false,
     "equipmentId" : "bload1",
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl2_95_dtrf28",
-    "vid" : "vl2",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl2_95_dtrf26",
-    "vid" : "vl2",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl2_95_dtrf27",
-    "vid" : "vl2",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idtrf8_95_THREE",
     "vid" : "vl3",
@@ -872,13 +781,6 @@
       "id" : "trf8_THREE_N_LABEL",
       "positionName" : "N_LABEL"
     } ]
-  }, {
-    "id" : "idINTERNAL_95_vl2_95_dtrf24",
-    "vid" : "vl2",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idINTERNAL_95_vl2_95_trf7_95_TWO",
     "vid" : "vl2",
@@ -887,22 +789,22 @@
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl2_95_dtrf22",
-    "vid" : "vl2",
+    "id" : "idINTERNAL_95_vl3_95_btrf25",
+    "vid" : "vl3",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl2_95_dtrf23",
-    "vid" : "vl2",
+    "id" : "idINTERNAL_95_vl1_95_bgen1",
+    "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl2_95_dtrf21",
-    "vid" : "vl2",
+    "id" : "idINTERNAL_95_vl1_95_bgen2",
+    "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
@@ -949,6 +851,34 @@
       "id" : "trf2_ONE_N_LABEL",
       "positionName" : "N_LABEL"
     } ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf17",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf16",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf15",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf14",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "iddtrf38",
     "vid" : "vl3",
@@ -957,6 +887,20 @@
     "vlabel" : false,
     "equipmentId" : "dtrf38",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf13",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl2_95_btrf28",
+    "vid" : "vl2",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "iddtrf37",
     "vid" : "vl3",
@@ -965,6 +909,13 @@
     "vlabel" : false,
     "equipmentId" : "dtrf37",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf12",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "iddtrf36",
     "vid" : "vl3",
@@ -973,6 +924,20 @@
     "vlabel" : false,
     "equipmentId" : "dtrf36",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf11",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl3_95_btrf38",
+    "vid" : "vl3",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "iddtrct21",
     "vid" : "vl1",
@@ -989,6 +954,20 @@
     "vlabel" : false,
     "equipmentId" : "btrf18",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl3_95_btrf37",
+    "vid" : "vl3",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl3_95_btrf36",
+    "vid" : "vl3",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idbtrf15",
     "vid" : "vl1",
@@ -997,6 +976,13 @@
     "vlabel" : false,
     "equipmentId" : "btrf15",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl2_95_btrf24",
+    "vid" : "vl2",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idbtrf14",
     "vid" : "vl1",
@@ -1020,6 +1006,13 @@
     "vlabel" : false,
     "equipmentId" : "btrf17",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl2_95_btrf26",
+    "vid" : "vl2",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idbtrf16",
     "vid" : "vl1",
@@ -1028,6 +1021,13 @@
     "vlabel" : false,
     "equipmentId" : "btrf16",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl2_95_btrf27",
+    "vid" : "vl2",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idbtrf11",
     "vid" : "vl1",
@@ -1036,6 +1036,13 @@
     "vlabel" : false,
     "equipmentId" : "btrf11",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl2_95_btrf21",
+    "vid" : "vl2",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idbtrf13",
     "vid" : "vl1",
@@ -1044,6 +1051,13 @@
     "vlabel" : false,
     "equipmentId" : "btrf13",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl2_95_btrf22",
+    "vid" : "vl2",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idbtrf12",
     "vid" : "vl1",
@@ -1052,6 +1066,20 @@
     "vlabel" : false,
     "equipmentId" : "btrf12",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf18",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl2_95_btrf23",
+    "vid" : "vl2",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idbgen1",
     "vid" : "vl1",
@@ -1159,97 +1187,48 @@
       "positionName" : "S_LABEL"
     } ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf13",
-    "vid" : "vl1",
-    "componentType" : "NODE",
+    "id" : "idbtrf26",
+    "vid" : "vl2",
+    "componentType" : "BREAKER",
     "open" : false,
     "vlabel" : false,
+    "equipmentId" : "btrf26",
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf12",
+    "id" : "iddline11_95_2",
     "vid" : "vl1",
-    "componentType" : "NODE",
+    "componentType" : "DISCONNECTOR",
     "open" : false,
     "vlabel" : false,
+    "equipmentId" : "dline11_2",
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf15",
-    "vid" : "vl1",
-    "componentType" : "NODE",
+    "id" : "idbtrf25",
+    "vid" : "vl3",
+    "componentType" : "BREAKER",
     "open" : false,
     "vlabel" : false,
+    "equipmentId" : "btrf25",
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf14",
-    "vid" : "vl1",
-    "componentType" : "NODE",
+    "id" : "idbtrf28",
+    "vid" : "vl2",
+    "componentType" : "BREAKER",
     "open" : false,
     "vlabel" : false,
+    "equipmentId" : "btrf28",
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf17",
-    "vid" : "vl1",
-    "componentType" : "NODE",
+    "id" : "idbtrf27",
+    "vid" : "vl2",
+    "componentType" : "BREAKER",
     "open" : false,
     "vlabel" : false,
+    "equipmentId" : "btrf27",
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf16",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf18",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idbtrf26",
-    "vid" : "vl2",
-    "componentType" : "BREAKER",
-    "open" : false,
-    "vlabel" : false,
-    "equipmentId" : "btrf26",
-    "labels" : [ ]
-  }, {
-    "id" : "iddline11_95_2",
-    "vid" : "vl1",
-    "componentType" : "DISCONNECTOR",
-    "open" : false,
-    "vlabel" : false,
-    "equipmentId" : "dline11_2",
-    "labels" : [ ]
-  }, {
-    "id" : "idbtrf25",
-    "vid" : "vl3",
-    "componentType" : "BREAKER",
-    "open" : false,
-    "vlabel" : false,
-    "equipmentId" : "btrf25",
-    "labels" : [ ]
-  }, {
-    "id" : "idbtrf28",
-    "vid" : "vl2",
-    "componentType" : "BREAKER",
-    "open" : false,
-    "vlabel" : false,
-    "equipmentId" : "btrf28",
-    "labels" : [ ]
-  }, {
-    "id" : "idbtrf27",
-    "vid" : "vl2",
-    "componentType" : "BREAKER",
-    "open" : false,
-    "vlabel" : false,
-    "equipmentId" : "btrf27",
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl3_95_trf6_95_THREE",
-    "vid" : "vl3",
+    "id" : "idINTERNAL_95_vl3_95_trf6_95_THREE",
+    "vid" : "vl3",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
@@ -1270,13 +1249,6 @@
     "vlabel" : false,
     "equipmentId" : "btrf21",
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf11",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idtrf1_95_ONE",
     "vid" : "vl1",
@@ -1405,13 +1377,6 @@
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl2_95_dgen4",
-    "vid" : "vl2",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "iddgen4",
     "vid" : "vl2",
@@ -1475,6 +1440,20 @@
     "vlabel" : false,
     "equipmentId" : "trf8",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_bload2",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_bload1",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idtrf8_95_TWO",
     "vid" : "vl2",
@@ -1526,8 +1505,8 @@
     "equipmentId" : "btrf38",
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl3_95_dload4",
-    "vid" : "vl3",
+    "id" : "idINTERNAL_95_vl2_95_bgen4",
+    "vid" : "vl2",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
@@ -1602,15 +1581,15 @@
       "positionName" : "N_LABEL"
     } ]
   }, {
-    "id" : "idINTERNAL_95_vl2_95_dscpl1",
-    "vid" : "vl2",
+    "id" : "idINTERNAL_95_vl1_95_bline11_95_2",
+    "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl2_95_dscpl2",
-    "vid" : "vl2",
+    "id" : "idINTERNAL_95_vl1_95_dtrct21",
+    "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
@@ -1643,6 +1622,12 @@
     } ]
   } ],
   "wires" : [ {
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_bload3_95_bload3",
+    "nodeId1" : "idINTERNAL_95_vl2_95_bload3",
+    "nodeId2" : "idbload3",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
     "id" : "_95_vl1_95_btrf18_95_INTERNAL_95_vl1_95_trf8_95_ONE",
     "nodeId1" : "idbtrf18",
     "nodeId2" : "idINTERNAL_95_vl1_95_trf8_95_ONE",
@@ -1655,33 +1640,39 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_dtrf28_95_INTERNAL_95_vl2_95_dtrf28",
-    "nodeId1" : "iddtrf28",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf28",
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_trf6_95_TWO_95_trf6_95_TWO",
+    "nodeId1" : "idINTERNAL_95_vl2_95_trf6_95_TWO",
+    "nodeId2" : "idtrf6_95_TWO",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrf16_95_INTERNAL_95_vl1_95_dtrf16",
-    "nodeId1" : "iddtrf16",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf16",
+    "id" : "_95_vl3_95_dtrf25_95_INTERNAL_95_vl3_95_btrf25",
+    "nodeId1" : "iddtrf25",
+    "nodeId2" : "idINTERNAL_95_vl3_95_btrf25",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_trf6_95_TWO_95_trf6_95_TWO",
-    "nodeId1" : "idINTERNAL_95_vl2_95_trf6_95_TWO",
-    "nodeId2" : "idtrf6_95_TWO",
+    "id" : "_95_vl3_95_INTERNAL_95_vl3_95_btrf36_95_btrf36",
+    "nodeId1" : "idINTERNAL_95_vl3_95_btrf36",
+    "nodeId2" : "idbtrf36",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bbs3_95_dtrf17",
-    "nodeId1" : "idbbs3",
-    "nodeId2" : "iddtrf17",
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_ddcpl1_95_ddcpl1",
+    "nodeId1" : "idINTERNAL_95_vl2_95_ddcpl1",
+    "nodeId2" : "idddcpl1",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_dtrf27_95_INTERNAL_95_vl2_95_dtrf27",
-    "nodeId1" : "iddtrf27",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf27",
+    "id" : "_95_vl3_95_dload4_95_INTERNAL_95_vl3_95_bload4",
+    "nodeId1" : "iddload4",
+    "nodeId2" : "idINTERNAL_95_vl3_95_bload4",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_bbs3_95_dtrf17",
+    "nodeId1" : "idbbs3",
+    "nodeId2" : "iddtrf17",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1696,12 +1687,6 @@
     "nodeId2" : "idgen2",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf15_95_INTERNAL_95_vl1_95_dtrf15",
-    "nodeId1" : "iddtrf15",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf15",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_bbs1_95_dload1",
     "nodeId1" : "idbbs1",
@@ -1715,9 +1700,9 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl3_95_dtrf38_95_INTERNAL_95_vl3_95_dtrf38",
-    "nodeId1" : "iddtrf38",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dtrf38",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf16_95_btrf16",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf16",
+    "nodeId2" : "idbtrf16",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1733,15 +1718,9 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bline11_95_2_95_INTERNAL_95_vl1_95_dline11_95_2",
-    "nodeId1" : "idbline11_95_2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dline11_95_2",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl2_95_dtrf26_95_INTERNAL_95_vl2_95_dtrf26",
-    "nodeId1" : "iddtrf26",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf26",
+    "id" : "_95_vl3_95_INTERNAL_95_vl3_95_btrf37_95_btrf37",
+    "nodeId1" : "idINTERNAL_95_vl3_95_btrf37",
+    "nodeId2" : "idbtrf37",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1751,15 +1730,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_btrf21_95_INTERNAL_95_vl2_95_trf1_95_TWO",
-    "nodeId1" : "idbtrf21",
-    "nodeId2" : "idINTERNAL_95_vl2_95_trf1_95_TWO",
+    "id" : "_95_vl1_95_dtrf18_95_INTERNAL_95_vl1_95_btrf18",
+    "nodeId1" : "iddtrf18",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf18",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bload1_95_INTERNAL_95_vl1_95_dload1",
-    "nodeId1" : "idbload1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dload1",
+    "id" : "_95_vl2_95_btrf21_95_INTERNAL_95_vl2_95_trf1_95_TWO",
+    "nodeId1" : "idbtrf21",
+    "nodeId2" : "idINTERNAL_95_vl2_95_trf1_95_TWO",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1768,12 +1747,6 @@
     "nodeId2" : "idINTERNAL_95_vl1_95_load1",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl3_95_dtrf37_95_INTERNAL_95_vl3_95_dtrf37",
-    "nodeId1" : "iddtrf37",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dtrf37",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_bbs6_95_dgen4",
     "nodeId1" : "idbbs6",
@@ -1781,33 +1754,21 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf17_95_INTERNAL_95_vl1_95_trf7_95_ONE",
-    "nodeId1" : "idbtrf17",
-    "nodeId2" : "idINTERNAL_95_vl1_95_trf7_95_ONE",
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_btrf22_95_btrf22",
+    "nodeId1" : "idINTERNAL_95_vl2_95_btrf22",
+    "nodeId2" : "idbtrf22",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf17_95_INTERNAL_95_vl1_95_dtrf17",
+    "id" : "_95_vl1_95_btrf17_95_INTERNAL_95_vl1_95_trf7_95_ONE",
     "nodeId1" : "idbtrf17",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf17",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl2_95_bgen4_95_INTERNAL_95_vl2_95_dgen4",
-    "nodeId1" : "idbgen4",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dgen4",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf13_95_INTERNAL_95_vl1_95_dtrf13",
-    "nodeId1" : "iddtrf13",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf13",
+    "nodeId2" : "idINTERNAL_95_vl1_95_trf7_95_ONE",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrf18_95_INTERNAL_95_vl1_95_dtrf18",
-    "nodeId1" : "iddtrf18",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf18",
+    "id" : "_95_vl1_95_dload2_95_INTERNAL_95_vl1_95_bload2",
+    "nodeId1" : "iddload2",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bload2",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1823,9 +1784,9 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_dload3_95_INTERNAL_95_vl2_95_dload3",
-    "nodeId1" : "iddload3",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dload3",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf17_95_btrf17",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf17",
+    "nodeId2" : "idbtrf17",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1834,12 +1795,6 @@
     "nodeId2" : "iddgen1",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl3_95_btrf25_95_INTERNAL_95_vl3_95_dtrf25",
-    "nodeId1" : "idbtrf25",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dtrf25",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_bbs4_95_dtrf14",
     "nodeId1" : "idbbs4",
@@ -1858,18 +1813,18 @@
     "nodeId2" : "idtrf1_95_ONE",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_dtrf27_95_INTERNAL_95_vl2_95_btrf27",
+    "nodeId1" : "iddtrf27",
+    "nodeId2" : "idINTERNAL_95_vl2_95_btrf27",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "idEDGE_95_trf1_95_TWO",
     "nodeId1" : "idtrf1_95_TWO",
     "nodeId2" : "idtrf1",
     "straight" : false,
     "snakeLine" : true
-  }, {
-    "id" : "_95_vl2_95_dtrf23_95_INTERNAL_95_vl2_95_dtrf23",
-    "nodeId1" : "iddtrf23",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf23",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_INTERNAL_95_vl1_95_line1_95_ONE_95_line1_95_ONE",
     "nodeId1" : "idINTERNAL_95_vl1_95_line1_95_ONE",
@@ -1877,15 +1832,9 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_btrf27_95_INTERNAL_95_vl2_95_dtrf27",
-    "nodeId1" : "idbtrf27",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf27",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl3_95_dload4_95_INTERNAL_95_vl3_95_dload4",
-    "nodeId1" : "iddload4",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dload4",
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_btrf21_95_btrf21",
+    "nodeId1" : "idINTERNAL_95_vl2_95_btrf21",
+    "nodeId2" : "idbtrf21",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1943,21 +1892,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_dtrf22_95_INTERNAL_95_vl2_95_dtrf22",
-    "nodeId1" : "iddtrf22",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf22",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl2_95_btrf26_95_INTERNAL_95_vl2_95_dtrf26",
-    "nodeId1" : "idbtrf26",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf26",
+    "id" : "_95_vl2_95_dtrf28_95_INTERNAL_95_vl2_95_btrf28",
+    "nodeId1" : "iddtrf28",
+    "nodeId2" : "idINTERNAL_95_vl2_95_btrf28",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bload2_95_INTERNAL_95_vl1_95_dload2",
-    "nodeId1" : "idbload2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dload2",
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_btrf24_95_btrf24",
+    "nodeId1" : "idINTERNAL_95_vl2_95_btrf24",
+    "nodeId2" : "idbtrf24",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1979,27 +1922,27 @@
     "straight" : false,
     "snakeLine" : true
   }, {
-    "id" : "_95_vl2_95_dscpl1_95_INTERNAL_95_vl2_95_dscpl1",
-    "nodeId1" : "iddscpl1",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dscpl1",
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_trf2_95_TWO_95_trf2_95_TWO",
+    "nodeId1" : "idINTERNAL_95_vl2_95_trf2_95_TWO",
+    "nodeId2" : "idtrf2_95_TWO",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dsect21_95_INTERNAL_95_vl1_95_dsect21",
-    "nodeId1" : "iddsect21",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect21",
+    "id" : "_95_vl1_95_dtrf17_95_INTERNAL_95_vl1_95_btrf17",
+    "nodeId1" : "iddtrf17",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf17",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_trf2_95_TWO_95_trf2_95_TWO",
-    "nodeId1" : "idINTERNAL_95_vl2_95_trf2_95_TWO",
-    "nodeId2" : "idtrf2_95_TWO",
+    "id" : "_95_vl3_95_INTERNAL_95_vl3_95_btrf25_95_btrf25",
+    "nodeId1" : "idINTERNAL_95_vl3_95_btrf25",
+    "nodeId2" : "idbtrf25",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl3_95_btrf37_95_INTERNAL_95_vl3_95_dtrf37",
-    "nodeId1" : "idbtrf37",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dtrf37",
+    "id" : "_95_vl1_95_dgen2_95_INTERNAL_95_vl1_95_bgen2",
+    "nodeId1" : "iddgen2",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bgen2",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2009,15 +1952,15 @@
     "straight" : false,
     "snakeLine" : true
   }, {
-    "id" : "_95_vl1_95_dsect12_95_INTERNAL_95_vl1_95_dsect12",
-    "nodeId1" : "iddsect12",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect12",
+    "id" : "_95_vl2_95_dgen4_95_INTERNAL_95_vl2_95_bgen4",
+    "nodeId1" : "iddgen4",
+    "nodeId2" : "idINTERNAL_95_vl2_95_bgen4",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf13_95_INTERNAL_95_vl1_95_dtrf13",
-    "nodeId1" : "idbtrf13",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf13",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf11_95_btrf11",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf11",
+    "nodeId2" : "idbtrf11",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2026,12 +1969,6 @@
     "nodeId2" : "idtrf7",
     "straight" : false,
     "snakeLine" : true
-  }, {
-    "id" : "_95_vl1_95_dsect22_95_INTERNAL_95_vl1_95_dsect22",
-    "nodeId1" : "iddsect22",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect22",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_bgen1_95_INTERNAL_95_vl1_95_gen1",
     "nodeId1" : "idbgen1",
@@ -2044,6 +1981,12 @@
     "nodeId2" : "idINTERNAL_95_vl3_95_load4",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bline11_95_2_95_bline11_95_2",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bline11_95_2",
+    "nodeId2" : "idbline11_95_2",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_bbs5_95_dtrf24",
     "nodeId1" : "idbbs5",
@@ -2062,6 +2005,12 @@
     "nodeId2" : "idtrf3_95_TWO",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bgen2_95_bgen2",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bgen2",
+    "nodeId2" : "idbgen2",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_bbs5_95_dtrf27",
     "nodeId1" : "idbbs5",
@@ -2087,9 +2036,9 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_bload3_95_INTERNAL_95_vl2_95_dload3",
-    "nodeId1" : "idbload3",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dload3",
+    "id" : "_95_vl1_95_dgen1_95_INTERNAL_95_vl1_95_bgen1",
+    "nodeId1" : "iddgen1",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bgen1",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2099,21 +2048,21 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl3_95_btrf37_95_INTERNAL_95_vl3_95_trf7_95_THREE",
-    "nodeId1" : "idbtrf37",
-    "nodeId2" : "idINTERNAL_95_vl3_95_trf7_95_THREE",
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_btrf27_95_btrf27",
+    "nodeId1" : "idINTERNAL_95_vl2_95_btrf27",
+    "nodeId2" : "idbtrf27",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dload1_95_INTERNAL_95_vl1_95_dload1",
-    "nodeId1" : "iddload1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dload1",
+    "id" : "_95_vl3_95_btrf37_95_INTERNAL_95_vl3_95_trf7_95_THREE",
+    "nodeId1" : "idbtrf37",
+    "nodeId2" : "idINTERNAL_95_vl3_95_trf7_95_THREE",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl3_95_dtrf36_95_INTERNAL_95_vl3_95_dtrf36",
-    "nodeId1" : "iddtrf36",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dtrf36",
+    "id" : "_95_vl1_95_dtrf14_95_INTERNAL_95_vl1_95_btrf14",
+    "nodeId1" : "iddtrf14",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf14",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2122,12 +2071,6 @@
     "nodeId2" : "idtrf5",
     "straight" : false,
     "snakeLine" : true
-  }, {
-    "id" : "_95_vl2_95_btrf23_95_INTERNAL_95_vl2_95_dtrf23",
-    "nodeId1" : "idbtrf23",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf23",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl3_95_INTERNAL_95_vl3_95_trf7_95_THREE_95_trf7_95_THREE",
     "nodeId1" : "idINTERNAL_95_vl3_95_trf7_95_THREE",
@@ -2141,33 +2084,21 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl3_95_bload4_95_INTERNAL_95_vl3_95_dload4",
-    "nodeId1" : "idbload4",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dload4",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dgen2_95_INTERNAL_95_vl1_95_dgen2",
-    "nodeId1" : "iddgen2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dgen2",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf12_95_INTERNAL_95_vl1_95_dtrf12",
-    "nodeId1" : "iddtrf12",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf12",
+    "id" : "_95_vl2_95_dtrf21_95_INTERNAL_95_vl2_95_btrf21",
+    "nodeId1" : "iddtrf21",
+    "nodeId2" : "idINTERNAL_95_vl2_95_btrf21",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf16_95_INTERNAL_95_vl1_95_dtrf16",
-    "nodeId1" : "idbtrf16",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf16",
+    "id" : "_95_vl3_95_dtrf38_95_INTERNAL_95_vl3_95_btrf38",
+    "nodeId1" : "iddtrf38",
+    "nodeId2" : "idINTERNAL_95_vl3_95_btrf38",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_dgen4_95_INTERNAL_95_vl2_95_dgen4",
-    "nodeId1" : "iddgen4",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dgen4",
+    "id" : "_95_vl3_95_INTERNAL_95_vl3_95_btrf38_95_btrf38",
+    "nodeId1" : "idINTERNAL_95_vl3_95_btrf38",
+    "nodeId2" : "idbtrf38",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2177,9 +2108,9 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_btrf22_95_INTERNAL_95_vl2_95_dtrf22",
-    "nodeId1" : "idbtrf22",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf22",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf13_95_btrf13",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf13",
+    "nodeId2" : "idbtrf13",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2201,15 +2132,33 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dsect11_95_INTERNAL_95_vl1_95_dsect11",
-    "nodeId1" : "iddsect11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect11",
+    "id" : "_95_vl2_95_dtrf22_95_INTERNAL_95_vl2_95_btrf22",
+    "nodeId1" : "iddtrf22",
+    "nodeId2" : "idINTERNAL_95_vl2_95_btrf22",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dgen1_95_INTERNAL_95_vl1_95_dgen1",
-    "nodeId1" : "iddgen1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dgen1",
+    "id" : "_95_vl3_95_INTERNAL_95_vl3_95_bload4_95_bload4",
+    "nodeId1" : "idINTERNAL_95_vl3_95_bload4",
+    "nodeId2" : "idbload4",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_dtrf11_95_INTERNAL_95_vl1_95_btrf11",
+    "nodeId1" : "iddtrf11",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf11",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_dscpl2_95_INTERNAL_95_vl2_95_ddcpl1",
+    "nodeId1" : "iddscpl2",
+    "nodeId2" : "idINTERNAL_95_vl2_95_ddcpl1",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bgen1_95_bgen1",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bgen1",
+    "nodeId2" : "idbgen1",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2219,15 +2168,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf7_95_ONE_95_trf7_95_ONE",
-    "nodeId1" : "idINTERNAL_95_vl1_95_trf7_95_ONE",
-    "nodeId2" : "idtrf7_95_ONE",
+    "id" : "_95_vl2_95_dtrf23_95_INTERNAL_95_vl2_95_btrf23",
+    "nodeId1" : "iddtrf23",
+    "nodeId2" : "idINTERNAL_95_vl2_95_btrf23",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_btrf21_95_INTERNAL_95_vl2_95_dtrf21",
-    "nodeId1" : "idbtrf21",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf21",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf7_95_ONE_95_trf7_95_ONE",
+    "nodeId1" : "idINTERNAL_95_vl1_95_trf7_95_ONE",
+    "nodeId2" : "idtrf7_95_ONE",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2236,6 +2185,12 @@
     "nodeId2" : "iddscpl1",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_btrf26_95_btrf26",
+    "nodeId1" : "idINTERNAL_95_vl2_95_btrf26",
+    "nodeId2" : "idbtrf26",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "idEDGE_95_trf6_95_THREE",
     "nodeId1" : "idtrf6_95_THREE",
@@ -2243,15 +2198,9 @@
     "straight" : false,
     "snakeLine" : true
   }, {
-    "id" : "_95_vl1_95_dtrct11_95_INTERNAL_95_vl1_95_dsect12",
-    "nodeId1" : "iddtrct11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect12",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrct11_95_INTERNAL_95_vl1_95_dsect11",
-    "nodeId1" : "iddtrct11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect11",
+    "id" : "_95_vl1_95_dtrf12_95_INTERNAL_95_vl1_95_btrf12",
+    "nodeId1" : "iddtrf12",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf12",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2261,51 +2210,51 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf8_95_ONE_95_trf8_95_ONE",
-    "nodeId1" : "idINTERNAL_95_vl1_95_trf8_95_ONE",
-    "nodeId2" : "idtrf8_95_ONE",
+    "id" : "_95_vl2_95_dtrf24_95_INTERNAL_95_vl2_95_btrf24",
+    "nodeId1" : "iddtrf24",
+    "nodeId2" : "idINTERNAL_95_vl2_95_btrf24",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dload2_95_INTERNAL_95_vl1_95_dload2",
-    "nodeId1" : "iddload2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dload2",
+    "id" : "_95_vl2_95_dload3_95_INTERNAL_95_vl2_95_bload3",
+    "nodeId1" : "iddload3",
+    "nodeId2" : "idINTERNAL_95_vl2_95_bload3",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl3_95_btrf36_95_INTERNAL_95_vl3_95_dtrf36",
-    "nodeId1" : "idbtrf36",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dtrf36",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf8_95_ONE_95_trf8_95_ONE",
+    "nodeId1" : "idINTERNAL_95_vl1_95_trf8_95_ONE",
+    "nodeId2" : "idtrf8_95_ONE",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dline11_95_2_95_INTERNAL_95_vl1_95_dline11_95_2",
-    "nodeId1" : "iddline11_95_2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dline11_95_2",
+    "id" : "_95_vl1_95_dsect22_95_INTERNAL_95_vl1_95_dtrct21",
+    "nodeId1" : "iddsect22",
+    "nodeId2" : "idINTERNAL_95_vl1_95_dtrct21",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_btrf24_95_INTERNAL_95_vl2_95_dtrf24",
-    "nodeId1" : "idbtrf24",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf24",
+    "id" : "_95_vl1_95_dtrf13_95_INTERNAL_95_vl1_95_btrf13",
+    "nodeId1" : "iddtrf13",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf13",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_btrf24_95_INTERNAL_95_vl2_95_trf4_95_TWO",
-    "nodeId1" : "idbtrf24",
-    "nodeId2" : "idINTERNAL_95_vl2_95_trf4_95_TWO",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf14_95_btrf14",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf14",
+    "nodeId2" : "idbtrf14",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bgen2_95_INTERNAL_95_vl1_95_dgen2",
-    "nodeId1" : "idbgen2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dgen2",
+    "id" : "_95_vl2_95_dscpl1_95_INTERNAL_95_vl2_95_ddcpl1",
+    "nodeId1" : "iddscpl1",
+    "nodeId2" : "idINTERNAL_95_vl2_95_ddcpl1",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf12_95_INTERNAL_95_vl1_95_dtrf12",
-    "nodeId1" : "idbtrf12",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf12",
+    "id" : "_95_vl2_95_btrf24_95_INTERNAL_95_vl2_95_trf4_95_TWO",
+    "nodeId1" : "idbtrf24",
+    "nodeId2" : "idINTERNAL_95_vl2_95_trf4_95_TWO",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2326,6 +2275,12 @@
     "nodeId2" : "iddgen2",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl3_95_dtrf37_95_INTERNAL_95_vl3_95_btrf37",
+    "nodeId1" : "iddtrf37",
+    "nodeId2" : "idINTERNAL_95_vl3_95_btrf37",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_bgen2_95_INTERNAL_95_vl1_95_gen2",
     "nodeId1" : "idbgen2",
@@ -2338,24 +2293,48 @@
     "nodeId2" : "idtrf6",
     "straight" : false,
     "snakeLine" : true
+  }, {
+    "id" : "_95_vl1_95_dline11_95_2_95_INTERNAL_95_vl1_95_bline11_95_2",
+    "nodeId1" : "iddline11_95_2",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bline11_95_2",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_dscpl2_95_bbs6",
     "nodeId1" : "iddscpl2",
     "nodeId2" : "idbbs6",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_bgen4_95_bgen4",
+    "nodeId1" : "idINTERNAL_95_vl2_95_bgen4",
+    "nodeId2" : "idbgen4",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf5_95_ONE_95_trf5_95_ONE",
     "nodeId1" : "idINTERNAL_95_vl1_95_trf5_95_ONE",
     "nodeId2" : "idtrf5_95_ONE",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bload2_95_bload2",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bload2",
+    "nodeId2" : "idbload2",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_btrf27_95_INTERNAL_95_vl2_95_trf7_95_TWO",
     "nodeId1" : "idbtrf27",
     "nodeId2" : "idINTERNAL_95_vl2_95_trf7_95_TWO",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_dtrf15_95_INTERNAL_95_vl1_95_btrf15",
+    "nodeId1" : "iddtrf15",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf15",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl3_95_bbs7_95_dload4",
     "nodeId1" : "idbbs7",
@@ -2375,33 +2354,21 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_load2_95_load2",
-    "nodeId1" : "idINTERNAL_95_vl1_95_load2",
-    "nodeId2" : "idload2",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl3_95_dtrf25_95_INTERNAL_95_vl3_95_dtrf25",
-    "nodeId1" : "iddtrf25",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dtrf25",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf11_95_INTERNAL_95_vl1_95_dtrf11",
-    "nodeId1" : "iddtrf11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf11",
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_btrf28_95_btrf28",
+    "nodeId1" : "idINTERNAL_95_vl2_95_btrf28",
+    "nodeId2" : "idbtrf28",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf15_95_INTERNAL_95_vl1_95_dtrf15",
-    "nodeId1" : "idbtrf15",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf15",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_load2_95_load2",
+    "nodeId1" : "idINTERNAL_95_vl1_95_load2",
+    "nodeId2" : "idload2",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_dscpl2_95_INTERNAL_95_vl2_95_dscpl2",
-    "nodeId1" : "iddscpl2",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dscpl2",
+    "id" : "_95_vl1_95_dtrf16_95_INTERNAL_95_vl1_95_btrf16",
+    "nodeId1" : "iddtrf16",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf16",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2429,15 +2396,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf11_95_INTERNAL_95_vl1_95_trf1_95_ONE",
-    "nodeId1" : "idbtrf11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_trf1_95_ONE",
+    "id" : "_95_vl1_95_dsect11_95_INTERNAL_95_vl1_95_dtrct11",
+    "nodeId1" : "iddsect11",
+    "nodeId2" : "idINTERNAL_95_vl1_95_dtrct11",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl3_95_btrf38_95_INTERNAL_95_vl3_95_dtrf38",
-    "nodeId1" : "idbtrf38",
-    "nodeId2" : "idINTERNAL_95_vl3_95_dtrf38",
+    "id" : "_95_vl1_95_btrf11_95_INTERNAL_95_vl1_95_trf1_95_ONE",
+    "nodeId1" : "idbtrf11",
+    "nodeId2" : "idINTERNAL_95_vl1_95_trf1_95_ONE",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2458,24 +2425,12 @@
     "nodeId2" : "idtrf4",
     "straight" : false,
     "snakeLine" : true
-  }, {
-    "id" : "_95_vl1_95_dtrct21_95_INTERNAL_95_vl1_95_dsect21",
-    "nodeId1" : "iddtrct21",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect21",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_INTERNAL_95_vl1_95_gen1_95_gen1",
     "nodeId1" : "idINTERNAL_95_vl1_95_gen1",
     "nodeId2" : "idgen1",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrct21_95_INTERNAL_95_vl1_95_dsect22",
-    "nodeId1" : "iddtrct21",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect22",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_bbs6_95_dtrf22",
     "nodeId1" : "idbbs6",
@@ -2494,12 +2449,6 @@
     "nodeId2" : "idtrf8",
     "straight" : false,
     "snakeLine" : true
-  }, {
-    "id" : "_95_vl1_95_btrf14_95_INTERNAL_95_vl1_95_dtrf14",
-    "nodeId1" : "idbtrf14",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf14",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_bbs6_95_dtrf23",
     "nodeId1" : "idbbs6",
@@ -2518,6 +2467,12 @@
     "nodeId2" : "iddtrf26",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_dtrct11_95_dtrct11",
+    "nodeId1" : "idINTERNAL_95_vl1_95_dtrct11",
+    "nodeId2" : "iddtrct11",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_bbs6_95_dtrf28",
     "nodeId1" : "idbbs6",
@@ -2530,24 +2485,12 @@
     "nodeId2" : "idtrf3_95_ONE",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl2_95_dtrf21_95_INTERNAL_95_vl2_95_dtrf21",
-    "nodeId1" : "iddtrf21",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf21",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl3_95_btrf25_95_INTERNAL_95_vl3_95_trf5_95_TWO",
     "nodeId1" : "idbtrf25",
     "nodeId2" : "idINTERNAL_95_vl3_95_trf5_95_TWO",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_btrf18_95_INTERNAL_95_vl1_95_dtrf18",
-    "nodeId1" : "idbtrf18",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf18",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl3_95_btrf38_95_INTERNAL_95_vl3_95_trf8_95_THREE",
     "nodeId1" : "idbtrf38",
@@ -2555,21 +2498,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_ddcpl1_95_INTERNAL_95_vl2_95_dscpl1",
-    "nodeId1" : "idddcpl1",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dscpl1",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl2_95_ddcpl1_95_INTERNAL_95_vl2_95_dscpl2",
-    "nodeId1" : "idddcpl1",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dscpl2",
+    "id" : "_95_vl1_95_dload1_95_INTERNAL_95_vl1_95_bload1",
+    "nodeId1" : "iddload1",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bload1",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrf14_95_INTERNAL_95_vl1_95_dtrf14",
-    "nodeId1" : "iddtrf14",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf14",
+    "id" : "_95_vl3_95_dtrf36_95_INTERNAL_95_vl3_95_btrf36",
+    "nodeId1" : "iddtrf36",
+    "nodeId2" : "idINTERNAL_95_vl3_95_btrf36",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2578,6 +2515,18 @@
     "nodeId2" : "idINTERNAL_95_vl2_95_trf6_95_TWO",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bload1_95_bload1",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bload1",
+    "nodeId2" : "idbload1",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf12_95_btrf12",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf12",
+    "nodeId2" : "idbtrf12",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_bload3_95_INTERNAL_95_vl2_95_load3",
     "nodeId1" : "idbload3",
@@ -2596,6 +2545,12 @@
     "nodeId2" : "iddsect21",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf18_95_btrf18",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf18",
+    "nodeId2" : "idbtrf18",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl3_95_INTERNAL_95_vl3_95_trf6_95_THREE_95_trf6_95_THREE",
     "nodeId1" : "idINTERNAL_95_vl3_95_trf6_95_THREE",
@@ -2615,9 +2570,15 @@
     "straight" : false,
     "snakeLine" : true
   }, {
-    "id" : "_95_vl2_95_btrf28_95_INTERNAL_95_vl2_95_dtrf28",
-    "nodeId1" : "idbtrf28",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf28",
+    "id" : "_95_vl1_95_dsect12_95_INTERNAL_95_vl1_95_dtrct11",
+    "nodeId1" : "iddsect12",
+    "nodeId2" : "idINTERNAL_95_vl1_95_dtrct11",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl2_95_INTERNAL_95_vl2_95_btrf23_95_btrf23",
+    "nodeId1" : "idINTERNAL_95_vl2_95_btrf23",
+    "nodeId2" : "idbtrf23",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2627,15 +2588,27 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl2_95_dtrf24_95_INTERNAL_95_vl2_95_dtrf24",
-    "nodeId1" : "iddtrf24",
-    "nodeId2" : "idINTERNAL_95_vl2_95_dtrf24",
+    "id" : "_95_vl2_95_dtrf26_95_INTERNAL_95_vl2_95_btrf26",
+    "nodeId1" : "iddtrf26",
+    "nodeId2" : "idINTERNAL_95_vl2_95_btrf26",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf11_95_INTERNAL_95_vl1_95_dtrf11",
-    "nodeId1" : "idbtrf11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf11",
+    "id" : "_95_vl1_95_dsect21_95_INTERNAL_95_vl1_95_dtrct21",
+    "nodeId1" : "iddsect21",
+    "nodeId2" : "idINTERNAL_95_vl1_95_dtrct21",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_dtrct21_95_dtrct21",
+    "nodeId1" : "idINTERNAL_95_vl1_95_dtrct21",
+    "nodeId2" : "iddtrct21",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf15_95_btrf15",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf15",
+    "nodeId2" : "idbtrf15",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -2650,24 +2623,12 @@
     "nodeId2" : "idtrf8_95_THREE",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf17_95_INTERNAL_95_vl1_95_dtrf17",
-    "nodeId1" : "iddtrf17",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf17",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_bline11_95_2_95_INTERNAL_95_vl1_95_line1_95_ONE",
     "nodeId1" : "idbline11_95_2",
     "nodeId2" : "idINTERNAL_95_vl1_95_line1_95_ONE",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_bgen1_95_INTERNAL_95_vl1_95_dgen1",
-    "nodeId1" : "idbgen1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dgen1",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl2_95_INTERNAL_95_vl2_95_gen4_95_gen4",
     "nodeId1" : "idINTERNAL_95_vl2_95_gen4",
diff --git a/single-line-diagram-core/src/test/resources/testLanesWithUnileg.json b/single-line-diagram-core/src/test/resources/testLanesWithUnileg.json
index 0aef476ef..a02bb5d97 100644
--- a/single-line-diagram-core/src/test/resources/testLanesWithUnileg.json
+++ b/single-line-diagram-core/src/test/resources/testLanesWithUnileg.json
@@ -8,23 +8,23 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_dF1",
+    "id" : "INTERNAL_vl_b1",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 125.0,
-    "y" : 240.0,
+    "x" : 25.0,
+    "y" : 220.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_db11",
+    "id" : "INTERNAL_vl_b1",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 25.0,
+    "x" : 225.0,
     "y" : 220.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_db12",
+    "id" : "INTERNAL_vl_b2",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 75.0,
@@ -33,20 +33,20 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_db31",
+    "id" : "INTERNAL_vl_b2",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 225.0,
-    "y" : 220.0,
+    "x" : 175.0,
+    "y" : 345.0,
+    "orientation" : "DOWN",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_db32",
+    "id" : "INTERNAL_vl_dF2",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 175.0,
-    "y" : 345.0,
-    "orientation" : "DOWN",
+    "x" : 125.0,
+    "y" : 240.0,
     "open" : false
   }, {
     "type" : "SWITCH",
@@ -260,7 +260,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs13", "db31", "INTERNAL_vl_db31" ]
+        "nodes" : [ "bbs13", "db31", "INTERNAL_vl_b1" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -281,7 +281,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_db11", "b1", "INTERNAL_vl_db31" ]
+        "nodes" : [ "INTERNAL_vl_b1", "b1", "INTERNAL_vl_b1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -302,7 +302,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "db11", "INTERNAL_vl_db11" ]
+        "nodes" : [ "bbs11", "db11", "INTERNAL_vl_b1" ]
       } ]
     }
   }, {
@@ -348,7 +348,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs13", "db32", "INTERNAL_vl_db32" ]
+        "nodes" : [ "bbs13", "db32", "INTERNAL_vl_b2" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -369,7 +369,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_db12", "b2", "INTERNAL_vl_db32" ]
+        "nodes" : [ "INTERNAL_vl_b2", "b2", "INTERNAL_vl_b2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -390,7 +390,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "db12", "INTERNAL_vl_db12" ]
+        "nodes" : [ "bbs11", "db12", "INTERNAL_vl_b2" ]
       } ]
     }
   }, {
@@ -437,7 +437,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs12", "dF1", "INTERNAL_vl_dF1" ]
+        "nodes" : [ "bbs12", "dF1", "INTERNAL_vl_dF2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -458,7 +458,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "dF2", "INTERNAL_vl_dF1" ]
+        "nodes" : [ "bbs22", "dF2", "INTERNAL_vl_dF2" ]
       } ]
     }
   } ],
@@ -480,36 +480,36 @@
   }, {
     "node1" : "db32",
     "node2" : "bbs13"
-  }, {
-    "node1" : "b1",
-    "node2" : "INTERNAL_vl_db11"
   }, {
     "node1" : "db11",
-    "node2" : "INTERNAL_vl_db11"
+    "node2" : "INTERNAL_vl_b1"
   }, {
-    "node1" : "b2",
-    "node2" : "INTERNAL_vl_db12"
+    "node1" : "INTERNAL_vl_b1",
+    "node2" : "b1"
   }, {
     "node1" : "db12",
-    "node2" : "INTERNAL_vl_db12"
+    "node2" : "INTERNAL_vl_b2"
   }, {
-    "node1" : "dF2",
-    "node2" : "INTERNAL_vl_dF1"
+    "node1" : "INTERNAL_vl_b2",
+    "node2" : "b2"
   }, {
     "node1" : "dF1",
-    "node2" : "INTERNAL_vl_dF1"
+    "node2" : "INTERNAL_vl_dF2"
   }, {
-    "node1" : "b1",
-    "node2" : "INTERNAL_vl_db31"
+    "node1" : "INTERNAL_vl_dF2",
+    "node2" : "dF2"
   }, {
     "node1" : "db31",
-    "node2" : "INTERNAL_vl_db31"
+    "node2" : "INTERNAL_vl_b1"
   }, {
-    "node1" : "b2",
-    "node2" : "INTERNAL_vl_db32"
+    "node1" : "INTERNAL_vl_b1",
+    "node2" : "b1"
   }, {
     "node1" : "db32",
-    "node2" : "INTERNAL_vl_db32"
+    "node2" : "INTERNAL_vl_b2"
+  }, {
+    "node1" : "INTERNAL_vl_b2",
+    "node2" : "b2"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/testParallelFeedersOnBus.json b/single-line-diagram-core/src/test/resources/testParallelFeedersOnBus.json
index 8ca77a912..c769f793b 100644
--- a/single-line-diagram-core/src/test/resources/testParallelFeedersOnBus.json
+++ b/single-line-diagram-core/src/test/resources/testParallelFeedersOnBus.json
@@ -16,7 +16,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_l1_1",
+    "id" : "INTERNAL_vl_l1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -24,7 +24,7 @@
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_l1_2",
+    "id" : "INTERNAL_vl_l1",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 75.0,
@@ -139,7 +139,7 @@
           "xSpan" : 100.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "BUSCO_l1", "INTERNAL_vl_l1_1" ]
+        "nodes" : [ "bbs", "BUSCO_l1", "INTERNAL_vl_l1" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -200,7 +200,7 @@
               "xSpan" : 50.0,
               "ySpan" : 188.0
             },
-            "nodes" : [ "INTERNAL_vl_l1_1", "b", "INTERNAL_vl_l2" ]
+            "nodes" : [ "INTERNAL_vl_l1", "b", "INTERNAL_vl_l2" ]
           }, {
             "type" : "FEEDERPRIMARY",
             "cardinalities" : [ {
@@ -263,7 +263,7 @@
               "xSpan" : 50.0,
               "ySpan" : 188.0
             },
-            "nodes" : [ "INTERNAL_vl_l1_1", "INTERNAL_vl_l1_2" ]
+            "nodes" : [ "INTERNAL_vl_l1", "INTERNAL_vl_l1" ]
           }, {
             "type" : "FEEDERPRIMARY",
             "cardinalities" : [ {
@@ -284,7 +284,7 @@
               "xSpan" : 50.0,
               "ySpan" : 0.0
             },
-            "nodes" : [ "INTERNAL_vl_l1_2", "l1" ]
+            "nodes" : [ "INTERNAL_vl_l1", "l1" ]
           } ]
         } ]
       } ]
@@ -295,15 +295,15 @@
     "node2" : "BUSCO_l1"
   }, {
     "node1" : "b",
-    "node2" : "INTERNAL_vl_l1_1"
+    "node2" : "INTERNAL_vl_l1"
   }, {
     "node1" : "BUSCO_l1",
-    "node2" : "INTERNAL_vl_l1_1"
+    "node2" : "INTERNAL_vl_l1"
   }, {
-    "node1" : "INTERNAL_vl_l1_1",
-    "node2" : "INTERNAL_vl_l1_2"
+    "node1" : "INTERNAL_vl_l1",
+    "node2" : "INTERNAL_vl_l1"
   }, {
-    "node1" : "INTERNAL_vl_l1_2",
+    "node1" : "INTERNAL_vl_l1",
     "node2" : "l1"
   }, {
     "node1" : "b",
diff --git a/single-line-diagram-core/src/test/resources/testParallelFeedersOrders.json b/single-line-diagram-core/src/test/resources/testParallelFeedersOrders.json
index e09246021..27fae4e5f 100644
--- a/single-line-diagram-core/src/test/resources/testParallelFeedersOrders.json
+++ b/single-line-diagram-core/src/test/resources/testParallelFeedersOrders.json
@@ -8,7 +8,7 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_d",
+    "id" : "INTERNAL_vl_b",
     "componentType" : "NODE",
     "fictitious" : true,
     "x" : 50.0,
@@ -164,7 +164,7 @@
           "xSpan" : 100.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs", "d", "INTERNAL_vl_d" ]
+        "nodes" : [ "bbs", "d", "INTERNAL_vl_b" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -185,7 +185,7 @@
           "xSpan" : 100.0,
           "ySpan" : 94.0
         },
-        "nodes" : [ "INTERNAL_vl_d", "b", "INTERNAL_vl_f" ]
+        "nodes" : [ "INTERNAL_vl_b", "b", "INTERNAL_vl_f" ]
       }, {
         "type" : "BODYPARALLEL",
         "cardinalities" : [ {
@@ -345,6 +345,12 @@
   }, {
     "node1" : "INTERNAL_vl_f",
     "node2" : "b2"
+  }, {
+    "node1" : "d",
+    "node2" : "INTERNAL_vl_b"
+  }, {
+    "node1" : "INTERNAL_vl_b",
+    "node2" : "b"
   }, {
     "node1" : "INTERNAL_vl_f",
     "node2" : "INTERNAL_vl_l1"
@@ -357,12 +363,6 @@
   }, {
     "node1" : "INTERNAL_vl_l2",
     "node2" : "l2"
-  }, {
-    "node1" : "b",
-    "node2" : "INTERNAL_vl_d"
-  }, {
-    "node1" : "d",
-    "node2" : "INTERNAL_vl_d"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/testSerialBlocksInternCells.json b/single-line-diagram-core/src/test/resources/testSerialBlocksInternCells.json
index 23b29f7fc..24784d3d5 100644
--- a/single-line-diagram-core/src/test/resources/testSerialBlocksInternCells.json
+++ b/single-line-diagram-core/src/test/resources/testSerialBlocksInternCells.json
@@ -8,55 +8,55 @@
   "y" : 80.0,
   "nodes" : [ {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_f1",
+    "id" : "INTERNAL_vl_b11",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 150.0,
+    "x" : 100.0,
     "y" : 280.0,
     "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_f2",
+    "id" : "INTERNAL_vl_b12",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 75.0,
-    "y" : 240.0,
+    "x" : 200.0,
+    "y" : 280.0,
     "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_sd11",
+    "id" : "INTERNAL_vl_b21",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 100.0,
-    "y" : 280.0,
-    "orientation" : "RIGHT",
+    "x" : 25.0,
+    "y" : 240.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_sd12",
+    "id" : "INTERNAL_vl_b22",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 200.0,
-    "y" : 280.0,
-    "orientation" : "RIGHT",
+    "x" : 225.0,
+    "y" : 240.0,
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_sd21",
+    "id" : "INTERNAL_vl_f1",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 25.0,
-    "y" : 240.0,
+    "x" : 150.0,
+    "y" : 280.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "FICTITIOUS",
-    "id" : "INTERNAL_vl_sd22",
+    "id" : "INTERNAL_vl_f2",
     "componentType" : "NODE",
     "fictitious" : true,
-    "x" : 225.0,
+    "x" : 75.0,
     "y" : 240.0,
+    "orientation" : "RIGHT",
     "open" : false
   }, {
     "type" : "SWITCH",
@@ -273,7 +273,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs12", "sd12", "INTERNAL_vl_sd12" ]
+        "nodes" : [ "bbs12", "sd12", "INTERNAL_vl_b12" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -294,7 +294,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_f1", "b12", "INTERNAL_vl_sd12" ]
+        "nodes" : [ "INTERNAL_vl_f1", "b12", "INTERNAL_vl_b12" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -315,7 +315,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_sd11", "b11", "INTERNAL_vl_f1" ]
+        "nodes" : [ "INTERNAL_vl_b11", "b11", "INTERNAL_vl_f1" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -336,7 +336,7 @@
           "xSpan" : 0.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "sd11", "INTERNAL_vl_sd11" ]
+        "nodes" : [ "bbs11", "sd11", "INTERNAL_vl_b11" ]
       } ]
     }
   }, {
@@ -382,7 +382,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs22", "sd22", "INTERNAL_vl_sd22" ]
+        "nodes" : [ "bbs22", "sd22", "INTERNAL_vl_b22" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -403,7 +403,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_f2", "b22", "INTERNAL_vl_sd22" ]
+        "nodes" : [ "INTERNAL_vl_f2", "b22", "INTERNAL_vl_b22" ]
       }, {
         "type" : "BODYPRIMARY",
         "cardinalities" : [ {
@@ -424,7 +424,7 @@
           "xSpan" : 50.0,
           "ySpan" : 40.0
         },
-        "nodes" : [ "INTERNAL_vl_sd21", "b21", "INTERNAL_vl_f2" ]
+        "nodes" : [ "INTERNAL_vl_b21", "b21", "INTERNAL_vl_f2" ]
       }, {
         "type" : "LEGPRIMARY",
         "cardinalities" : [ {
@@ -445,7 +445,7 @@
           "xSpan" : 50.0,
           "ySpan" : 0.0
         },
-        "nodes" : [ "bbs11", "sd21", "INTERNAL_vl_sd21" ]
+        "nodes" : [ "bbs11", "sd21", "INTERNAL_vl_b21" ]
       } ]
     }
   } ],
@@ -473,30 +473,30 @@
   }, {
     "node1" : "bbs22",
     "node2" : "sd22"
-  }, {
-    "node1" : "b11",
-    "node2" : "INTERNAL_vl_sd11"
   }, {
     "node1" : "sd11",
-    "node2" : "INTERNAL_vl_sd11"
+    "node2" : "INTERNAL_vl_b11"
   }, {
-    "node1" : "b21",
-    "node2" : "INTERNAL_vl_sd21"
+    "node1" : "INTERNAL_vl_b11",
+    "node2" : "b11"
   }, {
     "node1" : "sd21",
-    "node2" : "INTERNAL_vl_sd21"
+    "node2" : "INTERNAL_vl_b21"
   }, {
-    "node1" : "b12",
-    "node2" : "INTERNAL_vl_sd12"
+    "node1" : "INTERNAL_vl_b21",
+    "node2" : "b21"
   }, {
     "node1" : "sd12",
-    "node2" : "INTERNAL_vl_sd12"
+    "node2" : "INTERNAL_vl_b12"
   }, {
-    "node1" : "b22",
-    "node2" : "INTERNAL_vl_sd22"
+    "node1" : "INTERNAL_vl_b12",
+    "node2" : "b12"
   }, {
     "node1" : "sd22",
-    "node2" : "INTERNAL_vl_sd22"
+    "node2" : "INTERNAL_vl_b22"
+  }, {
+    "node1" : "INTERNAL_vl_b22",
+    "node2" : "b22"
   } ],
   "multitermNodes" : [ ],
   "twtEdges" : [ ],
diff --git a/single-line-diagram-core/src/test/resources/topological_style_substation.svg b/single-line-diagram-core/src/test/resources/topological_style_substation.svg
index fb2f0d102..409289f7b 100644
--- a/single-line-diagram-core/src/test/resources/topological_style_substation.svg
+++ b/single-line-diagram-core/src/test/resources/topological_style_substation.svg
@@ -178,7 +178,7 @@
             bbs1
         
         
-            
+            
                 
             
             
@@ -190,11 +190,11 @@
                 
                 l
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -222,7 +222,7 @@
             
         
         
-            
+            
                 
             
             
@@ -231,11 +231,11 @@
             
                 2WT_1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -263,7 +263,7 @@
             
         
         
-            
+            
                 
             
             
@@ -272,11 +272,11 @@
             
                 3WT_1
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -311,7 +311,7 @@
             bbs2
         
         
-            
+            
                 
             
             
@@ -320,11 +320,11 @@
             
                 2WT_2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -352,7 +352,7 @@
             
         
         
-            
+            
                 
             
             
@@ -361,11 +361,11 @@
             
                 3WT_2
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
@@ -400,7 +400,7 @@
             bbs3
         
         
-            
+            
                 
             
             
@@ -409,11 +409,11 @@
             
                 3WT_3
             
-            
+            
                 
             
-            
-                
+            
+                
             
             
                 
diff --git a/single-line-diagram-core/src/test/resources/vlDiag_metadata.json b/single-line-diagram-core/src/test/resources/vlDiag_metadata.json
index 6b76257b7..3ad70a207 100644
--- a/single-line-diagram-core/src/test/resources/vlDiag_metadata.json
+++ b/single-line-diagram-core/src/test/resources/vlDiag_metadata.json
@@ -175,6 +175,27 @@
     "styleClass" : "sld-breaker"
   } ],
   "nodes" : [ {
+    "id" : "idINTERNAL_95_vl1_95_btrf17",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf16",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf15",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
     "id" : "idtrf7_95_THREE",
     "vid" : "vl1",
     "nextVId" : "vl3",
@@ -188,56 +209,63 @@
       "positionName" : "S_LABEL"
     } ]
   }, {
-    "id" : "iddtrct21",
+    "id" : "idINTERNAL_95_vl1_95_btrf14",
     "vid" : "vl1",
-    "componentType" : "BREAKER",
+    "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
-    "equipmentId" : "dtrct21",
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dload2",
+    "id" : "idINTERNAL_95_vl1_95_btrf13",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dload1",
+    "id" : "idINTERNAL_95_vl1_95_dtrct11",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_trf1_95_ONE",
+    "id" : "idINTERNAL_95_vl1_95_btrf12",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dgen1",
+    "id" : "idINTERNAL_95_vl1_95_btrf11",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
   }, {
-    "id" : "idbtrf18",
+    "id" : "iddtrct21",
     "vid" : "vl1",
     "componentType" : "BREAKER",
     "open" : false,
     "vlabel" : false,
-    "equipmentId" : "btrf18",
+    "equipmentId" : "dtrct21",
     "labels" : [ ]
   }, {
-    "id" : "idINTERNAL_95_vl1_95_dgen2",
+    "id" : "idINTERNAL_95_vl1_95_trf1_95_ONE",
     "vid" : "vl1",
     "componentType" : "NODE",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
+  }, {
+    "id" : "idbtrf18",
+    "vid" : "vl1",
+    "componentType" : "BREAKER",
+    "open" : false,
+    "vlabel" : false,
+    "equipmentId" : "btrf18",
+    "labels" : [ ]
   }, {
     "id" : "iddload2",
     "vid" : "vl1",
@@ -338,6 +366,13 @@
     "vlabel" : false,
     "equipmentId" : "btrf12",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_btrf18",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idbbs4",
     "vid" : "vl1",
@@ -422,55 +457,6 @@
       "id" : "bbs3_NW_LABEL",
       "positionName" : "NW_LABEL"
     } ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf13",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf12",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf15",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf14",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf17",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf16",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf18",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "iddtrf11",
     "vid" : "vl1",
@@ -492,13 +478,6 @@
       "id" : "trf6_THREE_N_LABEL",
       "positionName" : "N_LABEL"
     } ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dtrf11",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idtrf1_95_ONE",
     "vid" : "vl1",
@@ -608,20 +587,6 @@
     "vlabel" : false,
     "equipmentId" : "dtrf12",
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dsect12",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dsect11",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idtrf6",
     "vid" : "vl1",
@@ -662,6 +627,20 @@
     "vlabel" : false,
     "equipmentId" : "dgen2",
     "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_bload2",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_bload1",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "idtrf8_95_TWO",
     "vid" : "vl1",
@@ -763,26 +742,12 @@
       "id" : "load2_N_LABEL",
       "positionName" : "N_LABEL"
     } ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dsect21",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "GRID_vl1",
     "vid" : "vl1",
     "open" : false,
     "vlabel" : false,
     "labels" : [ ]
-  }, {
-    "id" : "idINTERNAL_95_vl1_95_dsect22",
-    "vid" : "vl1",
-    "componentType" : "NODE",
-    "open" : false,
-    "vlabel" : false,
-    "labels" : [ ]
   }, {
     "id" : "idbload2",
     "vid" : "vl1",
@@ -812,6 +777,27 @@
       "id" : "trf8_THREE_N_LABEL",
       "positionName" : "N_LABEL"
     } ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_dtrct21",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_bgen1",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
+  }, {
+    "id" : "idINTERNAL_95_vl1_95_bgen2",
+    "vid" : "vl1",
+    "componentType" : "NODE",
+    "open" : false,
+    "vlabel" : false,
+    "labels" : [ ]
   }, {
     "id" : "iddsect12",
     "vid" : "vl1",
@@ -856,6 +842,12 @@
     } ]
   } ],
   "wires" : [ {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf13_95_btrf13",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf13",
+    "nodeId2" : "idbtrf13",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
     "id" : "_95_vl1_95_trf6_95_THREE_95_trf6",
     "nodeId1" : "idtrf6_95_THREE",
     "nodeId2" : "idtrf6",
@@ -868,21 +860,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dsect11_95_INTERNAL_95_vl1_95_dsect11",
-    "nodeId1" : "iddsect11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect11",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf16_95_INTERNAL_95_vl1_95_dtrf16",
-    "nodeId1" : "iddtrf16",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf16",
+    "id" : "_95_vl1_95_dtrf11_95_INTERNAL_95_vl1_95_btrf11",
+    "nodeId1" : "iddtrf11",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf11",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dgen1_95_INTERNAL_95_vl1_95_dgen1",
-    "nodeId1" : "iddgen1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dgen1",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bgen1_95_bgen1",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bgen1",
+    "nodeId2" : "idbgen1",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -903,12 +889,6 @@
     "nodeId2" : "idgen2",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf15_95_INTERNAL_95_vl1_95_dtrf15",
-    "nodeId1" : "iddtrf15",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf15",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_trf6_95_TWO_95_trf6",
     "nodeId1" : "idtrf6_95_TWO",
@@ -922,15 +902,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrct11_95_INTERNAL_95_vl1_95_dsect12",
-    "nodeId1" : "iddtrct11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect12",
+    "id" : "_95_vl1_95_dtrf12_95_INTERNAL_95_vl1_95_btrf12",
+    "nodeId1" : "iddtrf12",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf12",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrct11_95_INTERNAL_95_vl1_95_dsect11",
-    "nodeId1" : "iddtrct11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect11",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf16_95_btrf16",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf16",
+    "nodeId2" : "idbtrf16",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -945,6 +925,12 @@
     "nodeId2" : "iddtrf13",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_dsect22_95_INTERNAL_95_vl1_95_dtrct21",
+    "nodeId1" : "iddsect22",
+    "nodeId2" : "idINTERNAL_95_vl1_95_dtrct21",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_btrf17_95_trf7",
     "nodeId1" : "idbtrf17",
@@ -958,45 +944,33 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bload1_95_INTERNAL_95_vl1_95_dload1",
-    "nodeId1" : "idbload1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dload1",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_bload1_95_INTERNAL_95_vl1_95_load1",
-    "nodeId1" : "idbload1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_load1",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dload2_95_INTERNAL_95_vl1_95_dload2",
-    "nodeId1" : "iddload2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dload2",
+    "id" : "_95_vl1_95_dtrf13_95_INTERNAL_95_vl1_95_btrf13",
+    "nodeId1" : "iddtrf13",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf13",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_trf8_95_THREE_95_trf8",
-    "nodeId1" : "idtrf8_95_THREE",
-    "nodeId2" : "idtrf8",
+    "id" : "_95_vl1_95_dtrf18_95_INTERNAL_95_vl1_95_btrf18",
+    "nodeId1" : "iddtrf18",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf18",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bgen2_95_INTERNAL_95_vl1_95_dgen2",
-    "nodeId1" : "idbgen2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dgen2",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf14_95_btrf14",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf14",
+    "nodeId2" : "idbtrf14",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf12_95_INTERNAL_95_vl1_95_dtrf12",
-    "nodeId1" : "idbtrf12",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf12",
+    "id" : "_95_vl1_95_bload1_95_INTERNAL_95_vl1_95_load1",
+    "nodeId1" : "idbload1",
+    "nodeId2" : "idINTERNAL_95_vl1_95_load1",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf17_95_INTERNAL_95_vl1_95_dtrf17",
-    "nodeId1" : "idbtrf17",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf17",
+    "id" : "_95_vl1_95_trf8_95_THREE_95_trf8",
+    "nodeId1" : "idtrf8_95_THREE",
+    "nodeId2" : "idtrf8",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1005,12 +979,6 @@
     "nodeId2" : "iddgen2",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf13_95_INTERNAL_95_vl1_95_dtrf13",
-    "nodeId1" : "iddtrf13",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf13",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_bgen2_95_INTERNAL_95_vl1_95_gen2",
     "nodeId1" : "idbgen2",
@@ -1018,9 +986,9 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrf18_95_INTERNAL_95_vl1_95_dtrf18",
-    "nodeId1" : "iddtrf18",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf18",
+    "id" : "_95_vl1_95_dload2_95_INTERNAL_95_vl1_95_bload2",
+    "nodeId1" : "iddload2",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bload2",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1029,6 +997,12 @@
     "nodeId2" : "idload1",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf17_95_btrf17",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf17",
+    "nodeId2" : "idbtrf17",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf5_95_ONE_95_trf5_95_ONE",
     "nodeId1" : "idINTERNAL_95_vl1_95_trf5_95_ONE",
@@ -1041,12 +1015,24 @@
     "nodeId2" : "iddgen1",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bload2_95_bload2",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bload2",
+    "nodeId2" : "idbload2",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_bbs4_95_dtrf14",
     "nodeId1" : "idbbs4",
     "nodeId2" : "iddtrf14",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_dtrf15_95_INTERNAL_95_vl1_95_btrf15",
+    "nodeId1" : "iddtrf15",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf15",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf1_95_ONE_95_trf1_95_ONE",
     "nodeId1" : "idINTERNAL_95_vl1_95_trf1_95_ONE",
@@ -1071,12 +1057,6 @@
     "nodeId2" : "idload2",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrf11_95_INTERNAL_95_vl1_95_dtrf11",
-    "nodeId1" : "iddtrf11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf11",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_bbs1_95_dtrf15",
     "nodeId1" : "idbbs1",
@@ -1084,9 +1064,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf15_95_INTERNAL_95_vl1_95_dtrf15",
-    "nodeId1" : "idbtrf15",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf15",
+    "id" : "_95_vl1_95_dtrf16_95_INTERNAL_95_vl1_95_btrf16",
+    "nodeId1" : "iddtrf16",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf16",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_dsect11_95_INTERNAL_95_vl1_95_dtrct11",
+    "nodeId1" : "iddsect11",
+    "nodeId2" : "idINTERNAL_95_vl1_95_dtrct11",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1107,12 +1093,6 @@
     "nodeId2" : "idtrf2_95_ONE",
     "straight" : false,
     "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dtrct21_95_INTERNAL_95_vl1_95_dsect21",
-    "nodeId1" : "iddtrct21",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect21",
-    "straight" : false,
-    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_INTERNAL_95_vl1_95_gen1_95_gen1",
     "nodeId1" : "idINTERNAL_95_vl1_95_gen1",
@@ -1120,33 +1100,21 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrct21_95_INTERNAL_95_vl1_95_dsect22",
-    "nodeId1" : "iddtrct21",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect22",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_bload2_95_INTERNAL_95_vl1_95_dload2",
-    "nodeId1" : "idbload2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dload2",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_btrf14_95_INTERNAL_95_vl1_95_dtrf14",
-    "nodeId1" : "idbtrf14",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf14",
+    "id" : "_95_vl1_95_dtrf17_95_INTERNAL_95_vl1_95_btrf17",
+    "nodeId1" : "iddtrf17",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf17",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dsect21_95_INTERNAL_95_vl1_95_dsect21",
-    "nodeId1" : "iddsect21",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect21",
+    "id" : "_95_vl1_95_dgen2_95_INTERNAL_95_vl1_95_bgen2",
+    "nodeId1" : "iddgen2",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bgen2",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dsect12_95_INTERNAL_95_vl1_95_dsect12",
-    "nodeId1" : "iddsect12",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect12",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_dtrct11_95_dtrct11",
+    "nodeId1" : "idINTERNAL_95_vl1_95_dtrct11",
+    "nodeId2" : "iddtrct11",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1155,6 +1123,12 @@
     "nodeId2" : "idtrf8",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf11_95_btrf11",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf11",
+    "nodeId2" : "idbtrf11",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_INTERNAL_95_vl1_95_trf3_95_ONE_95_trf3_95_ONE",
     "nodeId1" : "idINTERNAL_95_vl1_95_trf3_95_ONE",
@@ -1162,33 +1136,33 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf18_95_INTERNAL_95_vl1_95_dtrf18",
-    "nodeId1" : "idbtrf18",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf18",
+    "id" : "_95_vl1_95_bgen1_95_INTERNAL_95_vl1_95_gen1",
+    "nodeId1" : "idbgen1",
+    "nodeId2" : "idINTERNAL_95_vl1_95_gen1",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf13_95_INTERNAL_95_vl1_95_dtrf13",
-    "nodeId1" : "idbtrf13",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf13",
+    "id" : "_95_vl1_95_dload1_95_INTERNAL_95_vl1_95_bload1",
+    "nodeId1" : "iddload1",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bload1",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dsect22_95_INTERNAL_95_vl1_95_dsect22",
-    "nodeId1" : "iddsect22",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dsect22",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bload1_95_bload1",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bload1",
+    "nodeId2" : "idbload1",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bgen1_95_INTERNAL_95_vl1_95_gen1",
-    "nodeId1" : "idbgen1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_gen1",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf12_95_btrf12",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf12",
+    "nodeId2" : "idbtrf12",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrf14_95_INTERNAL_95_vl1_95_dtrf14",
-    "nodeId1" : "iddtrf14",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf14",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_bgen2_95_bgen2",
+    "nodeId1" : "idINTERNAL_95_vl1_95_bgen2",
+    "nodeId2" : "idbgen2",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1215,12 +1189,24 @@
     "nodeId2" : "iddsect21",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_dgen1_95_INTERNAL_95_vl1_95_bgen1",
+    "nodeId1" : "iddgen1",
+    "nodeId2" : "idINTERNAL_95_vl1_95_bgen1",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_dsect12_95_bbs2",
     "nodeId1" : "iddsect12",
     "nodeId2" : "idbbs2",
     "straight" : false,
     "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf18_95_btrf18",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf18",
+    "nodeId2" : "idbtrf18",
+    "straight" : false,
+    "snakeLine" : false
   }, {
     "id" : "_95_vl1_95_btrf16_95_trf6",
     "nodeId1" : "idbtrf16",
@@ -1240,9 +1226,15 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dload1_95_INTERNAL_95_vl1_95_dload1",
-    "nodeId1" : "iddload1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dload1",
+    "id" : "_95_vl1_95_dtrf14_95_INTERNAL_95_vl1_95_btrf14",
+    "nodeId1" : "iddtrf14",
+    "nodeId2" : "idINTERNAL_95_vl1_95_btrf14",
+    "straight" : false,
+    "snakeLine" : false
+  }, {
+    "id" : "_95_vl1_95_dsect12_95_INTERNAL_95_vl1_95_dtrct11",
+    "nodeId1" : "iddsect12",
+    "nodeId2" : "idINTERNAL_95_vl1_95_dtrct11",
     "straight" : false,
     "snakeLine" : false
   }, {
@@ -1258,51 +1250,33 @@
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf11_95_INTERNAL_95_vl1_95_dtrf11",
-    "nodeId1" : "idbtrf11",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf11",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_bbs2_95_dtrf18",
-    "nodeId1" : "idbbs2",
-    "nodeId2" : "iddtrf18",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_trf8_95_TWO_95_trf8",
-    "nodeId1" : "idtrf8_95_TWO",
-    "nodeId2" : "idtrf8",
-    "straight" : false,
-    "snakeLine" : false
-  }, {
-    "id" : "_95_vl1_95_dgen2_95_INTERNAL_95_vl1_95_dgen2",
-    "nodeId1" : "iddgen2",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dgen2",
+    "id" : "_95_vl1_95_dsect21_95_INTERNAL_95_vl1_95_dtrct21",
+    "nodeId1" : "iddsect21",
+    "nodeId2" : "idINTERNAL_95_vl1_95_dtrct21",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrf12_95_INTERNAL_95_vl1_95_dtrf12",
-    "nodeId1" : "iddtrf12",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf12",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_dtrct21_95_dtrct21",
+    "nodeId1" : "idINTERNAL_95_vl1_95_dtrct21",
+    "nodeId2" : "iddtrct21",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_btrf16_95_INTERNAL_95_vl1_95_dtrf16",
-    "nodeId1" : "idbtrf16",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf16",
+    "id" : "_95_vl1_95_INTERNAL_95_vl1_95_btrf15_95_btrf15",
+    "nodeId1" : "idINTERNAL_95_vl1_95_btrf15",
+    "nodeId2" : "idbtrf15",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_dtrf17_95_INTERNAL_95_vl1_95_dtrf17",
-    "nodeId1" : "iddtrf17",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dtrf17",
+    "id" : "_95_vl1_95_bbs2_95_dtrf18",
+    "nodeId1" : "idbbs2",
+    "nodeId2" : "iddtrf18",
     "straight" : false,
     "snakeLine" : false
   }, {
-    "id" : "_95_vl1_95_bgen1_95_INTERNAL_95_vl1_95_dgen1",
-    "nodeId1" : "idbgen1",
-    "nodeId2" : "idINTERNAL_95_vl1_95_dgen1",
+    "id" : "_95_vl1_95_trf8_95_TWO_95_trf8",
+    "nodeId1" : "idtrf8_95_TWO",
+    "nodeId2" : "idtrf8",
     "straight" : false,
     "snakeLine" : false
   } ],

From 975b90f6af4116ee05b5329ea4fdea5452ba9700 Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Fri, 22 Jul 2022 01:07:11 +0200
Subject: [PATCH 07/15] Add a parameter which lists the components displayed on
 busbars

Signed-off-by: Florian Dupuy 
---
 .../sld/layout/LayoutGraphAdapter.java        | 17 ++++++++++-------
 .../powsybl/sld/layout/LayoutParameters.java  | 19 ++++++++++++++++++-
 .../layout/PositionVoltageLevelLayout.java    |  2 +-
 .../TestSldClassSubstationMetadata.json       |  3 ++-
 .../resources/TestSldClassVlMetadata.json     |  3 ++-
 .../test/resources/substDiag_metadata.json    |  3 ++-
 .../src/test/resources/vlDiag_metadata.json   |  3 ++-
 7 files changed, 37 insertions(+), 13 deletions(-)

diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java
index b431910b0..6c990990f 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutGraphAdapter.java
@@ -3,6 +3,7 @@
 import com.powsybl.sld.model.graphs.VoltageLevelGraph;
 import com.powsybl.sld.model.nodes.*;
 
+import java.util.List;
 import java.util.Set;
 import java.util.function.Predicate;
 import java.util.stream.Collectors;
@@ -16,7 +17,7 @@ public LayoutGraphAdapter(boolean removeUnnecessaryFictitiousNodes, boolean subs
         this.substituteSingularFictitiousByFeederNode = substituteSingularFictitiousByFeederNode;
     }
 
-    void run(VoltageLevelGraph graph) {
+    void run(VoltageLevelGraph graph, LayoutParameters layoutParameters) {
         graph.substituteFictitiousNodesMirroringBusNodes();
         if (removeUnnecessaryFictitiousNodes) {
             graph.removeUnnecessaryFictitiousNodes();
@@ -27,19 +28,21 @@ void run(VoltageLevelGraph graph) {
 
         graph.extendBusesConnectedToBuses();
 
-        Predicate nodesOnBus = node -> node instanceof SwitchNode && ((SwitchNode) node).getKind() == SwitchNode.SwitchKind.DISCONNECTOR;
-        Set nodesOnBusBetweenBuses = getNodesOnBusBetweenBuses(graph, nodesOnBus);
-        nodesOnBus = nodesOnBus.and(node -> !nodesOnBusBetweenBuses.contains(node));
-
+        Predicate nodesOnBus = getNodesOnBusPredicate(graph, layoutParameters.getComponentsOnBusbars());
         graph.insertBusConnections(nodesOnBus);
         graph.insertHookNodesAtBuses();
         graph.insertHookNodesAtFeeders();
     }
 
-    private Set getNodesOnBusBetweenBuses(VoltageLevelGraph graph, Predicate nodesOnBus) {
+    private Predicate getNodesOnBusPredicate(VoltageLevelGraph graph, List componentsOnBusbars) {
+        Set nodesOnBusBetweenBuses = getNodesOnBusBetweenBuses(graph, componentsOnBusbars);
+        return node -> componentsOnBusbars.contains(node.getComponentType()) && !nodesOnBusBetweenBuses.contains(node);
+    }
+
+    private Set getNodesOnBusBetweenBuses(VoltageLevelGraph graph, List componentsOnBusbars) {
         return graph.getNodeBuses().stream()
                 .flatMap(nodeBus -> nodeBus.getAdjacentNodes().stream())
-                .filter(nodesOnBus)
+                .filter(nodeConnectedToBus -> componentsOnBusbars.contains(nodeConnectedToBus.getComponentType()))
                 .filter(n -> n.getAdjacentNodes().stream().allMatch(BusNode.class::isInstance))
                 .collect(Collectors.toSet());
     }
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutParameters.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutParameters.java
index 44147a1fa..570afb605 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutParameters.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/LayoutParameters.java
@@ -10,7 +10,10 @@
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.powsybl.sld.library.ComponentSize;
+import com.powsybl.sld.library.ComponentTypeName;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
@@ -88,6 +91,9 @@ public class LayoutParameters {
 
     private int feederInfoPrecision = 0;
 
+    /** Components which are displayed on busbars */
+    private List componentsOnBusbars = List.of(ComponentTypeName.DISCONNECTOR);
+
     @JsonIgnore
     private Map componentsSize;
 
@@ -131,7 +137,8 @@ public LayoutParameters(@JsonProperty("voltageLevelPadding") Padding voltageLeve
                             @JsonProperty("feederInfosIntraMargin") double feederInfosIntraMargin,
                             @JsonProperty("busInfoMargin") double busInfoMargin,
                             @JsonProperty("busbarsAlignment") Alignment busbarsAlignment,
-                            @JsonProperty("feederInfoPrecision") int feederInfoPrecision) {
+                            @JsonProperty("feederInfoPrecision") int feederInfoPrecision,
+                            @JsonProperty("componentsOnBusbars") List componentsOnBusbars) {
         this.diagramPadding = diagramPadding;
         this.voltageLevelPadding = voltageLevelPadding;
         this.verticalSpaceBus = verticalSpaceBus;
@@ -168,6 +175,7 @@ public LayoutParameters(@JsonProperty("voltageLevelPadding") Padding voltageLeve
         this.busInfoMargin = busInfoMargin;
         this.busbarsAlignment = busbarsAlignment;
         this.feederInfoPrecision = feederInfoPrecision;
+        this.componentsOnBusbars = new ArrayList<>(componentsOnBusbars);
     }
 
     public LayoutParameters(LayoutParameters other) {
@@ -548,6 +556,15 @@ public LayoutParameters setFeederInfoPrecision(int feederInfoPrecision) {
         return this;
     }
 
+    public List getComponentsOnBusbars() {
+        return componentsOnBusbars;
+    }
+
+    public LayoutParameters setComponentsOnBusbars(List componentsOnBusbars) {
+        this.componentsOnBusbars = componentsOnBusbars;
+        return this;
+    }
+
     public enum Alignment {
         FIRST, LAST, MIDDLE, NONE;
     }
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
index f2d5a7033..0a6c04ab7 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
@@ -53,7 +53,7 @@ public PositionVoltageLevelLayout(VoltageLevelGraph graph, LayoutGraphAdapter la
     public void run(LayoutParameters layoutParam) {
         LOGGER.info("Running voltage level layout");
 
-        graphAdapter.run(getGraph());
+        graphAdapter.run(getGraph(), layoutParam);
         cellDetector.detectCells(getGraph());
         blockOrganizer.organize(getGraph());
 
diff --git a/single-line-diagram-core/src/test/resources/TestSldClassSubstationMetadata.json b/single-line-diagram-core/src/test/resources/TestSldClassSubstationMetadata.json
index 844216d64..5fbdcc0e5 100644
--- a/single-line-diagram-core/src/test/resources/TestSldClassSubstationMetadata.json
+++ b/single-line-diagram-core/src/test/resources/TestSldClassSubstationMetadata.json
@@ -573,6 +573,7 @@
     "feederInfosIntraMargin" : 10.0,
     "busInfoMargin" : 0.0,
     "busbarsAlignment" : "FIRST",
-    "feederInfoPrecision" : 0
+    "feederInfoPrecision" : 0,
+    "componentsOnBusbars" : [ "DISCONNECTOR" ]
   }
 }
\ No newline at end of file
diff --git a/single-line-diagram-core/src/test/resources/TestSldClassVlMetadata.json b/single-line-diagram-core/src/test/resources/TestSldClassVlMetadata.json
index 8669b5f84..39510ddb7 100644
--- a/single-line-diagram-core/src/test/resources/TestSldClassVlMetadata.json
+++ b/single-line-diagram-core/src/test/resources/TestSldClassVlMetadata.json
@@ -336,6 +336,7 @@
     "feederInfosIntraMargin" : 10.0,
     "busInfoMargin" : 0.0,
     "busbarsAlignment" : "FIRST",
-    "feederInfoPrecision" : 0
+    "feederInfoPrecision" : 0,
+    "componentsOnBusbars" : [ "DISCONNECTOR" ]
   }
 }
\ No newline at end of file
diff --git a/single-line-diagram-core/src/test/resources/substDiag_metadata.json b/single-line-diagram-core/src/test/resources/substDiag_metadata.json
index 8e2144f27..e17b5974a 100644
--- a/single-line-diagram-core/src/test/resources/substDiag_metadata.json
+++ b/single-line-diagram-core/src/test/resources/substDiag_metadata.json
@@ -2888,6 +2888,7 @@
     "feederInfosIntraMargin" : 10.0,
     "busInfoMargin" : 0.0,
     "busbarsAlignment" : "FIRST",
-    "feederInfoPrecision" : 0
+    "feederInfoPrecision" : 0,
+    "componentsOnBusbars" : [ "DISCONNECTOR" ]
   }
 }
\ No newline at end of file
diff --git a/single-line-diagram-core/src/test/resources/vlDiag_metadata.json b/single-line-diagram-core/src/test/resources/vlDiag_metadata.json
index 3ad70a207..164ff8365 100644
--- a/single-line-diagram-core/src/test/resources/vlDiag_metadata.json
+++ b/single-line-diagram-core/src/test/resources/vlDiag_metadata.json
@@ -1446,6 +1446,7 @@
     "feederInfosIntraMargin" : 10.0,
     "busInfoMargin" : 0.0,
     "busbarsAlignment" : "FIRST",
-    "feederInfoPrecision" : 0
+    "feederInfoPrecision" : 0,
+    "componentsOnBusbars" : [ "DISCONNECTOR" ]
   }
 }
\ No newline at end of file

From 02611c1706064e8a9f982de0dc3ac56f3bb6063f Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Fri, 22 Jul 2022 09:38:48 +0200
Subject: [PATCH 08/15] Fix case of feeder with several neighbors

Signed-off-by: Florian Dupuy 
---
 .../sld/model/graphs/VoltageLevelGraph.java   | 27 ++++++++++++++-----
 1 file changed, 20 insertions(+), 7 deletions(-)

diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/graphs/VoltageLevelGraph.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/graphs/VoltageLevelGraph.java
index 02d019ac0..44561617c 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/graphs/VoltageLevelGraph.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/graphs/VoltageLevelGraph.java
@@ -330,6 +330,7 @@ private void insertBusHookNode(Node nodeOnBus, Node node) {
 
         // Update edges
         if (node.getType() == NodeType.FEEDER) {
+            // The feeder node might have several adjacent nodes (feeder fork for instance)
             for (Node neighbor : node.getAdjacentNodes()) {
                 addEdge(neighbor, fStackNode);
                 removeEdge(neighbor, node);
@@ -356,15 +357,27 @@ public void insertHookNodesAtFeeders() {
     }
 
     private void insertFeederHookNode(Node feederNode) {
-        // Create a new hook node
-        InternalNode nf = NodeFactory.createInternalNode(this, feederNode.getId());
+        // Create a new hook node to insert before feeder node
+        InternalNode hookNode = NodeFactory.createInternalNode(this, feederNode.getId());
+
+        List adjacentNodes = feederNode.getAdjacentNodes();
+        if (adjacentNodes.size() == 1) {
+            // Update edges: create the 2 new ones and remove the old one
+            Node singleNeighbor = adjacentNodes.get(0);
+            removeEdge(singleNeighbor, feederNode);
+            addEdge(singleNeighbor, hookNode);
+        } else {
+            // Create an extra fork node, otherwise the hook-node is a node with several neighbors (fork node)
+            InternalNode forkNode = NodeFactory.createInternalNode(this, feederNode.getId() + "_fork");
 
-        // Create all new edges and remove old ones
-        for (Node neighbor : feederNode.getAdjacentNodes()) {
-            addEdge(neighbor, nf);
-            removeEdge(neighbor, feederNode);
+            // Create all new edges and remove old ones
+            for (Node neighbor : adjacentNodes) {
+                addEdge(neighbor, forkNode);
+                removeEdge(neighbor, feederNode);
+            }
+            addEdge(forkNode, hookNode);
         }
-        addEdge(nf, feederNode);
+        addEdge(hookNode, feederNode);
     }
 
     public void extendBusesConnectedToBuses() {

From c4f5e37743aa2ad43c1a153f427f5143cb4ded17 Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Fri, 22 Jul 2022 10:17:39 +0200
Subject: [PATCH 09/15] Check consistency of primary blocks in BlockOrganizer

Signed-off-by: Florian Dupuy 
---
 .../powsybl/sld/layout/BlockOrganizer.java    | 34 ++++++++++++++++++-
 .../sld/layout/CellBlockDecomposer.java       |  9 ++---
 .../layout/PositionVoltageLevelLayout.java    |  2 +-
 .../sld/model/blocks/FeederPrimaryBlock.java  |  8 -----
 .../sld/model/blocks/LegPrimaryBlock.java     | 27 ++++-----------
 .../sld/model/cells/AbstractBusCell.java      | 21 +++++++-----
 .../com/powsybl/sld/model/cells/BusCell.java  |  5 ++-
 7 files changed, 61 insertions(+), 45 deletions(-)

diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/BlockOrganizer.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/BlockOrganizer.java
index 532e3e7ed..be38be134 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/BlockOrganizer.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/BlockOrganizer.java
@@ -6,12 +6,17 @@
  */
 package com.powsybl.sld.layout;
 
+import com.powsybl.commons.PowsyblException;
+import com.powsybl.sld.model.blocks.FeederPrimaryBlock;
 import com.powsybl.sld.model.blocks.LegPrimaryBlock;
+import com.powsybl.sld.model.cells.BusCell;
 import com.powsybl.sld.model.cells.Cell;
 import com.powsybl.sld.model.cells.ExternCell;
 import com.powsybl.sld.model.cells.InternCell;
 import com.powsybl.sld.model.coordinate.Side;
 import com.powsybl.sld.model.graphs.VoltageLevelGraph;
+import com.powsybl.sld.model.nodes.BusConnection;
+import com.powsybl.sld.model.nodes.Node;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -22,6 +27,7 @@
 import static com.powsybl.sld.model.blocks.Block.Extremity.END;
 import static com.powsybl.sld.model.blocks.Block.Extremity.START;
 import static com.powsybl.sld.model.cells.Cell.CellType.INTERN;
+import static com.powsybl.sld.model.nodes.Node.NodeType.*;
 
 /**
  * @author Benoit Jeanson 
@@ -53,10 +59,11 @@ public BlockOrganizer(PositionFinder positionFinder, boolean stack, boolean exce
     /**
      * Organize cells into blocks and call the layout resolvers
      */
-    public void organize(VoltageLevelGraph graph) {
+    public void organize(VoltageLevelGraph graph, LayoutParameters layoutParameters) {
         LOGGER.info("Organizing graph cells into blocks");
         graph.getBusCellStream().forEach(cell -> {
             CellBlockDecomposer.determineComplexCell(graph, cell, exceptionIfPatternNotHandled);
+            checkBlocks(cell, layoutParameters);
             if (cell.getType() == INTERN) {
                 ((InternCell) cell).organizeBlocks();
             }
@@ -77,6 +84,31 @@ public void organize(VoltageLevelGraph graph) {
         new BlockPositionner().determineBlockPositions(graph, subsections, busInfoMap);
     }
 
+    private void checkBlocks(BusCell cell, LayoutParameters layoutParameters) {
+        cell.getLegPrimaryBlocks().forEach(lpb -> checkLegPrimaryBlockConsistency(lpb, layoutParameters.getComponentsOnBusbars()));
+        cell.getFeederPrimaryBlocks().forEach(this::checkFeederPrimaryBlockConsistency);
+    }
+
+    private void checkLegPrimaryBlockConsistency(LegPrimaryBlock legPrimaryBlock, List componentsOnBus) {
+        List nodes = legPrimaryBlock.getNodes();
+        boolean consistent = nodes.size() == 3
+                && nodes.get(0).getType() == Node.NodeType.BUS
+                && nodes.get(1) instanceof BusConnection || componentsOnBus.contains(nodes.get(1).getComponentType())
+                && (nodes.get(2).getType() == Node.NodeType.FICTITIOUS || nodes.get(2).getType() == Node.NodeType.SHUNT);
+        if (!consistent) {
+            throw new PowsyblException("LegPrimaryBlock not consistent");
+        }
+    }
+
+    private void checkFeederPrimaryBlockConsistency(FeederPrimaryBlock lpb) {
+        List nodes = lpb.getNodes();
+        boolean consistent = nodes.size() == 2 && nodes.get(1).getType() == FEEDER
+                && (nodes.get(0).getType() == FICTITIOUS || nodes.get(0).getType() == SHUNT);
+        if (!consistent) {
+            throw new PowsyblException("FeederPrimaryBlock not consistent");
+        }
+    }
+
     /**
      * Determines blocks connected to busbar that are stackable
      */
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/CellBlockDecomposer.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/CellBlockDecomposer.java
index b1412080e..c20fea778 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/CellBlockDecomposer.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/CellBlockDecomposer.java
@@ -62,11 +62,8 @@ private static List createPrimaryBlock(BusCell busCell) {
     }
 
     private static void mergeBlocks(VoltageLevelGraph vlGraph, BusCell busCell, List blocks, boolean exceptionIfPatternNotHandled) {
-        // Search all blocks connected to a busbar inside the primary blocks list
-        List primaryLegBlocks = blocks.stream()
-                .filter(b -> b instanceof LegPrimaryBlock)
-                .map(LegPrimaryBlock.class::cast)
-                .collect(Collectors.toList());
+        List legPrimaryBlocks = blocks.stream().filter(LegPrimaryBlock.class::isInstance).map(LegPrimaryBlock.class::cast).collect(Collectors.toList());
+        List feederPrimaryBlocks = blocks.stream().filter(FeederPrimaryBlock.class::isInstance).map(FeederPrimaryBlock.class::cast).collect(Collectors.toList());
 
         // Merge blocks to obtain a hierarchy of blocks
         while (blocks.size() != 1) {
@@ -84,7 +81,7 @@ private static void mergeBlocks(VoltageLevelGraph vlGraph, BusCell busCell, List
                 }
             }
         }
-        busCell.blocksSetting(blocks.get(0), primaryLegBlocks);
+        busCell.blocksSetting(blocks.get(0), legPrimaryBlocks, feederPrimaryBlocks);
     }
 
     /**
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
index 0a6c04ab7..e837d83bf 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/layout/PositionVoltageLevelLayout.java
@@ -55,7 +55,7 @@ public void run(LayoutParameters layoutParam) {
 
         graphAdapter.run(getGraph(), layoutParam);
         cellDetector.detectCells(getGraph());
-        blockOrganizer.organize(getGraph());
+        blockOrganizer.organize(getGraph(), layoutParam);
 
         calculateMaxCellHeight(layoutParam);
         calculateBusNodeCoord(getGraph(), layoutParam);
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/blocks/FeederPrimaryBlock.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/blocks/FeederPrimaryBlock.java
index b56fb37e8..96ceeda8e 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/blocks/FeederPrimaryBlock.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/blocks/FeederPrimaryBlock.java
@@ -29,14 +29,6 @@ public FeederPrimaryBlock(List nodes) {
         if (getExtremityNode(START).getType() == FEEDER) {
             super.reverseBlock();
         }
-        if (!checkConsistency()) {
-            throw new PowsyblException("FeederPrimaryBlock not consistent");
-        }
-    }
-
-    private boolean checkConsistency() {
-        return nodes.size() == 2 && nodes.get(1).getType() == FEEDER
-            && (nodes.get(0).getType() == FICTITIOUS || nodes.get(0).getType() == SHUNT);
     }
 
     public FeederNode getFeederNode() {
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/blocks/LegPrimaryBlock.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/blocks/LegPrimaryBlock.java
index 14496ea04..31b5aba28 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/blocks/LegPrimaryBlock.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/blocks/LegPrimaryBlock.java
@@ -11,16 +11,18 @@
 import com.powsybl.sld.model.nodes.BusConnection;
 import com.powsybl.sld.model.nodes.BusNode;
 import com.powsybl.sld.model.nodes.Node;
-import com.powsybl.sld.model.nodes.SwitchNode;
 
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
-import static com.powsybl.sld.model.blocks.Block.Extremity.*;
-import static com.powsybl.sld.model.blocks.Block.Type.*;
-import static com.powsybl.sld.model.nodes.Node.NodeType.*;
-import static com.powsybl.sld.model.coordinate.Position.Dimension.*;
+import static com.powsybl.sld.model.blocks.Block.Extremity.END;
+import static com.powsybl.sld.model.blocks.Block.Extremity.START;
+import static com.powsybl.sld.model.blocks.Block.Type.LEGPRIMARY;
+import static com.powsybl.sld.model.coordinate.Position.Dimension.H;
+import static com.powsybl.sld.model.coordinate.Position.Dimension.V;
+import static com.powsybl.sld.model.nodes.Node.NodeType.BUS;
+import static com.powsybl.sld.model.nodes.Node.NodeType.FICTITIOUS;
 
 /**
  * @author Benoit Jeanson 
@@ -36,21 +38,6 @@ public LegPrimaryBlock(List nodes) {
         if (getExtremityNode(END).getType() == BUS) {
             super.reverseBlock();
         }
-        if (!checkConsistency()) {
-            throw new PowsyblException("LegPrimaryBlock not consistent");
-        }
-    }
-
-    private boolean checkConsistency() {
-        return nodes.size() == 3
-                && nodes.get(0).getType() == BUS
-                && checkMiddleNode(nodes.get(1))
-                && (nodes.get(2).getType() == FICTITIOUS || nodes.get(2).getType() == Node.NodeType.SHUNT);
-    }
-
-    private boolean checkMiddleNode(Node node) {
-        return node instanceof BusConnection
-            || (node instanceof SwitchNode && ((SwitchNode) node).getKind() == SwitchNode.SwitchKind.DISCONNECTOR);
     }
 
     public BusNode getBusNode() {
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/cells/AbstractBusCell.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/cells/AbstractBusCell.java
index 3cae70910..934114e17 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/cells/AbstractBusCell.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/cells/AbstractBusCell.java
@@ -8,16 +8,14 @@
 
 import com.fasterxml.jackson.core.JsonGenerator;
 import com.powsybl.sld.model.blocks.Block;
+import com.powsybl.sld.model.blocks.FeederPrimaryBlock;
 import com.powsybl.sld.model.blocks.LegPrimaryBlock;
 import com.powsybl.sld.model.coordinate.Direction;
 import com.powsybl.sld.model.nodes.BusNode;
 import com.powsybl.sld.model.nodes.Node;
 
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.Optional;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -28,7 +26,8 @@
  */
 public abstract class AbstractBusCell extends AbstractCell implements BusCell {
 
-    private List legPrimaryBlocks = new ArrayList<>();
+    private final List legPrimaryBlocks = new ArrayList<>();
+    private final List feederPrimaryBlocks = new ArrayList<>();
 
     private Integer order = null;
 
@@ -39,9 +38,10 @@ protected AbstractBusCell(int cellIndex, CellType type, Collection nodes)
     }
 
     @Override
-    public void blocksSetting(Block rootBlock, List primaryBlocksConnectedToBus) {
+    public void blocksSetting(Block rootBlock, List primaryBlocksConnectedToBus, List feederPrimaryBlocks) {
         setRootBlock(rootBlock);
-        this.legPrimaryBlocks = new ArrayList<>(primaryBlocksConnectedToBus);
+        this.legPrimaryBlocks.addAll(primaryBlocksConnectedToBus);
+        this.feederPrimaryBlocks.addAll(feederPrimaryBlocks);
     }
 
     @Override
@@ -54,7 +54,12 @@ public List getBusNodes() {
 
     @Override
     public List getLegPrimaryBlocks() {
-        return new ArrayList<>(legPrimaryBlocks);
+        return Collections.unmodifiableList(legPrimaryBlocks);
+    }
+
+    @Override
+    public List getFeederPrimaryBlocks() {
+        return Collections.unmodifiableList(feederPrimaryBlocks);
     }
 
     @Override
diff --git a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/cells/BusCell.java b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/cells/BusCell.java
index 14127f510..0c7ac7429 100644
--- a/single-line-diagram-core/src/main/java/com/powsybl/sld/model/cells/BusCell.java
+++ b/single-line-diagram-core/src/main/java/com/powsybl/sld/model/cells/BusCell.java
@@ -6,6 +6,7 @@
  */
 package com.powsybl.sld.model.cells;
 import com.powsybl.sld.model.blocks.Block;
+import com.powsybl.sld.model.blocks.FeederPrimaryBlock;
 import com.powsybl.sld.model.blocks.LegPrimaryBlock;
 import com.powsybl.sld.model.coordinate.Direction;
 import com.powsybl.sld.model.nodes.BusNode;
@@ -21,10 +22,12 @@ public interface BusCell extends Cell {
 
     List getBusNodes();
 
-    void blocksSetting(Block rootBlock, List primaryBlocksConnectedToBus);
+    void blocksSetting(Block rootBlock, List primaryBlocksConnectedToBus, List feederPrimaryBlocks);
 
     List getLegPrimaryBlocks();
 
+    List getFeederPrimaryBlocks();
+
     int newHPosition(int hPosition);
 
     Optional getOrder();

From 64a1a4b1a541dd07b4aa373075c97081bfd0a498 Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Fri, 22 Jul 2022 10:18:15 +0200
Subject: [PATCH 10/15] Add unit test

Signed-off-by: Florian Dupuy 
---
 .../powsybl/sld/iidm/CreateNetworksUtil.java  |  67 ++++-
 .../sld/layout/ComponentsOnBusTest.java       |  58 +++++
 .../sld/svg/FeederInfoProviderTest.java       |  66 +----
 .../src/test/resources/noComponentsOnBus.svg  | 234 ++++++++++++++++++
 .../src/test/resources/switchesOnBus.svg      | 234 ++++++++++++++++++
 5 files changed, 597 insertions(+), 62 deletions(-)
 create mode 100644 single-line-diagram-core/src/test/java/com/powsybl/sld/layout/ComponentsOnBusTest.java
 create mode 100644 single-line-diagram-core/src/test/resources/noComponentsOnBus.svg
 create mode 100644 single-line-diagram-core/src/test/resources/switchesOnBus.svg

diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/CreateNetworksUtil.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/CreateNetworksUtil.java
index 46f0e1776..357012597 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/CreateNetworksUtil.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/iidm/CreateNetworksUtil.java
@@ -9,6 +9,7 @@
 import com.powsybl.iidm.network.*;
 import com.powsybl.sld.iidm.extensions.BranchStatus;
 import com.powsybl.sld.iidm.extensions.BranchStatusAdder;
+import com.powsybl.sld.iidm.extensions.BusbarSectionPositionAdder;
 import com.powsybl.sld.iidm.extensions.ConnectablePosition;
 
 import static com.powsybl.sld.iidm.AbstractTestCaseIidm.*;
@@ -16,7 +17,7 @@
 /**
  * @author Slimane Amar 
  */
-final class CreateNetworksUtil {
+public final class CreateNetworksUtil {
 
     private CreateNetworksUtil() {
     }
@@ -340,4 +341,68 @@ static Network createBusBreakerNetworkWithInternalBranches(String id, String sou
 
         return network;
     }
+
+    public static Network createNetworkWithSvcVscScDl() {
+        Network network = Network.create("testCase1", "test");
+        Substation substation = network.newSubstation().setId("s").setCountry(Country.FR).add();
+        VoltageLevel vl = substation.newVoltageLevel().setId("vl").setTopologyKind(TopologyKind.NODE_BREAKER).setNominalV(380).add();
+        VoltageLevel.NodeBreakerView view = vl.getNodeBreakerView();
+        BusbarSection bbs = view.newBusbarSection().setId("bbs").setNode(0).add();
+        bbs.newExtension(BusbarSectionPositionAdder.class).withBusbarIndex(1).withSectionIndex(1);
+        BusbarSection bbs2 = view.newBusbarSection().setId("bbs2").setNode(3).add();
+        bbs2.newExtension(BusbarSectionPositionAdder.class).withBusbarIndex(2).withSectionIndex(2);
+        StaticVarCompensator svc = vl.newStaticVarCompensator()
+                .setId("svc")
+                .setName("svc")
+                .setNode(2)
+                .setBmin(0.0002)
+                .setBmax(0.0008)
+                .setRegulationMode(StaticVarCompensator.RegulationMode.VOLTAGE)
+                .setVoltageSetPoint(390)
+                .add();
+        svc.getTerminal()
+                .setP(100.0)
+                .setQ(50.0);
+        VscConverterStation vsc = vl.newVscConverterStation()
+                .setId("vsc")
+                .setName("Converter1")
+                .setNode(1)
+                .setLossFactor(0.011f)
+                .setVoltageSetpoint(405.0)
+                .setVoltageRegulatorOn(true)
+                .add();
+        vsc.getTerminal()
+                .setP(100.0)
+                .setQ(50.0);
+        ShuntCompensator c1 = vl.newShuntCompensator()
+                .setId("C1")
+                .setName("Filter 1")
+                .setNode(4)
+                .setSectionCount(1)
+                .newLinearModel()
+                .setBPerSection(1e-5)
+                .setMaximumSectionCount(1)
+                .add()
+                .add();
+        DanglingLine dl1 = vl.newDanglingLine()
+                .setId("dl1")
+                .setName("Dangling line 1")
+                .setNode(5)
+                .setP0(1)
+                .setQ0(1)
+                .setR(0)
+                .setX(0)
+                .setB(0)
+                .setG(0)
+                .add();
+        dl1.getTerminal()
+                .setP(100.0)
+                .setQ(50.0);
+        view.newDisconnector().setId("d").setNode1(0).setNode2(1).add();
+        view.newBreaker().setId("b").setNode1(1).setNode2(2).add();
+        view.newBreaker().setId("b2").setNode1(3).setNode2(4).add();
+        view.newBreaker().setId("b3").setNode1(3).setNode2(5).add();
+        view.newBreaker().setId("bt").setNode1(0).setNode2(3).add();
+        return network;
+    }
 }
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/layout/ComponentsOnBusTest.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/layout/ComponentsOnBusTest.java
new file mode 100644
index 000000000..959a32a0a
--- /dev/null
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/layout/ComponentsOnBusTest.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2022, RTE (http://www.rte-france.com)
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+package com.powsybl.sld.layout;
+
+import com.powsybl.iidm.network.Network;
+import com.powsybl.sld.builders.NetworkGraphBuilder;
+import com.powsybl.sld.iidm.AbstractTestCaseIidm;
+import com.powsybl.sld.iidm.CreateNetworksUtil;
+import com.powsybl.sld.layout.SmartVoltageLevelLayoutFactory;
+import com.powsybl.sld.library.ComponentLibrary;
+import com.powsybl.sld.library.ComponentTypeName;
+import com.powsybl.sld.library.ConvergenceComponentLibrary;
+import com.powsybl.sld.model.graphs.VoltageLevelGraph;
+import com.powsybl.sld.model.nodes.FeederNode;
+import com.powsybl.sld.svg.DefaultDiagramLabelProvider;
+import com.powsybl.sld.svg.FeederInfo;
+import org.junit.Before;
+import org.junit.Test;
+
+import java.util.Collections;
+import java.util.List;
+
+import static com.powsybl.sld.library.ComponentTypeName.ARROW_ACTIVE;
+import static com.powsybl.sld.library.ComponentTypeName.ARROW_REACTIVE;
+import static org.junit.Assert.*;
+
+/**
+ * @author Florian Dupuy 
+ */
+public class ComponentsOnBusTest extends AbstractTestCaseIidm {
+
+    @Before
+    public void setUp() {
+        network = CreateNetworksUtil.createNetworkWithSvcVscScDl();
+        graphBuilder = new NetworkGraphBuilder(network);
+        vl = network.getVoltageLevel("vl");
+    }
+
+    @Test
+    public void testNoComponentsOnBuses() {
+        layoutParameters.setComponentsOnBusbars(Collections.emptyList());
+        VoltageLevelGraph vlg = graphBuilder.buildVoltageLevelGraph(vl.getId());
+        voltageLevelGraphLayout(vlg);
+        assertEquals(toString("/noComponentsOnBus.svg"), toSVG(vlg, "/noComponentsOnBus.svg"));
+    }
+
+    @Test
+    public void testSwitchesOnBuses() {
+        layoutParameters.setComponentsOnBusbars(List.of(ComponentTypeName.BREAKER, ComponentTypeName.DISCONNECTOR));
+        VoltageLevelGraph vlg = graphBuilder.buildVoltageLevelGraph(vl.getId());
+        voltageLevelGraphLayout(vlg);
+        assertEquals(toString("/switchesOnBus.svg"), toSVG(vlg, "/switchesOnBus.svg"));
+    }
+}
diff --git a/single-line-diagram-core/src/test/java/com/powsybl/sld/svg/FeederInfoProviderTest.java b/single-line-diagram-core/src/test/java/com/powsybl/sld/svg/FeederInfoProviderTest.java
index 555712c36..fbcc071b3 100644
--- a/single-line-diagram-core/src/test/java/com/powsybl/sld/svg/FeederInfoProviderTest.java
+++ b/single-line-diagram-core/src/test/java/com/powsybl/sld/svg/FeederInfoProviderTest.java
@@ -10,6 +10,7 @@
 import com.powsybl.iidm.network.StaticVarCompensator.RegulationMode;
 import com.powsybl.sld.builders.NetworkGraphBuilder;
 import com.powsybl.sld.iidm.AbstractTestCaseIidm;
+import com.powsybl.sld.iidm.CreateNetworksUtil;
 import com.powsybl.sld.iidm.extensions.BusbarSectionPositionAdder;
 import com.powsybl.sld.layout.SmartVoltageLevelLayoutFactory;
 import com.powsybl.sld.library.ComponentLibrary;
@@ -20,6 +21,7 @@
 import org.junit.Before;
 import org.junit.Test;
 
+import java.util.Collections;
 import java.util.List;
 
 import static com.powsybl.sld.library.ComponentTypeName.ARROW_ACTIVE;
@@ -34,67 +36,9 @@ public class FeederInfoProviderTest extends AbstractTestCaseIidm {
 
     @Before
     public void setUp() {
-        layoutParameters.setFeederInfoSymmetry(true);
-        network = Network.create("testCase1", "test");
+        network = CreateNetworksUtil.createNetworkWithSvcVscScDl();
         graphBuilder = new NetworkGraphBuilder(network);
-        substation = network.newSubstation().setId("s").setCountry(Country.FR).add();
-        vl = substation.newVoltageLevel().setId("vl").setTopologyKind(TopologyKind.NODE_BREAKER).setNominalV(380).add();
-        VoltageLevel.NodeBreakerView view = vl.getNodeBreakerView();
-        BusbarSection bbs = view.newBusbarSection().setId("bbs").setNode(0).add();
-        bbs.newExtension(BusbarSectionPositionAdder.class).withBusbarIndex(1).withSectionIndex(1);
-        BusbarSection bbs2 = view.newBusbarSection().setId("bbs2").setNode(3).add();
-        bbs2.newExtension(BusbarSectionPositionAdder.class).withBusbarIndex(2).withSectionIndex(2);
-        StaticVarCompensator svc = vl.newStaticVarCompensator()
-            .setId("svc")
-            .setName("svc")
-            .setNode(2)
-            .setBmin(0.0002)
-            .setBmax(0.0008)
-            .setRegulationMode(RegulationMode.VOLTAGE)
-            .setVoltageSetPoint(390)
-            .add();
-        svc.getTerminal()
-                .setP(100.0)
-                .setQ(50.0);
-        VscConverterStation vsc = vl.newVscConverterStation()
-            .setId("vsc")
-            .setName("Converter1")
-            .setNode(1)
-            .setLossFactor(0.011f)
-            .setVoltageSetpoint(405.0)
-            .setVoltageRegulatorOn(true)
-            .add();
-        vsc.getTerminal()
-                .setP(100.0)
-                .setQ(50.0);
-        ShuntCompensator c1 = vl.newShuntCompensator()
-            .setId("C1")
-            .setName("Filter 1")
-            .setNode(4)
-            .setSectionCount(1)
-            .newLinearModel()
-                .setBPerSection(1e-5)
-                .setMaximumSectionCount(1)
-            .add()
-            .add();
-        DanglingLine dl1 = vl.newDanglingLine()
-                .setId("dl1")
-                .setName("Dangling line 1")
-                .setNode(5)
-                .setP0(1)
-                .setQ0(1)
-                .setR(0)
-                .setX(0)
-                .setB(0)
-                .setG(0)
-                .add();
-        dl1.getTerminal()
-                .setP(100.0)
-                .setQ(50.0);
-        view.newDisconnector().setId("d").setNode1(0).setNode2(1).add();
-        view.newBreaker().setId("b").setNode1(1).setNode2(2).add();
-        view.newBreaker().setId("b2").setNode1(3).setNode2(4).add();
-        view.newBreaker().setId("b3").setNode1(3).setNode2(5).add();
+        vl = network.getVoltageLevel("vl");
     }
 
     @Test
@@ -102,7 +46,7 @@ public void test() {
         ComponentLibrary componentLibrary = new ConvergenceComponentLibrary();
         layoutParameters.setFeederInfoSymmetry(true);
         VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph(vl.getId());
-        new SmartVoltageLevelLayoutFactory(network).create(g).run(layoutParameters); // to have cell orientations (bottom / up)
+        voltageLevelGraphLayout(g); // to have cell orientations (bottom / up)
         assertEquals(toString("/feederInfoTest.svg"), toSVG(g, "/feederInfoTest.svg"));
 
         Network network2 = Network.create("testCase2", "test2");
diff --git a/single-line-diagram-core/src/test/resources/noComponentsOnBus.svg b/single-line-diagram-core/src/test/resources/noComponentsOnBus.svg
new file mode 100644
index 000000000..b15af3be3
--- /dev/null
+++ b/single-line-diagram-core/src/test/resources/noComponentsOnBus.svg
@@ -0,0 +1,234 @@
+
+
+    
+    
+    
+        
+            
+            
+            
+            
+            
+            
+            
+            
+            
+            
+            
+        
+        
+            
+            bbs
+        
+        
+            
+            bbs2
+        
+        
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                svc
+            
+            
+                
+            
+            
+                AC / DC
+                Converter1
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                100
+            
+            
+                
+                
+                50
+            
+            
+                
+            
+            
+                
+                
+                100
+            
+            
+                
+                
+                50
+            
+            
+                
+                
+            
+            
+                
+                
+            
+        
+        
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                
+                
+                Filter 1
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                -
+            
+            
+                
+                
+                -
+            
+            
+                
+            
+            
+                
+                
+            
+        
+        
+            
+                
+            
+            
+                
+            
+            
+                Dangling line 1
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                100
+            
+            
+                
+                
+                50
+            
+            
+                
+            
+            
+                
+                
+            
+        
+    
+
diff --git a/single-line-diagram-core/src/test/resources/switchesOnBus.svg b/single-line-diagram-core/src/test/resources/switchesOnBus.svg
new file mode 100644
index 000000000..b15af3be3
--- /dev/null
+++ b/single-line-diagram-core/src/test/resources/switchesOnBus.svg
@@ -0,0 +1,234 @@
+
+
+    
+    
+    
+        
+            
+            
+            
+            
+            
+            
+            
+            
+            
+            
+            
+        
+        
+            
+            bbs
+        
+        
+            
+            bbs2
+        
+        
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                svc
+            
+            
+                
+            
+            
+                AC / DC
+                Converter1
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                100
+            
+            
+                
+                
+                50
+            
+            
+                
+            
+            
+                
+                
+                100
+            
+            
+                
+                
+                50
+            
+            
+                
+                
+            
+            
+                
+                
+            
+        
+        
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                
+                
+                Filter 1
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                -
+            
+            
+                
+                
+                -
+            
+            
+                
+            
+            
+                
+                
+            
+        
+        
+            
+                
+            
+            
+                
+            
+            
+                Dangling line 1
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+            
+            
+                
+                
+                100
+            
+            
+                
+                
+                50
+            
+            
+                
+            
+            
+                
+                
+            
+        
+    
+

From 3f456739afe06a4a1106cb89be5de5dda3d31686 Mon Sep 17 00:00:00 2001
From: Florian Dupuy 
Date: Fri, 22 Jul 2022 10:43:09 +0200
Subject: [PATCH 11/15] Update unit tests references

Signed-off-by: Florian Dupuy 
---
 .../TestCase15GraphWithVoltageIndicator.svg   | 172 +++++++++--------
 ...15GraphWithVoltageIndicatorTopological.svg | 176 +++++++++---------
 ...TestCase15GraphWithoutVoltageIndicator.svg | 168 ++++++++---------
 .../src/test/resources/TestCase5H.json        | 110 ++++++++---
 .../src/test/resources/TestCase5V.json        |  60 ++++--
 .../resources/TestCaseLoadBreakSwitch.svg     |  70 ++++---
 .../src/test/resources/feederInfoTest.svg     |  87 ++++++---
 .../src/test/resources/noComponentsOnBus.svg  | 113 +++++++----
 .../src/test/resources/switchesOnBus.svg      | 133 +++++++------
 9 files changed, 634 insertions(+), 455 deletions(-)

diff --git a/single-line-diagram-core/src/test/resources/TestCase15GraphWithVoltageIndicator.svg b/single-line-diagram-core/src/test/resources/TestCase15GraphWithVoltageIndicator.svg
index 6b1593497..90f427185 100644
--- a/single-line-diagram-core/src/test/resources/TestCase15GraphWithVoltageIndicator.svg
+++ b/single-line-diagram-core/src/test/resources/TestCase15GraphWithVoltageIndicator.svg
@@ -1,5 +1,5 @@
 
-
+