diff --git a/rocolib/builders/BoatPointFlatBuilder.py b/rocolib/builders/BoatPointFlatBuilder.py
index 9de431384cd54ef6e542ba789bd89a825ff2a66f..4780871938b0bd61418ff62b420831b8ae94ace2 100644
--- a/rocolib/builders/BoatPointFlatBuilder.py
+++ b/rocolib/builders/BoatPointFlatBuilder.py
@@ -10,6 +10,25 @@ c.addSubcomponent("leftArm", "Rectangle")
 c.addSubcomponent("rightArm", "Rectangle")
 c.addSubcomponent("dcMount", "SimpleRectBeam")
 
+c.addParameter("dx1", 10, parameterType="length")
+c.addParameter("dy1", 10, parameterType="length")
+c.addSubcomponent("cutout1", "Cutout")
+c.addSubcomponent("cutout2", "Cutout")
+
+c.addConstraint(("cutout1", "dx"), "dx1")
+c.addConstraint(("cutout1", "dy"), "dy1")
+
+c.addConstraint(("cutout2", "dx"), "dx1")
+c.addConstraint(("cutout2", "dy"), "dy1")
+
+c.addConnection(("dcMount", "face0"),
+                   ("cutout1", "decoration"),
+                   mode="hole")
+
+c.addConnection(("dcMount", "face2"),
+                   ("cutout2", "decoration"),
+                   mode="hole")
+
 c.addConstraint(("leftArm", "w"), "width", "10")
 c.addConstraint(("leftArm", "l"), "length", "30")
 
diff --git a/rocolib/library/BoatBaseFlat.yaml b/rocolib/library/BoatBaseFlat.yaml
index 2df0b45bff628900c1aeb9e08b41e9cb5851fa61..c8e351a54686ccf55392bf6f9845cccc1b5c6879 100644
--- a/rocolib/library/BoatBaseFlat.yaml
+++ b/rocolib/library/BoatBaseFlat.yaml
@@ -1,23 +1,35 @@
 connections:
   connection0:
+  - - dcMount
+    - face0
+  - - cutout1
+    - decoration
+  - mode: hole
+  connection1:
+  - - dcMount
+    - face2
+  - - cutout2
+    - decoration
+  - mode: hole
+  connection2:
   - - dcMount
     - topedge1
   - - leftArm
     - r
   - {}
-  connection1:
+  connection3:
   - - dcMount
     - botedge1
   - - rightArm
     - r
   - {}
-  connection2:
+  connection4:
   - - boat
     - top
   - - bow
     - edge
   - {}
-  connection3:
+  connection5:
   - - boat
     - bot
   - - stern
@@ -79,6 +91,14 @@ parameters:
       minValue: 0
       units: mm
       valueType: (float, int)
+  dx1:
+    defaultValue: 10
+    spec:
+      parameterType: length
+  dy1:
+    defaultValue: 10
+    spec:
+      parameterType: length
   length:
     defaultValue: 100
     spec:
@@ -127,6 +147,22 @@ subcomponents:
       width:
         parameter: width
         subcomponent: boat
+  cutout1:
+    classname: Cutout
+    kwargs: {}
+    parameters:
+      dx:
+        parameter: dx1
+      dy:
+        parameter: dy1
+  cutout2:
+    classname: Cutout
+    kwargs: {}
+    parameters:
+      dx:
+        parameter: dx1
+      dy:
+        parameter: dy1
   dcMount:
     classname: SimpleRectBeam
     kwargs: {}
diff --git a/rocolib/output/BoatBaseFlat/graph-anim.svg b/rocolib/output/BoatBaseFlat/graph-anim.svg
index e430473a3dbdcd069f6c2e1ed9dc2e0be6455879..4be17c14eac9c82fb78b8d9f4499ccde9e085a98 100644
--- a/rocolib/output/BoatBaseFlat/graph-anim.svg
+++ b/rocolib/output/BoatBaseFlat/graph-anim.svg
@@ -21,6 +21,14 @@
   <line stroke="#000000" x1="0.0" x2="10.000000000000002" y1="118.85164800000001" y2="118.85164800000001"/>
   <line stroke="#000000" x1="0.0" x2="0.0" y1="88.85164800000001" y2="118.85164800000001"/>
   <line stroke="#000000" x1="10.000000000000002" x2="0.0" y1="88.85164800000001" y2="88.85164800000001"/>
+  <line stroke="#888888" x1="10.000000000000002" x2="20.000000000000004" y1="98.85164800000001" y2="98.85164800000001"/>
+  <line stroke="#888888" x1="20.000000000000004" x2="20.000000000000004" y1="98.85164800000001" y2="108.851648"/>
+  <line stroke="#888888" x1="20.000000000000004" x2="10.000000000000002" y1="108.851648" y2="108.851648"/>
+  <line stroke="#888888" x1="10.000000000000002" x2="10.000000000000002" y1="108.851648" y2="98.85164800000001"/>
+  <line stroke="#888888" x1="30.000000000000004" x2="40.00000000000001" y1="98.85164800000001" y2="98.85164800000001"/>
+  <line stroke="#888888" x1="40.00000000000001" x2="40.00000000000001" y1="98.85164800000001" y2="108.851648"/>
+  <line stroke="#888888" x1="40.00000000000001" x2="30.000000000000004" y1="108.851648" y2="108.851648"/>
+  <line stroke="#888888" x1="30.000000000000004" x2="30.000000000000004" y1="108.851648" y2="98.85164800000001"/>
   <line stroke="#888888" x1="42.25000000000001" x2="42.25000000000001" y1="109.10164800000001" y2="98.601648"/>
   <line stroke="#888888" x1="42.25000000000001" x2="42.75000000000001" y1="98.601648" y2="98.601648"/>
   <line stroke="#888888" x1="42.75000000000001" x2="42.75000000000001" y1="98.601648" y2="109.10164800000001"/>
diff --git a/rocolib/output/BoatBaseFlat/graph-autofold-default.dxf b/rocolib/output/BoatBaseFlat/graph-autofold-default.dxf
index 88c0f0fff92491cb6781264ced351c889c021a16..1545a6d965e32136ce1bc314808dac47db24c7a3 100644
--- a/rocolib/output/BoatBaseFlat/graph-autofold-default.dxf
+++ b/rocolib/output/BoatBaseFlat/graph-autofold-default.dxf
@@ -1401,6 +1401,150 @@ LINE
   8
 cut
  10
+10.000000000000002
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+20.000000000000004
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+cut
+ 10
+20.000000000000004
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+20.000000000000004
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+cut
+ 10
+20.000000000000004
+ 20
+108.851648
+ 30
+0.0
+ 11
+10.000000000000002
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+cut
+ 10
+10.000000000000002
+ 20
+108.851648
+ 30
+0.0
+ 11
+10.000000000000002
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+cut
+ 10
+30.000000000000004
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+40.00000000000001
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+cut
+ 10
+40.00000000000001
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+40.00000000000001
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+cut
+ 10
+40.00000000000001
+ 20
+108.851648
+ 30
+0.0
+ 11
+30.000000000000004
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+cut
+ 10
+30.000000000000004
+ 20
+108.851648
+ 30
+0.0
+ 11
+30.000000000000004
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+cut
+ 10
 42.25000000000001
  20
 109.10164800000001
diff --git a/rocolib/output/BoatBaseFlat/graph-autofold-graph.dxf b/rocolib/output/BoatBaseFlat/graph-autofold-graph.dxf
index 2d3390d61c1677371e80a72d19ac2c9a65aba40b..9a0cb95e6b494e02525b81662f312dd5f3396d49 100644
--- a/rocolib/output/BoatBaseFlat/graph-autofold-graph.dxf
+++ b/rocolib/output/BoatBaseFlat/graph-autofold-graph.dxf
@@ -1311,6 +1311,150 @@ LINE
   8
 0
  10
+10.000000000000002
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+20.000000000000004
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+20.000000000000004
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+20.000000000000004
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+20.000000000000004
+ 20
+108.851648
+ 30
+0.0
+ 11
+10.000000000000002
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+10.000000000000002
+ 20
+108.851648
+ 30
+0.0
+ 11
+10.000000000000002
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+30.000000000000004
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+40.00000000000001
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+40.00000000000001
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+40.00000000000001
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+40.00000000000001
+ 20
+108.851648
+ 30
+0.0
+ 11
+30.000000000000004
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+30.000000000000004
+ 20
+108.851648
+ 30
+0.0
+ 11
+30.000000000000004
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
 42.25000000000001
  20
 109.10164800000001
diff --git a/rocolib/output/BoatBaseFlat/graph-lasercutter.svg b/rocolib/output/BoatBaseFlat/graph-lasercutter.svg
index d5b4dc26a186d45965a51f3efe959bab9f2bc723..ede01fc5b8127f77b0a620f2f7b5664cc4a606bb 100644
--- a/rocolib/output/BoatBaseFlat/graph-lasercutter.svg
+++ b/rocolib/output/BoatBaseFlat/graph-lasercutter.svg
@@ -21,6 +21,14 @@
   <line stroke="#000000" x1="0.0" x2="10.000000000000002" y1="118.85164800000001" y2="118.85164800000001"/>
   <line stroke="#000000" x1="0.0" x2="0.0" y1="88.85164800000001" y2="118.85164800000001"/>
   <line stroke="#000000" x1="10.000000000000002" x2="0.0" y1="88.85164800000001" y2="88.85164800000001"/>
+  <line stroke="#888888" x1="10.000000000000002" x2="20.000000000000004" y1="98.85164800000001" y2="98.85164800000001"/>
+  <line stroke="#888888" x1="20.000000000000004" x2="20.000000000000004" y1="98.85164800000001" y2="108.851648"/>
+  <line stroke="#888888" x1="20.000000000000004" x2="10.000000000000002" y1="108.851648" y2="108.851648"/>
+  <line stroke="#888888" x1="10.000000000000002" x2="10.000000000000002" y1="108.851648" y2="98.85164800000001"/>
+  <line stroke="#888888" x1="30.000000000000004" x2="40.00000000000001" y1="98.85164800000001" y2="98.85164800000001"/>
+  <line stroke="#888888" x1="40.00000000000001" x2="40.00000000000001" y1="98.85164800000001" y2="108.851648"/>
+  <line stroke="#888888" x1="40.00000000000001" x2="30.000000000000004" y1="108.851648" y2="108.851648"/>
+  <line stroke="#888888" x1="30.000000000000004" x2="30.000000000000004" y1="108.851648" y2="98.85164800000001"/>
   <line stroke="#888888" x1="42.25000000000001" x2="42.25000000000001" y1="109.10164800000001" y2="98.601648"/>
   <line stroke="#888888" x1="42.25000000000001" x2="42.75000000000001" y1="98.601648" y2="98.601648"/>
   <line stroke="#888888" x1="42.75000000000001" x2="42.75000000000001" y1="98.601648" y2="109.10164800000001"/>
diff --git a/rocolib/output/BoatBaseFlat/graph-model.png b/rocolib/output/BoatBaseFlat/graph-model.png
index 49e0dab8f457055b95c54b94bfd2da7c8cac0e58..699eec7e5e1ff8f3db8e05629958138053f58fcb 100644
Binary files a/rocolib/output/BoatBaseFlat/graph-model.png and b/rocolib/output/BoatBaseFlat/graph-model.png differ
diff --git a/rocolib/output/BoatBaseFlat/graph-model.stl b/rocolib/output/BoatBaseFlat/graph-model.stl
index 8a8048429ff27b3a336387f79f0880f385a4adba..a3839ca8f31a3d55a56dcb74fde3f772399b932f 100644
--- a/rocolib/output/BoatBaseFlat/graph-model.stl
+++ b/rocolib/output/BoatBaseFlat/graph-model.stl
@@ -1,14 +1,28 @@
 solid python
 facet normal 0 0 0
 outer loop
-vertex -0.0050 0.0150 0.0000
+vertex -0.0050 -0.0050 0.0000
 vertex -0.0050 -0.0150 0.0000
 vertex 0.0050 -0.0150 0.0000
 endloop
 endfacet
 facet normal 0 0 0
 outer loop
+vertex -0.0050 0.0150 0.0000
+vertex -0.0050 0.0050 0.0000
+vertex 0.0050 0.0050 0.0000
+endloop
+endfacet
+facet normal 0 0 0
+outer loop
 vertex 0.0050 -0.0150 0.0000
+vertex 0.0050 -0.0050 0.0000
+vertex -0.0050 -0.0050 0.0000
+endloop
+endfacet
+facet normal 0 0 0
+outer loop
+vertex 0.0050 0.0050 0.0000
 vertex 0.0050 0.0150 0.0000
 vertex -0.0050 0.0150 0.0000
 endloop
@@ -29,14 +43,28 @@ endloop
 endfacet
 facet normal 0 0 0
 outer loop
-vertex 0.0050 0.0150 -0.0100
+vertex 0.0050 -0.0050 -0.0100
 vertex 0.0050 -0.0150 -0.0100
 vertex -0.0050 -0.0150 -0.0100
 endloop
 endfacet
 facet normal 0 0 0
 outer loop
+vertex 0.0050 0.0150 -0.0100
+vertex 0.0050 0.0050 -0.0100
+vertex -0.0050 0.0050 -0.0100
+endloop
+endfacet
+facet normal 0 0 0
+outer loop
 vertex -0.0050 -0.0150 -0.0100
+vertex -0.0050 -0.0050 -0.0100
+vertex 0.0050 -0.0050 -0.0100
+endloop
+endfacet
+facet normal 0 0 0
+outer loop
+vertex -0.0050 0.0050 -0.0100
 vertex -0.0050 0.0150 -0.0100
 vertex 0.0050 0.0150 -0.0100
 endloop
diff --git a/rocolib/output/BoatBaseFlat/graph-silhouette.dxf b/rocolib/output/BoatBaseFlat/graph-silhouette.dxf
index a96eb24e6d0c0a333382bbd9da9ed5bb12667c30..ccbbf595cde7b0a3db667c3729130a0691c97ac5 100644
--- a/rocolib/output/BoatBaseFlat/graph-silhouette.dxf
+++ b/rocolib/output/BoatBaseFlat/graph-silhouette.dxf
@@ -1311,6 +1311,150 @@ LINE
   8
 0
  10
+10.000000000000002
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+20.000000000000004
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+20.000000000000004
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+20.000000000000004
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+20.000000000000004
+ 20
+108.851648
+ 30
+0.0
+ 11
+10.000000000000002
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+10.000000000000002
+ 20
+108.851648
+ 30
+0.0
+ 11
+10.000000000000002
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+30.000000000000004
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+40.00000000000001
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+40.00000000000001
+ 20
+98.85164800000001
+ 30
+0.0
+ 11
+40.00000000000001
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+40.00000000000001
+ 20
+108.851648
+ 30
+0.0
+ 11
+30.000000000000004
+ 21
+108.851648
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
+30.000000000000004
+ 20
+108.851648
+ 30
+0.0
+ 11
+30.000000000000004
+ 21
+98.85164800000001
+ 31
+0.0
+  0
+LINE
+ 62
+5
+  8
+0
+ 10
 42.25000000000001
  20
 109.10164800000001
diff --git a/rocolib/output/BoatBaseFlat/tree.png b/rocolib/output/BoatBaseFlat/tree.png
index 19f58a4994f54441893a636556f935e830369218..aebbc297688ac686d4ab440ccf1300b646fc5214 100644
Binary files a/rocolib/output/BoatBaseFlat/tree.png and b/rocolib/output/BoatBaseFlat/tree.png differ